#import "ApiLayer62.h"
#import <objc/runtime.h>

static const char *Api62__Serializer_Key = "Api62__Serializer";

@interface Api62__Number : NSNumber
{
    NSNumber *_value;
}

@end

@implementation Api62__Number

- (instancetype)initWithNumber:(NSNumber *)number
{
    self = [super init];
    if (self != nil)
    {
        _value = number;
    }
    return self;
}

- (char)charValue
{
    return [_value charValue];
}

- (unsigned char)unsignedCharValue
{
    return [_value unsignedCharValue];
}

- (short)shortValue
{
    return [_value shortValue];
}

- (unsigned short)unsignedShortValue
{
    return [_value unsignedShortValue];
}

- (int)intValue
{
    return [_value intValue];
}

- (unsigned int)unsignedIntValue
{
    return [_value unsignedIntValue];
}

- (long)longValue
{
    return [_value longValue];
}

- (unsigned long)unsignedLongValue
{
    return [_value unsignedLongValue];
}

- (long long)longLongValue
{
    return [_value longLongValue];
}

- (unsigned long long)unsignedLongLongValue
{
    return [_value unsignedLongLongValue];
}

- (float)floatValue
{
    return [_value floatValue];
}

- (double)doubleValue
{
    return [_value doubleValue];
}

- (BOOL)boolValue
{
    return [_value boolValue];
}

- (NSInteger)integerValue
{
    return [_value integerValue];
}

- (NSUInteger)unsignedIntegerValue
{
    return [_value unsignedIntegerValue];
}

- (NSString *)stringValue
{
    return [_value stringValue];
}

- (NSComparisonResult)compare:(NSNumber *)otherNumber
{
    return [_value compare:otherNumber];
}

- (BOOL)isEqualToNumber:(NSNumber *)number
{
    return [_value isEqualToNumber:number];
}

- (NSString *)descriptionWithLocale:(id)locale
{
    return [_value descriptionWithLocale:locale];
}

- (void)getValue:(void *)value
{
    [_value getValue:value];
}

- (const char *)objCType
{
    return [_value objCType];
}

- (NSUInteger)hash
{
    return [_value hash];
}

- (instancetype)copyWithZone:(NSZone *)__unused zone
{
    return self;
}

@end

@interface Api62__Serializer : NSObject

@property (nonatomic) int32_t constructorSignature;
@property (nonatomic, copy) bool (^serializeBlock)(id object, NSMutableData *);

@end

@implementation Api62__Serializer

- (instancetype)initWithConstructorSignature:(int32_t)constructorSignature serializeBlock:(bool (^)(id, NSMutableData *))serializeBlock
{
    self = [super init];
    if (self != nil)
    {
        self.constructorSignature = constructorSignature;
        self.serializeBlock = serializeBlock;
    }
    return self;
}

+ (id)addSerializerToObject:(id)object withConstructorSignature:(int32_t)constructorSignature serializeBlock:(bool (^)(id, NSMutableData *))serializeBlock
{
    if (object != nil)
        objc_setAssociatedObject(object, Api62__Serializer_Key, [[Api62__Serializer alloc] initWithConstructorSignature:constructorSignature serializeBlock:serializeBlock], OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    return object;
}

+ (id)addSerializerToObject:(id)object serializer:(Api62__Serializer *)serializer
{
    if (object != nil)
        objc_setAssociatedObject(object, Api62__Serializer_Key, serializer, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
    return object;
}

@end

@interface Api62__UnboxedTypeMetaInfo : NSObject

@property (nonatomic, readonly) int32_t constructorSignature;

@end

@implementation Api62__UnboxedTypeMetaInfo

- (instancetype)initWithConstructorSignature:(int32_t)constructorSignature
{
    self = [super init];
    if (self != nil)
    {
        _constructorSignature = constructorSignature;
    }
    return self;
}

@end

@interface Api62__PreferNSDataTypeMetaInfo : NSObject

@end

@implementation Api62__PreferNSDataTypeMetaInfo

+ (instancetype)preferNSDataTypeMetaInfo
{
    static Api62__PreferNSDataTypeMetaInfo *instance = nil;
    static dispatch_once_t t;
    dispatch_once(&t, ^
    {
        instance = [[Api62__PreferNSDataTypeMetaInfo alloc] init];
    });
    return instance;
}

@end

@interface Api62__BoxedTypeMetaInfo : NSObject

@end

@implementation Api62__BoxedTypeMetaInfo

+ (instancetype)boxedTypeMetaInfo
{
    static Api62__BoxedTypeMetaInfo *instance = nil;
    static dispatch_once_t t;
    dispatch_once(&t, ^
    {
        instance = [[Api62__BoxedTypeMetaInfo alloc] init];
    });
    return instance;
}

@end

@implementation Api62__Environment

+ (id (^)(NSData *data, NSUInteger *offset, id metaInfo))parserByConstructorSignature:(int32_t)constructorSignature
{
    static NSMutableDictionary *parsers = nil;
    static dispatch_once_t t;
    dispatch_once(&t, ^
    {
        parsers = [[NSMutableDictionary alloc] init];

        parsers[@((int32_t)0xA8509BDA)] = [^id (NSData *data, NSUInteger *offset, __unused id metaInfo)
        {
            if (*offset + 4 > data.length)
                return nil;
            int32_t value = 0;
            [data getBytes:(void *)&value range:NSMakeRange(*offset, 4)];
            *offset += 4;
            return @(value);
        } copy];

        parsers[@((int32_t)0x22076CBA)] = [^id (NSData *data, NSUInteger *offset, __unused id metaInfo)
        {
            if (*offset + 8 > data.length)
                return nil;
            int64_t value = 0;
            [data getBytes:(void *)&value range:NSMakeRange(*offset, 8)];
            *offset += 8;
            return @(value);
        } copy];

        parsers[@((int32_t)0x2210C154)] = [^id (NSData *data, NSUInteger *offset, __unused id metaInfo)
        {
            if (*offset + 8 > data.length)
                return nil;
            double value = 0;
            [data getBytes:(void *)&value range:NSMakeRange(*offset, 8)];
            *offset += 8;
            return @(value);
        } copy];

        parsers[@((int32_t)0xB5286E24)] = [^id (NSData *data, NSUInteger *offset, __unused id metaInfo)
        {
            if (*offset + 1 > data.length)
                return nil;
            uint8_t tmp = 0;
            [data getBytes:(void *)&tmp range:NSMakeRange(*offset, 1)];
            *offset += 1;

            int paddingBytes = 0;

            int32_t length = tmp;
            if (length == 254)
            {
                length = 0;
                if (*offset + 3 > data.length)
                    return nil;
                [data getBytes:((uint8_t *)&length) + 1 range:NSMakeRange(*offset, 3)];
                *offset += 3;
                length >>= 8;

                paddingBytes = (((length % 4) == 0 ? length : (length + 4 - (length % 4)))) - length;
            }
            else
                paddingBytes = ((((length + 1) % 4) == 0 ? (length + 1) : ((length + 1) + 4 - ((length + 1) % 4)))) - (length + 1);

            bool isData = [metaInfo isKindOfClass:[Api62__PreferNSDataTypeMetaInfo class]];
            id object = nil;

            if (length > 0)
            {
                if (*offset + length > data.length)
                    return nil;
                if (isData)
                    object = [[NSData alloc] initWithBytes:((uint8_t *)data.bytes) + *offset length:length];
                else
                    object = [[NSString alloc] initWithBytes:((uint8_t *)data.bytes) + *offset length:length encoding:NSUTF8StringEncoding];

                *offset += length;
            }

            *offset += paddingBytes;

            return object == nil ? (isData ? [NSData data] : @"") : object;
        } copy];

        parsers[@((int32_t)0x1cb5c415)] = [^id (NSData *data, NSUInteger *offset, id metaInfo)
        {
            if (*offset + 4 > data.length)
                return nil;

            int32_t count = 0;
            [data getBytes:(void *)&count range:NSMakeRange(*offset, 4)];
            *offset += 4;

            if (count < 0)
                return nil;

            bool isBoxed = false;
            int32_t unboxedConstructorSignature = 0;
            if ([metaInfo isKindOfClass:[Api62__BoxedTypeMetaInfo class]])
                isBoxed = true;
            else if ([metaInfo isKindOfClass:[Api62__UnboxedTypeMetaInfo class]])
                unboxedConstructorSignature = ((Api62__UnboxedTypeMetaInfo *)metaInfo).constructorSignature;
            else
                return nil;

            NSMutableArray *array = [[NSMutableArray alloc] initWithCapacity:(NSUInteger)count];
            for (int32_t i = 0; i < count; i++)
            {
                int32_t itemConstructorSignature = 0;
                if (isBoxed)
                {
                    if (*offset + 4 > data.length)
                        return nil;
                    [data getBytes:(void *)&itemConstructorSignature range:NSMakeRange(*offset, 4)];
                    *offset += 4;
                }
                else
                    itemConstructorSignature = unboxedConstructorSignature;
                id item = [Api62__Environment parseObject:data offset:offset implicitSignature:itemConstructorSignature metaInfo:nil];
                if (item == nil)
                    return nil;

                [array addObject:item];
            }

            return array;
        } copy];

        parsers[@((int32_t)0xb60a24a6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_StickerSet * set = nil;
            int32_t set_signature = 0; [_data getBytes:(void *)&set_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((set = [Api62__Environment parseObject:_data offset:_offset implicitSignature:set_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * packs = nil;
            int32_t packs_signature = 0; [_data getBytes:(void *)&packs_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((packs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:packs_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * documents = nil;
            int32_t documents_signature = 0; [_data getBytes:(void *)&documents_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((documents = [Api62__Environment parseObject:_data offset:_offset implicitSignature:documents_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_StickerSet messages_stickerSetWithSet:set packs:packs documents:documents];
        } copy];
        parsers[@((int32_t)0x68afa7d4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * country = nil;
            if ((country = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * state = nil;
            if ((state = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * city = nil;
            if ((city = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * district = nil;
            if ((district = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * street = nil;
            if ((street = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputGeoPlaceName inputGeoPlaceNameWithCountry:country state:state city:city district:district street:street];
        } copy];
        parsers[@((int32_t)0xe4c123d6)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputGeoPoint inputGeoPointEmpty];
        } copy];
        parsers[@((int32_t)0xf3b7acc9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * lat = nil;
            if ((lat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * plong = nil;
            if ((plong = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputGeoPoint inputGeoPointWithLat:lat plong:plong];
        } copy];
        parsers[@((int32_t)0x40e9002a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Chat * chat = nil;
            int32_t chat_signature = 0; [_data getBytes:(void *)&chat_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chat_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Chat messages_chatWithChat:chat users:users];
        } copy];
        parsers[@((int32_t)0x2e02a614)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_ChatParticipants * participants = nil;
            int32_t participants_signature = 0; [_data getBytes:(void *)&participants_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((participants = [Api62__Environment parseObject:_data offset:_offset implicitSignature:participants_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Photo * chatPhoto = nil;
            int32_t chatPhoto_signature = 0; [_data getBytes:(void *)&chatPhoto_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chatPhoto = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chatPhoto_signature metaInfo:nil]) == nil)
               return nil;
            Api62_PeerNotifySettings * notifySettings = nil;
            int32_t notifySettings_signature = 0; [_data getBytes:(void *)&notifySettings_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((notifySettings = [Api62__Environment parseObject:_data offset:_offset implicitSignature:notifySettings_signature metaInfo:nil]) == nil)
               return nil;
            Api62_ExportedChatInvite * exportedInvite = nil;
            int32_t exportedInvite_signature = 0; [_data getBytes:(void *)&exportedInvite_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((exportedInvite = [Api62__Environment parseObject:_data offset:_offset implicitSignature:exportedInvite_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * botInfo = nil;
            int32_t botInfo_signature = 0; [_data getBytes:(void *)&botInfo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((botInfo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:botInfo_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_ChatFull chatFullWithPid:pid participants:participants chatPhoto:chatPhoto notifySettings:notifySettings exportedInvite:exportedInvite botInfo:botInfo];
        } copy];
        parsers[@((int32_t)0xc3d5512f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * about = nil;
            if ((about = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantsCount = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((participantsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * adminsCount = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((adminsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * kickedCount = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((kickedCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * readInboxMaxId = nil;
            if ((readInboxMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * readOutboxMaxId = nil;
            if ((readOutboxMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * unreadCount = nil;
            if ((unreadCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Photo * chatPhoto = nil;
            int32_t chatPhoto_signature = 0; [_data getBytes:(void *)&chatPhoto_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chatPhoto = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chatPhoto_signature metaInfo:nil]) == nil)
               return nil;
            Api62_PeerNotifySettings * notifySettings = nil;
            int32_t notifySettings_signature = 0; [_data getBytes:(void *)&notifySettings_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((notifySettings = [Api62__Environment parseObject:_data offset:_offset implicitSignature:notifySettings_signature metaInfo:nil]) == nil)
               return nil;
            Api62_ExportedChatInvite * exportedInvite = nil;
            int32_t exportedInvite_signature = 0; [_data getBytes:(void *)&exportedInvite_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((exportedInvite = [Api62__Environment parseObject:_data offset:_offset implicitSignature:exportedInvite_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * botInfo = nil;
            int32_t botInfo_signature = 0; [_data getBytes:(void *)&botInfo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((botInfo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:botInfo_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * migratedFromChatId = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            if ((migratedFromChatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * migratedFromMaxId = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            if ((migratedFromMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * pinnedMsgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((pinnedMsgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_ChatFull channelFullWithFlags:flags pid:pid about:about participantsCount:participantsCount adminsCount:adminsCount kickedCount:kickedCount readInboxMaxId:readInboxMaxId readOutboxMaxId:readOutboxMaxId unreadCount:unreadCount chatPhoto:chatPhoto notifySettings:notifySettings exportedInvite:exportedInvite botInfo:botInfo migratedFromChatId:migratedFromChatId migratedFromMaxId:migratedFromMaxId pinnedMsgId:pinnedMsgId];
        } copy];
        parsers[@((int32_t)0xc8d7493e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatParticipant chatParticipantWithUserId:userId inviterId:inviterId date:date];
        } copy];
        parsers[@((int32_t)0xda13538a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatParticipant chatParticipantCreatorWithUserId:userId];
        } copy];
        parsers[@((int32_t)0xe2d6e436)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatParticipant chatParticipantAdminWithUserId:userId inviterId:inviterId date:date];
        } copy];
        parsers[@((int32_t)0x5d75a138)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * seq = nil;
            if ((seq = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_updates_Difference updates_differenceEmptyWithDate:date seq:seq];
        } copy];
        parsers[@((int32_t)0xf49ca0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * pnewMessages = nil;
            int32_t pnewMessages_signature = 0; [_data getBytes:(void *)&pnewMessages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pnewMessages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pnewMessages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * pnewEncryptedMessages = nil;
            int32_t pnewEncryptedMessages_signature = 0; [_data getBytes:(void *)&pnewEncryptedMessages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pnewEncryptedMessages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pnewEncryptedMessages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * otherUpdates = nil;
            int32_t otherUpdates_signature = 0; [_data getBytes:(void *)&otherUpdates_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((otherUpdates = [Api62__Environment parseObject:_data offset:_offset implicitSignature:otherUpdates_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            Api62_updates_State * state = nil;
            int32_t state_signature = 0; [_data getBytes:(void *)&state_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((state = [Api62__Environment parseObject:_data offset:_offset implicitSignature:state_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_updates_Difference updates_differenceWithPnewMessages:pnewMessages pnewEncryptedMessages:pnewEncryptedMessages otherUpdates:otherUpdates chats:chats users:users state:state];
        } copy];
        parsers[@((int32_t)0xa8fb1981)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * pnewMessages = nil;
            int32_t pnewMessages_signature = 0; [_data getBytes:(void *)&pnewMessages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pnewMessages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pnewMessages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * pnewEncryptedMessages = nil;
            int32_t pnewEncryptedMessages_signature = 0; [_data getBytes:(void *)&pnewEncryptedMessages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pnewEncryptedMessages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pnewEncryptedMessages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * otherUpdates = nil;
            int32_t otherUpdates_signature = 0; [_data getBytes:(void *)&otherUpdates_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((otherUpdates = [Api62__Environment parseObject:_data offset:_offset implicitSignature:otherUpdates_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            Api62_updates_State * intermediateState = nil;
            int32_t intermediateState_signature = 0; [_data getBytes:(void *)&intermediateState_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((intermediateState = [Api62__Environment parseObject:_data offset:_offset implicitSignature:intermediateState_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_updates_Difference updates_differenceSliceWithPnewMessages:pnewMessages pnewEncryptedMessages:pnewEncryptedMessages otherUpdates:otherUpdates chats:chats users:users intermediateState:intermediateState];
        } copy];
        parsers[@((int32_t)0x4afe8f6d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_updates_Difference updates_differenceTooLongWithPts:pts];
        } copy];
        parsers[@((int32_t)0x479357c0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * method = nil;
            if ((method = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * params = nil;
            int32_t params_signature = 0; [_data getBytes:(void *)&params_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((params = [Api62__Environment parseObject:_data offset:_offset implicitSignature:params_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_SchemeMethod schemeMethodWithPid:pid method:method params:params type:type];
        } copy];
        parsers[@((int32_t)0xd9915325)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * cropLeft = nil;
            if ((cropLeft = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * cropTop = nil;
            if ((cropTop = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * cropWidth = nil;
            if ((cropWidth = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPhotoCrop inputPhotoCropWithCropLeft:cropLeft cropTop:cropTop cropWidth:cropWidth];
        } copy];
        parsers[@((int32_t)0x13567e8a)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PageBlock pageBlockUnsupported];
        } copy];
        parsers[@((int32_t)0x70abc3fd)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockTitleWithText:text];
        } copy];
        parsers[@((int32_t)0x8ffa9a1f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockSubtitleWithText:text];
        } copy];
        parsers[@((int32_t)0xbfd064ec)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockHeaderWithText:text];
        } copy];
        parsers[@((int32_t)0xf12bb6e1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockSubheaderWithText:text];
        } copy];
        parsers[@((int32_t)0x467a0766)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockParagraphWithText:text];
        } copy];
        parsers[@((int32_t)0xc070d93e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            NSString * language = nil;
            if ((language = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockPreformattedWithText:text language:language];
        } copy];
        parsers[@((int32_t)0x48870999)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockFooterWithText:text];
        } copy];
        parsers[@((int32_t)0xdb20b188)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PageBlock pageBlockDivider];
        } copy];
        parsers[@((int32_t)0xce0d37b0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * name = nil;
            if ((name = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockAnchorWithName:name];
        } copy];
        parsers[@((int32_t)0x3a58c7f4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * ordered = nil;
            int32_t ordered_signature = 0; [_data getBytes:(void *)&ordered_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((ordered = [Api62__Environment parseObject:_data offset:_offset implicitSignature:ordered_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * items = nil;
            int32_t items_signature = 0; [_data getBytes:(void *)&items_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((items = [Api62__Environment parseObject:_data offset:_offset implicitSignature:items_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockListWithOrdered:ordered items:items];
        } copy];
        parsers[@((int32_t)0x263d7c26)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockBlockquoteWithText:text caption:caption];
        } copy];
        parsers[@((int32_t)0x4f4456d3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockPullquoteWithText:text caption:caption];
        } copy];
        parsers[@((int32_t)0xe9c69982)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * photoId = nil;
            if ((photoId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockPhotoWithPhotoId:photoId caption:caption];
        } copy];
        parsers[@((int32_t)0xd9d71866)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * videoId = nil;
            if ((videoId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockVideoWithFlags:flags videoId:videoId caption:caption];
        } copy];
        parsers[@((int32_t)0x39f23300)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_PageBlock * cover = nil;
            int32_t cover_signature = 0; [_data getBytes:(void *)&cover_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((cover = [Api62__Environment parseObject:_data offset:_offset implicitSignature:cover_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockCoverWithCover:cover];
        } copy];
        parsers[@((int32_t)0x292c7be9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * webpageId = nil;
            if ((webpageId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * authorPhotoId = nil;
            if ((authorPhotoId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * author = nil;
            if ((author = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * blocks = nil;
            int32_t blocks_signature = 0; [_data getBytes:(void *)&blocks_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((blocks = [Api62__Environment parseObject:_data offset:_offset implicitSignature:blocks_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockEmbedPostWithUrl:url webpageId:webpageId authorPhotoId:authorPhotoId author:author date:date blocks:blocks caption:caption];
        } copy];
        parsers[@((int32_t)0x8b31c4f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * items = nil;
            int32_t items_signature = 0; [_data getBytes:(void *)&items_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((items = [Api62__Environment parseObject:_data offset:_offset implicitSignature:items_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockCollageWithItems:items caption:caption];
        } copy];
        parsers[@((int32_t)0x130c8963)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * items = nil;
            int32_t items_signature = 0; [_data getBytes:(void *)&items_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((items = [Api62__Environment parseObject:_data offset:_offset implicitSignature:items_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockSlideshowWithItems:items caption:caption];
        } copy];
        parsers[@((int32_t)0xbaafe5e0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * author = nil;
            int32_t author_signature = 0; [_data getBytes:(void *)&author_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((author = [Api62__Environment parseObject:_data offset:_offset implicitSignature:author_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * publishedDate = nil;
            if ((publishedDate = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockAuthorDateWithAuthor:author publishedDate:publishedDate];
        } copy];
        parsers[@((int32_t)0xcde200d1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * url = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * html = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((html = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * posterPhotoId = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            if ((posterPhotoId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * w = nil;
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * h = nil;
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_RichText * caption = nil;
            int32_t caption_signature = 0; [_data getBytes:(void *)&caption_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:caption_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PageBlock pageBlockEmbedWithFlags:flags url:url html:html posterPhotoId:posterPhotoId w:w h:h caption:caption];
        } copy];
        parsers[@((int32_t)0x2331b22d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_Photo photoEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0x559dc1e2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPoint * geo = nil;
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * unread = nil;
            int32_t unread_signature = 0; [_data getBytes:(void *)&unread_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((unread = [Api62__Environment parseObject:_data offset:_offset implicitSignature:unread_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * sizes = nil;
            int32_t sizes_signature = 0; [_data getBytes:(void *)&sizes_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sizes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sizes_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Photo wallPhotoWithPid:pid accessHash:accessHash userId:userId date:date caption:caption geo:geo unread:unread sizes:sizes];
        } copy];
        parsers[@((int32_t)0x9288dd29)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * sizes = nil;
            int32_t sizes_signature = 0; [_data getBytes:(void *)&sizes_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sizes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sizes_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Photo photoWithFlags:flags pid:pid accessHash:accessHash date:date sizes:sizes];
        } copy];
        parsers[@((int32_t)0x9ba2d800)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Chat chatEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0x7328bdb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Chat chatForbiddenWithPid:pid title:title];
        } copy];
        parsers[@((int32_t)0xd91cdd54)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ChatPhoto * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantsCount = nil;
            if ((participantsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputChannel * migratedTo = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            int32_t migratedTo_signature = 0; [_data getBytes:(void *)&migratedTo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((migratedTo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:migratedTo_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Chat chatWithFlags:flags pid:pid title:title photo:photo participantsCount:participantsCount date:date version:version migratedTo:migratedTo];
        } copy];
        parsers[@((int32_t)0xa14dca52)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if (flags != nil && ([flags intValue] & (1 << 13))) {
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            }
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * username = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((username = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_ChatPhoto * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * restrictionReason = nil;
            if (flags != nil && ([flags intValue] & (1 << 9))) {
            if ((restrictionReason = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Chat channelWithFlags:flags pid:pid accessHash:accessHash title:title username:username photo:photo date:date version:version restrictionReason:restrictionReason];
        } copy];
        parsers[@((int32_t)0x8537784f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Chat channelForbiddenWithFlags:flags pid:pid accessHash:accessHash title:title];
        } copy];
        parsers[@((int32_t)0x5a686d7c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Chat * chat = nil;
            int32_t chat_signature = 0; [_data getBytes:(void *)&chat_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chat_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatInvite chatInviteAlreadyWithChat:chat];
        } copy];
        parsers[@((int32_t)0xdb74f558)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ChatPhoto * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantsCount = nil;
            if ((participantsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * participants = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            int32_t participants_signature = 0; [_data getBytes:(void *)&participants_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((participants = [Api62__Environment parseObject:_data offset:_offset implicitSignature:participants_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_ChatInvite chatInviteWithFlags:flags title:title photo:photo participantsCount:participantsCount participants:participants];
        } copy];
        parsers[@((int32_t)0x6410a5d2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_StickerSet * set = nil;
            int32_t set_signature = 0; [_data getBytes:(void *)&set_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((set = [Api62__Environment parseObject:_data offset:_offset implicitSignature:set_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Document * cover = nil;
            int32_t cover_signature = 0; [_data getBytes:(void *)&cover_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((cover = [Api62__Environment parseObject:_data offset:_offset implicitSignature:cover_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_StickerSetCovered stickerSetCoveredWithSet:set cover:cover];
        } copy];
        parsers[@((int32_t)0x3407e51b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_StickerSet * set = nil;
            int32_t set_signature = 0; [_data getBytes:(void *)&set_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((set = [Api62__Environment parseObject:_data offset:_offset implicitSignature:set_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * covers = nil;
            int32_t covers_signature = 0; [_data getBytes:(void *)&covers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((covers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:covers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_StickerSetCovered stickerSetMultiCoveredWithSet:set covers:covers];
        } copy];
        parsers[@((int32_t)0x6262c36c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * requests = nil;
            int32_t requests_signature = 0; [_data getBytes:(void *)&requests_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((requests = [Api62__Environment parseObject:_data offset:_offset implicitSignature:requests_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Requests contacts_requestsWithRequests:requests users:users];
        } copy];
        parsers[@((int32_t)0x6f585b8c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * requests = nil;
            int32_t requests_signature = 0; [_data getBytes:(void *)&requests_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((requests = [Api62__Environment parseObject:_data offset:_offset implicitSignature:requests_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Requests contacts_requestsSliceWithCount:count requests:requests users:users];
        } copy];
        parsers[@((int32_t)0xf56ee2a8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * participants = nil;
            int32_t participants_signature = 0; [_data getBytes:(void *)&participants_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((participants = [Api62__Environment parseObject:_data offset:_offset implicitSignature:participants_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_channels_ChannelParticipants channels_channelParticipantsWithCount:count participants:participants users:users];
        } copy];
        parsers[@((int32_t)0x3819538f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * country = nil;
            if ((country = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * state = nil;
            if ((state = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * city = nil;
            if ((city = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * district = nil;
            if ((district = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * street = nil;
            if ((street = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_GeoPlaceName geoPlaceNameWithCountry:country state:state city:city district:district street:street];
        } copy];
        parsers[@((int32_t)0xdc3d824f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_RichText textEmpty];
        } copy];
        parsers[@((int32_t)0x744694e0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textPlainWithText:text];
        } copy];
        parsers[@((int32_t)0x6724abc4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textBoldWithText:text];
        } copy];
        parsers[@((int32_t)0xd912a59c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textItalicWithText:text];
        } copy];
        parsers[@((int32_t)0xc12622c4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textUnderlineWithText:text];
        } copy];
        parsers[@((int32_t)0x9bf8bb95)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textStrikeWithText:text];
        } copy];
        parsers[@((int32_t)0x6c3f19b9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textFixedWithText:text];
        } copy];
        parsers[@((int32_t)0x3c2884c1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * webpageId = nil;
            if ((webpageId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textUrlWithText:text url:url webpageId:webpageId];
        } copy];
        parsers[@((int32_t)0xde5a0dd6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_RichText * text = nil;
            int32_t text_signature = 0; [_data getBytes:(void *)&text_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:text_signature metaInfo:nil]) == nil)
               return nil;
            NSString * email = nil;
            if ((email = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_RichText textEmailWithText:text email:email];
        } copy];
        parsers[@((int32_t)0x7e6260d7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * texts = nil;
            int32_t texts_signature = 0; [_data getBytes:(void *)&texts_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((texts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:texts_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_RichText textConcatWithTexts:texts];
        } copy];
        parsers[@((int32_t)0xf220f3f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_User * user = nil;
            int32_t user_signature = 0; [_data getBytes:(void *)&user_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((user = [Api62__Environment parseObject:_data offset:_offset implicitSignature:user_signature metaInfo:nil]) == nil)
               return nil;
            NSString * about = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((about = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_contacts_Link * link = nil;
            int32_t link_signature = 0; [_data getBytes:(void *)&link_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((link = [Api62__Environment parseObject:_data offset:_offset implicitSignature:link_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Photo * profilePhoto = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t profilePhoto_signature = 0; [_data getBytes:(void *)&profilePhoto_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((profilePhoto = [Api62__Environment parseObject:_data offset:_offset implicitSignature:profilePhoto_signature metaInfo:nil]) == nil)
               return nil;
            }
            Api62_PeerNotifySettings * notifySettings = nil;
            int32_t notifySettings_signature = 0; [_data getBytes:(void *)&notifySettings_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((notifySettings = [Api62__Environment parseObject:_data offset:_offset implicitSignature:notifySettings_signature metaInfo:nil]) == nil)
               return nil;
            Api62_BotInfo * botInfo = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            int32_t botInfo_signature = 0; [_data getBytes:(void *)&botInfo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((botInfo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:botInfo_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * commonChatsCount = nil;
            if ((commonChatsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_UserFull userFullWithFlags:flags user:user about:about link:link profilePhoto:profilePhoto notifySettings:notifySettings botInfo:botInfo commonChatsCount:commonChatsCount];
        } copy];
        parsers[@((int32_t)0xf03064d8)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPeerNotifyEvents inputPeerNotifyEventsEmpty];
        } copy];
        parsers[@((int32_t)0xe86a2c74)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPeerNotifyEvents inputPeerNotifyEventsAll];
        } copy];
        parsers[@((int32_t)0xee8c1e86)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputChannel inputChannelEmpty];
        } copy];
        parsers[@((int32_t)0xafeb712e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputChannel inputChannelWithChannelId:channelId accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x5d8c6cc)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * ipAddress = nil;
            if ((ipAddress = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * port = nil;
            if ((port = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_DcOption dcOptionWithFlags:flags pid:pid ipAddress:ipAddress port:port];
        } copy];
        parsers[@((int32_t)0xe8346f53)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * minId = nil;
            if ((minId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxId = nil;
            if ((maxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageGroup messageGroupWithMinId:minId maxId:maxId count:count date:date];
        } copy];
        parsers[@((int32_t)0xb7b72ab3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * email = nil;
            if ((email = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_account_PasswordSettings account_passwordSettingsWithEmail:email];
        } copy];
        parsers[@((int32_t)0x8987f311)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * critical = nil;
            int32_t critical_signature = 0; [_data getBytes:(void *)&critical_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((critical = [Api62__Environment parseObject:_data offset:_offset implicitSignature:critical_signature metaInfo:nil]) == nil)
               return nil;
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_help_AppUpdate help_appUpdateWithPid:pid critical:critical url:url text:text];
        } copy];
        parsers[@((int32_t)0xc45a6536)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_help_AppUpdate help_noAppUpdate];
        } copy];
        parsers[@((int32_t)0xae2de196)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_help_AppUpdate help_getAppUpdate];
        } copy];
        parsers[@((int32_t)0xd0d9b163)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_ChannelParticipant * participant = nil;
            int32_t participant_signature = 0; [_data getBytes:(void *)&participant_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((participant = [Api62__Environment parseObject:_data offset:_offset implicitSignature:participant_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_channels_ChannelParticipant channels_channelParticipantWithParticipant:participant users:users];
        } copy];
        parsers[@((int32_t)0x96a0c63e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_messages_Message * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            Api62_contacts_Link * link = nil;
            int32_t link_signature = 0; [_data getBytes:(void *)&link_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((link = [Api62__Environment parseObject:_data offset:_offset implicitSignature:link_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_contacts_SentLink contacts_sentLinkWithMessage:message link:link];
        } copy];
        parsers[@((int32_t)0xb285a0c6)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantRole channelRoleEmpty];
        } copy];
        parsers[@((int32_t)0x9618d975)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantRole channelRoleModerator];
        } copy];
        parsers[@((int32_t)0x820bfe8c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantRole channelRoleEditor];
        } copy];
        parsers[@((int32_t)0xaa963b05)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileUnknown];
        } copy];
        parsers[@((int32_t)0x7efe0e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileJpeg];
        } copy];
        parsers[@((int32_t)0xcae1aadf)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileGif];
        } copy];
        parsers[@((int32_t)0xa4f63c0)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_filePng];
        } copy];
        parsers[@((int32_t)0xae1e508d)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_filePdf];
        } copy];
        parsers[@((int32_t)0x528a0677)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileMp3];
        } copy];
        parsers[@((int32_t)0x4b09ebbc)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileMov];
        } copy];
        parsers[@((int32_t)0x40bc6f52)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_filePartial];
        } copy];
        parsers[@((int32_t)0xb3cea0e4)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileMp4];
        } copy];
        parsers[@((int32_t)0x1081464c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_storage_FileType storage_fileWebp];
        } copy];
        parsers[@((int32_t)0x4fcba9c8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * sets = nil;
            int32_t sets_signature = 0; [_data getBytes:(void *)&sets_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sets = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sets_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_ArchivedStickers messages_archivedStickersWithCount:count sets:sets];
        } copy];
        parsers[@((int32_t)0x57f17692)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * offsetId = nil;
            if ((offsetId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * limit = nil;
            if ((limit = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_ArchivedStickers messages_getArchivedStickersWithFlags:flags offsetId:offsetId limit:limit];
        } copy];
        parsers[@((int32_t)0x1837c364)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputEncryptedFile inputEncryptedFileEmpty];
        } copy];
        parsers[@((int32_t)0x64bd0306)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * parts = nil;
            if ((parts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * md5Checksum = nil;
            if ((md5Checksum = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * keyFingerprint = nil;
            if ((keyFingerprint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputEncryptedFile inputEncryptedFileUploadedWithPid:pid parts:parts md5Checksum:md5Checksum keyFingerprint:keyFingerprint];
        } copy];
        parsers[@((int32_t)0x5a17b5e5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputEncryptedFile inputEncryptedFileWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x2dc173c8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * parts = nil;
            if ((parts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * keyFingerprint = nil;
            if ((keyFingerprint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputEncryptedFile inputEncryptedFileBigUploadedWithPid:pid parts:parts keyFingerprint:keyFingerprint];
        } copy];
        parsers[@((int32_t)0x560f8935)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_SentEncryptedMessage messages_sentEncryptedMessageWithDate:date];
        } copy];
        parsers[@((int32_t)0x9493ff32)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_EncryptedFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_SentEncryptedMessage messages_sentEncryptedFileWithDate:date file:file];
        } copy];
        parsers[@((int32_t)0x1f486803)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * link = nil;
            if ((link = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_ExportedMessageLink exportedMessageLinkWithLink:link];
        } copy];
        parsers[@((int32_t)0xcd050916)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * tmpSessions = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((tmpSessions = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            Api62_User * user = nil;
            int32_t user_signature = 0; [_data getBytes:(void *)&user_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((user = [Api62__Environment parseObject:_data offset:_offset implicitSignature:user_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_Authorization auth_authorizationWithFlags:flags tmpSessions:tmpSessions user:user];
        } copy];
        parsers[@((int32_t)0xf52ff27f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * parts = nil;
            if ((parts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * name = nil;
            if ((name = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * md5Checksum = nil;
            if ((md5Checksum = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputFile inputFileWithPid:pid parts:parts name:name md5Checksum:md5Checksum];
        } copy];
        parsers[@((int32_t)0xfa4f0bb5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * parts = nil;
            if ((parts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * name = nil;
            if ((name = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputFile inputFileBigWithPid:pid parts:parts name:name];
        } copy];
        parsers[@((int32_t)0x9db1bc6d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Peer peerUserWithUserId:userId];
        } copy];
        parsers[@((int32_t)0xbad0e5bb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Peer peerChatWithChatId:chatId];
        } copy];
        parsers[@((int32_t)0xbddde532)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Peer peerChannelWithChannelId:channelId];
        } copy];
        parsers[@((int32_t)0x9d05049)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_UserStatus userStatusEmpty];
        } copy];
        parsers[@((int32_t)0xedb93949)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * expires = nil;
            if ((expires = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_UserStatus userStatusOnlineWithExpires:expires];
        } copy];
        parsers[@((int32_t)0x8c703f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * wasOnline = nil;
            if ((wasOnline = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_UserStatus userStatusOfflineWithWasOnline:wasOnline];
        } copy];
        parsers[@((int32_t)0xe26f42f1)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_UserStatus userStatusRecently];
        } copy];
        parsers[@((int32_t)0x7bf09fc)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_UserStatus userStatusLastWeek];
        } copy];
        parsers[@((int32_t)0x77ebc742)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_UserStatus userStatusLastMonth];
        } copy];
        parsers[@((int32_t)0x66ffba14)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * topMessage = nil;
            if ((topMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * readInboxMaxId = nil;
            if ((readInboxMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * readOutboxMaxId = nil;
            if ((readOutboxMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * unreadCount = nil;
            if ((unreadCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_PeerNotifySettings * notifySettings = nil;
            int32_t notifySettings_signature = 0; [_data getBytes:(void *)&notifySettings_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((notifySettings = [Api62__Environment parseObject:_data offset:_offset implicitSignature:notifySettings_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            Api62_DraftMessage * draft = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            int32_t draft_signature = 0; [_data getBytes:(void *)&draft_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((draft = [Api62__Environment parseObject:_data offset:_offset implicitSignature:draft_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Dialog dialogWithFlags:flags peer:peer topMessage:topMessage readInboxMaxId:readInboxMaxId readOutboxMaxId:readOutboxMaxId unreadCount:unreadCount notifySettings:notifySettings pts:pts draft:draft];
        } copy];
        parsers[@((int32_t)0xaf7e0394)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_help_AppChangelog help_appChangelogEmpty];
        } copy];
        parsers[@((int32_t)0x4668e6bd)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_help_AppChangelog help_appChangelogWithText:text];
        } copy];
        parsers[@((int32_t)0xb921197a)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_help_AppChangelog help_getAppChangelog];
        } copy];
        parsers[@((int32_t)0x16bf744e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageTypingAction];
        } copy];
        parsers[@((int32_t)0xfd5ec8f5)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageCancelAction];
        } copy];
        parsers[@((int32_t)0xa187d66f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageRecordVideoAction];
        } copy];
        parsers[@((int32_t)0xd52f73f7)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageRecordAudioAction];
        } copy];
        parsers[@((int32_t)0x176f8ba1)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageGeoLocationAction];
        } copy];
        parsers[@((int32_t)0x628cbc6f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageChooseContactAction];
        } copy];
        parsers[@((int32_t)0xe9763aec)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * progress = nil;
            if ((progress = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_SendMessageAction sendMessageUploadVideoActionWithProgress:progress];
        } copy];
        parsers[@((int32_t)0xf351d7ab)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * progress = nil;
            if ((progress = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_SendMessageAction sendMessageUploadAudioActionWithProgress:progress];
        } copy];
        parsers[@((int32_t)0xaa0cd9e4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * progress = nil;
            if ((progress = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_SendMessageAction sendMessageUploadDocumentActionWithProgress:progress];
        } copy];
        parsers[@((int32_t)0xd1d34a26)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * progress = nil;
            if ((progress = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_SendMessageAction sendMessageUploadPhotoActionWithProgress:progress];
        } copy];
        parsers[@((int32_t)0xdd6a8f48)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageGamePlayAction];
        } copy];
        parsers[@((int32_t)0x15c2c99a)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_SendMessageAction sendMessageGameStopAction];
        } copy];
        parsers[@((int32_t)0xbc2eab30)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PrivacyKey privacyKeyStatusTimestamp];
        } copy];
        parsers[@((int32_t)0x500e6dfa)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PrivacyKey privacyKeyChatInvite];
        } copy];
        parsers[@((int32_t)0x4e90bfd6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * randomId = nil;
            if ((randomId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateMessageIDWithPid:pid randomId:randomId];
        } copy];
        parsers[@((int32_t)0xd15de04d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateRestoreMessagesWithMessages:messages pts:pts];
        } copy];
        parsers[@((int32_t)0x7761198)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_ChatParticipants * participants = nil;
            int32_t participants_signature = 0; [_data getBytes:(void *)&participants_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((participants = [Api62__Environment parseObject:_data offset:_offset implicitSignature:participants_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChatParticipantsWithParticipants:participants];
        } copy];
        parsers[@((int32_t)0x1bfbd823)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_UserStatus * status = nil;
            int32_t status_signature = 0; [_data getBytes:(void *)&status_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((status = [Api62__Environment parseObject:_data offset:_offset implicitSignature:status_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateUserStatusWithUserId:userId status:status];
        } copy];
        parsers[@((int32_t)0x2575bbb9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateContactRegisteredWithUserId:userId date:date];
        } copy];
        parsers[@((int32_t)0x5f83b963)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * contacts = nil;
            int32_t contacts_signature = 0; [_data getBytes:(void *)&contacts_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((contacts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:contacts_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Update updateContactLocatedWithContacts:contacts];
        } copy];
        parsers[@((int32_t)0x6f690963)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateActivationWithUserId:userId];
        } copy];
        parsers[@((int32_t)0x8f06529a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * authKeyId = nil;
            if ((authKeyId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * device = nil;
            if ((device = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * location = nil;
            if ((location = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateNewAuthorizationWithAuthKeyId:authKeyId date:date device:device location:location];
        } copy];
        parsers[@((int32_t)0xdad7490e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_PhoneCall * phoneCall = nil;
            int32_t phoneCall_signature = 0; [_data getBytes:(void *)&phoneCall_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((phoneCall = [Api62__Environment parseObject:_data offset:_offset implicitSignature:phoneCall_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updatePhoneCallRequestedWithPhoneCall:phoneCall];
        } copy];
        parsers[@((int32_t)0x5609ff88)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSData * aOrB = nil;
            if ((aOrB = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            Api62_PhoneConnection * connection = nil;
            int32_t connection_signature = 0; [_data getBytes:(void *)&connection_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((connection = [Api62__Environment parseObject:_data offset:_offset implicitSignature:connection_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updatePhoneCallConfirmedWithPid:pid aOrB:aOrB connection:connection];
        } copy];
        parsers[@((int32_t)0x31ae2cc2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updatePhoneCallDeclinedWithPid:pid];
        } copy];
        parsers[@((int32_t)0x95313b0c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_UserProfilePhoto * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * previous = nil;
            int32_t previous_signature = 0; [_data getBytes:(void *)&previous_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((previous = [Api62__Environment parseObject:_data offset:_offset implicitSignature:previous_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateUserPhotoWithUserId:userId date:date photo:photo previous:previous];
        } copy];
        parsers[@((int32_t)0x12bcbd9a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_EncryptedMessage * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * qts = nil;
            if ((qts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateNewEncryptedMessageWithMessage:message qts:qts];
        } copy];
        parsers[@((int32_t)0x1710f156)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateEncryptedChatTypingWithChatId:chatId];
        } copy];
        parsers[@((int32_t)0xb4a2e88d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_EncryptedChat * chat = nil;
            int32_t chat_signature = 0; [_data getBytes:(void *)&chat_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chat_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateEncryptionWithChat:chat date:date];
        } copy];
        parsers[@((int32_t)0x38fe25b7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxDate = nil;
            if ((maxDate = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateEncryptedMessagesReadWithChatId:chatId maxDate:maxDate date:date];
        } copy];
        parsers[@((int32_t)0x6e5f8c22)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChatParticipantDeleteWithChatId:chatId userId:userId version:version];
        } copy];
        parsers[@((int32_t)0x8e5e9873)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * dcOptions = nil;
            int32_t dcOptions_signature = 0; [_data getBytes:(void *)&dcOptions_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((dcOptions = [Api62__Environment parseObject:_data offset:_offset implicitSignature:dcOptions_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Update updateDcOptionsWithDcOptions:dcOptions];
        } copy];
        parsers[@((int32_t)0x80ece81a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * blocked = nil;
            int32_t blocked_signature = 0; [_data getBytes:(void *)&blocked_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((blocked = [Api62__Environment parseObject:_data offset:_offset implicitSignature:blocked_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateUserBlockedWithUserId:userId blocked:blocked];
        } copy];
        parsers[@((int32_t)0xbec268ef)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_NotifyPeer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            Api62_PeerNotifySettings * notifySettings = nil;
            int32_t notifySettings_signature = 0; [_data getBytes:(void *)&notifySettings_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((notifySettings = [Api62__Environment parseObject:_data offset:_offset implicitSignature:notifySettings_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateNotifySettingsWithPeer:peer notifySettings:notifySettings];
        } copy];
        parsers[@((int32_t)0x5c486927)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_SendMessageAction * action = nil;
            int32_t action_signature = 0; [_data getBytes:(void *)&action_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((action = [Api62__Environment parseObject:_data offset:_offset implicitSignature:action_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateUserTypingWithUserId:userId action:action];
        } copy];
        parsers[@((int32_t)0x9a65ea1f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_SendMessageAction * action = nil;
            int32_t action_signature = 0; [_data getBytes:(void *)&action_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((action = [Api62__Environment parseObject:_data offset:_offset implicitSignature:action_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChatUserTypingWithChatId:chatId userId:userId action:action];
        } copy];
        parsers[@((int32_t)0xa7332b73)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * firstName = nil;
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * lastName = nil;
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * username = nil;
            if ((username = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateUserNameWithUserId:userId firstName:firstName lastName:lastName username:username];
        } copy];
        parsers[@((int32_t)0x382dd3e4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_MessageMedia * media = nil;
            int32_t media_signature = 0; [_data getBytes:(void *)&media_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((media = [Api62__Environment parseObject:_data offset:_offset implicitSignature:media_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * popup = nil;
            int32_t popup_signature = 0; [_data getBytes:(void *)&popup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((popup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:popup_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateServiceNotificationWithType:type message:message media:media popup:popup];
        } copy];
        parsers[@((int32_t)0xee3b272a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_PrivacyKey * key = nil;
            int32_t key_signature = 0; [_data getBytes:(void *)&key_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((key = [Api62__Environment parseObject:_data offset:_offset implicitSignature:key_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * rules = nil;
            int32_t rules_signature = 0; [_data getBytes:(void *)&rules_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((rules = [Api62__Environment parseObject:_data offset:_offset implicitSignature:rules_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Update updatePrivacyWithKey:key rules:rules];
        } copy];
        parsers[@((int32_t)0x12b9417b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * phone = nil;
            if ((phone = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateUserPhoneWithUserId:userId phone:phone];
        } copy];
        parsers[@((int32_t)0x1f2b0afd)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Message * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateNewMessageWithMessage:message pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x2e5ab668)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateReadMessagesWithMessages:messages pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0xa20db0e5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateDeleteMessagesWithMessages:messages pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x9961fd5c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxId = nil;
            if ((maxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateReadHistoryInboxWithPeer:peer maxId:maxId pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x2f2f21bf)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxId = nil;
            if ((maxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateReadHistoryOutboxWithPeer:peer maxId:maxId pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x9d2e67c5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_ContactLink * myLink = nil;
            int32_t myLink_signature = 0; [_data getBytes:(void *)&myLink_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((myLink = [Api62__Environment parseObject:_data offset:_offset implicitSignature:myLink_signature metaInfo:nil]) == nil)
               return nil;
            Api62_ContactLink * foreignLink = nil;
            int32_t foreignLink_signature = 0; [_data getBytes:(void *)&foreignLink_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((foreignLink = [Api62__Environment parseObject:_data offset:_offset implicitSignature:foreignLink_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateContactLinkWithUserId:userId myLink:myLink foreignLink:foreignLink];
        } copy];
        parsers[@((int32_t)0x68c13933)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateReadMessagesContentsWithMessages:messages pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0xea4b0e5c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChatParticipantAddWithChatId:chatId userId:userId inviterId:inviterId date:date version:version];
        } copy];
        parsers[@((int32_t)0x7f891213)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_WebPage * webpage = nil;
            int32_t webpage_signature = 0; [_data getBytes:(void *)&webpage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((webpage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:webpage_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateWebPageWithWebpage:webpage pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0xb6d45656)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChannelWithChannelId:channelId];
        } copy];
        parsers[@((int32_t)0xc36c1e3c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_MessageGroup * group = nil;
            int32_t group_signature = 0; [_data getBytes:(void *)&group_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((group = [Api62__Environment parseObject:_data offset:_offset implicitSignature:group_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChannelGroupWithChannelId:channelId group:group];
        } copy];
        parsers[@((int32_t)0x62ba04d9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Message * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateNewChannelMessageWithMessage:message pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x4214f37f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxId = nil;
            if ((maxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateReadChannelInboxWithChannelId:channelId maxId:maxId];
        } copy];
        parsers[@((int32_t)0xc37521c9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateDeleteChannelMessagesWithChannelId:channelId messages:messages pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x98a12b4b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * views = nil;
            if ((views = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChannelMessageViewsWithChannelId:channelId pid:pid views:views];
        } copy];
        parsers[@((int32_t)0x6e947941)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * enabled = nil;
            int32_t enabled_signature = 0; [_data getBytes:(void *)&enabled_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((enabled = [Api62__Environment parseObject:_data offset:_offset implicitSignature:enabled_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChatAdminsWithChatId:chatId enabled:enabled version:version];
        } copy];
        parsers[@((int32_t)0xb6901959)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * isAdmin = nil;
            int32_t isAdmin_signature = 0; [_data getBytes:(void *)&isAdmin_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((isAdmin = [Api62__Environment parseObject:_data offset:_offset implicitSignature:isAdmin_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChatParticipantAdminWithChatId:chatId userId:userId isAdmin:isAdmin version:version];
        } copy];
        parsers[@((int32_t)0x688a30aa)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_messages_StickerSet * stickerset = nil;
            int32_t stickerset_signature = 0; [_data getBytes:(void *)&stickerset_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickerset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickerset_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateNewStickerSetWithStickerset:stickerset];
        } copy];
        parsers[@((int32_t)0x43ae3dec)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Update updateStickerSets];
        } copy];
        parsers[@((int32_t)0x9375341e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Update updateSavedGifs];
        } copy];
        parsers[@((int32_t)0x1b3f4df7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Message * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateEditChannelMessageWithMessage:message pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x98592475)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChannelPinnedMessageWithChannelId:channelId pid:pid];
        } copy];
        parsers[@((int32_t)0xeb0467fb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Update updateChannelTooLongWithFlags:flags channelId:channelId pts:pts];
        } copy];
        parsers[@((int32_t)0xe40370a3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Message * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateEditMessageWithMessage:message pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0x54826690)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * queryId = nil;
            if ((queryId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * query = nil;
            if ((query = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPoint * geo = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSString * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateBotInlineQueryWithFlags:flags queryId:queryId userId:userId query:query geo:geo offset:offset];
        } copy];
        parsers[@((int32_t)0xe48f964)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * query = nil;
            if ((query = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPoint * geo = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_InputBotInlineMessageID * msgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            int32_t msgId_signature = 0; [_data getBytes:(void *)&msgId_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((msgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:msgId_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Update updateBotInlineSendWithFlags:flags userId:userId query:query geo:geo pid:pid msgId:msgId];
        } copy];
        parsers[@((int32_t)0x25d6c9c7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxId = nil;
            if ((maxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateReadChannelOutboxWithChannelId:channelId maxId:maxId];
        } copy];
        parsers[@((int32_t)0xee2bb969)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            Api62_DraftMessage * draft = nil;
            int32_t draft_signature = 0; [_data getBytes:(void *)&draft_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((draft = [Api62__Environment parseObject:_data offset:_offset implicitSignature:draft_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateDraftMessageWithPeer:peer draft:draft];
        } copy];
        parsers[@((int32_t)0x571d2742)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Update updateReadFeaturedStickers];
        } copy];
        parsers[@((int32_t)0x9a422c20)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Update updateRecentStickers];
        } copy];
        parsers[@((int32_t)0xa229dd06)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Update updateConfig];
        } copy];
        parsers[@((int32_t)0x3354678f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Update updatePtsChanged];
        } copy];
        parsers[@((int32_t)0xbb2d201)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * order = nil;
            int32_t order_signature = 0; [_data getBytes:(void *)&order_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((order = [Api62__Environment parseObject:_data offset:_offset implicitSignature:order_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            return [Api62_Update updateStickerSetsOrderWithFlags:flags order:order];
        } copy];
        parsers[@((int32_t)0xe73547e1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * queryId = nil;
            if ((queryId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * msgId = nil;
            if ((msgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatInstance = nil;
            if ((chatInstance = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSData * data = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((data = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            }
            NSString * gameShortName = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((gameShortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Update updateBotCallbackQueryWithFlags:flags queryId:queryId userId:userId peer:peer msgId:msgId chatInstance:chatInstance data:data gameShortName:gameShortName];
        } copy];
        parsers[@((int32_t)0xf9d27a5a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * queryId = nil;
            if ((queryId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputBotInlineMessageID * msgId = nil;
            int32_t msgId_signature = 0; [_data getBytes:(void *)&msgId_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((msgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:msgId_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatInstance = nil;
            if ((chatInstance = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSData * data = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((data = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            }
            NSString * gameShortName = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((gameShortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Update updateInlineBotCallbackQueryWithFlags:flags queryId:queryId userId:userId msgId:msgId chatInstance:chatInstance data:data gameShortName:gameShortName];
        } copy];
        parsers[@((int32_t)0x40771900)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_WebPage * webpage = nil;
            int32_t webpage_signature = 0; [_data getBytes:(void *)&webpage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((webpage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:webpage_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateChannelWebPageWithChannelId:channelId webpage:webpage pts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0xab0f6b1e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_PhoneCall * phoneCall = nil;
            int32_t phoneCall_signature = 0; [_data getBytes:(void *)&phoneCall_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((phoneCall = [Api62__Environment parseObject:_data offset:_offset implicitSignature:phoneCall_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updatePhoneCallWithPhoneCall:phoneCall];
        } copy];
        parsers[@((int32_t)0xd711a2cc)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Update updateDialogPinnedWithFlags:flags peer:peer];
        } copy];
        parsers[@((int32_t)0xd8caf68d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * order = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t order_signature = 0; [_data getBytes:(void *)&order_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((order = [Api62__Environment parseObject:_data offset:_offset implicitSignature:order_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_Update updatePinnedDialogsWithFlags:flags order:order];
        } copy];
        parsers[@((int32_t)0x15ebac1d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChannelParticipant channelParticipantWithUserId:userId date:date];
        } copy];
        parsers[@((int32_t)0xa3289a6d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChannelParticipant channelParticipantSelfWithUserId:userId inviterId:inviterId date:date];
        } copy];
        parsers[@((int32_t)0x91057fef)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChannelParticipant channelParticipantModeratorWithUserId:userId inviterId:inviterId date:date];
        } copy];
        parsers[@((int32_t)0x98192d61)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChannelParticipant channelParticipantEditorWithUserId:userId inviterId:inviterId date:date];
        } copy];
        parsers[@((int32_t)0x8cc5e69a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * kickedBy = nil;
            if ((kickedBy = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChannelParticipant channelParticipantKickedWithUserId:userId kickedBy:kickedBy date:date];
        } copy];
        parsers[@((int32_t)0xe3e2e1f9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChannelParticipant channelParticipantCreatorWithUserId:userId];
        } copy];
        parsers[@((int32_t)0x1c138d15)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * blocked = nil;
            int32_t blocked_signature = 0; [_data getBytes:(void *)&blocked_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((blocked = [Api62__Environment parseObject:_data offset:_offset implicitSignature:blocked_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Blocked contacts_blockedWithBlocked:blocked users:users];
        } copy];
        parsers[@((int32_t)0x900802a1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * blocked = nil;
            int32_t blocked_signature = 0; [_data getBytes:(void *)&blocked_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((blocked = [Api62__Environment parseObject:_data offset:_offset implicitSignature:blocked_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Blocked contacts_blockedSliceWithCount:count blocked:blocked users:users];
        } copy];
        parsers[@((int32_t)0xc4b9f9bb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * code = nil;
            if ((code = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Error errorWithCode:code text:text];
        } copy];
        parsers[@((int32_t)0x59aefc57)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * code = nil;
            if ((code = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * nDescription = nil;
            if ((nDescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * debug = nil;
            if ((debug = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * requestParams = nil;
            if ((requestParams = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Error richErrorWithCode:code type:type nDescription:nDescription debug:debug requestParams:requestParams];
        } copy];
        parsers[@((int32_t)0xe144acaf)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPoint * location = nil;
            int32_t location_signature = 0; [_data getBytes:(void *)&location_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((location = [Api62__Environment parseObject:_data offset:_offset implicitSignature:location_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * distance = nil;
            if ((distance = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ContactLocated contactLocatedWithUserId:userId location:location date:date distance:distance];
        } copy];
        parsers[@((int32_t)0xc1257157)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * hidden = nil;
            int32_t hidden_signature = 0; [_data getBytes:(void *)&hidden_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hidden = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hidden_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * distance = nil;
            if ((distance = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ContactLocated contactLocatedPreviewWithPhash:phash hidden:hidden date:date distance:distance];
        } copy];
        parsers[@((int32_t)0xa2fa4880)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonWithText:text];
        } copy];
        parsers[@((int32_t)0x258aff05)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonUrlWithText:text url:url];
        } copy];
        parsers[@((int32_t)0x683a5e46)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSData * data = nil;
            if ((data = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonCallbackWithText:text data:data];
        } copy];
        parsers[@((int32_t)0xb16a6c29)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonRequestPhoneWithText:text];
        } copy];
        parsers[@((int32_t)0xfc796b3f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonRequestGeoLocationWithText:text];
        } copy];
        parsers[@((int32_t)0x568a748)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * query = nil;
            if ((query = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonSwitchInlineWithFlags:flags text:text query:query];
        } copy];
        parsers[@((int32_t)0x50f41ccf)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_KeyboardButton keyboardButtonGameWithText:text];
        } copy];
        parsers[@((int32_t)0xd3680c61)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_UserStatus * status = nil;
            int32_t status_signature = 0; [_data getBytes:(void *)&status_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((status = [Api62__Environment parseObject:_data offset:_offset implicitSignature:status_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_ContactStatus contactStatusWithUserId:userId status:status];
        } copy];
        parsers[@((int32_t)0xe17e23c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhotoSize photoSizeEmptyWithType:type];
        } copy];
        parsers[@((int32_t)0x77bfb61b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_FileLocation * location = nil;
            int32_t location_signature = 0; [_data getBytes:(void *)&location_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((location = [Api62__Environment parseObject:_data offset:_offset implicitSignature:location_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * w = nil;
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * h = nil;
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * size = nil;
            if ((size = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhotoSize photoSizeWithType:type location:location w:w h:h size:size];
        } copy];
        parsers[@((int32_t)0xe9a734fa)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_FileLocation * location = nil;
            int32_t location_signature = 0; [_data getBytes:(void *)&location_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((location = [Api62__Environment parseObject:_data offset:_offset implicitSignature:location_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * w = nil;
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * h = nil;
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * bytes = nil;
            if ((bytes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_PhotoSize photoCachedSizeWithType:type location:location w:w h:h bytes:bytes];
        } copy];
        parsers[@((int32_t)0xf1749a22)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_Stickers messages_stickersNotModified];
        } copy];
        parsers[@((int32_t)0x8a8ecd32)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * stickers = nil;
            int32_t stickers_signature = 0; [_data getBytes:(void *)&stickers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Stickers messages_stickersWithPhash:phash stickers:stickers];
        } copy];
        parsers[@((int32_t)0x40f5c53a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * noSuggestions = nil;
            int32_t noSuggestions_signature = 0; [_data getBytes:(void *)&noSuggestions_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((noSuggestions = [Api62__Environment parseObject:_data offset:_offset implicitSignature:noSuggestions_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * hideContacts = nil;
            int32_t hideContacts_signature = 0; [_data getBytes:(void *)&hideContacts_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hideContacts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hideContacts_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * hideLocated = nil;
            int32_t hideLocated_signature = 0; [_data getBytes:(void *)&hideLocated_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hideLocated = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hideLocated_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * hideLastVisit = nil;
            int32_t hideLastVisit_signature = 0; [_data getBytes:(void *)&hideLastVisit_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hideLastVisit = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hideLastVisit_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_GlobalPrivacySettings globalPrivacySettingsWithNoSuggestions:noSuggestions hideContacts:hideContacts hideLocated:hideLocated hideLastVisit:hideLastVisit];
        } copy];
        parsers[@((int32_t)0x3c20629f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * startParam = nil;
            if ((startParam = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InlineBotSwitchPM inlineBotSwitchPMWithText:text startParam:startParam];
        } copy];
        parsers[@((int32_t)0x450a1c0a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * nextOffset = nil;
            if ((nextOffset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * results = nil;
            int32_t results_signature = 0; [_data getBytes:(void *)&results_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((results = [Api62__Environment parseObject:_data offset:_offset implicitSignature:results_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_FoundGifs messages_foundGifsWithNextOffset:nextOffset results:results];
        } copy];
        parsers[@((int32_t)0x7c596b46)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * volumeId = nil;
            if ((volumeId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * localId = nil;
            if ((localId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * secret = nil;
            if ((secret = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_FileLocation fileLocationUnavailableWithVolumeId:volumeId localId:localId secret:secret];
        } copy];
        parsers[@((int32_t)0x53d69076)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * dcId = nil;
            if ((dcId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * volumeId = nil;
            if ((volumeId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * localId = nil;
            if ((localId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * secret = nil;
            if ((secret = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_FileLocation fileLocationWithDcId:dcId volumeId:volumeId localId:localId secret:secret];
        } copy];
        parsers[@((int32_t)0xb8bc5b0c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputPeer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputNotifyPeer inputNotifyPeerWithPeer:peer];
        } copy];
        parsers[@((int32_t)0x193b4417)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputNotifyPeer inputNotifyUsers];
        } copy];
        parsers[@((int32_t)0x4a95e84e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputNotifyPeer inputNotifyChats];
        } copy];
        parsers[@((int32_t)0xa429b886)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputNotifyPeer inputNotifyAll];
        } copy];
        parsers[@((int32_t)0xed18c118)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * randomId = nil;
            if ((randomId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * bytes = nil;
            if ((bytes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            Api62_EncryptedFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_EncryptedMessage encryptedMessageWithRandomId:randomId chatId:chatId date:date bytes:bytes file:file];
        } copy];
        parsers[@((int32_t)0x23734b06)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * randomId = nil;
            if ((randomId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * bytes = nil;
            if ((bytes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_EncryptedMessage encryptedMessageServiceWithRandomId:randomId chatId:chatId date:date bytes:bytes];
        } copy];
        parsers[@((int32_t)0xde3f3c79)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantsFilter channelParticipantsRecent];
        } copy];
        parsers[@((int32_t)0xb4608969)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantsFilter channelParticipantsAdmins];
        } copy];
        parsers[@((int32_t)0x3c37bb7a)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantsFilter channelParticipantsKicked];
        } copy];
        parsers[@((int32_t)0xb0d1865b)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelParticipantsFilter channelParticipantsBots];
        } copy];
        parsers[@((int32_t)0xeb1477e8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_WebPage webPageEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0xc586da1c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_WebPage webPagePendingWithPid:pid date:date];
        } copy];
        parsers[@((int32_t)0x85849473)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_WebPage webPageNotModified];
        } copy];
        parsers[@((int32_t)0x5f07b4bc)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * displayUrl = nil;
            if ((displayUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * siteName = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((siteName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * title = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * pdescription = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_Photo * photo = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSString * embedUrl = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((embedUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * embedType = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((embedType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * embedWidth = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((embedWidth = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * embedHeight = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((embedHeight = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * duration = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSString * author = nil;
            if (flags != nil && ([flags intValue] & (1 << 8))) {
            if ((author = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_Document * document = nil;
            if (flags != nil && ([flags intValue] & (1 << 9))) {
            int32_t document_signature = 0; [_data getBytes:(void *)&document_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((document = [Api62__Environment parseObject:_data offset:_offset implicitSignature:document_signature metaInfo:nil]) == nil)
               return nil;
            }
            Api62_Page * cachedPage = nil;
            if (flags != nil && ([flags intValue] & (1 << 10))) {
            int32_t cachedPage_signature = 0; [_data getBytes:(void *)&cachedPage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((cachedPage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:cachedPage_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_WebPage webPageWithFlags:flags pid:pid url:url displayUrl:displayUrl phash:phash type:type siteName:siteName title:title pdescription:pdescription photo:photo embedUrl:embedUrl embedType:embedType embedWidth:embedWidth embedHeight:embedHeight duration:duration author:author document:document cachedPage:cachedPage];
        } copy];
        parsers[@((int32_t)0x292fed13)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_InputBotInlineMessage inputBotInlineMessageMediaAutoWithFlags:flags caption:caption replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x3dcd7a87)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_InputBotInlineMessage inputBotInlineMessageTextWithFlags:flags message:message entities:entities replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0xf4a59de1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputGeoPoint * geoPoint = nil;
            int32_t geoPoint_signature = 0; [_data getBytes:(void *)&geoPoint_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geoPoint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geoPoint_signature metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_InputBotInlineMessage inputBotInlineMessageMediaGeoWithFlags:flags geoPoint:geoPoint replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0xaaafadc8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputGeoPoint * geoPoint = nil;
            int32_t geoPoint_signature = 0; [_data getBytes:(void *)&geoPoint_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geoPoint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geoPoint_signature metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * address = nil;
            if ((address = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * provider = nil;
            if ((provider = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * venueId = nil;
            if ((venueId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_InputBotInlineMessage inputBotInlineMessageMediaVenueWithFlags:flags geoPoint:geoPoint title:title address:address provider:provider venueId:venueId replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x2daf01a7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * phoneNumber = nil;
            if ((phoneNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * firstName = nil;
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * lastName = nil;
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_InputBotInlineMessage inputBotInlineMessageMediaContactWithFlags:flags phoneNumber:phoneNumber firstName:firstName lastName:lastName replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x3c00f8aa)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_ReplyMarkup * replyMarkup = nil;
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputBotInlineMessage inputBotInlineMessageGameWithReplyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x77608b83)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * buttons = nil;
            int32_t buttons_signature = 0; [_data getBytes:(void *)&buttons_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((buttons = [Api62__Environment parseObject:_data offset:_offset implicitSignature:buttons_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_KeyboardButtonRow keyboardButtonRowWithButtons:buttons];
        } copy];
        parsers[@((int32_t)0xcd303b41)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * shortName = nil;
            if ((shortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_StickerSet stickerSetWithFlags:flags pid:pid accessHash:accessHash title:title shortName:shortName count:count phash:phash];
        } copy];
        parsers[@((int32_t)0x20212ca8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Photo * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_photos_Photo photos_photoWithPhoto:photo users:users];
        } copy];
        parsers[@((int32_t)0x4f32c098)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_photos_Photo photos_uploadProfilePhotoWithFile:file];
        } copy];
        parsers[@((int32_t)0xf392b7f4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * clientId = nil;
            if ((clientId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * phone = nil;
            if ((phone = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * firstName = nil;
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * lastName = nil;
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputContact inputPhoneContactWithClientId:clientId phone:phone firstName:firstName lastName:lastName];
        } copy];
        parsers[@((int32_t)0xab661b5b)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_TopPeerCategory topPeerCategoryBotsPM];
        } copy];
        parsers[@((int32_t)0x148677e2)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_TopPeerCategory topPeerCategoryBotsInline];
        } copy];
        parsers[@((int32_t)0x637b7ed)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_TopPeerCategory topPeerCategoryCorrespondents];
        } copy];
        parsers[@((int32_t)0xbd17a14a)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_TopPeerCategory topPeerCategoryGroups];
        } copy];
        parsers[@((int32_t)0x161d9628)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_TopPeerCategory topPeerCategoryChannels];
        } copy];
        parsers[@((int32_t)0x6f8b8cb2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * contacts = nil;
            int32_t contacts_signature = 0; [_data getBytes:(void *)&contacts_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((contacts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:contacts_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Contacts contacts_contactsWithContacts:contacts users:users];
        } copy];
        parsers[@((int32_t)0xb74ba9d2)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_contacts_Contacts contacts_contactsNotModified];
        } copy];
        parsers[@((int32_t)0x94d42ee7)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelMessagesFilter channelMessagesFilterEmpty];
        } copy];
        parsers[@((int32_t)0xfa01232e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChannelMessagesFilter channelMessagesFilterCollapsed];
        } copy];
        parsers[@((int32_t)0xcd77d957)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * ranges = nil;
            int32_t ranges_signature = 0; [_data getBytes:(void *)&ranges_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((ranges = [Api62__Environment parseObject:_data offset:_offset implicitSignature:ranges_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_ChannelMessagesFilter channelMessagesFilterWithFlags:flags ranges:ranges];
        } copy];
        parsers[@((int32_t)0x137948a5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * emailPattern = nil;
            if ((emailPattern = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_PasswordRecovery auth_passwordRecoveryWithEmailPattern:emailPattern];
        } copy];
        parsers[@((int32_t)0xccd3563d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * queryId = nil;
            if ((queryId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * nextOffset = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((nextOffset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_InlineBotSwitchPM * switchPm = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t switchPm_signature = 0; [_data getBytes:(void *)&switchPm_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((switchPm = [Api62__Environment parseObject:_data offset:_offset implicitSignature:switchPm_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * results = nil;
            int32_t results_signature = 0; [_data getBytes:(void *)&results_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((results = [Api62__Environment parseObject:_data offset:_offset implicitSignature:results_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * cacheTime = nil;
            if ((cacheTime = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_BotResults messages_botResultsWithFlags:flags queryId:queryId nextOffset:nextOffset switchPm:switchPm results:results cacheTime:cacheTime];
        } copy];
        parsers[@((int32_t)0x72f0eaae)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputDocument inputDocumentEmpty];
        } copy];
        parsers[@((int32_t)0x18798952)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputDocument inputDocumentWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x7f077ad9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_ResolvedPeer contacts_resolvedPeerWithPeer:peer chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x9664f57f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputMedia inputMediaEmpty];
        } copy];
        parsers[@((int32_t)0xf9c44144)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputGeoPoint * geoPoint = nil;
            int32_t geoPoint_signature = 0; [_data getBytes:(void *)&geoPoint_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geoPoint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geoPoint_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaGeoPointWithGeoPoint:geoPoint];
        } copy];
        parsers[@((int32_t)0xa6e45987)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * phoneNumber = nil;
            if ((phoneNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * firstName = nil;
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * lastName = nil;
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaContactWithPhoneNumber:phoneNumber firstName:firstName lastName:lastName];
        } copy];
        parsers[@((int32_t)0xe9bfb4f3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputPhoto * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaPhotoWithPid:pid caption:caption];
        } copy];
        parsers[@((int32_t)0x2827a81a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputGeoPoint * geoPoint = nil;
            int32_t geoPoint_signature = 0; [_data getBytes:(void *)&geoPoint_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geoPoint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geoPoint_signature metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * address = nil;
            if ((address = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * provider = nil;
            if ((provider = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * venueId = nil;
            if ((venueId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaVenueWithGeoPoint:geoPoint title:title address:address provider:provider venueId:venueId];
        } copy];
        parsers[@((int32_t)0x4843b0fd)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * q = nil;
            if ((q = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaGifExternalWithUrl:url q:q];
        } copy];
        parsers[@((int32_t)0x1a77f29c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputDocument * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaDocumentWithPid:pid caption:caption];
        } copy];
        parsers[@((int32_t)0xb55f4f18)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaPhotoExternalWithUrl:url caption:caption];
        } copy];
        parsers[@((int32_t)0xe5e9607c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaDocumentExternalWithUrl:url caption:caption];
        } copy];
        parsers[@((int32_t)0x630c9af1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * stickers = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t stickers_signature = 0; [_data getBytes:(void *)&stickers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_InputMedia inputMediaUploadedPhotoWithFlags:flags file:file caption:caption stickers:stickers];
        } copy];
        parsers[@((int32_t)0xd070f1e9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            NSString * mimeType = nil;
            if ((mimeType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * attributes = nil;
            int32_t attributes_signature = 0; [_data getBytes:(void *)&attributes_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((attributes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:attributes_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * stickers = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t stickers_signature = 0; [_data getBytes:(void *)&stickers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_InputMedia inputMediaUploadedDocumentWithFlags:flags file:file mimeType:mimeType attributes:attributes caption:caption stickers:stickers];
        } copy];
        parsers[@((int32_t)0x50d88cae)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            Api62_InputFile * thumb = nil;
            int32_t thumb_signature = 0; [_data getBytes:(void *)&thumb_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((thumb = [Api62__Environment parseObject:_data offset:_offset implicitSignature:thumb_signature metaInfo:nil]) == nil)
               return nil;
            NSString * mimeType = nil;
            if ((mimeType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * attributes = nil;
            int32_t attributes_signature = 0; [_data getBytes:(void *)&attributes_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((attributes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:attributes_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * stickers = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t stickers_signature = 0; [_data getBytes:(void *)&stickers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_InputMedia inputMediaUploadedThumbDocumentWithFlags:flags file:file thumb:thumb mimeType:mimeType attributes:attributes caption:caption stickers:stickers];
        } copy];
        parsers[@((int32_t)0xd33f43f3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputGame * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputMedia inputMediaGameWithPid:pid];
        } copy];
        parsers[@((int32_t)0x7f3b18ea)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPeer inputPeerEmpty];
        } copy];
        parsers[@((int32_t)0x7da07ec9)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPeer inputPeerSelf];
        } copy];
        parsers[@((int32_t)0x179be863)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPeer inputPeerChatWithChatId:chatId];
        } copy];
        parsers[@((int32_t)0x7b8e7de6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPeer inputPeerUserWithUserId:userId accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x20adaef8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPeer inputPeerChannelWithChannelId:channelId accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0xf911c994)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * mutual = nil;
            int32_t mutual_signature = 0; [_data getBytes:(void *)&mutual_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((mutual = [Api62__Environment parseObject:_data offset:_offset implicitSignature:mutual_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Contact contactWithUserId:userId mutual:mutual];
        } copy];
        parsers[@((int32_t)0x9bebaeb9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * pdescription = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * url = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * thumbUrl = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            if ((thumbUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * contentUrl = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((contentUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * contentType = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((contentType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * w = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * h = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * duration = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            Api62_BotInlineMessage * sendMessage = nil;
            int32_t sendMessage_signature = 0; [_data getBytes:(void *)&sendMessage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sendMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sendMessage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_BotInlineResult botInlineResultWithFlags:flags pid:pid type:type title:title pdescription:pdescription url:url thumbUrl:thumbUrl contentUrl:contentUrl contentType:contentType w:w h:h duration:duration sendMessage:sendMessage];
        } copy];
        parsers[@((int32_t)0x17db940b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_Photo * photo = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            }
            Api62_Document * document = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            int32_t document_signature = 0; [_data getBytes:(void *)&document_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((document = [Api62__Environment parseObject:_data offset:_offset implicitSignature:document_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSString * title = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * pdescription = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_BotInlineMessage * sendMessage = nil;
            int32_t sendMessage_signature = 0; [_data getBytes:(void *)&sendMessage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sendMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sendMessage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_BotInlineResult botInlineMediaResultWithFlags:flags pid:pid type:type photo:photo document:document title:title pdescription:pdescription sendMessage:sendMessage];
        } copy];
        parsers[@((int32_t)0x6c996518)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputPeer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * msgId = nil;
            if ((msgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * data = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((data = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            }
            NSNumber * gameId = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((gameId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_messages_BotCallbackAnswer messages_getBotCallbackAnswerWithFlags:flags peer:peer msgId:msgId data:data gameId:gameId];
        } copy];
        parsers[@((int32_t)0x36585ea4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * url = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * cacheTime = nil;
            if ((cacheTime = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_BotCallbackAnswer messages_botCallbackAnswerWithFlags:flags message:message url:url cacheTime:cacheTime];
        } copy];
        parsers[@((int32_t)0x64ff9fd5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Chats messages_chatsWithChats:chats];
        } copy];
        parsers[@((int32_t)0x9cd81144)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Chats messages_chatsSliceWithCount:count chats:chats];
        } copy];
        parsers[@((int32_t)0xd22a1c60)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_contacts_MyLink contacts_myLinkEmpty];
        } copy];
        parsers[@((int32_t)0x6c69efee)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * contact = nil;
            int32_t contact_signature = 0; [_data getBytes:(void *)&contact_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((contact = [Api62__Environment parseObject:_data offset:_offset implicitSignature:contact_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_contacts_MyLink contacts_myLinkRequestedWithContact:contact];
        } copy];
        parsers[@((int32_t)0xc240ebd9)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_contacts_MyLink contacts_myLinkContact];
        } copy];
        parsers[@((int32_t)0xd09e07b)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPrivacyRule inputPrivacyValueAllowContacts];
        } copy];
        parsers[@((int32_t)0x184b35ce)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPrivacyRule inputPrivacyValueAllowAll];
        } copy];
        parsers[@((int32_t)0x131cc67f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_InputPrivacyRule inputPrivacyValueAllowUsersWithUsers:users];
        } copy];
        parsers[@((int32_t)0xba52007)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPrivacyRule inputPrivacyValueDisallowContacts];
        } copy];
        parsers[@((int32_t)0xd66b66c9)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPrivacyRule inputPrivacyValueDisallowAll];
        } copy];
        parsers[@((int32_t)0x90110467)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_InputPrivacyRule inputPrivacyValueDisallowUsersWithUsers:users];
        } copy];
        parsers[@((int32_t)0xc0e24635)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSData * random = nil;
            if ((random = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_DhConfig messages_dhConfigNotModifiedWithRandom:random];
        } copy];
        parsers[@((int32_t)0x2c221edd)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * g = nil;
            if ((g = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * p = nil;
            if ((p = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * random = nil;
            if ((random = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_DhConfig messages_dhConfigWithG:g p:p version:version random:random];
        } copy];
        parsers[@((int32_t)0xdf969c2d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * bytes = nil;
            if ((bytes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_auth_ExportedAuthorization auth_exportedAuthorizationWithPid:pid bytes:bytes];
        } copy];
        parsers[@((int32_t)0x59f24214)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ContactRequest contactRequestWithUserId:userId date:date];
        } copy];
        parsers[@((int32_t)0xb45c69d1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_AffectedHistory messages_affectedHistoryWithPts:pts ptsCount:ptsCount offset:offset];
        } copy];
        parsers[@((int32_t)0x86916deb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * pnewSalt = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((pnewSalt = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            }
            NSData * pnewPasswordHash = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((pnewPasswordHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            }
            NSString * hint = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((hint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * email = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((email = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_account_PasswordInputSettings account_passwordInputSettingsWithFlags:flags pnewSalt:pnewSalt pnewPasswordHash:pnewPasswordHash hint:hint email:email];
        } copy];
        parsers[@((int32_t)0x26b5dde6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_MessageEditData messages_messageEditDataWithFlags:flags];
        } copy];
        parsers[@((int32_t)0xfda68d36)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputPeer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_MessageEditData messages_getMessageEditDataWithPeer:peer pid:pid];
        } copy];
        parsers[@((int32_t)0xe5d7d19c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_ChatFull * fullChat = nil;
            int32_t fullChat_signature = 0; [_data getBytes:(void *)&fullChat_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((fullChat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:fullChat_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_ChatFull messages_chatFullWithFullChat:fullChat chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x133421f8)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_contacts_ForeignLink contacts_foreignLinkUnknown];
        } copy];
        parsers[@((int32_t)0xa7801f47)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * hasPhone = nil;
            int32_t hasPhone_signature = 0; [_data getBytes:(void *)&hasPhone_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hasPhone = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hasPhone_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_contacts_ForeignLink contacts_foreignLinkRequestedWithHasPhone:hasPhone];
        } copy];
        parsers[@((int32_t)0x1bea8ce1)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_contacts_ForeignLink contacts_foreignLinkMutual];
        } copy];
        parsers[@((int32_t)0xf1ee3e90)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * text = nil;
            if ((text = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_help_TermsOfService help_termsOfServiceWithText:text];
        } copy];
        parsers[@((int32_t)0x350170f3)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_help_TermsOfService help_getTermsOfService];
        } copy];
        parsers[@((int32_t)0xf141b5e1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputEncryptedChat inputEncryptedChatWithChatId:chatId accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0xba4baec5)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_DraftMessage draftMessageEmpty];
        } copy];
        parsers[@((int32_t)0xfd8e711f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * replyToMsgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((replyToMsgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_DraftMessage draftMessageWithFlags:flags replyToMsgId:replyToMsgId message:message entities:entities date:date];
        } copy];
        parsers[@((int32_t)0xae636f24)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * feature = nil;
            if ((feature = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * nDescription = nil;
            if ((nDescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_DisabledFeature disabledFeatureWithFeature:feature nDescription:nDescription];
        } copy];
        parsers[@((int32_t)0xc21f497e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_EncryptedFile encryptedFileEmpty];
        } copy];
        parsers[@((int32_t)0x4a70994c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * size = nil;
            if ((size = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * dcId = nil;
            if ((dcId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * keyFingerprint = nil;
            if ((keyFingerprint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_EncryptedFile encryptedFileWithPid:pid accessHash:accessHash size:size dcId:dcId keyFingerprint:keyFingerprint];
        } copy];
        parsers[@((int32_t)0x9fd40bd8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_NotifyPeer notifyPeerWithPeer:peer];
        } copy];
        parsers[@((int32_t)0xb4c83b4c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_NotifyPeer notifyUsers];
        } copy];
        parsers[@((int32_t)0xc007cec3)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_NotifyPeer notifyChats];
        } copy];
        parsers[@((int32_t)0x74d07c60)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_NotifyPeer notifyAll];
        } copy];
        parsers[@((int32_t)0x4f96cb18)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPrivacyKey inputPrivacyKeyStatusTimestamp];
        } copy];
        parsers[@((int32_t)0xbdfb0426)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPrivacyKey inputPrivacyKeyChatInvite];
        } copy];
        parsers[@((int32_t)0xa03e5b85)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ReplyMarkup replyKeyboardHideWithFlags:flags];
        } copy];
        parsers[@((int32_t)0xf4108aa0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ReplyMarkup replyKeyboardForceReplyWithFlags:flags];
        } copy];
        parsers[@((int32_t)0x3502758c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * rows = nil;
            int32_t rows_signature = 0; [_data getBytes:(void *)&rows_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((rows = [Api62__Environment parseObject:_data offset:_offset implicitSignature:rows_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_ReplyMarkup replyKeyboardMarkupWithFlags:flags rows:rows];
        } copy];
        parsers[@((int32_t)0x48a30254)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * rows = nil;
            int32_t rows_signature = 0; [_data getBytes:(void *)&rows_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((rows = [Api62__Environment parseObject:_data offset:_offset implicitSignature:rows_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_ReplyMarkup replyInlineMarkupWithRows:rows];
        } copy];
        parsers[@((int32_t)0x58fffcd0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pos = nil;
            if ((pos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * score = nil;
            if ((score = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_HighScore highScoreWithPos:pos userId:userId score:score];
        } copy];
        parsers[@((int32_t)0xedcdc05b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Peer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * rating = nil;
            if ((rating = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            return [Api62_TopPeer topPeerWithPeer:peer rating:rating];
        } copy];
        parsers[@((int32_t)0x3ace484c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_ContactLink * myLink = nil;
            int32_t myLink_signature = 0; [_data getBytes:(void *)&myLink_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((myLink = [Api62__Environment parseObject:_data offset:_offset implicitSignature:myLink_signature metaInfo:nil]) == nil)
               return nil;
            Api62_ContactLink * foreignLink = nil;
            int32_t foreignLink_signature = 0; [_data getBytes:(void *)&foreignLink_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((foreignLink = [Api62__Environment parseObject:_data offset:_offset implicitSignature:foreignLink_signature metaInfo:nil]) == nil)
               return nil;
            Api62_User * user = nil;
            int32_t user_signature = 0; [_data getBytes:(void *)&user_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((user = [Api62__Environment parseObject:_data offset:_offset implicitSignature:user_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_contacts_Link contacts_linkWithMyLink:myLink foreignLink:foreignLink user:user];
        } copy];
        parsers[@((int32_t)0x561bc879)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ContactBlocked contactBlockedWithUserId:userId date:date];
        } copy];
        parsers[@((int32_t)0x811ea28e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * phoneRegistered = nil;
            int32_t phoneRegistered_signature = 0; [_data getBytes:(void *)&phoneRegistered_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((phoneRegistered = [Api62__Environment parseObject:_data offset:_offset implicitSignature:phoneRegistered_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_CheckedPhone auth_checkedPhoneWithPhoneRegistered:phoneRegistered];
        } copy];
        parsers[@((int32_t)0xb98886cf)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputUser inputUserEmpty];
        } copy];
        parsers[@((int32_t)0xf7c1b13f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputUser inputUserSelf];
        } copy];
        parsers[@((int32_t)0xd8292816)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputUser inputUserWithUserId:userId accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0xa8e1e989)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * predicate = nil;
            if ((predicate = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * params = nil;
            int32_t params_signature = 0; [_data getBytes:(void *)&params_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((params = [Api62__Environment parseObject:_data offset:_offset implicitSignature:params_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_SchemeType schemeTypeWithPid:pid predicate:predicate params:params type:type];
        } copy];
        parsers[@((int32_t)0x8dee6c44)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * blocks = nil;
            int32_t blocks_signature = 0; [_data getBytes:(void *)&blocks_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((blocks = [Api62__Environment parseObject:_data offset:_offset implicitSignature:blocks_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * photos = nil;
            int32_t photos_signature = 0; [_data getBytes:(void *)&photos_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photos_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * videos = nil;
            int32_t videos_signature = 0; [_data getBytes:(void *)&videos_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((videos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:videos_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Page pagePartWithBlocks:blocks photos:photos videos:videos];
        } copy];
        parsers[@((int32_t)0xd7a19d69)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * blocks = nil;
            int32_t blocks_signature = 0; [_data getBytes:(void *)&blocks_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((blocks = [Api62__Environment parseObject:_data offset:_offset implicitSignature:blocks_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * photos = nil;
            int32_t photos_signature = 0; [_data getBytes:(void *)&photos_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photos_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * videos = nil;
            int32_t videos_signature = 0; [_data getBytes:(void *)&videos_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((videos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:videos_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Page pageFullWithBlocks:blocks photos:photos videos:videos];
        } copy];
        parsers[@((int32_t)0x96a18d5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_storage_FileType * type = nil;
            int32_t type_signature = 0; [_data getBytes:(void *)&type_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:type_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * mtime = nil;
            if ((mtime = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * bytes = nil;
            if ((bytes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_upload_File upload_fileWithType:type mtime:mtime bytes:bytes];
        } copy];
        parsers[@((int32_t)0xae30253)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * minId = nil;
            if ((minId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxId = nil;
            if ((maxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageRange messageRangeWithMinId:minId maxId:maxId];
        } copy];
        parsers[@((int32_t)0x38641628)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_StickerSetInstallResult messages_stickerSetInstallResultSuccess];
        } copy];
        parsers[@((int32_t)0x35e410a8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * sets = nil;
            int32_t sets_signature = 0; [_data getBytes:(void *)&sets_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sets = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sets_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_StickerSetInstallResult messages_stickerSetInstallResultArchiveWithSets:sets];
        } copy];
        parsers[@((int32_t)0x3af6fb5f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * expires = nil;
            if ((expires = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * testMode = nil;
            int32_t testMode_signature = 0; [_data getBytes:(void *)&testMode_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((testMode = [Api62__Environment parseObject:_data offset:_offset implicitSignature:testMode_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * thisDc = nil;
            if ((thisDc = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * dcOptions = nil;
            int32_t dcOptions_signature = 0; [_data getBytes:(void *)&dcOptions_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((dcOptions = [Api62__Environment parseObject:_data offset:_offset implicitSignature:dcOptions_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * chatSizeMax = nil;
            if ((chatSizeMax = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * megagroupSizeMax = nil;
            if ((megagroupSizeMax = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * forwardedCountMax = nil;
            if ((forwardedCountMax = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * onlineUpdatePeriodMs = nil;
            if ((onlineUpdatePeriodMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * offlineBlurTimeoutMs = nil;
            if ((offlineBlurTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * offlineIdleTimeoutMs = nil;
            if ((offlineIdleTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * onlineCloudTimeoutMs = nil;
            if ((onlineCloudTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * notifyCloudDelayMs = nil;
            if ((notifyCloudDelayMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * notifyDefaultDelayMs = nil;
            if ((notifyDefaultDelayMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatBigSize = nil;
            if ((chatBigSize = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pushChatPeriodMs = nil;
            if ((pushChatPeriodMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pushChatLimit = nil;
            if ((pushChatLimit = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * savedGifsLimit = nil;
            if ((savedGifsLimit = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * editTimeLimit = nil;
            if ((editTimeLimit = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ratingEDecay = nil;
            if ((ratingEDecay = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * stickersRecentLimit = nil;
            if ((stickersRecentLimit = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * tmpSessions = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((tmpSessions = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * pinnedDialogsCountMax = nil;
            if ((pinnedDialogsCountMax = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * callReceiveTimeoutMs = nil;
            if ((callReceiveTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * callRingTimeoutMs = nil;
            if ((callRingTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * callConnectTimeoutMs = nil;
            if ((callConnectTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * callPacketTimeoutMs = nil;
            if ((callPacketTimeoutMs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * disabledFeatures = nil;
            int32_t disabledFeatures_signature = 0; [_data getBytes:(void *)&disabledFeatures_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((disabledFeatures = [Api62__Environment parseObject:_data offset:_offset implicitSignature:disabledFeatures_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Config configWithFlags:flags date:date expires:expires testMode:testMode thisDc:thisDc dcOptions:dcOptions chatSizeMax:chatSizeMax megagroupSizeMax:megagroupSizeMax forwardedCountMax:forwardedCountMax onlineUpdatePeriodMs:onlineUpdatePeriodMs offlineBlurTimeoutMs:offlineBlurTimeoutMs offlineIdleTimeoutMs:offlineIdleTimeoutMs onlineCloudTimeoutMs:onlineCloudTimeoutMs notifyCloudDelayMs:notifyCloudDelayMs notifyDefaultDelayMs:notifyDefaultDelayMs chatBigSize:chatBigSize pushChatPeriodMs:pushChatPeriodMs pushChatLimit:pushChatLimit savedGifsLimit:savedGifsLimit editTimeLimit:editTimeLimit ratingEDecay:ratingEDecay stickersRecentLimit:stickersRecentLimit tmpSessions:tmpSessions pinnedDialogsCountMax:pinnedDialogsCountMax callReceiveTimeoutMs:callReceiveTimeoutMs callRingTimeoutMs:callRingTimeoutMs callConnectTimeoutMs:callConnectTimeoutMs callPacketTimeoutMs:callPacketTimeoutMs disabledFeatures:disabledFeatures];
        } copy];
        parsers[@((int32_t)0xfb834291)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_TopPeerCategory * category = nil;
            int32_t category_signature = 0; [_data getBytes:(void *)&category_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((category = [Api62__Environment parseObject:_data offset:_offset implicitSignature:category_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * peers = nil;
            int32_t peers_signature = 0; [_data getBytes:(void *)&peers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_TopPeerCategoryPeers topPeerCategoryPeersWithCategory:category count:count peers:peers];
        } copy];
        parsers[@((int32_t)0xbdf9653b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * shortName = nil;
            if ((shortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * pdescription = nil;
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_Photo * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Document * document = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t document_signature = 0; [_data getBytes:(void *)&document_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((document = [Api62__Environment parseObject:_data offset:_offset implicitSignature:document_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Game gameWithFlags:flags pid:pid accessHash:accessHash shortName:shortName title:title pdescription:pdescription photo:photo document:document];
        } copy];
        parsers[@((int32_t)0xc27ac8c7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * command = nil;
            if ((command = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * pdescription = nil;
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_BotCommand botCommandWithCommand:command pdescription:pdescription];
        } copy];
        parsers[@((int32_t)0xaad7f4a7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * results = nil;
            int32_t results_signature = 0; [_data getBytes:(void *)&results_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((results = [Api62__Environment parseObject:_data offset:_offset implicitSignature:results_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Located contacts_locatedWithResults:results users:users];
        } copy];
        parsers[@((int32_t)0x84d19185)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_AffectedMessages messages_affectedMessagesWithPts:pts ptsCount:ptsCount];
        } copy];
        parsers[@((int32_t)0xe8025ca2)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_SavedGifs messages_savedGifsNotModified];
        } copy];
        parsers[@((int32_t)0x2e0709a5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * gifs = nil;
            int32_t gifs_signature = 0; [_data getBytes:(void *)&gifs_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((gifs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:gifs_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_SavedGifs messages_savedGifsWithPhash:phash gifs:gifs];
        } copy];
        parsers[@((int32_t)0x32c3e77)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputGame inputGameIDWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0xc331e80a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputUser * botId = nil;
            int32_t botId_signature = 0; [_data getBytes:(void *)&botId_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((botId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:botId_signature metaInfo:nil]) == nil)
               return nil;
            NSString * shortName = nil;
            if ((shortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputGame inputGameShortNameWithBotId:botId shortName:shortName];
        } copy];
        parsers[@((int32_t)0xa2bb35cb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * minLayer = nil;
            if ((minLayer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * maxLayer = nil;
            if ((maxLayer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhoneCallProtocol phoneCallProtocolWithFlags:flags minLayer:minLayer maxLayer:maxLayer];
        } copy];
        parsers[@((int32_t)0x2194f56e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ResponseIndirect responseIndirect];
        } copy];
        parsers[@((int32_t)0xccb03657)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * sizes = nil;
            int32_t sizes_signature = 0; [_data getBytes:(void *)&sizes_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sizes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sizes_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * color = nil;
            if ((color = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_WallPaper wallPaperWithPid:pid title:title sizes:sizes color:color];
        } copy];
        parsers[@((int32_t)0x63117f24)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * bgColor = nil;
            if ((bgColor = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * color = nil;
            if ((color = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_WallPaper wallPaperSolidWithPid:pid title:title bgColor:bgColor color:color];
        } copy];
        parsers[@((int32_t)0x8c718e87)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Messages messages_messagesWithMessages:messages chats:chats users:users];
        } copy];
        parsers[@((int32_t)0xb446ae3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Messages messages_messagesSliceWithCount:count messages:messages chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x99262e37)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Messages messages_channelMessagesWithFlags:flags pts:pts count:count messages:messages chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x3cf5727a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * phoneRegistered = nil;
            int32_t phoneRegistered_signature = 0; [_data getBytes:(void *)&phoneRegistered_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((phoneRegistered = [Api62__Environment parseObject:_data offset:_offset implicitSignature:phoneRegistered_signature metaInfo:nil]) == nil)
               return nil;
            NSString * phoneCodeHash = nil;
            if ((phoneCodeHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * phoneCodeTest = nil;
            if ((phoneCodeTest = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCode auth_sentCodePreviewWithPhoneRegistered:phoneRegistered phoneCodeHash:phoneCodeHash phoneCodeTest:phoneCodeTest];
        } copy];
        parsers[@((int32_t)0x1a1e1fae)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * phoneRegistered = nil;
            int32_t phoneRegistered_signature = 0; [_data getBytes:(void *)&phoneRegistered_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((phoneRegistered = [Api62__Environment parseObject:_data offset:_offset implicitSignature:phoneRegistered_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCode auth_sentPassPhraseWithPhoneRegistered:phoneRegistered];
        } copy];
        parsers[@((int32_t)0x5e002502)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_auth_SentCodeType * type = nil;
            int32_t type_signature = 0; [_data getBytes:(void *)&type_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:type_signature metaInfo:nil]) == nil)
               return nil;
            NSString * phoneCodeHash = nil;
            if ((phoneCodeHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_auth_CodeType * nextType = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            int32_t nextType_signature = 0; [_data getBytes:(void *)&nextType_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((nextType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:nextType_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * timeout = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((timeout = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_auth_SentCode auth_sentCodeWithFlags:flags type:type phoneCodeHash:phoneCodeHash nextType:nextType timeout:timeout];
        } copy];
        parsers[@((int32_t)0x86aef0ec)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * phoneNumber = nil;
            if ((phoneNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * currentNumber = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t currentNumber_signature = 0; [_data getBytes:(void *)&currentNumber_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((currentNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:currentNumber_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * apiId = nil;
            if ((apiId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * apiHash = nil;
            if ((apiHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCode auth_sendCodeWithFlags:flags phoneNumber:phoneNumber currentNumber:currentNumber apiId:apiId apiHash:apiHash];
        } copy];
        parsers[@((int32_t)0x8a5d855e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * g = nil;
            if ((g = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * p = nil;
            if ((p = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * ringTimeout = nil;
            if ((ringTimeout = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * expires = nil;
            if ((expires = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_phone_DhConfig phone_dhConfigWithG:g p:p ringTimeout:ringTimeout expires:expires];
        } copy];
        parsers[@((int32_t)0x1ca48f57)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputChatPhoto inputChatPhotoEmpty];
        } copy];
        parsers[@((int32_t)0x927c55b4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputFile * file = nil;
            int32_t file_signature = 0; [_data getBytes:(void *)&file_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((file = [Api62__Environment parseObject:_data offset:_offset implicitSignature:file_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputChatPhoto inputChatUploadedPhotoWithFile:file];
        } copy];
        parsers[@((int32_t)0x8953ad37)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputPhoto * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputChatPhoto inputChatPhotoWithPid:pid];
        } copy];
        parsers[@((int32_t)0xe317af7e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Updates updatesTooLong];
        } copy];
        parsers[@((int32_t)0x78d4dec1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Update * update = nil;
            int32_t update_signature = 0; [_data getBytes:(void *)&update_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((update = [Api62__Environment parseObject:_data offset:_offset implicitSignature:update_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Updates updateShortWithUpdate:update date:date];
        } copy];
        parsers[@((int32_t)0x725b04c3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * updates = nil;
            int32_t updates_signature = 0; [_data getBytes:(void *)&updates_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((updates = [Api62__Environment parseObject:_data offset:_offset implicitSignature:updates_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * seqStart = nil;
            if ((seqStart = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * seq = nil;
            if ((seq = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Updates updatesCombinedWithUpdates:updates users:users chats:chats date:date seqStart:seqStart seq:seq];
        } copy];
        parsers[@((int32_t)0x74ae4240)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * updates = nil;
            int32_t updates_signature = 0; [_data getBytes:(void *)&updates_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((updates = [Api62__Environment parseObject:_data offset:_offset implicitSignature:updates_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * seq = nil;
            if ((seq = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Updates updatesWithUpdates:updates users:users chats:chats date:date seq:seq];
        } copy];
        parsers[@((int32_t)0xce91e4ca)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputPeer * peer = nil;
            int32_t peer_signature = 0; [_data getBytes:(void *)&peer_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((peer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:peer_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if (flags != nil && ([flags intValue] & (1 << 11))) {
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_Updates messages_editMessageWithFlags:flags peer:peer pid:pid message:message replyMarkup:replyMarkup entities:entities];
        } copy];
        parsers[@((int32_t)0x914fbf11)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_MessageFwdHeader * fwdFrom = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t fwdFrom_signature = 0; [_data getBytes:(void *)&fwdFrom_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((fwdFrom = [Api62__Environment parseObject:_data offset:_offset implicitSignature:fwdFrom_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * viaBotId = nil;
            if (flags != nil && ([flags intValue] & (1 << 11))) {
            if ((viaBotId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * replyToMsgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((replyToMsgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_Updates updateShortMessageWithFlags:flags pid:pid userId:userId message:message pts:pts ptsCount:ptsCount date:date fwdFrom:fwdFrom viaBotId:viaBotId replyToMsgId:replyToMsgId entities:entities];
        } copy];
        parsers[@((int32_t)0x16812688)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * fromId = nil;
            if ((fromId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_MessageFwdHeader * fwdFrom = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t fwdFrom_signature = 0; [_data getBytes:(void *)&fwdFrom_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((fwdFrom = [Api62__Environment parseObject:_data offset:_offset implicitSignature:fwdFrom_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * viaBotId = nil;
            if (flags != nil && ([flags intValue] & (1 << 11))) {
            if ((viaBotId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * replyToMsgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((replyToMsgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_Updates updateShortChatMessageWithFlags:flags pid:pid fromId:fromId chatId:chatId message:message pts:pts ptsCount:ptsCount date:date fwdFrom:fwdFrom viaBotId:viaBotId replyToMsgId:replyToMsgId entities:entities];
        } copy];
        parsers[@((int32_t)0x11f1331c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * ptsCount = nil;
            if ((ptsCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_MessageMedia * media = nil;
            if (flags != nil && ([flags intValue] & (1 << 9))) {
            int32_t media_signature = 0; [_data getBytes:(void *)&media_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((media = [Api62__Environment parseObject:_data offset:_offset implicitSignature:media_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_Updates updateShortSentMessageWithFlags:flags pid:pid pts:pts ptsCount:ptsCount date:date media:media entities:entities];
        } copy];
        parsers[@((int32_t)0x69796de9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * apiId = nil;
            if ((apiId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * deviceModel = nil;
            if ((deviceModel = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * systemVersion = nil;
            if ((systemVersion = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * appVersion = nil;
            if ((appVersion = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * langCode = nil;
            if ((langCode = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSObject * query = nil;
            int32_t query_signature = 0; [_data getBytes:(void *)&query_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((query = [Api62__Environment parseObject:_data offset:_offset implicitSignature:query_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InitConnection pinitConnectionWithApiId:apiId deviceModel:deviceModel systemVersion:systemVersion appVersion:appVersion langCode:langCode query:query];
        } copy];
        parsers[@((int32_t)0x3ded6320)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageMedia messageMediaEmpty];
        } copy];
        parsers[@((int32_t)0x56e0d474)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_GeoPoint * geo = nil;
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaGeoWithGeo:geo];
        } copy];
        parsers[@((int32_t)0x5e7d2f39)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * phoneNumber = nil;
            if ((phoneNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * firstName = nil;
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * lastName = nil;
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaContactWithPhoneNumber:phoneNumber firstName:firstName lastName:lastName userId:userId];
        } copy];
        parsers[@((int32_t)0x9f84f49e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageMedia messageMediaUnsupported];
        } copy];
        parsers[@((int32_t)0xa32dd600)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_WebPage * webpage = nil;
            int32_t webpage_signature = 0; [_data getBytes:(void *)&webpage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((webpage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:webpage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaWebPageWithWebpage:webpage];
        } copy];
        parsers[@((int32_t)0x3d8ce53d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Photo * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaPhotoWithPhoto:photo caption:caption];
        } copy];
        parsers[@((int32_t)0x7912b71f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_GeoPoint * geo = nil;
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * address = nil;
            if ((address = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * provider = nil;
            if ((provider = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * venueId = nil;
            if ((venueId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaVenueWithGeo:geo title:title address:address provider:provider venueId:venueId];
        } copy];
        parsers[@((int32_t)0xf3e02ea8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Document * document = nil;
            int32_t document_signature = 0; [_data getBytes:(void *)&document_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((document = [Api62__Environment parseObject:_data offset:_offset implicitSignature:document_signature metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaDocumentWithDocument:document caption:caption];
        } copy];
        parsers[@((int32_t)0xfdb19008)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Game * game = nil;
            int32_t game_signature = 0; [_data getBytes:(void *)&game_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((game = [Api62__Environment parseObject:_data offset:_offset implicitSignature:game_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageMedia messageMediaGameWithGame:game];
        } copy];
        parsers[@((int32_t)0x56730bcc)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Null null];
        } copy];
        parsers[@((int32_t)0x72a3158c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_auth_CodeType auth_codeTypeSms];
        } copy];
        parsers[@((int32_t)0x741cd3e3)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_auth_CodeType auth_codeTypeCall];
        } copy];
        parsers[@((int32_t)0x226ccefb)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_auth_CodeType auth_codeTypeFlashCall];
        } copy];
        parsers[@((int32_t)0x6c37c15c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * w = nil;
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * h = nil;
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_DocumentAttribute documentAttributeImageSizeWithW:w h:h];
        } copy];
        parsers[@((int32_t)0x11b58939)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_DocumentAttribute documentAttributeAnimated];
        } copy];
        parsers[@((int32_t)0x5910cccb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * duration = nil;
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * w = nil;
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * h = nil;
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_DocumentAttribute documentAttributeVideoWithDuration:duration w:w h:h];
        } copy];
        parsers[@((int32_t)0x15590068)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * fileName = nil;
            if ((fileName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_DocumentAttribute documentAttributeFilenameWithFileName:fileName];
        } copy];
        parsers[@((int32_t)0x9852f9c6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * duration = nil;
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * performer = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((performer = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSData * waveform = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((waveform = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_DocumentAttribute documentAttributeAudioWithFlags:flags duration:duration title:title performer:performer waveform:waveform];
        } copy];
        parsers[@((int32_t)0x6319d612)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * alt = nil;
            if ((alt = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_InputStickerSet * stickerset = nil;
            int32_t stickerset_signature = 0; [_data getBytes:(void *)&stickerset_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickerset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickerset_signature metaInfo:nil]) == nil)
               return nil;
            Api62_MaskCoords * maskCoords = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t maskCoords_signature = 0; [_data getBytes:(void *)&maskCoords_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((maskCoords = [Api62__Environment parseObject:_data offset:_offset implicitSignature:maskCoords_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_DocumentAttribute documentAttributeStickerWithFlags:flags alt:alt stickerset:stickerset maskCoords:maskCoords];
        } copy];
        parsers[@((int32_t)0x9801d2f7)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_DocumentAttribute documentAttributeHasStickers];
        } copy];
        parsers[@((int32_t)0x1250abde)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * authorizations = nil;
            int32_t authorizations_signature = 0; [_data getBytes:(void *)&authorizations_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((authorizations = [Api62__Environment parseObject:_data offset:_offset implicitSignature:authorizations_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_account_Authorizations account_authorizationsWithAuthorizations:authorizations];
        } copy];
        parsers[@((int32_t)0x37c1011c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ChatPhoto chatPhotoEmpty];
        } copy];
        parsers[@((int32_t)0x6153276a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_FileLocation * photoSmall = nil;
            int32_t photoSmall_signature = 0; [_data getBytes:(void *)&photoSmall_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photoSmall = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photoSmall_signature metaInfo:nil]) == nil)
               return nil;
            Api62_FileLocation * photoBig = nil;
            int32_t photoBig_signature = 0; [_data getBytes:(void *)&photoBig_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photoBig = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photoBig_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatPhoto chatPhotoWithPhotoSmall:photoSmall photoBig:photoBig];
        } copy];
        parsers[@((int32_t)0x3371c354)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * dialogs = nil;
            int32_t dialogs_signature = 0; [_data getBytes:(void *)&dialogs_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((dialogs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:dialogs_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            Api62_updates_State * state = nil;
            int32_t state_signature = 0; [_data getBytes:(void *)&state_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((state = [Api62__Environment parseObject:_data offset:_offset implicitSignature:state_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_PeerDialogs messages_peerDialogsWithDialogs:dialogs messages:messages chats:chats users:users state:state];
        } copy];
        parsers[@((int32_t)0xffb62b95)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputStickerSet inputStickerSetEmpty];
        } copy];
        parsers[@((int32_t)0x9de7a269)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputStickerSet inputStickerSetIDWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x861cc8a0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * shortName = nil;
            if ((shortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputStickerSet inputStickerSetShortNameWithShortName:shortName];
        } copy];
        parsers[@((int32_t)0x98e81d3a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * pdescription = nil;
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * commands = nil;
            int32_t commands_signature = 0; [_data getBytes:(void *)&commands_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((commands = [Api62__Environment parseObject:_data offset:_offset implicitSignature:commands_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_BotInfo botInfoWithUserId:userId pdescription:pdescription commands:commands];
        } copy];
        parsers[@((int32_t)0x5649dcc5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * results = nil;
            int32_t results_signature = 0; [_data getBytes:(void *)&results_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((results = [Api62__Environment parseObject:_data offset:_offset implicitSignature:results_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Suggested contacts_suggestedWithResults:results users:users];
        } copy];
        parsers[@((int32_t)0xa56c2a3e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * qts = nil;
            if ((qts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * seq = nil;
            if ((seq = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * unreadCount = nil;
            if ((unreadCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_updates_State updates_stateWithPts:pts qts:qts date:date seq:seq unreadCount:unreadCount];
        } copy];
        parsers[@((int32_t)0x162ecc1f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * thumbUrl = nil;
            if ((thumbUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * contentUrl = nil;
            if ((contentUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * contentType = nil;
            if ((contentType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * w = nil;
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * h = nil;
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_FoundGif foundGifWithUrl:url thumbUrl:thumbUrl contentUrl:contentUrl contentType:contentType w:w h:h];
        } copy];
        parsers[@((int32_t)0x9c750409)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_Photo * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Document * document = nil;
            int32_t document_signature = 0; [_data getBytes:(void *)&document_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((document = [Api62__Environment parseObject:_data offset:_offset implicitSignature:document_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_FoundGif foundGifCachedWithUrl:url photo:photo document:document];
        } copy];
        parsers[@((int32_t)0x200250ba)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_User userEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0xd10d979a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            }
            NSString * firstName = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * lastName = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * username = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((username = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * phone = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            if ((phone = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_UserProfilePhoto * photo = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            }
            Api62_UserStatus * status = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            int32_t status_signature = 0; [_data getBytes:(void *)&status_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((status = [Api62__Environment parseObject:_data offset:_offset implicitSignature:status_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * botInfoVersion = nil;
            if (flags != nil && ([flags intValue] & (1 << 14))) {
            if ((botInfoVersion = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSString * restrictionReason = nil;
            if (flags != nil && ([flags intValue] & (1 << 18))) {
            if ((restrictionReason = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * botInlinePlaceholder = nil;
            if (flags != nil && ([flags intValue] & (1 << 19))) {
            if ((botInlinePlaceholder = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_User userWithFlags:flags pid:pid accessHash:accessHash firstName:firstName lastName:lastName username:username phone:phone photo:photo status:status botInfoVersion:botInfoVersion restrictionReason:restrictionReason botInlinePlaceholder:botInlinePlaceholder];
        } copy];
        parsers[@((int32_t)0x83e5de54)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Message messageEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0xc09be45f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * fromId = nil;
            if (flags != nil && ([flags intValue] & (1 << 8))) {
            if ((fromId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            Api62_Peer * toId = nil;
            int32_t toId_signature = 0; [_data getBytes:(void *)&toId_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((toId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:toId_signature metaInfo:nil]) == nil)
               return nil;
            Api62_MessageFwdHeader * fwdFrom = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t fwdFrom_signature = 0; [_data getBytes:(void *)&fwdFrom_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((fwdFrom = [Api62__Environment parseObject:_data offset:_offset implicitSignature:fwdFrom_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * viaBotId = nil;
            if (flags != nil && ([flags intValue] & (1 << 11))) {
            if ((viaBotId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * replyToMsgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((replyToMsgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_MessageMedia * media = nil;
            if (flags != nil && ([flags intValue] & (1 << 9))) {
            int32_t media_signature = 0; [_data getBytes:(void *)&media_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((media = [Api62__Environment parseObject:_data offset:_offset implicitSignature:media_signature metaInfo:nil]) == nil)
               return nil;
            }
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            NSNumber * views = nil;
            if (flags != nil && ([flags intValue] & (1 << 10))) {
            if ((views = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * editDate = nil;
            if (flags != nil && ([flags intValue] & (1 << 15))) {
            if ((editDate = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Message messageWithFlags:flags pid:pid fromId:fromId toId:toId fwdFrom:fwdFrom viaBotId:viaBotId replyToMsgId:replyToMsgId date:date message:message media:media replyMarkup:replyMarkup entities:entities views:views editDate:editDate];
        } copy];
        parsers[@((int32_t)0x9e19a1f6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * fromId = nil;
            if (flags != nil && ([flags intValue] & (1 << 8))) {
            if ((fromId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            Api62_Peer * toId = nil;
            int32_t toId_signature = 0; [_data getBytes:(void *)&toId_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((toId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:toId_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * replyToMsgId = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((replyToMsgId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_MessageAction * action = nil;
            int32_t action_signature = 0; [_data getBytes:(void *)&action_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((action = [Api62__Environment parseObject:_data offset:_offset implicitSignature:action_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Message messageServiceWithFlags:flags pid:pid fromId:fromId toId:toId replyToMsgId:replyToMsgId date:date action:action];
        } copy];
        parsers[@((int32_t)0xb17f890)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_RecentStickers messages_recentStickersNotModified];
        } copy];
        parsers[@((int32_t)0x5ce20970)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * stickers = nil;
            int32_t stickers_signature = 0; [_data getBytes:(void *)&stickers_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((stickers = [Api62__Environment parseObject:_data offset:_offset implicitSignature:stickers_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_RecentStickers messages_recentStickersWithPhash:phash stickers:stickers];
        } copy];
        parsers[@((int32_t)0x5ea192c9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_RecentStickers messages_getRecentStickersWithFlags:flags phash:phash];
        } copy];
        parsers[@((int32_t)0x14637196)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * volumeId = nil;
            if ((volumeId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * localId = nil;
            if ((localId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * secret = nil;
            if ((secret = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputFileLocation inputFileLocationWithVolumeId:volumeId localId:localId secret:secret];
        } copy];
        parsers[@((int32_t)0xf5235d55)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputFileLocation inputEncryptedFileLocationWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x430f0724)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputFileLocation inputDocumentFileLocationWithPid:pid accessHash:accessHash version:version];
        } copy];
        parsers[@((int32_t)0x1117dd5f)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_GeoPoint geoPointEmpty];
        } copy];
        parsers[@((int32_t)0x2049d70c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * plong = nil;
            if ((plong = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * lat = nil;
            if ((lat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            return [Api62_GeoPoint geoPointWithPlong:plong lat:lat];
        } copy];
        parsers[@((int32_t)0x6e9e21ca)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * plong = nil;
            if ((plong = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * lat = nil;
            if ((lat = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPlaceName * name = nil;
            int32_t name_signature = 0; [_data getBytes:(void *)&name_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((name = [Api62__Environment parseObject:_data offset:_offset implicitSignature:name_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_GeoPoint geoPlaceWithPlong:plong lat:lat name:name];
        } copy];
        parsers[@((int32_t)0x1e36fded)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPhoneCall inputPhoneCallWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0xa384b779)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ReceivedNotifyMessage receivedNotifyMessageWithPid:pid flags:flags];
        } copy];
        parsers[@((int32_t)0xfc900c2b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_ChatParticipant * selfParticipant = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t selfParticipant_signature = 0; [_data getBytes:(void *)&selfParticipant_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((selfParticipant = [Api62__Environment parseObject:_data offset:_offset implicitSignature:selfParticipant_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_ChatParticipants chatParticipantsForbiddenWithFlags:flags chatId:chatId selfParticipant:selfParticipant];
        } copy];
        parsers[@((int32_t)0x3f460fed)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * participants = nil;
            int32_t participants_signature = 0; [_data getBytes:(void *)&participants_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((participants = [Api62__Environment parseObject:_data offset:_offset implicitSignature:participants_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatParticipants chatParticipantsWithChatId:chatId participants:participants version:version];
        } copy];
        parsers[@((int32_t)0x4a992157)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputPhoto * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputStickeredMedia inputStickeredMediaPhotoWithPid:pid];
        } copy];
        parsers[@((int32_t)0x438865b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputDocument * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputStickeredMedia inputStickeredMediaDocumentWithPid:pid];
        } copy];
        parsers[@((int32_t)0x4ede3cf)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_FeaturedStickers messages_featuredStickersNotModified];
        } copy];
        parsers[@((int32_t)0xf89d88e5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * sets = nil;
            int32_t sets_signature = 0; [_data getBytes:(void *)&sets_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sets = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sets_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * unread = nil;
            int32_t unread_signature = 0; [_data getBytes:(void *)&unread_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((unread = [Api62__Environment parseObject:_data offset:_offset implicitSignature:unread_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            return [Api62_messages_FeaturedStickers messages_featuredStickersWithPhash:phash sets:sets unread:unread];
        } copy];
        parsers[@((int32_t)0x85e42301)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PhoneCallDiscardReason phoneCallDiscardReasonMissed];
        } copy];
        parsers[@((int32_t)0xe095c1a0)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PhoneCallDiscardReason phoneCallDiscardReasonDisconnect];
        } copy];
        parsers[@((int32_t)0x57adc690)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PhoneCallDiscardReason phoneCallDiscardReasonHangup];
        } copy];
        parsers[@((int32_t)0xfaf7e8c9)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PhoneCallDiscardReason phoneCallDiscardReasonBusy];
        } copy];
        parsers[@((int32_t)0x8e1a1775)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * country = nil;
            if ((country = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * thisDc = nil;
            if ((thisDc = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * nearestDc = nil;
            if ((nearestDc = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_NearestDc nearestDcWithCountry:country thisDc:thisDc nearestDc:nearestDc];
        } copy];
        parsers[@((int32_t)0x8dca6aa5)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * photos = nil;
            int32_t photos_signature = 0; [_data getBytes:(void *)&photos_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photos_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_photos_Photos photos_photosWithPhotos:photos users:users];
        } copy];
        parsers[@((int32_t)0x15051f54)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * photos = nil;
            int32_t photos_signature = 0; [_data getBytes:(void *)&photos_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photos = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photos_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_photos_Photos photos_photosSliceWithCount:count photos:photos users:users];
        } copy];
        parsers[@((int32_t)0xad524315)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * imported = nil;
            int32_t imported_signature = 0; [_data getBytes:(void *)&imported_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((imported = [Api62__Environment parseObject:_data offset:_offset implicitSignature:imported_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * retryContacts = nil;
            int32_t retryContacts_signature = 0; [_data getBytes:(void *)&retryContacts_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((retryContacts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:retryContacts_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_ImportedContacts contacts_importedContactsWithImported:imported retryContacts:retryContacts users:users];
        } copy];
        parsers[@((int32_t)0xec82e140)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_PhoneCall * phoneCall = nil;
            int32_t phoneCall_signature = 0; [_data getBytes:(void *)&phoneCall_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((phoneCall = [Api62__Environment parseObject:_data offset:_offset implicitSignature:phoneCall_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_phone_PhoneCall phone_phoneCallWithPhoneCall:phoneCall users:users];
        } copy];
        parsers[@((int32_t)0xbc799737)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Bool boolFalse];
        } copy];
        parsers[@((int32_t)0x997275b5)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Bool boolTrue];
        } copy];
        parsers[@((int32_t)0x130c2c85)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputBotInlineMessageID * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if (flags != nil && ([flags intValue] & (1 << 11))) {
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            return [Api62_Bool messages_editInlineBotMessageWithFlags:flags pid:pid message:message replyMarkup:replyMarkup entities:entities];
        } copy];
        parsers[@((int32_t)0x481c591a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * queryId = nil;
            if ((queryId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Bool messages_setBotCallbackAnswerWithFlags:flags queryId:queryId message:message];
        } copy];
        parsers[@((int32_t)0xeb5ea206)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * queryId = nil;
            if ((queryId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSArray * results = nil;
            int32_t results_signature = 0; [_data getBytes:(void *)&results_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((results = [Api62__Environment parseObject:_data offset:_offset implicitSignature:results_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * cacheTime = nil;
            if ((cacheTime = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * nextOffset = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((nextOffset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_InlineBotSwitchPM * switchPm = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            int32_t switchPm_signature = 0; [_data getBytes:(void *)&switchPm_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((switchPm = [Api62__Environment parseObject:_data offset:_offset implicitSignature:switchPm_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_Bool messages_setInlineBotResultsWithFlags:flags queryId:queryId results:results cacheTime:cacheTime nextOffset:nextOffset switchPm:switchPm];
        } copy];
        parsers[@((int32_t)0x637ea878)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * tokenType = nil;
            if ((tokenType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * token = nil;
            if ((token = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Bool account_registerDeviceWithTokenType:tokenType token:token];
        } copy];
        parsers[@((int32_t)0x5b118126)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            return [Api62_Bool messages_readFeaturedStickersWithPid:pid];
        } copy];
        parsers[@((int32_t)0x78337739)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * order = nil;
            int32_t order_signature = 0; [_data getBytes:(void *)&order_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((order = [Api62__Environment parseObject:_data offset:_offset implicitSignature:order_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            return [Api62_Bool messages_reorderStickerSetsWithFlags:flags order:order];
        } copy];
        parsers[@((int32_t)0x8e48a188)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * exceptAuthKeys = nil;
            int32_t exceptAuthKeys_signature = 0; [_data getBytes:(void *)&exceptAuthKeys_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((exceptAuthKeys = [Api62__Environment parseObject:_data offset:_offset implicitSignature:exceptAuthKeys_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            return [Api62_Bool auth_dropTempAuthKeysWithExceptAuthKeys:exceptAuthKeys];
        } copy];
        parsers[@((int32_t)0x392718f8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputDocument * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * unsave = nil;
            int32_t unsave_signature = 0; [_data getBytes:(void *)&unsave_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((unsave = [Api62__Environment parseObject:_data offset:_offset implicitSignature:unsave_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_Bool messages_saveRecentStickerWithFlags:flags pid:pid unsave:unsave];
        } copy];
        parsers[@((int32_t)0x8999602d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Bool messages_clearRecentStickersWithFlags:flags];
        } copy];
        parsers[@((int32_t)0xc786ddcb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * fromId = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            if ((fromId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * channelId = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * channelPost = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((channelPost = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_MessageFwdHeader messageFwdHeaderWithFlags:flags fromId:fromId date:date channelId:channelId channelPost:channelPost];
        } copy];
        parsers[@((int32_t)0x17c6b5f6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * phoneNumber = nil;
            if ((phoneNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_User * user = nil;
            int32_t user_signature = 0; [_data getBytes:(void *)&user_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((user = [Api62__Environment parseObject:_data offset:_offset implicitSignature:user_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_help_Support help_supportWithPhoneNumber:phoneNumber user:user];
        } copy];
        parsers[@((int32_t)0x3631cf4c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * distance = nil;
            if ((distance = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ChatLocated chatLocatedWithChatId:chatId distance:distance];
        } copy];
        parsers[@((int32_t)0x57e2f66c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterEmpty];
        } copy];
        parsers[@((int32_t)0x9609a51c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterPhotos];
        } copy];
        parsers[@((int32_t)0x9fc00e65)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterVideo];
        } copy];
        parsers[@((int32_t)0x56e9f0e4)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterPhotoVideo];
        } copy];
        parsers[@((int32_t)0x9eddf188)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterDocument];
        } copy];
        parsers[@((int32_t)0xd95e73bb)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterPhotoVideoDocuments];
        } copy];
        parsers[@((int32_t)0x50f5c392)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterVoice];
        } copy];
        parsers[@((int32_t)0x3751b49e)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterMusic];
        } copy];
        parsers[@((int32_t)0x3a20ecb8)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessagesFilter inputMessagesFilterChatPhotos];
        } copy];
        parsers[@((int32_t)0x15ba6c40)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * dialogs = nil;
            int32_t dialogs_signature = 0; [_data getBytes:(void *)&dialogs_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((dialogs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:dialogs_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Dialogs messages_dialogsWithDialogs:dialogs messages:messages chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x71e094f3)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * count = nil;
            if ((count = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * dialogs = nil;
            int32_t dialogs_signature = 0; [_data getBytes:(void *)&dialogs_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((dialogs = [Api62__Environment parseObject:_data offset:_offset implicitSignature:dialogs_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Dialogs messages_dialogsSliceWithCount:count dialogs:dialogs messages:messages chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x18cb9f78)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_help_InviteText help_inviteTextWithMessage:message];
        } copy];
        parsers[@((int32_t)0x4d392343)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_help_InviteText help_getInviteText];
        } copy];
        parsers[@((int32_t)0x3de191a1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * mutualContacts = nil;
            if ((mutualContacts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_ContactSuggested contactSuggestedWithUserId:userId mutualContacts:mutualContacts];
        } copy];
        parsers[@((int32_t)0xa74b15b)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * caption = nil;
            if ((caption = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_BotInlineMessage botInlineMessageMediaAutoWithFlags:flags caption:caption replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x8c7f65e2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * message = nil;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * entities = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            int32_t entities_signature = 0; [_data getBytes:(void *)&entities_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((entities = [Api62__Environment parseObject:_data offset:_offset implicitSignature:entities_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            }
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_BotInlineMessage botInlineMessageTextWithFlags:flags message:message entities:entities replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x3a8fd8b8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPoint * geo = nil;
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_BotInlineMessage botInlineMessageMediaGeoWithFlags:flags geo:geo replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x4366232e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_GeoPoint * geo = nil;
            int32_t geo_signature = 0; [_data getBytes:(void *)&geo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((geo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:geo_signature metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * address = nil;
            if ((address = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * provider = nil;
            if ((provider = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * venueId = nil;
            if ((venueId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_BotInlineMessage botInlineMessageMediaVenueWithFlags:flags geo:geo title:title address:address provider:provider venueId:venueId replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x35edb4d4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * phoneNumber = nil;
            if ((phoneNumber = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * firstName = nil;
            if ((firstName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * lastName = nil;
            if ((lastName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_ReplyMarkup * replyMarkup = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            int32_t replyMarkup_signature = 0; [_data getBytes:(void *)&replyMarkup_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((replyMarkup = [Api62__Environment parseObject:_data offset:_offset implicitSignature:replyMarkup_signature metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_BotInlineMessage botInlineMessageMediaContactWithFlags:flags phoneNumber:phoneNumber firstName:firstName lastName:lastName replyMarkup:replyMarkup];
        } copy];
        parsers[@((int32_t)0x38935eb2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * muteUntil = nil;
            if ((muteUntil = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * sound = nil;
            if ((sound = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPeerNotifySettings inputPeerNotifySettingsWithFlags:flags muteUntil:muteUntil sound:sound];
        } copy];
        parsers[@((int32_t)0x69df3769)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ExportedChatInvite chatInviteEmpty];
        } copy];
        parsers[@((int32_t)0xfc2e05bc)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * link = nil;
            if ((link = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_ExportedChatInvite chatInviteExportedWithLink:link];
        } copy];
        parsers[@((int32_t)0x3203df8c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * dcId = nil;
            if ((dcId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * ipAddress = nil;
            if ((ipAddress = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * pings = nil;
            int32_t pings_signature = 0; [_data getBytes:(void *)&pings_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pings = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pings_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            return [Api62_DcNetworkStats dcPingStatsWithDcId:dcId ipAddress:ipAddress pings:pings];
        } copy];
        parsers[@((int32_t)0x7bf2e6f6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * deviceModel = nil;
            if ((deviceModel = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * platform = nil;
            if ((platform = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * systemVersion = nil;
            if ((systemVersion = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * apiId = nil;
            if ((apiId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * appName = nil;
            if ((appName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * appVersion = nil;
            if ((appVersion = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * dateCreated = nil;
            if ((dateCreated = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * dateActive = nil;
            if ((dateActive = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * ip = nil;
            if ((ip = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * country = nil;
            if ((country = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * region = nil;
            if ((region = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_Authorization authorizationWithPhash:phash flags:flags deviceModel:deviceModel platform:platform systemVersion:systemVersion apiId:apiId appName:appName appVersion:appVersion dateCreated:dateCreated dateActive:dateActive ip:ip country:country region:region];
        } copy];
        parsers[@((int32_t)0xaed6dbb2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * n = nil;
            if ((n = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * x = nil;
            if ((x = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * y = nil;
            if ((y = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            NSNumber * zoom = nil;
            if ((zoom = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x2210c154 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MaskCoords maskCoordsWithN:n x:x y:y zoom:zoom];
        } copy];
        parsers[@((int32_t)0xe86602c3)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_AllStickers messages_allStickersNotModified];
        } copy];
        parsers[@((int32_t)0xedfd405f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * sets = nil;
            int32_t sets_signature = 0; [_data getBytes:(void *)&sets_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sets = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sets_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_AllStickers messages_allStickersWithPhash:phash sets:sets];
        } copy];
        parsers[@((int32_t)0x1c9618b1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_AllStickers messages_getAllStickersWithPhash:phash];
        } copy];
        parsers[@((int32_t)0x65b8c79f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * phash = nil;
            if ((phash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_messages_AllStickers messages_getMaskStickersWithPhash:phash];
        } copy];
        parsers[@((int32_t)0x26bc3c3)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PhoneConnection phoneConnectionNotReady];
        } copy];
        parsers[@((int32_t)0x9d4c17c0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSString * ip = nil;
            if ((ip = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * ipv6 = nil;
            if ((ipv6 = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * port = nil;
            if ((port = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * peerTag = nil;
            if ((peerTag = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_PhoneConnection phoneConnectionWithPid:pid ip:ip ipv6:ipv6 port:port peerTag:peerTag];
        } copy];
        parsers[@((int32_t)0xb8d0afdf)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * days = nil;
            if ((days = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_AccountDaysTTL accountDaysTTLWithDays:days];
        } copy];
        parsers[@((int32_t)0x4e6ef65e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * schemeRaw = nil;
            if ((schemeRaw = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * types = nil;
            int32_t types_signature = 0; [_data getBytes:(void *)&types_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((types = [Api62__Environment parseObject:_data offset:_offset implicitSignature:types_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * methods = nil;
            int32_t methods_signature = 0; [_data getBytes:(void *)&methods_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((methods = [Api62__Environment parseObject:_data offset:_offset implicitSignature:methods_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_Scheme schemeWithSchemeRaw:schemeRaw types:types methods:methods version:version];
        } copy];
        parsers[@((int32_t)0x263c9c58)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_Scheme schemeNotModified];
        } copy];
        parsers[@((int32_t)0x96dabc18)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSData * pnewSalt = nil;
            if ((pnewSalt = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            NSString * emailUnconfirmedPattern = nil;
            if ((emailUnconfirmedPattern = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_account_Password account_noPasswordWithPnewSalt:pnewSalt emailUnconfirmedPattern:emailUnconfirmedPattern];
        } copy];
        parsers[@((int32_t)0x7c18141c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSData * currentSalt = nil;
            if ((currentSalt = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            NSData * pnewSalt = nil;
            if ((pnewSalt = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            NSString * hint = nil;
            if ((hint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_Bool * hasRecovery = nil;
            int32_t hasRecovery_signature = 0; [_data getBytes:(void *)&hasRecovery_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hasRecovery = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hasRecovery_signature metaInfo:nil]) == nil)
               return nil;
            NSString * emailUnconfirmedPattern = nil;
            if ((emailUnconfirmedPattern = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_account_Password account_passwordWithCurrentSalt:currentSalt pnewSalt:pnewSalt hint:hint hasRecovery:hasRecovery emailUnconfirmedPattern:emailUnconfirmedPattern];
        } copy];
        parsers[@((int32_t)0x2cbbe15a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * pdescription = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * url = nil;
            if (flags != nil && ([flags intValue] & (1 << 3))) {
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * thumbUrl = nil;
            if (flags != nil && ([flags intValue] & (1 << 4))) {
            if ((thumbUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * contentUrl = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((contentUrl = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * contentType = nil;
            if (flags != nil && ([flags intValue] & (1 << 5))) {
            if ((contentType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * w = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((w = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * h = nil;
            if (flags != nil && ([flags intValue] & (1 << 6))) {
            if ((h = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * duration = nil;
            if (flags != nil && ([flags intValue] & (1 << 7))) {
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            Api62_InputBotInlineMessage * sendMessage = nil;
            int32_t sendMessage_signature = 0; [_data getBytes:(void *)&sendMessage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sendMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sendMessage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputBotInlineResult inputBotInlineResultWithFlags:flags pid:pid type:type title:title pdescription:pdescription url:url thumbUrl:thumbUrl contentUrl:contentUrl contentType:contentType w:w h:h duration:duration sendMessage:sendMessage];
        } copy];
        parsers[@((int32_t)0xa8d864a7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_InputPhoto * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            Api62_InputBotInlineMessage * sendMessage = nil;
            int32_t sendMessage_signature = 0; [_data getBytes:(void *)&sendMessage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sendMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sendMessage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputBotInlineResult inputBotInlineResultPhotoWithPid:pid type:type photo:photo sendMessage:sendMessage];
        } copy];
        parsers[@((int32_t)0xfff8fdc4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * title = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            NSString * pdescription = nil;
            if (flags != nil && ([flags intValue] & (1 << 2))) {
            if ((pdescription = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            }
            Api62_InputDocument * document = nil;
            int32_t document_signature = 0; [_data getBytes:(void *)&document_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((document = [Api62__Environment parseObject:_data offset:_offset implicitSignature:document_signature metaInfo:nil]) == nil)
               return nil;
            Api62_InputBotInlineMessage * sendMessage = nil;
            int32_t sendMessage_signature = 0; [_data getBytes:(void *)&sendMessage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sendMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sendMessage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputBotInlineResult inputBotInlineResultDocumentWithFlags:flags pid:pid type:type title:title pdescription:pdescription document:document sendMessage:sendMessage];
        } copy];
        parsers[@((int32_t)0x4fa417f2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * shortName = nil;
            if ((shortName = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            Api62_InputBotInlineMessage * sendMessage = nil;
            int32_t sendMessage_signature = 0; [_data getBytes:(void *)&sendMessage_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((sendMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:sendMessage_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputBotInlineResult inputBotInlineResultGameWithPid:pid shortName:shortName sendMessage:sendMessage];
        } copy];
        parsers[@((int32_t)0x554abb6f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * rules = nil;
            int32_t rules_signature = 0; [_data getBytes:(void *)&rules_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((rules = [Api62__Environment parseObject:_data offset:_offset implicitSignature:rules_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_account_PrivacyRules account_privacyRulesWithRules:rules users:users];
        } copy];
        parsers[@((int32_t)0x3f4e0648)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_messages_Message messages_messageEmpty];
        } copy];
        parsers[@((int32_t)0xff90c417)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Message * message = nil;
            int32_t message_signature = 0; [_data getBytes:(void *)&message_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((message = [Api62__Environment parseObject:_data offset:_offset implicitSignature:message_signature metaInfo:nil]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_Message messages_messageWithMessage:message chats:chats users:users];
        } copy];
        parsers[@((int32_t)0xfffe1bac)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PrivacyRule privacyValueAllowContacts];
        } copy];
        parsers[@((int32_t)0x65427b82)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PrivacyRule privacyValueAllowAll];
        } copy];
        parsers[@((int32_t)0x4d5bbe0c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            return [Api62_PrivacyRule privacyValueAllowUsersWithUsers:users];
        } copy];
        parsers[@((int32_t)0xf888fa1a)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PrivacyRule privacyValueDisallowContacts];
        } copy];
        parsers[@((int32_t)0x8b73e763)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PrivacyRule privacyValueDisallowAll];
        } copy];
        parsers[@((int32_t)0xc7f49b7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            return [Api62_PrivacyRule privacyValueDisallowUsersWithUsers:users];
        } copy];
        parsers[@((int32_t)0xb6aef7b0)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageAction messageActionEmpty];
        } copy];
        parsers[@((int32_t)0xa6638b9a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatCreateWithTitle:title users:users];
        } copy];
        parsers[@((int32_t)0xb5a1ce5a)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatEditTitleWithTitle:title];
        } copy];
        parsers[@((int32_t)0x7fcb13a8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Photo * photo = nil;
            int32_t photo_signature = 0; [_data getBytes:(void *)&photo_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photo = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photo_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatEditPhotoWithPhoto:photo];
        } copy];
        parsers[@((int32_t)0x95e3fbef)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageAction messageActionChatDeletePhoto];
        } copy];
        parsers[@((int32_t)0xb2ae9b0c)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatDeleteUserWithUserId:userId];
        } copy];
        parsers[@((int32_t)0xfc479b0f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_Bool * hasPhone = nil;
            int32_t hasPhone_signature = 0; [_data getBytes:(void *)&hasPhone_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((hasPhone = [Api62__Environment parseObject:_data offset:_offset implicitSignature:hasPhone_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionSentRequestWithHasPhone:hasPhone];
        } copy];
        parsers[@((int32_t)0x7f07d76c)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageAction messageActionAcceptRequest];
        } copy];
        parsers[@((int32_t)0xf89cf5e8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * inviterId = nil;
            if ((inviterId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatJoinedByLinkWithInviterId:inviterId];
        } copy];
        parsers[@((int32_t)0x95d2ac92)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChannelCreateWithTitle:title];
        } copy];
        parsers[@((int32_t)0x51bdb021)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * channelId = nil;
            if ((channelId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatMigrateToWithChannelId:channelId];
        } copy];
        parsers[@((int32_t)0xb055eaee)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * title = nil;
            if ((title = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * chatId = nil;
            if ((chatId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChannelMigrateFromWithTitle:title chatId:chatId];
        } copy];
        parsers[@((int32_t)0x488a7337)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
            return [Api62_MessageAction messageActionChatAddUserWithUsers:users];
        } copy];
        parsers[@((int32_t)0x94bd38ed)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageAction messageActionPinMessage];
        } copy];
        parsers[@((int32_t)0x9fbab604)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_MessageAction messageActionHistoryClear];
        } copy];
        parsers[@((int32_t)0x92a72876)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * gameId = nil;
            if ((gameId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * score = nil;
            if ((score = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageAction messageActionGameScoreWithGameId:gameId score:score];
        } copy];
        parsers[@((int32_t)0x80e11a7f)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * callId = nil;
            if ((callId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            Api62_PhoneCallDiscardReason * reason = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t reason_signature = 0; [_data getBytes:(void *)&reason_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((reason = [Api62__Environment parseObject:_data offset:_offset implicitSignature:reason_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * duration = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_MessageAction messageActionPhoneCallWithFlags:flags callId:callId reason:reason duration:duration];
        } copy];
        parsers[@((int32_t)0x5366c915)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhoneCall phoneCallEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0x77e1c0a6)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * adminId = nil;
            if ((adminId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantId = nil;
            if ((participantId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_PhoneCallProtocol * protocol = nil;
            int32_t protocol_signature = 0; [_data getBytes:(void *)&protocol_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((protocol = [Api62__Environment parseObject:_data offset:_offset implicitSignature:protocol_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhoneCall phoneCallWaitingWithPid:pid accessHash:accessHash date:date adminId:adminId participantId:participantId protocol:protocol];
        } copy];
        parsers[@((int32_t)0x6c448ae8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * adminId = nil;
            if ((adminId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantId = nil;
            if ((participantId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * gA = nil;
            if ((gA = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            Api62_PhoneCallProtocol * protocol = nil;
            int32_t protocol_signature = 0; [_data getBytes:(void *)&protocol_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((protocol = [Api62__Environment parseObject:_data offset:_offset implicitSignature:protocol_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhoneCall phoneCallRequestedWithPid:pid accessHash:accessHash date:date adminId:adminId participantId:participantId gA:gA protocol:protocol];
        } copy];
        parsers[@((int32_t)0x8d69b896)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * adminId = nil;
            if ((adminId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantId = nil;
            if ((participantId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * gAOrB = nil;
            if ((gAOrB = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * keyFingerprint = nil;
            if ((keyFingerprint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            Api62_PhoneCallProtocol * protocol = nil;
            int32_t protocol_signature = 0; [_data getBytes:(void *)&protocol_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((protocol = [Api62__Environment parseObject:_data offset:_offset implicitSignature:protocol_signature metaInfo:nil]) == nil)
               return nil;
            Api62_PhoneConnection * connection = nil;
            int32_t connection_signature = 0; [_data getBytes:(void *)&connection_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((connection = [Api62__Environment parseObject:_data offset:_offset implicitSignature:connection_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_PhoneCall phoneCallWithPid:pid accessHash:accessHash date:date adminId:adminId participantId:participantId gAOrB:gAOrB keyFingerprint:keyFingerprint protocol:protocol connection:connection];
        } copy];
        parsers[@((int32_t)0x50ca4de1)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            Api62_PhoneCallDiscardReason * reason = nil;
            if (flags != nil && ([flags intValue] & (1 << 0))) {
            int32_t reason_signature = 0; [_data getBytes:(void *)&reason_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((reason = [Api62__Environment parseObject:_data offset:_offset implicitSignature:reason_signature metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * duration = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((duration = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_PhoneCall phoneCallDiscardedWithFlags:flags pid:pid reason:reason duration:duration];
        } copy];
        parsers[@((int32_t)0xadd53cb3)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PeerNotifyEvents peerNotifyEventsEmpty];
        } copy];
        parsers[@((int32_t)0x6d1ded88)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PeerNotifyEvents peerNotifyEventsAll];
        } copy];
        parsers[@((int32_t)0x5f4f9247)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ContactLink contactLinkUnknown];
        } copy];
        parsers[@((int32_t)0xfeedd3ad)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ContactLink contactLinkNone];
        } copy];
        parsers[@((int32_t)0x268f3f59)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ContactLink contactLinkHasPhone];
        } copy];
        parsers[@((int32_t)0xd502c2d0)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_ContactLink contactLinkContact];
        } copy];
        parsers[@((int32_t)0x424f8614)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSData * bytes = nil;
            if ((bytes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_help_AppPrefs help_appPrefsWithBytes:bytes];
        } copy];
        parsers[@((int32_t)0x1aa1f784)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * results = nil;
            int32_t results_signature = 0; [_data getBytes:(void *)&results_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((results = [Api62__Environment parseObject:_data offset:_offset implicitSignature:results_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_Found contacts_foundWithResults:results chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x70a68512)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_PeerNotifySettings peerNotifySettingsEmpty];
        } copy];
        parsers[@((int32_t)0x9acda4c0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * muteUntil = nil;
            if ((muteUntil = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * sound = nil;
            if ((sound = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_PeerNotifySettings peerNotifySettingsWithFlags:flags muteUntil:muteUntil sound:sound];
        } copy];
        parsers[@((int32_t)0x890c3d89)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * dcId = nil;
            if ((dcId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputBotInlineMessageID inputBotInlineMessageIDWithDcId:dcId pid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0x21b59bef)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * name = nil;
            if ((name = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSString * type = nil;
            if ((type = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_SchemeParam schemeParamWithName:name type:type];
        } copy];
        parsers[@((int32_t)0x12b299d4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * emoticon = nil;
            if ((emoticon = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSArray * documents = nil;
            int32_t documents_signature = 0; [_data getBytes:(void *)&documents_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((documents = [Api62__Environment parseObject:_data offset:_offset implicitSignature:documents_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
            return [Api62_StickerPack stickerPackWithEmoticon:emoticon documents:documents];
        } copy];
        parsers[@((int32_t)0x4f11bae1)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_UserProfilePhoto userProfilePhotoEmpty];
        } copy];
        parsers[@((int32_t)0xd559d8c8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * photoId = nil;
            if ((photoId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            Api62_FileLocation * photoSmall = nil;
            int32_t photoSmall_signature = 0; [_data getBytes:(void *)&photoSmall_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photoSmall = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photoSmall_signature metaInfo:nil]) == nil)
               return nil;
            Api62_FileLocation * photoBig = nil;
            int32_t photoBig_signature = 0; [_data getBytes:(void *)&photoBig_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((photoBig = [Api62__Environment parseObject:_data offset:_offset implicitSignature:photoBig_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_UserProfilePhoto userProfilePhotoWithPhotoId:photoId photoSmall:photoSmall photoBig:photoBig];
        } copy];
        parsers[@((int32_t)0xf0bb5152)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            Api62_InputPhoto * pid = nil;
            int32_t pid_signature = 0; [_data getBytes:(void *)&pid_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pid_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_UserProfilePhoto photos_updateProfilePhotoWithPid:pid];
        } copy];
        parsers[@((int32_t)0x3e11affb)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * timeout = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((timeout = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            return [Api62_updates_ChannelDifference updates_channelDifferenceEmptyWithFlags:flags pts:pts timeout:timeout];
        } copy];
        parsers[@((int32_t)0x2064674e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * timeout = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((timeout = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSArray * pnewMessages = nil;
            int32_t pnewMessages_signature = 0; [_data getBytes:(void *)&pnewMessages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((pnewMessages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:pnewMessages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * otherUpdates = nil;
            int32_t otherUpdates_signature = 0; [_data getBytes:(void *)&otherUpdates_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((otherUpdates = [Api62__Environment parseObject:_data offset:_offset implicitSignature:otherUpdates_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_updates_ChannelDifference updates_channelDifferenceWithFlags:flags pts:pts timeout:timeout pnewMessages:pnewMessages otherUpdates:otherUpdates chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x410dee07)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * flags = nil;
            if ((flags = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * pts = nil;
            if ((pts = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * timeout = nil;
            if (flags != nil && ([flags intValue] & (1 << 1))) {
            if ((timeout = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            }
            NSNumber * topMessage = nil;
            if ((topMessage = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * readInboxMaxId = nil;
            if ((readInboxMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * readOutboxMaxId = nil;
            if ((readOutboxMaxId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * unreadCount = nil;
            if ((unreadCount = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * messages = nil;
            int32_t messages_signature = 0; [_data getBytes:(void *)&messages_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((messages = [Api62__Environment parseObject:_data offset:_offset implicitSignature:messages_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_updates_ChannelDifference updates_channelDifferenceTooLongWithFlags:flags pts:pts timeout:timeout topMessage:topMessage readInboxMaxId:readInboxMaxId readOutboxMaxId:readOutboxMaxId unreadCount:unreadCount messages:messages chats:chats users:users];
        } copy];
        parsers[@((int32_t)0xbb92ba95)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityUnknownWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0xfa04579d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityMentionWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x6f635b0d)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityHashtagWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x6cef8ac7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityBotCommandWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x6ed02538)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityUrlWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x64e475c2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityEmailWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0xbd610bc9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityBoldWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x826f8b60)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityItalicWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x28a20571)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityCodeWithOffset:offset length:length];
        } copy];
        parsers[@((int32_t)0x73924be0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * language = nil;
            if ((language = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityPreWithOffset:offset length:length language:language];
        } copy];
        parsers[@((int32_t)0x76a6d327)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * url = nil;
            if ((url = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityTextUrlWithOffset:offset length:length url:url];
        } copy];
        parsers[@((int32_t)0x352dca58)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity messageEntityMentionNameWithOffset:offset length:length userId:userId];
        } copy];
        parsers[@((int32_t)0x208e68c9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * offset = nil;
            if ((offset = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_InputUser * userId = nil;
            int32_t userId_signature = 0; [_data getBytes:(void *)&userId_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:userId_signature metaInfo:nil]) == nil)
               return nil;
            return [Api62_MessageEntity inputMessageEntityMentionNameWithOffset:offset length:length userId:userId];
        } copy];
        parsers[@((int32_t)0x1cd7bf0d)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_InputPhoto inputPhotoEmpty];
        } copy];
        parsers[@((int32_t)0xfb95c6c4)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_InputPhoto inputPhotoWithPid:pid accessHash:accessHash];
        } copy];
        parsers[@((int32_t)0xde266ef5)] = [^id (__unused NSData *_data, __unused NSUInteger* _offset, __unused id metaInfo)
        {
            return [Api62_contacts_TopPeers contacts_topPeersNotModified];
        } copy];
        parsers[@((int32_t)0x70b772a8)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * categories = nil;
            int32_t categories_signature = 0; [_data getBytes:(void *)&categories_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((categories = [Api62__Environment parseObject:_data offset:_offset implicitSignature:categories_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * chats = nil;
            int32_t chats_signature = 0; [_data getBytes:(void *)&chats_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((chats = [Api62__Environment parseObject:_data offset:_offset implicitSignature:chats_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_contacts_TopPeers contacts_topPeersWithCategories:categories chats:chats users:users];
        } copy];
        parsers[@((int32_t)0x3dbb5986)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCodeType auth_sentCodeTypeAppWithLength:length];
        } copy];
        parsers[@((int32_t)0xc000bba2)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCodeType auth_sentCodeTypeSmsWithLength:length];
        } copy];
        parsers[@((int32_t)0x5353e5a7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * length = nil;
            if ((length = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCodeType auth_sentCodeTypeCallWithLength:length];
        } copy];
        parsers[@((int32_t)0xab03c6d9)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSString * pattern = nil;
            if ((pattern = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            return [Api62_auth_SentCodeType auth_sentCodeTypeFlashCallWithPattern:pattern];
        } copy];
        parsers[@((int32_t)0xab7ec0a0)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_EncryptedChat encryptedChatEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0x3bf703dc)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * adminId = nil;
            if ((adminId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantId = nil;
            if ((participantId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_EncryptedChat encryptedChatWaitingWithPid:pid accessHash:accessHash date:date adminId:adminId participantId:participantId];
        } copy];
        parsers[@((int32_t)0x13d6dd27)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            return [Api62_EncryptedChat encryptedChatDiscardedWithPid:pid];
        } copy];
        parsers[@((int32_t)0xc878527e)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * adminId = nil;
            if ((adminId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantId = nil;
            if ((participantId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * gA = nil;
            if ((gA = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_EncryptedChat encryptedChatRequestedWithPid:pid accessHash:accessHash date:date adminId:adminId participantId:participantId gA:gA];
        } copy];
        parsers[@((int32_t)0xfa56ce36)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * adminId = nil;
            if ((adminId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * participantId = nil;
            if ((participantId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSData * gAOrB = nil;
            if ((gAOrB = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:[Api62__PreferNSDataTypeMetaInfo preferNSDataTypeMetaInfo]]) == nil)
               return nil;
            NSNumber * keyFingerprint = nil;
            if ((keyFingerprint = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_EncryptedChat encryptedChatWithPid:pid accessHash:accessHash date:date adminId:adminId participantId:participantId gAOrB:gAOrB keyFingerprint:keyFingerprint];
        } copy];
        parsers[@((int32_t)0x36f8c871)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_Document documentEmptyWithPid:pid];
        } copy];
        parsers[@((int32_t)0x87232bc7)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * pid = nil;
            if ((pid = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * accessHash = nil;
            if ((accessHash = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            NSNumber * date = nil;
            if ((date = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSString * mimeType = nil;
            if ((mimeType = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xb5286e24 metaInfo:nil]) == nil)
               return nil;
            NSNumber * size = nil;
            if ((size = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            Api62_PhotoSize * thumb = nil;
            int32_t thumb_signature = 0; [_data getBytes:(void *)&thumb_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((thumb = [Api62__Environment parseObject:_data offset:_offset implicitSignature:thumb_signature metaInfo:nil]) == nil)
               return nil;
            NSNumber * dcId = nil;
            if ((dcId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * version = nil;
            if ((version = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSArray * attributes = nil;
            int32_t attributes_signature = 0; [_data getBytes:(void *)&attributes_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((attributes = [Api62__Environment parseObject:_data offset:_offset implicitSignature:attributes_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_Document documentWithPid:pid accessHash:accessHash date:date mimeType:mimeType size:size thumb:thumb dcId:dcId version:version attributes:attributes];
        } copy];
        parsers[@((int32_t)0x9a3bfd99)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSArray * scores = nil;
            int32_t scores_signature = 0; [_data getBytes:(void *)&scores_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((scores = [Api62__Environment parseObject:_data offset:_offset implicitSignature:scores_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            NSArray * users = nil;
            int32_t users_signature = 0; [_data getBytes:(void *)&users_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((users = [Api62__Environment parseObject:_data offset:_offset implicitSignature:users_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
            return [Api62_messages_HighScores messages_highScoresWithScores:scores users:users];
        } copy];
        parsers[@((int32_t)0xd0028438)] = [^id (NSData *_data, NSUInteger* _offset, __unused id metaInfo)
        {
            NSNumber * userId = nil;
            if ((userId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0xa8509bda metaInfo:nil]) == nil)
               return nil;
            NSNumber * clientId = nil;
            if ((clientId = [Api62__Environment parseObject:_data offset:_offset implicitSignature:(int32_t)0x22076cba metaInfo:nil]) == nil)
               return nil;
            return [Api62_ImportedContact importedContactWithUserId:userId clientId:clientId];
        } copy];
});

    return parsers[@(constructorSignature)];
}

+ (NSData *)serializeObject:(id)object
{
    NSMutableData *data = [[NSMutableData alloc] init];
    if ([self serializeObject:object data:data addSignature:true])
        return data;
    return nil;
}

+ (bool)serializeObject:(id)object data:(NSMutableData *)data addSignature:(bool)addSignature
{
     Api62__Serializer *serializer = objc_getAssociatedObject(object, Api62__Serializer_Key);
     if (serializer == nil)
         return false;
     if (addSignature)
     {
         int32_t value = serializer.constructorSignature;
         [data appendBytes:(void *)&value length:4];
     }
     return serializer.serializeBlock(object, data);
}

+ (id)parseObject:(NSData *)data
{
    if (data.length < 4)
        return nil;
    int32_t constructorSignature = 0;
    [data getBytes:(void *)&constructorSignature length:4];
    NSUInteger offset = 4;
    return [self parseObject:data offset:&offset implicitSignature:constructorSignature metaInfo:nil];
}

+ (id)parseObject:(NSData *)data offset:(NSUInteger *)offset implicitSignature:(int32_t)implicitSignature metaInfo:(id)metaInfo
{
    id (^parser)(NSData *data, NSUInteger *offset, id metaInfo) = [self parserByConstructorSignature:implicitSignature];
    if (parser)
        return parser(data, offset, metaInfo);
    return nil;
}

@end

@interface Api62_BuiltinSerializer_Int : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_Int

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0xA8509BDA serializeBlock:^bool (NSNumber *object, NSMutableData *data)
    {
        int32_t value = (int32_t)[object intValue];
        [data appendBytes:(void *)&value length:4];
        return true;
    }];
}

@end

@interface Api62_BuiltinSerializer_Long : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_Long

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0x22076CBA serializeBlock:^bool (NSNumber *object, NSMutableData *data)
    {
        int64_t value = (int64_t)[object longLongValue];
        [data appendBytes:(void *)&value length:8];
        return true;
    }];
}

@end

@interface Api62_BuiltinSerializer_Double : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_Double

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0x2210C154 serializeBlock:^bool (NSNumber *object, NSMutableData *data)
    {
        double value = (double)[object doubleValue];
        [data appendBytes:(void *)&value length:8];
        return true;
    }];
}

@end

@interface Api62_BuiltinSerializer_String : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_String

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0xB5286E24 serializeBlock:^bool (NSString *object, NSMutableData *data)
    {
        NSData *value = [object dataUsingEncoding:NSUTF8StringEncoding];
        int32_t length = value.length;
        int32_t padding = 0;
        if (length >= 254)
        {
            uint8_t tmp = 254;
            [data appendBytes:&tmp length:1];
            [data appendBytes:(void *)&length length:3];
            padding = (((length % 4) == 0 ? length : (length + 4 - (length % 4)))) - length;
        }
        else
        {
            [data appendBytes:(void *)&length length:1];
            padding = ((((length + 1) % 4) == 0 ? (length + 1) : ((length + 1) + 4 - ((length + 1) % 4)))) - (length + 1);
        }
        [data appendData:value];
        for (int i = 0; i < padding; i++)
        {
            uint8_t tmp = 0;
            [data appendBytes:(void *)&tmp length:1];
        }

        return true;
    }];
}

@end

@interface Api62_BuiltinSerializer_Bytes : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_Bytes

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0xB5286E24 serializeBlock:^bool (NSData *object, NSMutableData *data)
    {
        NSData *value = object;
        int32_t length = (int32_t)value.length;
        int32_t padding = 0;
        if (length >= 254)
        {
            uint8_t tmp = 254;
            [data appendBytes:&tmp length:1];
            [data appendBytes:(void *)&length length:3];
            padding = (((length % 4) == 0 ? length : (length + 4 - (length % 4)))) - length;
        }
        else
        {
            [data appendBytes:(void *)&length length:1];
            padding = ((((length + 1) % 4) == 0 ? (length + 1) : ((length + 1) + 4 - ((length + 1) % 4)))) - (length + 1);
        }
        [data appendData:value];
        for (int i = 0; i < padding; i++)
        {
            uint8_t tmp = 0;
            [data appendBytes:(void *)&tmp length:1];
        }

        return true;
    }];
}

@end

@interface Api62_BuiltinSerializer_Int128 : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_Int128

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0x4BB5362B serializeBlock:^bool (NSData *object, NSMutableData *data)
    {
        if (object.length != 16)
            return false;
        [data appendData:object];
        return true;
    }];
}

@end

@interface Api62_BuiltinSerializer_Int256 : Api62__Serializer
@end

@implementation Api62_BuiltinSerializer_Int256

- (instancetype)init
{
    return [super initWithConstructorSignature:(int32_t)0x0929C32F serializeBlock:^bool (NSData *object, NSMutableData *data)
    {
        if (object.length != 32)
            return false;
        [data appendData:object];
        return true;
    }];
}

@end



@implementation Api62_FunctionContext

- (instancetype)initWithPayload:(NSData *)payload responseParser:(id (^)(NSData *))responseParser metadata:(id)metadata
{
    self = [super init];
    if (self != nil)
    {
        _payload = payload;
        _responseParser = [responseParser copy];
        _metadata = metadata;
    }
    return self;
}

@end

@interface Api62_messages_StickerSet ()

@property (nonatomic, strong) Api62_StickerSet * set;
@property (nonatomic, strong) NSArray * packs;
@property (nonatomic, strong) NSArray * documents;

@end

@interface Api62_messages_StickerSet_messages_stickerSet ()

@end

@implementation Api62_messages_StickerSet

+ (Api62_messages_StickerSet_messages_stickerSet *)messages_stickerSetWithSet:(Api62_StickerSet *)set packs:(NSArray *)packs documents:(NSArray *)documents
{
    Api62_messages_StickerSet_messages_stickerSet *_object = [[Api62_messages_StickerSet_messages_stickerSet alloc] init];
    _object.set = set;
    _object.packs = 
({
NSMutableArray *packs_copy = [[NSMutableArray alloc] initWithCapacity:packs.count];
for (id packs_item in packs)
{
    [packs_copy addObject:packs_item];
}
id packs_result = [Api62__Serializer addSerializerToObject:packs_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; packs_result;});
    _object.documents = 
({
NSMutableArray *documents_copy = [[NSMutableArray alloc] initWithCapacity:documents.count];
for (id documents_item in documents)
{
    [documents_copy addObject:documents_item];
}
id documents_result = [Api62__Serializer addSerializerToObject:documents_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; documents_result;});
    return _object;
}


@end

@implementation Api62_messages_StickerSet_messages_stickerSet

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb60a24a6 serializeBlock:^bool (Api62_messages_StickerSet_messages_stickerSet *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.set data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.packs data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.documents data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.stickerSet set:%@ packs:%@ documents:%@)", self.set, self.packs, self.documents];
}

@end




@interface Api62_InputGeoPlaceName ()

@property (nonatomic, strong) NSString * country;
@property (nonatomic, strong) NSString * state;
@property (nonatomic, strong) NSString * city;
@property (nonatomic, strong) NSString * district;
@property (nonatomic, strong) NSString * street;

@end

@interface Api62_InputGeoPlaceName_inputGeoPlaceName ()

@end

@implementation Api62_InputGeoPlaceName

+ (Api62_InputGeoPlaceName_inputGeoPlaceName *)inputGeoPlaceNameWithCountry:(NSString *)country state:(NSString *)state city:(NSString *)city district:(NSString *)district street:(NSString *)street
{
    Api62_InputGeoPlaceName_inputGeoPlaceName *_object = [[Api62_InputGeoPlaceName_inputGeoPlaceName alloc] init];
    _object.country = [Api62__Serializer addSerializerToObject:[country copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.state = [Api62__Serializer addSerializerToObject:[state copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.city = [Api62__Serializer addSerializerToObject:[city copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.district = [Api62__Serializer addSerializerToObject:[district copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.street = [Api62__Serializer addSerializerToObject:[street copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InputGeoPlaceName_inputGeoPlaceName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x68afa7d4 serializeBlock:^bool (Api62_InputGeoPlaceName_inputGeoPlaceName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.country data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.state data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.city data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.district data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.street data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputGeoPlaceName country:%d state:%d city:%d district:%d street:%d)", (int)[self.country length], (int)[self.state length], (int)[self.city length], (int)[self.district length], (int)[self.street length]];
}

@end




@interface Api62_InputGeoPoint ()

@end

@interface Api62_InputGeoPoint_inputGeoPointEmpty ()

@end

@interface Api62_InputGeoPoint_inputGeoPoint ()

@property (nonatomic, strong) NSNumber * lat;
@property (nonatomic, strong) NSNumber * plong;

@end

@implementation Api62_InputGeoPoint

+ (Api62_InputGeoPoint_inputGeoPointEmpty *)inputGeoPointEmpty
{
    Api62_InputGeoPoint_inputGeoPointEmpty *_object = [[Api62_InputGeoPoint_inputGeoPointEmpty alloc] init];
    return _object;
}

+ (Api62_InputGeoPoint_inputGeoPoint *)inputGeoPointWithLat:(NSNumber *)lat plong:(NSNumber *)plong
{
    Api62_InputGeoPoint_inputGeoPoint *_object = [[Api62_InputGeoPoint_inputGeoPoint alloc] init];
    _object.lat = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:lat] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.plong = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:plong] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    return _object;
}


@end

@implementation Api62_InputGeoPoint_inputGeoPointEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe4c123d6 serializeBlock:^bool (__unused Api62_InputGeoPoint_inputGeoPointEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputGeoPointEmpty)"];
}

@end

@implementation Api62_InputGeoPoint_inputGeoPoint

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf3b7acc9 serializeBlock:^bool (Api62_InputGeoPoint_inputGeoPoint *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.lat data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.plong data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputGeoPoint lat:%@ long:%@)", self.lat, self.plong];
}

@end




@interface Api62_messages_Chat ()

@property (nonatomic, strong) Api62_Chat * chat;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_messages_Chat_messages_chat ()

@end

@implementation Api62_messages_Chat

+ (Api62_messages_Chat_messages_chat *)messages_chatWithChat:(Api62_Chat *)chat users:(NSArray *)users
{
    Api62_messages_Chat_messages_chat *_object = [[Api62_messages_Chat_messages_chat alloc] init];
    _object.chat = chat;
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_messages_Chat_messages_chat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x40e9002a serializeBlock:^bool (Api62_messages_Chat_messages_chat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chat data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.chat chat:%@ users:%@)", self.chat, self.users];
}

@end




@interface Api62_ChatFull ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) Api62_Photo * chatPhoto;
@property (nonatomic, strong) Api62_PeerNotifySettings * notifySettings;
@property (nonatomic, strong) Api62_ExportedChatInvite * exportedInvite;
@property (nonatomic, strong) NSArray * botInfo;

@end

@interface Api62_ChatFull_chatFull ()

@property (nonatomic, strong) Api62_ChatParticipants * participants;

@end

@interface Api62_ChatFull_channelFull ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * about;
@property (nonatomic, strong) NSNumber * participantsCount;
@property (nonatomic, strong) NSNumber * adminsCount;
@property (nonatomic, strong) NSNumber * kickedCount;
@property (nonatomic, strong) NSNumber * readInboxMaxId;
@property (nonatomic, strong) NSNumber * readOutboxMaxId;
@property (nonatomic, strong) NSNumber * unreadCount;
@property (nonatomic, strong) NSNumber * migratedFromChatId;
@property (nonatomic, strong) NSNumber * migratedFromMaxId;
@property (nonatomic, strong) NSNumber * pinnedMsgId;

@end

@implementation Api62_ChatFull

+ (Api62_ChatFull_chatFull *)chatFullWithPid:(NSNumber *)pid participants:(Api62_ChatParticipants *)participants chatPhoto:(Api62_Photo *)chatPhoto notifySettings:(Api62_PeerNotifySettings *)notifySettings exportedInvite:(Api62_ExportedChatInvite *)exportedInvite botInfo:(NSArray *)botInfo
{
    Api62_ChatFull_chatFull *_object = [[Api62_ChatFull_chatFull alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participants = participants;
    _object.chatPhoto = chatPhoto;
    _object.notifySettings = notifySettings;
    _object.exportedInvite = exportedInvite;
    _object.botInfo = 
({
NSMutableArray *botInfo_copy = [[NSMutableArray alloc] initWithCapacity:botInfo.count];
for (id botInfo_item in botInfo)
{
    [botInfo_copy addObject:botInfo_item];
}
id botInfo_result = [Api62__Serializer addSerializerToObject:botInfo_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; botInfo_result;});
    return _object;
}

+ (Api62_ChatFull_channelFull *)channelFullWithFlags:(NSNumber *)flags pid:(NSNumber *)pid about:(NSString *)about participantsCount:(NSNumber *)participantsCount adminsCount:(NSNumber *)adminsCount kickedCount:(NSNumber *)kickedCount readInboxMaxId:(NSNumber *)readInboxMaxId readOutboxMaxId:(NSNumber *)readOutboxMaxId unreadCount:(NSNumber *)unreadCount chatPhoto:(Api62_Photo *)chatPhoto notifySettings:(Api62_PeerNotifySettings *)notifySettings exportedInvite:(Api62_ExportedChatInvite *)exportedInvite botInfo:(NSArray *)botInfo migratedFromChatId:(NSNumber *)migratedFromChatId migratedFromMaxId:(NSNumber *)migratedFromMaxId pinnedMsgId:(NSNumber *)pinnedMsgId
{
    Api62_ChatFull_channelFull *_object = [[Api62_ChatFull_channelFull alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.about = [Api62__Serializer addSerializerToObject:[about copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.participantsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.kickedCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:kickedCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.readInboxMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:readInboxMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.readOutboxMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:readOutboxMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.unreadCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:unreadCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.chatPhoto = chatPhoto;
    _object.notifySettings = notifySettings;
    _object.exportedInvite = exportedInvite;
    _object.botInfo = 
({
NSMutableArray *botInfo_copy = [[NSMutableArray alloc] initWithCapacity:botInfo.count];
for (id botInfo_item in botInfo)
{
    [botInfo_copy addObject:botInfo_item];
}
id botInfo_result = [Api62__Serializer addSerializerToObject:botInfo_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; botInfo_result;});
    _object.migratedFromChatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:migratedFromChatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.migratedFromMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:migratedFromMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pinnedMsgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pinnedMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ChatFull_chatFull

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2e02a614 serializeBlock:^bool (Api62_ChatFull_chatFull *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participants data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chatPhoto data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.notifySettings data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.exportedInvite data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.botInfo data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatFull id:%@ participants:%@ chat_photo:%@ notify_settings:%@ exported_invite:%@ bot_info:%@)", self.pid, self.participants, self.chatPhoto, self.notifySettings, self.exportedInvite, self.botInfo];
}

@end

@implementation Api62_ChatFull_channelFull

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc3d5512f serializeBlock:^bool (Api62_ChatFull_channelFull *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.about data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.participantsCount data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.adminsCount data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.kickedCount data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.readInboxMaxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.readOutboxMaxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.unreadCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatPhoto data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.notifySettings data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.exportedInvite data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.botInfo data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.migratedFromChatId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.migratedFromMaxId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.pinnedMsgId data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelFull flags:%@ id:%@ about:%d participants_count:%@ admins_count:%@ kicked_count:%@ read_inbox_max_id:%@ read_outbox_max_id:%@ unread_count:%@ chat_photo:%@ notify_settings:%@ exported_invite:%@ bot_info:%@ migrated_from_chat_id:%@ migrated_from_max_id:%@ pinned_msg_id:%@)", self.flags, self.pid, (int)[self.about length], self.participantsCount, self.adminsCount, self.kickedCount, self.readInboxMaxId, self.readOutboxMaxId, self.unreadCount, self.chatPhoto, self.notifySettings, self.exportedInvite, self.botInfo, self.migratedFromChatId, self.migratedFromMaxId, self.pinnedMsgId];
}

@end




@interface Api62_ChatParticipant ()

@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_ChatParticipant_chatParticipant ()

@property (nonatomic, strong) NSNumber * inviterId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ChatParticipant_chatParticipantCreator ()

@end

@interface Api62_ChatParticipant_chatParticipantAdmin ()

@property (nonatomic, strong) NSNumber * inviterId;
@property (nonatomic, strong) NSNumber * date;

@end

@implementation Api62_ChatParticipant

+ (Api62_ChatParticipant_chatParticipant *)chatParticipantWithUserId:(NSNumber *)userId inviterId:(NSNumber *)inviterId date:(NSNumber *)date
{
    Api62_ChatParticipant_chatParticipant *_object = [[Api62_ChatParticipant_chatParticipant alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChatParticipant_chatParticipantCreator *)chatParticipantCreatorWithUserId:(NSNumber *)userId
{
    Api62_ChatParticipant_chatParticipantCreator *_object = [[Api62_ChatParticipant_chatParticipantCreator alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChatParticipant_chatParticipantAdmin *)chatParticipantAdminWithUserId:(NSNumber *)userId inviterId:(NSNumber *)inviterId date:(NSNumber *)date
{
    Api62_ChatParticipant_chatParticipantAdmin *_object = [[Api62_ChatParticipant_chatParticipantAdmin alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ChatParticipant_chatParticipant

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc8d7493e serializeBlock:^bool (Api62_ChatParticipant_chatParticipant *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatParticipant user_id:%@ inviter_id:%@ date:%@)", self.userId, self.inviterId, self.date];
}

@end

@implementation Api62_ChatParticipant_chatParticipantCreator

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xda13538a serializeBlock:^bool (Api62_ChatParticipant_chatParticipantCreator *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatParticipantCreator user_id:%@)", self.userId];
}

@end

@implementation Api62_ChatParticipant_chatParticipantAdmin

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe2d6e436 serializeBlock:^bool (Api62_ChatParticipant_chatParticipantAdmin *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatParticipantAdmin user_id:%@ inviter_id:%@ date:%@)", self.userId, self.inviterId, self.date];
}

@end




@interface Api62_updates_Difference ()

@end

@interface Api62_updates_Difference_updates_differenceEmpty ()

@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * seq;

@end

@interface Api62_updates_Difference_updates_difference ()

@property (nonatomic, strong) NSArray * pnewMessages;
@property (nonatomic, strong) NSArray * pnewEncryptedMessages;
@property (nonatomic, strong) NSArray * otherUpdates;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;
@property (nonatomic, strong) Api62_updates_State * state;

@end

@interface Api62_updates_Difference_updates_differenceSlice ()

@property (nonatomic, strong) NSArray * pnewMessages;
@property (nonatomic, strong) NSArray * pnewEncryptedMessages;
@property (nonatomic, strong) NSArray * otherUpdates;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;
@property (nonatomic, strong) Api62_updates_State * intermediateState;

@end

@interface Api62_updates_Difference_updates_differenceTooLong ()

@property (nonatomic, strong) NSNumber * pts;

@end

@implementation Api62_updates_Difference

+ (Api62_updates_Difference_updates_differenceEmpty *)updates_differenceEmptyWithDate:(NSNumber *)date seq:(NSNumber *)seq
{
    Api62_updates_Difference_updates_differenceEmpty *_object = [[Api62_updates_Difference_updates_differenceEmpty alloc] init];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.seq = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:seq] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_updates_Difference_updates_difference *)updates_differenceWithPnewMessages:(NSArray *)pnewMessages pnewEncryptedMessages:(NSArray *)pnewEncryptedMessages otherUpdates:(NSArray *)otherUpdates chats:(NSArray *)chats users:(NSArray *)users state:(Api62_updates_State *)state
{
    Api62_updates_Difference_updates_difference *_object = [[Api62_updates_Difference_updates_difference alloc] init];
    _object.pnewMessages = 
({
NSMutableArray *pnewMessages_copy = [[NSMutableArray alloc] initWithCapacity:pnewMessages.count];
for (id pnewMessages_item in pnewMessages)
{
    [pnewMessages_copy addObject:pnewMessages_item];
}
id pnewMessages_result = [Api62__Serializer addSerializerToObject:pnewMessages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pnewMessages_result;});
    _object.pnewEncryptedMessages = 
({
NSMutableArray *pnewEncryptedMessages_copy = [[NSMutableArray alloc] initWithCapacity:pnewEncryptedMessages.count];
for (id pnewEncryptedMessages_item in pnewEncryptedMessages)
{
    [pnewEncryptedMessages_copy addObject:pnewEncryptedMessages_item];
}
id pnewEncryptedMessages_result = [Api62__Serializer addSerializerToObject:pnewEncryptedMessages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pnewEncryptedMessages_result;});
    _object.otherUpdates = 
({
NSMutableArray *otherUpdates_copy = [[NSMutableArray alloc] initWithCapacity:otherUpdates.count];
for (id otherUpdates_item in otherUpdates)
{
    [otherUpdates_copy addObject:otherUpdates_item];
}
id otherUpdates_result = [Api62__Serializer addSerializerToObject:otherUpdates_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; otherUpdates_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    _object.state = state;
    return _object;
}

+ (Api62_updates_Difference_updates_differenceSlice *)updates_differenceSliceWithPnewMessages:(NSArray *)pnewMessages pnewEncryptedMessages:(NSArray *)pnewEncryptedMessages otherUpdates:(NSArray *)otherUpdates chats:(NSArray *)chats users:(NSArray *)users intermediateState:(Api62_updates_State *)intermediateState
{
    Api62_updates_Difference_updates_differenceSlice *_object = [[Api62_updates_Difference_updates_differenceSlice alloc] init];
    _object.pnewMessages = 
({
NSMutableArray *pnewMessages_copy = [[NSMutableArray alloc] initWithCapacity:pnewMessages.count];
for (id pnewMessages_item in pnewMessages)
{
    [pnewMessages_copy addObject:pnewMessages_item];
}
id pnewMessages_result = [Api62__Serializer addSerializerToObject:pnewMessages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pnewMessages_result;});
    _object.pnewEncryptedMessages = 
({
NSMutableArray *pnewEncryptedMessages_copy = [[NSMutableArray alloc] initWithCapacity:pnewEncryptedMessages.count];
for (id pnewEncryptedMessages_item in pnewEncryptedMessages)
{
    [pnewEncryptedMessages_copy addObject:pnewEncryptedMessages_item];
}
id pnewEncryptedMessages_result = [Api62__Serializer addSerializerToObject:pnewEncryptedMessages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pnewEncryptedMessages_result;});
    _object.otherUpdates = 
({
NSMutableArray *otherUpdates_copy = [[NSMutableArray alloc] initWithCapacity:otherUpdates.count];
for (id otherUpdates_item in otherUpdates)
{
    [otherUpdates_copy addObject:otherUpdates_item];
}
id otherUpdates_result = [Api62__Serializer addSerializerToObject:otherUpdates_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; otherUpdates_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    _object.intermediateState = intermediateState;
    return _object;
}

+ (Api62_updates_Difference_updates_differenceTooLong *)updates_differenceTooLongWithPts:(NSNumber *)pts
{
    Api62_updates_Difference_updates_differenceTooLong *_object = [[Api62_updates_Difference_updates_differenceTooLong alloc] init];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_updates_Difference_updates_differenceEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5d75a138 serializeBlock:^bool (Api62_updates_Difference_updates_differenceEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.seq data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.differenceEmpty date:%@ seq:%@)", self.date, self.seq];
}

@end

@implementation Api62_updates_Difference_updates_difference

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf49ca0 serializeBlock:^bool (Api62_updates_Difference_updates_difference *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pnewMessages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pnewEncryptedMessages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.otherUpdates data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.state data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.difference new_messages:%@ new_encrypted_messages:%@ other_updates:%@ chats:%@ users:%@ state:%@)", self.pnewMessages, self.pnewEncryptedMessages, self.otherUpdates, self.chats, self.users, self.state];
}

@end

@implementation Api62_updates_Difference_updates_differenceSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa8fb1981 serializeBlock:^bool (Api62_updates_Difference_updates_differenceSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pnewMessages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pnewEncryptedMessages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.otherUpdates data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.intermediateState data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.differenceSlice new_messages:%@ new_encrypted_messages:%@ other_updates:%@ chats:%@ users:%@ intermediate_state:%@)", self.pnewMessages, self.pnewEncryptedMessages, self.otherUpdates, self.chats, self.users, self.intermediateState];
}

@end

@implementation Api62_updates_Difference_updates_differenceTooLong

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4afe8f6d serializeBlock:^bool (Api62_updates_Difference_updates_differenceTooLong *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.differenceTooLong pts:%@)", self.pts];
}

@end




@interface Api62_SchemeMethod ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * method;
@property (nonatomic, strong) NSArray * params;
@property (nonatomic, strong) NSString * type;

@end

@interface Api62_SchemeMethod_schemeMethod ()

@end

@implementation Api62_SchemeMethod

+ (Api62_SchemeMethod_schemeMethod *)schemeMethodWithPid:(NSNumber *)pid method:(NSString *)method params:(NSArray *)params type:(NSString *)type
{
    Api62_SchemeMethod_schemeMethod *_object = [[Api62_SchemeMethod_schemeMethod alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.method = [Api62__Serializer addSerializerToObject:[method copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.params = 
({
NSMutableArray *params_copy = [[NSMutableArray alloc] initWithCapacity:params.count];
for (id params_item in params)
{
    [params_copy addObject:params_item];
}
id params_result = [Api62__Serializer addSerializerToObject:params_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; params_result;});
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_SchemeMethod_schemeMethod

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x479357c0 serializeBlock:^bool (Api62_SchemeMethod_schemeMethod *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.method data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.params data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(schemeMethod id:%@ method:%d params:%@ type:%d)", self.pid, (int)[self.method length], self.params, (int)[self.type length]];
}

@end




@interface Api62_InputPhotoCrop ()

@property (nonatomic, strong) NSNumber * cropLeft;
@property (nonatomic, strong) NSNumber * cropTop;
@property (nonatomic, strong) NSNumber * cropWidth;

@end

@interface Api62_InputPhotoCrop_inputPhotoCrop ()

@end

@implementation Api62_InputPhotoCrop

+ (Api62_InputPhotoCrop_inputPhotoCrop *)inputPhotoCropWithCropLeft:(NSNumber *)cropLeft cropTop:(NSNumber *)cropTop cropWidth:(NSNumber *)cropWidth
{
    Api62_InputPhotoCrop_inputPhotoCrop *_object = [[Api62_InputPhotoCrop_inputPhotoCrop alloc] init];
    _object.cropLeft = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cropLeft] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.cropTop = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cropTop] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.cropWidth = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cropWidth] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    return _object;
}


@end

@implementation Api62_InputPhotoCrop_inputPhotoCrop

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd9915325 serializeBlock:^bool (Api62_InputPhotoCrop_inputPhotoCrop *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.cropLeft data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.cropTop data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.cropWidth data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPhotoCrop crop_left:%@ crop_top:%@ crop_width:%@)", self.cropLeft, self.cropTop, self.cropWidth];
}

@end




@interface Api62_PageBlock ()

@end

@interface Api62_PageBlock_pageBlockUnsupported ()

@end

@interface Api62_PageBlock_pageBlockTitle ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_PageBlock_pageBlockSubtitle ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_PageBlock_pageBlockHeader ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_PageBlock_pageBlockSubheader ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_PageBlock_pageBlockParagraph ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_PageBlock_pageBlockPreformatted ()

@property (nonatomic, strong) Api62_RichText * text;
@property (nonatomic, strong) NSString * language;

@end

@interface Api62_PageBlock_pageBlockFooter ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_PageBlock_pageBlockDivider ()

@end

@interface Api62_PageBlock_pageBlockAnchor ()

@property (nonatomic, strong) NSString * name;

@end

@interface Api62_PageBlock_pageBlockList ()

@property (nonatomic, strong) Api62_Bool * ordered;
@property (nonatomic, strong) NSArray * items;

@end

@interface Api62_PageBlock_pageBlockBlockquote ()

@property (nonatomic, strong) Api62_RichText * text;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockPullquote ()

@property (nonatomic, strong) Api62_RichText * text;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockPhoto ()

@property (nonatomic, strong) NSNumber * photoId;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockVideo ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * videoId;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockCover ()

@property (nonatomic, strong) Api62_PageBlock * cover;

@end

@interface Api62_PageBlock_pageBlockEmbedPost ()

@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSNumber * webpageId;
@property (nonatomic, strong) NSNumber * authorPhotoId;
@property (nonatomic, strong) NSString * author;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSArray * blocks;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockCollage ()

@property (nonatomic, strong) NSArray * items;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockSlideshow ()

@property (nonatomic, strong) NSArray * items;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@interface Api62_PageBlock_pageBlockAuthorDate ()

@property (nonatomic, strong) Api62_RichText * author;
@property (nonatomic, strong) NSNumber * publishedDate;

@end

@interface Api62_PageBlock_pageBlockEmbed ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * html;
@property (nonatomic, strong) NSNumber * posterPhotoId;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;
@property (nonatomic, strong) Api62_RichText * caption;

@end

@implementation Api62_PageBlock

+ (Api62_PageBlock_pageBlockUnsupported *)pageBlockUnsupported
{
    Api62_PageBlock_pageBlockUnsupported *_object = [[Api62_PageBlock_pageBlockUnsupported alloc] init];
    return _object;
}

+ (Api62_PageBlock_pageBlockTitle *)pageBlockTitleWithText:(Api62_RichText *)text
{
    Api62_PageBlock_pageBlockTitle *_object = [[Api62_PageBlock_pageBlockTitle alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_PageBlock_pageBlockSubtitle *)pageBlockSubtitleWithText:(Api62_RichText *)text
{
    Api62_PageBlock_pageBlockSubtitle *_object = [[Api62_PageBlock_pageBlockSubtitle alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_PageBlock_pageBlockHeader *)pageBlockHeaderWithText:(Api62_RichText *)text
{
    Api62_PageBlock_pageBlockHeader *_object = [[Api62_PageBlock_pageBlockHeader alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_PageBlock_pageBlockSubheader *)pageBlockSubheaderWithText:(Api62_RichText *)text
{
    Api62_PageBlock_pageBlockSubheader *_object = [[Api62_PageBlock_pageBlockSubheader alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_PageBlock_pageBlockParagraph *)pageBlockParagraphWithText:(Api62_RichText *)text
{
    Api62_PageBlock_pageBlockParagraph *_object = [[Api62_PageBlock_pageBlockParagraph alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_PageBlock_pageBlockPreformatted *)pageBlockPreformattedWithText:(Api62_RichText *)text language:(NSString *)language
{
    Api62_PageBlock_pageBlockPreformatted *_object = [[Api62_PageBlock_pageBlockPreformatted alloc] init];
    _object.text = text;
    _object.language = [Api62__Serializer addSerializerToObject:[language copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_PageBlock_pageBlockFooter *)pageBlockFooterWithText:(Api62_RichText *)text
{
    Api62_PageBlock_pageBlockFooter *_object = [[Api62_PageBlock_pageBlockFooter alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_PageBlock_pageBlockDivider *)pageBlockDivider
{
    Api62_PageBlock_pageBlockDivider *_object = [[Api62_PageBlock_pageBlockDivider alloc] init];
    return _object;
}

+ (Api62_PageBlock_pageBlockAnchor *)pageBlockAnchorWithName:(NSString *)name
{
    Api62_PageBlock_pageBlockAnchor *_object = [[Api62_PageBlock_pageBlockAnchor alloc] init];
    _object.name = [Api62__Serializer addSerializerToObject:[name copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_PageBlock_pageBlockList *)pageBlockListWithOrdered:(Api62_Bool *)ordered items:(NSArray *)items
{
    Api62_PageBlock_pageBlockList *_object = [[Api62_PageBlock_pageBlockList alloc] init];
    _object.ordered = ordered;
    _object.items = 
({
NSMutableArray *items_copy = [[NSMutableArray alloc] initWithCapacity:items.count];
for (id items_item in items)
{
    [items_copy addObject:items_item];
}
id items_result = [Api62__Serializer addSerializerToObject:items_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; items_result;});
    return _object;
}

+ (Api62_PageBlock_pageBlockBlockquote *)pageBlockBlockquoteWithText:(Api62_RichText *)text caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockBlockquote *_object = [[Api62_PageBlock_pageBlockBlockquote alloc] init];
    _object.text = text;
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockPullquote *)pageBlockPullquoteWithText:(Api62_RichText *)text caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockPullquote *_object = [[Api62_PageBlock_pageBlockPullquote alloc] init];
    _object.text = text;
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockPhoto *)pageBlockPhotoWithPhotoId:(NSNumber *)photoId caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockPhoto *_object = [[Api62_PageBlock_pageBlockPhoto alloc] init];
    _object.photoId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:photoId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockVideo *)pageBlockVideoWithFlags:(NSNumber *)flags videoId:(NSNumber *)videoId caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockVideo *_object = [[Api62_PageBlock_pageBlockVideo alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.videoId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:videoId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockCover *)pageBlockCoverWithCover:(Api62_PageBlock *)cover
{
    Api62_PageBlock_pageBlockCover *_object = [[Api62_PageBlock_pageBlockCover alloc] init];
    _object.cover = cover;
    return _object;
}

+ (Api62_PageBlock_pageBlockEmbedPost *)pageBlockEmbedPostWithUrl:(NSString *)url webpageId:(NSNumber *)webpageId authorPhotoId:(NSNumber *)authorPhotoId author:(NSString *)author date:(NSNumber *)date blocks:(NSArray *)blocks caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockEmbedPost *_object = [[Api62_PageBlock_pageBlockEmbedPost alloc] init];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.webpageId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:webpageId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.authorPhotoId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:authorPhotoId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.author = [Api62__Serializer addSerializerToObject:[author copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.blocks = 
({
NSMutableArray *blocks_copy = [[NSMutableArray alloc] initWithCapacity:blocks.count];
for (id blocks_item in blocks)
{
    [blocks_copy addObject:blocks_item];
}
id blocks_result = [Api62__Serializer addSerializerToObject:blocks_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; blocks_result;});
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockCollage *)pageBlockCollageWithItems:(NSArray *)items caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockCollage *_object = [[Api62_PageBlock_pageBlockCollage alloc] init];
    _object.items = 
({
NSMutableArray *items_copy = [[NSMutableArray alloc] initWithCapacity:items.count];
for (id items_item in items)
{
    [items_copy addObject:items_item];
}
id items_result = [Api62__Serializer addSerializerToObject:items_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; items_result;});
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockSlideshow *)pageBlockSlideshowWithItems:(NSArray *)items caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockSlideshow *_object = [[Api62_PageBlock_pageBlockSlideshow alloc] init];
    _object.items = 
({
NSMutableArray *items_copy = [[NSMutableArray alloc] initWithCapacity:items.count];
for (id items_item in items)
{
    [items_copy addObject:items_item];
}
id items_result = [Api62__Serializer addSerializerToObject:items_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; items_result;});
    _object.caption = caption;
    return _object;
}

+ (Api62_PageBlock_pageBlockAuthorDate *)pageBlockAuthorDateWithAuthor:(Api62_RichText *)author publishedDate:(NSNumber *)publishedDate
{
    Api62_PageBlock_pageBlockAuthorDate *_object = [[Api62_PageBlock_pageBlockAuthorDate alloc] init];
    _object.author = author;
    _object.publishedDate = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:publishedDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_PageBlock_pageBlockEmbed *)pageBlockEmbedWithFlags:(NSNumber *)flags url:(NSString *)url html:(NSString *)html posterPhotoId:(NSNumber *)posterPhotoId w:(NSNumber *)w h:(NSNumber *)h caption:(Api62_RichText *)caption
{
    Api62_PageBlock_pageBlockEmbed *_object = [[Api62_PageBlock_pageBlockEmbed alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.html = [Api62__Serializer addSerializerToObject:[html copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.posterPhotoId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:posterPhotoId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.caption = caption;
    return _object;
}


@end

@implementation Api62_PageBlock_pageBlockUnsupported

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x13567e8a serializeBlock:^bool (__unused Api62_PageBlock_pageBlockUnsupported *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockUnsupported)"];
}

@end

@implementation Api62_PageBlock_pageBlockTitle

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x70abc3fd serializeBlock:^bool (Api62_PageBlock_pageBlockTitle *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockTitle text:%@)", self.text];
}

@end

@implementation Api62_PageBlock_pageBlockSubtitle

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8ffa9a1f serializeBlock:^bool (Api62_PageBlock_pageBlockSubtitle *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockSubtitle text:%@)", self.text];
}

@end

@implementation Api62_PageBlock_pageBlockHeader

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbfd064ec serializeBlock:^bool (Api62_PageBlock_pageBlockHeader *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockHeader text:%@)", self.text];
}

@end

@implementation Api62_PageBlock_pageBlockSubheader

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf12bb6e1 serializeBlock:^bool (Api62_PageBlock_pageBlockSubheader *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockSubheader text:%@)", self.text];
}

@end

@implementation Api62_PageBlock_pageBlockParagraph

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x467a0766 serializeBlock:^bool (Api62_PageBlock_pageBlockParagraph *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockParagraph text:%@)", self.text];
}

@end

@implementation Api62_PageBlock_pageBlockPreformatted

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc070d93e serializeBlock:^bool (Api62_PageBlock_pageBlockPreformatted *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.language data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockPreformatted text:%@ language:%d)", self.text, (int)[self.language length]];
}

@end

@implementation Api62_PageBlock_pageBlockFooter

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x48870999 serializeBlock:^bool (Api62_PageBlock_pageBlockFooter *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockFooter text:%@)", self.text];
}

@end

@implementation Api62_PageBlock_pageBlockDivider

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xdb20b188 serializeBlock:^bool (__unused Api62_PageBlock_pageBlockDivider *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockDivider)"];
}

@end

@implementation Api62_PageBlock_pageBlockAnchor

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xce0d37b0 serializeBlock:^bool (Api62_PageBlock_pageBlockAnchor *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.name data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockAnchor name:%d)", (int)[self.name length]];
}

@end

@implementation Api62_PageBlock_pageBlockList

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3a58c7f4 serializeBlock:^bool (Api62_PageBlock_pageBlockList *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.ordered data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.items data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockList ordered:%@ items:%@)", self.ordered, self.items];
}

@end

@implementation Api62_PageBlock_pageBlockBlockquote

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x263d7c26 serializeBlock:^bool (Api62_PageBlock_pageBlockBlockquote *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockBlockquote text:%@ caption:%@)", self.text, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockPullquote

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4f4456d3 serializeBlock:^bool (Api62_PageBlock_pageBlockPullquote *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockPullquote text:%@ caption:%@)", self.text, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe9c69982 serializeBlock:^bool (Api62_PageBlock_pageBlockPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photoId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockPhoto photo_id:%@ caption:%@)", self.photoId, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockVideo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd9d71866 serializeBlock:^bool (Api62_PageBlock_pageBlockVideo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.videoId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockVideo flags:%@ video_id:%@ caption:%@)", self.flags, self.videoId, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockCover

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x39f23300 serializeBlock:^bool (Api62_PageBlock_pageBlockCover *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.cover data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockCover cover:%@)", self.cover];
}

@end

@implementation Api62_PageBlock_pageBlockEmbedPost

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x292c7be9 serializeBlock:^bool (Api62_PageBlock_pageBlockEmbedPost *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.webpageId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.authorPhotoId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.author data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.blocks data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockEmbedPost url:%d webpage_id:%@ author_photo_id:%@ author:%d date:%@ blocks:%@ caption:%@)", (int)[self.url length], self.webpageId, self.authorPhotoId, (int)[self.author length], self.date, self.blocks, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockCollage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8b31c4f serializeBlock:^bool (Api62_PageBlock_pageBlockCollage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.items data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockCollage items:%@ caption:%@)", self.items, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockSlideshow

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x130c8963 serializeBlock:^bool (Api62_PageBlock_pageBlockSlideshow *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.items data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockSlideshow items:%@ caption:%@)", self.items, self.caption];
}

@end

@implementation Api62_PageBlock_pageBlockAuthorDate

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbaafe5e0 serializeBlock:^bool (Api62_PageBlock_pageBlockAuthorDate *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.author data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.publishedDate data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockAuthorDate author:%@ published_date:%@)", self.author, self.publishedDate];
}

@end

@implementation Api62_PageBlock_pageBlockEmbed

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xcde200d1 serializeBlock:^bool (Api62_PageBlock_pageBlockEmbed *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.html data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.posterPhotoId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageBlockEmbed flags:%@ url:%d html:%d poster_photo_id:%@ w:%@ h:%@ caption:%@)", self.flags, (int)[self.url length], (int)[self.html length], self.posterPhotoId, self.w, self.h, self.caption];
}

@end




@interface Api62_Photo ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_Photo_photoEmpty ()

@end

@interface Api62_Photo_wallPhoto ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSString * caption;
@property (nonatomic, strong) Api62_GeoPoint * geo;
@property (nonatomic, strong) Api62_Bool * unread;
@property (nonatomic, strong) NSArray * sizes;

@end

@interface Api62_Photo_photo ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSArray * sizes;

@end

@implementation Api62_Photo

+ (Api62_Photo_photoEmpty *)photoEmptyWithPid:(NSNumber *)pid
{
    Api62_Photo_photoEmpty *_object = [[Api62_Photo_photoEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_Photo_wallPhoto *)wallPhotoWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash userId:(NSNumber *)userId date:(NSNumber *)date caption:(NSString *)caption geo:(Api62_GeoPoint *)geo unread:(Api62_Bool *)unread sizes:(NSArray *)sizes
{
    Api62_Photo_wallPhoto *_object = [[Api62_Photo_wallPhoto alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.geo = geo;
    _object.unread = unread;
    _object.sizes = 
({
NSMutableArray *sizes_copy = [[NSMutableArray alloc] initWithCapacity:sizes.count];
for (id sizes_item in sizes)
{
    [sizes_copy addObject:sizes_item];
}
id sizes_result = [Api62__Serializer addSerializerToObject:sizes_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sizes_result;});
    return _object;
}

+ (Api62_Photo_photo *)photoWithFlags:(NSNumber *)flags pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date sizes:(NSArray *)sizes
{
    Api62_Photo_photo *_object = [[Api62_Photo_photo alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sizes = 
({
NSMutableArray *sizes_copy = [[NSMutableArray alloc] initWithCapacity:sizes.count];
for (id sizes_item in sizes)
{
    [sizes_copy addObject:sizes_item];
}
id sizes_result = [Api62__Serializer addSerializerToObject:sizes_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sizes_result;});
    return _object;
}


@end

@implementation Api62_Photo_photoEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2331b22d serializeBlock:^bool (Api62_Photo_photoEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photoEmpty id:%@)", self.pid];
}

@end

@implementation Api62_Photo_wallPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x559dc1e2 serializeBlock:^bool (Api62_Photo_wallPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.unread data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.sizes data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(wallPhoto id:%@ access_hash:%@ user_id:%@ date:%@ caption:%d geo:%@ unread:%@ sizes:%@)", self.pid, self.accessHash, self.userId, self.date, (int)[self.caption length], self.geo, self.unread, self.sizes];
}

@end

@implementation Api62_Photo_photo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9288dd29 serializeBlock:^bool (Api62_Photo_photo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sizes data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photo flags:%@ id:%@ access_hash:%@ date:%@ sizes:%@)", self.flags, self.pid, self.accessHash, self.date, self.sizes];
}

@end




@interface Api62_Chat ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_Chat_chatEmpty ()

@end

@interface Api62_Chat_chatForbidden ()

@property (nonatomic, strong) NSString * title;

@end

@interface Api62_Chat_chat ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) Api62_ChatPhoto * photo;
@property (nonatomic, strong) NSNumber * participantsCount;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * version;
@property (nonatomic, strong) Api62_InputChannel * migratedTo;

@end

@interface Api62_Chat_channel ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * username;
@property (nonatomic, strong) Api62_ChatPhoto * photo;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * version;
@property (nonatomic, strong) NSString * restrictionReason;

@end

@interface Api62_Chat_channelForbidden ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSString * title;

@end

@implementation Api62_Chat

+ (Api62_Chat_chatEmpty *)chatEmptyWithPid:(NSNumber *)pid
{
    Api62_Chat_chatEmpty *_object = [[Api62_Chat_chatEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Chat_chatForbidden *)chatForbiddenWithPid:(NSNumber *)pid title:(NSString *)title
{
    Api62_Chat_chatForbidden *_object = [[Api62_Chat_chatForbidden alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Chat_chat *)chatWithFlags:(NSNumber *)flags pid:(NSNumber *)pid title:(NSString *)title photo:(Api62_ChatPhoto *)photo participantsCount:(NSNumber *)participantsCount date:(NSNumber *)date version:(NSNumber *)version migratedTo:(Api62_InputChannel *)migratedTo
{
    Api62_Chat_chat *_object = [[Api62_Chat_chat alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.participantsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.migratedTo = migratedTo;
    return _object;
}

+ (Api62_Chat_channel *)channelWithFlags:(NSNumber *)flags pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash title:(NSString *)title username:(NSString *)username photo:(Api62_ChatPhoto *)photo date:(NSNumber *)date version:(NSNumber *)version restrictionReason:(NSString *)restrictionReason
{
    Api62_Chat_channel *_object = [[Api62_Chat_channel alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.username = [Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.restrictionReason = [Api62__Serializer addSerializerToObject:[restrictionReason copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Chat_channelForbidden *)channelForbiddenWithFlags:(NSNumber *)flags pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash title:(NSString *)title
{
    Api62_Chat_channelForbidden *_object = [[Api62_Chat_channelForbidden alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_Chat_chatEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9ba2d800 serializeBlock:^bool (Api62_Chat_chatEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatEmpty id:%@)", self.pid];
}

@end

@implementation Api62_Chat_chatForbidden

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7328bdb serializeBlock:^bool (Api62_Chat_chatForbidden *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatForbidden id:%@ title:%d)", self.pid, (int)[self.title length]];
}

@end

@implementation Api62_Chat_chat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd91cdd54 serializeBlock:^bool (Api62_Chat_chat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.participantsCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.migratedTo data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chat flags:%@ id:%@ title:%d photo:%@ participants_count:%@ date:%@ version:%@ migrated_to:%@)", self.flags, self.pid, (int)[self.title length], self.photo, self.participantsCount, self.date, self.version, self.migratedTo];
}

@end

@implementation Api62_Chat_channel

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa14dca52 serializeBlock:^bool (Api62_Chat_channel *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 13)) {
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.username data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 9)) {
            if (![Api62__Environment serializeObject:object.restrictionReason data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channel flags:%@ id:%@ access_hash:%@ title:%d username:%d photo:%@ date:%@ version:%@ restriction_reason:%d)", self.flags, self.pid, self.accessHash, (int)[self.title length], (int)[self.username length], self.photo, self.date, self.version, (int)[self.restrictionReason length]];
}

@end

@implementation Api62_Chat_channelForbidden

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8537784f serializeBlock:^bool (Api62_Chat_channelForbidden *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelForbidden flags:%@ id:%@ access_hash:%@ title:%d)", self.flags, self.pid, self.accessHash, (int)[self.title length]];
}

@end




@interface Api62_ChatInvite ()

@end

@interface Api62_ChatInvite_chatInviteAlready ()

@property (nonatomic, strong) Api62_Chat * chat;

@end

@interface Api62_ChatInvite_chatInvite ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) Api62_ChatPhoto * photo;
@property (nonatomic, strong) NSNumber * participantsCount;
@property (nonatomic, strong) NSArray * participants;

@end

@implementation Api62_ChatInvite

+ (Api62_ChatInvite_chatInviteAlready *)chatInviteAlreadyWithChat:(Api62_Chat *)chat
{
    Api62_ChatInvite_chatInviteAlready *_object = [[Api62_ChatInvite_chatInviteAlready alloc] init];
    _object.chat = chat;
    return _object;
}

+ (Api62_ChatInvite_chatInvite *)chatInviteWithFlags:(NSNumber *)flags title:(NSString *)title photo:(Api62_ChatPhoto *)photo participantsCount:(NSNumber *)participantsCount participants:(NSArray *)participants
{
    Api62_ChatInvite_chatInvite *_object = [[Api62_ChatInvite_chatInvite alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.participantsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participants = 
({
NSMutableArray *participants_copy = [[NSMutableArray alloc] initWithCapacity:participants.count];
for (id participants_item in participants)
{
    [participants_copy addObject:participants_item];
}
id participants_result = [Api62__Serializer addSerializerToObject:participants_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; participants_result;});
    return _object;
}


@end

@implementation Api62_ChatInvite_chatInviteAlready

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5a686d7c serializeBlock:^bool (Api62_ChatInvite_chatInviteAlready *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chat data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatInviteAlready chat:%@)", self.chat];
}

@end

@implementation Api62_ChatInvite_chatInvite

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xdb74f558 serializeBlock:^bool (Api62_ChatInvite_chatInvite *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.participantsCount data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.participants data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatInvite flags:%@ title:%d photo:%@ participants_count:%@ participants:%@)", self.flags, (int)[self.title length], self.photo, self.participantsCount, self.participants];
}

@end




@interface Api62_StickerSetCovered ()

@property (nonatomic, strong) Api62_StickerSet * set;

@end

@interface Api62_StickerSetCovered_stickerSetCovered ()

@property (nonatomic, strong) Api62_Document * cover;

@end

@interface Api62_StickerSetCovered_stickerSetMultiCovered ()

@property (nonatomic, strong) NSArray * covers;

@end

@implementation Api62_StickerSetCovered

+ (Api62_StickerSetCovered_stickerSetCovered *)stickerSetCoveredWithSet:(Api62_StickerSet *)set cover:(Api62_Document *)cover
{
    Api62_StickerSetCovered_stickerSetCovered *_object = [[Api62_StickerSetCovered_stickerSetCovered alloc] init];
    _object.set = set;
    _object.cover = cover;
    return _object;
}

+ (Api62_StickerSetCovered_stickerSetMultiCovered *)stickerSetMultiCoveredWithSet:(Api62_StickerSet *)set covers:(NSArray *)covers
{
    Api62_StickerSetCovered_stickerSetMultiCovered *_object = [[Api62_StickerSetCovered_stickerSetMultiCovered alloc] init];
    _object.set = set;
    _object.covers = 
({
NSMutableArray *covers_copy = [[NSMutableArray alloc] initWithCapacity:covers.count];
for (id covers_item in covers)
{
    [covers_copy addObject:covers_item];
}
id covers_result = [Api62__Serializer addSerializerToObject:covers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; covers_result;});
    return _object;
}


@end

@implementation Api62_StickerSetCovered_stickerSetCovered

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6410a5d2 serializeBlock:^bool (Api62_StickerSetCovered_stickerSetCovered *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.set data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.cover data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(stickerSetCovered set:%@ cover:%@)", self.set, self.cover];
}

@end

@implementation Api62_StickerSetCovered_stickerSetMultiCovered

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3407e51b serializeBlock:^bool (Api62_StickerSetCovered_stickerSetMultiCovered *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.set data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.covers data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(stickerSetMultiCovered set:%@ covers:%@)", self.set, self.covers];
}

@end




@interface Api62_contacts_Requests ()

@property (nonatomic, strong) NSArray * requests;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_Requests_contacts_requests ()

@end

@interface Api62_contacts_Requests_contacts_requestsSlice ()

@property (nonatomic, strong) NSNumber * count;

@end

@implementation Api62_contacts_Requests

+ (Api62_contacts_Requests_contacts_requests *)contacts_requestsWithRequests:(NSArray *)requests users:(NSArray *)users
{
    Api62_contacts_Requests_contacts_requests *_object = [[Api62_contacts_Requests_contacts_requests alloc] init];
    _object.requests = 
({
NSMutableArray *requests_copy = [[NSMutableArray alloc] initWithCapacity:requests.count];
for (id requests_item in requests)
{
    [requests_copy addObject:requests_item];
}
id requests_result = [Api62__Serializer addSerializerToObject:requests_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; requests_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_contacts_Requests_contacts_requestsSlice *)contacts_requestsSliceWithCount:(NSNumber *)count requests:(NSArray *)requests users:(NSArray *)users
{
    Api62_contacts_Requests_contacts_requestsSlice *_object = [[Api62_contacts_Requests_contacts_requestsSlice alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.requests = 
({
NSMutableArray *requests_copy = [[NSMutableArray alloc] initWithCapacity:requests.count];
for (id requests_item in requests)
{
    [requests_copy addObject:requests_item];
}
id requests_result = [Api62__Serializer addSerializerToObject:requests_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; requests_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_Requests_contacts_requests

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6262c36c serializeBlock:^bool (Api62_contacts_Requests_contacts_requests *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.requests data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.requests requests:%@ users:%@)", self.requests, self.users];
}

@end

@implementation Api62_contacts_Requests_contacts_requestsSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6f585b8c serializeBlock:^bool (Api62_contacts_Requests_contacts_requestsSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.requests data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.requestsSlice count:%@ requests:%@ users:%@)", self.count, self.requests, self.users];
}

@end




@interface Api62_channels_ChannelParticipants ()

@property (nonatomic, strong) NSNumber * count;
@property (nonatomic, strong) NSArray * participants;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_channels_ChannelParticipants_channels_channelParticipants ()

@end

@implementation Api62_channels_ChannelParticipants

+ (Api62_channels_ChannelParticipants_channels_channelParticipants *)channels_channelParticipantsWithCount:(NSNumber *)count participants:(NSArray *)participants users:(NSArray *)users
{
    Api62_channels_ChannelParticipants_channels_channelParticipants *_object = [[Api62_channels_ChannelParticipants_channels_channelParticipants alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participants = 
({
NSMutableArray *participants_copy = [[NSMutableArray alloc] initWithCapacity:participants.count];
for (id participants_item in participants)
{
    [participants_copy addObject:participants_item];
}
id participants_result = [Api62__Serializer addSerializerToObject:participants_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; participants_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_channels_ChannelParticipants_channels_channelParticipants

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf56ee2a8 serializeBlock:^bool (Api62_channels_ChannelParticipants_channels_channelParticipants *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participants data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channels.channelParticipants count:%@ participants:%@ users:%@)", self.count, self.participants, self.users];
}

@end




@interface Api62_GeoPlaceName ()

@property (nonatomic, strong) NSString * country;
@property (nonatomic, strong) NSString * state;
@property (nonatomic, strong) NSString * city;
@property (nonatomic, strong) NSString * district;
@property (nonatomic, strong) NSString * street;

@end

@interface Api62_GeoPlaceName_geoPlaceName ()

@end

@implementation Api62_GeoPlaceName

+ (Api62_GeoPlaceName_geoPlaceName *)geoPlaceNameWithCountry:(NSString *)country state:(NSString *)state city:(NSString *)city district:(NSString *)district street:(NSString *)street
{
    Api62_GeoPlaceName_geoPlaceName *_object = [[Api62_GeoPlaceName_geoPlaceName alloc] init];
    _object.country = [Api62__Serializer addSerializerToObject:[country copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.state = [Api62__Serializer addSerializerToObject:[state copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.city = [Api62__Serializer addSerializerToObject:[city copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.district = [Api62__Serializer addSerializerToObject:[district copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.street = [Api62__Serializer addSerializerToObject:[street copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_GeoPlaceName_geoPlaceName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3819538f serializeBlock:^bool (Api62_GeoPlaceName_geoPlaceName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.country data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.state data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.city data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.district data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.street data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(geoPlaceName country:%d state:%d city:%d district:%d street:%d)", (int)[self.country length], (int)[self.state length], (int)[self.city length], (int)[self.district length], (int)[self.street length]];
}

@end




@interface Api62_RichText ()

@end

@interface Api62_RichText_textEmpty ()

@end

@interface Api62_RichText_textPlain ()

@property (nonatomic, strong) NSString * text;

@end

@interface Api62_RichText_textBold ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_RichText_textItalic ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_RichText_textUnderline ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_RichText_textStrike ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_RichText_textFixed ()

@property (nonatomic, strong) Api62_RichText * text;

@end

@interface Api62_RichText_textUrl ()

@property (nonatomic, strong) Api62_RichText * text;
@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSNumber * webpageId;

@end

@interface Api62_RichText_textEmail ()

@property (nonatomic, strong) Api62_RichText * text;
@property (nonatomic, strong) NSString * email;

@end

@interface Api62_RichText_textConcat ()

@property (nonatomic, strong) NSArray * texts;

@end

@implementation Api62_RichText

+ (Api62_RichText_textEmpty *)textEmpty
{
    Api62_RichText_textEmpty *_object = [[Api62_RichText_textEmpty alloc] init];
    return _object;
}

+ (Api62_RichText_textPlain *)textPlainWithText:(NSString *)text
{
    Api62_RichText_textPlain *_object = [[Api62_RichText_textPlain alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_RichText_textBold *)textBoldWithText:(Api62_RichText *)text
{
    Api62_RichText_textBold *_object = [[Api62_RichText_textBold alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_RichText_textItalic *)textItalicWithText:(Api62_RichText *)text
{
    Api62_RichText_textItalic *_object = [[Api62_RichText_textItalic alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_RichText_textUnderline *)textUnderlineWithText:(Api62_RichText *)text
{
    Api62_RichText_textUnderline *_object = [[Api62_RichText_textUnderline alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_RichText_textStrike *)textStrikeWithText:(Api62_RichText *)text
{
    Api62_RichText_textStrike *_object = [[Api62_RichText_textStrike alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_RichText_textFixed *)textFixedWithText:(Api62_RichText *)text
{
    Api62_RichText_textFixed *_object = [[Api62_RichText_textFixed alloc] init];
    _object.text = text;
    return _object;
}

+ (Api62_RichText_textUrl *)textUrlWithText:(Api62_RichText *)text url:(NSString *)url webpageId:(NSNumber *)webpageId
{
    Api62_RichText_textUrl *_object = [[Api62_RichText_textUrl alloc] init];
    _object.text = text;
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.webpageId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:webpageId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_RichText_textEmail *)textEmailWithText:(Api62_RichText *)text email:(NSString *)email
{
    Api62_RichText_textEmail *_object = [[Api62_RichText_textEmail alloc] init];
    _object.text = text;
    _object.email = [Api62__Serializer addSerializerToObject:[email copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_RichText_textConcat *)textConcatWithTexts:(NSArray *)texts
{
    Api62_RichText_textConcat *_object = [[Api62_RichText_textConcat alloc] init];
    _object.texts = 
({
NSMutableArray *texts_copy = [[NSMutableArray alloc] initWithCapacity:texts.count];
for (id texts_item in texts)
{
    [texts_copy addObject:texts_item];
}
id texts_result = [Api62__Serializer addSerializerToObject:texts_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; texts_result;});
    return _object;
}


@end

@implementation Api62_RichText_textEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xdc3d824f serializeBlock:^bool (__unused Api62_RichText_textEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textEmpty)"];
}

@end

@implementation Api62_RichText_textPlain

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x744694e0 serializeBlock:^bool (Api62_RichText_textPlain *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textPlain text:%d)", (int)[self.text length]];
}

@end

@implementation Api62_RichText_textBold

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6724abc4 serializeBlock:^bool (Api62_RichText_textBold *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textBold text:%@)", self.text];
}

@end

@implementation Api62_RichText_textItalic

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd912a59c serializeBlock:^bool (Api62_RichText_textItalic *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textItalic text:%@)", self.text];
}

@end

@implementation Api62_RichText_textUnderline

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc12622c4 serializeBlock:^bool (Api62_RichText_textUnderline *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textUnderline text:%@)", self.text];
}

@end

@implementation Api62_RichText_textStrike

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9bf8bb95 serializeBlock:^bool (Api62_RichText_textStrike *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textStrike text:%@)", self.text];
}

@end

@implementation Api62_RichText_textFixed

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6c3f19b9 serializeBlock:^bool (Api62_RichText_textFixed *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textFixed text:%@)", self.text];
}

@end

@implementation Api62_RichText_textUrl

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3c2884c1 serializeBlock:^bool (Api62_RichText_textUrl *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.webpageId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textUrl text:%@ url:%d webpage_id:%@)", self.text, (int)[self.url length], self.webpageId];
}

@end

@implementation Api62_RichText_textEmail

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xde5a0dd6 serializeBlock:^bool (Api62_RichText_textEmail *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.email data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textEmail text:%@ email:%d)", self.text, (int)[self.email length]];
}

@end

@implementation Api62_RichText_textConcat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7e6260d7 serializeBlock:^bool (Api62_RichText_textConcat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.texts data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(textConcat texts:%@)", self.texts];
}

@end




@interface Api62_UserFull ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_User * user;
@property (nonatomic, strong) NSString * about;
@property (nonatomic, strong) Api62_contacts_Link * link;
@property (nonatomic, strong) Api62_Photo * profilePhoto;
@property (nonatomic, strong) Api62_PeerNotifySettings * notifySettings;
@property (nonatomic, strong) Api62_BotInfo * botInfo;
@property (nonatomic, strong) NSNumber * commonChatsCount;

@end

@interface Api62_UserFull_userFull ()

@end

@implementation Api62_UserFull

+ (Api62_UserFull_userFull *)userFullWithFlags:(NSNumber *)flags user:(Api62_User *)user about:(NSString *)about link:(Api62_contacts_Link *)link profilePhoto:(Api62_Photo *)profilePhoto notifySettings:(Api62_PeerNotifySettings *)notifySettings botInfo:(Api62_BotInfo *)botInfo commonChatsCount:(NSNumber *)commonChatsCount
{
    Api62_UserFull_userFull *_object = [[Api62_UserFull_userFull alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.user = user;
    _object.about = [Api62__Serializer addSerializerToObject:[about copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.link = link;
    _object.profilePhoto = profilePhoto;
    _object.notifySettings = notifySettings;
    _object.botInfo = botInfo;
    _object.commonChatsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:commonChatsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_UserFull_userFull

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf220f3f serializeBlock:^bool (Api62_UserFull_userFull *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.user data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.about data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.link data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.profilePhoto data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.notifySettings data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.botInfo data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.commonChatsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userFull flags:%@ user:%@ about:%d link:%@ profile_photo:%@ notify_settings:%@ bot_info:%@ common_chats_count:%@)", self.flags, self.user, (int)[self.about length], self.link, self.profilePhoto, self.notifySettings, self.botInfo, self.commonChatsCount];
}

@end




@interface Api62_InputPeerNotifyEvents ()

@end

@interface Api62_InputPeerNotifyEvents_inputPeerNotifyEventsEmpty ()

@end

@interface Api62_InputPeerNotifyEvents_inputPeerNotifyEventsAll ()

@end

@implementation Api62_InputPeerNotifyEvents

+ (Api62_InputPeerNotifyEvents_inputPeerNotifyEventsEmpty *)inputPeerNotifyEventsEmpty
{
    Api62_InputPeerNotifyEvents_inputPeerNotifyEventsEmpty *_object = [[Api62_InputPeerNotifyEvents_inputPeerNotifyEventsEmpty alloc] init];
    return _object;
}

+ (Api62_InputPeerNotifyEvents_inputPeerNotifyEventsAll *)inputPeerNotifyEventsAll
{
    Api62_InputPeerNotifyEvents_inputPeerNotifyEventsAll *_object = [[Api62_InputPeerNotifyEvents_inputPeerNotifyEventsAll alloc] init];
    return _object;
}


@end

@implementation Api62_InputPeerNotifyEvents_inputPeerNotifyEventsEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf03064d8 serializeBlock:^bool (__unused Api62_InputPeerNotifyEvents_inputPeerNotifyEventsEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerNotifyEventsEmpty)"];
}

@end

@implementation Api62_InputPeerNotifyEvents_inputPeerNotifyEventsAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe86a2c74 serializeBlock:^bool (__unused Api62_InputPeerNotifyEvents_inputPeerNotifyEventsAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerNotifyEventsAll)"];
}

@end




@interface Api62_InputChannel ()

@end

@interface Api62_InputChannel_inputChannelEmpty ()

@end

@interface Api62_InputChannel_inputChannel ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@implementation Api62_InputChannel

+ (Api62_InputChannel_inputChannelEmpty *)inputChannelEmpty
{
    Api62_InputChannel_inputChannelEmpty *_object = [[Api62_InputChannel_inputChannelEmpty alloc] init];
    return _object;
}

+ (Api62_InputChannel_inputChannel *)inputChannelWithChannelId:(NSNumber *)channelId accessHash:(NSNumber *)accessHash
{
    Api62_InputChannel_inputChannel *_object = [[Api62_InputChannel_inputChannel alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputChannel_inputChannelEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xee8c1e86 serializeBlock:^bool (__unused Api62_InputChannel_inputChannelEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputChannelEmpty)"];
}

@end

@implementation Api62_InputChannel_inputChannel

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xafeb712e serializeBlock:^bool (Api62_InputChannel_inputChannel *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputChannel channel_id:%@ access_hash:%@)", self.channelId, self.accessHash];
}

@end




@interface Api62_DcOption ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * ipAddress;
@property (nonatomic, strong) NSNumber * port;

@end

@interface Api62_DcOption_dcOption ()

@end

@implementation Api62_DcOption

+ (Api62_DcOption_dcOption *)dcOptionWithFlags:(NSNumber *)flags pid:(NSNumber *)pid ipAddress:(NSString *)ipAddress port:(NSNumber *)port
{
    Api62_DcOption_dcOption *_object = [[Api62_DcOption_dcOption alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ipAddress = [Api62__Serializer addSerializerToObject:[ipAddress copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.port = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:port] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_DcOption_dcOption

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5d8c6cc serializeBlock:^bool (Api62_DcOption_dcOption *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ipAddress data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.port data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(dcOption flags:%@ id:%@ ip_address:%d port:%@)", self.flags, self.pid, (int)[self.ipAddress length], self.port];
}

@end




@interface Api62_MessageGroup ()

@property (nonatomic, strong) NSNumber * minId;
@property (nonatomic, strong) NSNumber * maxId;
@property (nonatomic, strong) NSNumber * count;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_MessageGroup_messageGroup ()

@end

@implementation Api62_MessageGroup

+ (Api62_MessageGroup_messageGroup *)messageGroupWithMinId:(NSNumber *)minId maxId:(NSNumber *)maxId count:(NSNumber *)count date:(NSNumber *)date
{
    Api62_MessageGroup_messageGroup *_object = [[Api62_MessageGroup_messageGroup alloc] init];
    _object.minId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:minId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.maxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_MessageGroup_messageGroup

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe8346f53 serializeBlock:^bool (Api62_MessageGroup_messageGroup *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.minId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.maxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageGroup min_id:%@ max_id:%@ count:%@ date:%@)", self.minId, self.maxId, self.count, self.date];
}

@end




@interface Api62_account_PasswordSettings ()

@property (nonatomic, strong) NSString * email;

@end

@interface Api62_account_PasswordSettings_account_passwordSettings ()

@end

@implementation Api62_account_PasswordSettings

+ (Api62_account_PasswordSettings_account_passwordSettings *)account_passwordSettingsWithEmail:(NSString *)email
{
    Api62_account_PasswordSettings_account_passwordSettings *_object = [[Api62_account_PasswordSettings_account_passwordSettings alloc] init];
    _object.email = [Api62__Serializer addSerializerToObject:[email copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_account_PasswordSettings_account_passwordSettings

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb7b72ab3 serializeBlock:^bool (Api62_account_PasswordSettings_account_passwordSettings *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.email data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.passwordSettings email:%d)", (int)[self.email length]];
}

@end




@interface Api62_help_AppUpdate ()

@end

@interface Api62_help_AppUpdate_help_appUpdate ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) Api62_Bool * critical;
@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * text;

@end

@interface Api62_help_AppUpdate_help_noAppUpdate ()

@end

@interface Api62_help_AppUpdate_help_getAppUpdate ()

@end

@implementation Api62_help_AppUpdate

+ (Api62_help_AppUpdate_help_appUpdate *)help_appUpdateWithPid:(NSNumber *)pid critical:(Api62_Bool *)critical url:(NSString *)url text:(NSString *)text
{
    Api62_help_AppUpdate_help_appUpdate *_object = [[Api62_help_AppUpdate_help_appUpdate alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.critical = critical;
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_help_AppUpdate_help_noAppUpdate *)help_noAppUpdate
{
    Api62_help_AppUpdate_help_noAppUpdate *_object = [[Api62_help_AppUpdate_help_noAppUpdate alloc] init];
    return _object;
}

+ (Api62_help_AppUpdate_help_getAppUpdate *)help_getAppUpdate
{
    Api62_help_AppUpdate_help_getAppUpdate *_object = [[Api62_help_AppUpdate_help_getAppUpdate alloc] init];
    return _object;
}


@end

@implementation Api62_help_AppUpdate_help_appUpdate

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8987f311 serializeBlock:^bool (Api62_help_AppUpdate_help_appUpdate *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.critical data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.appUpdate id:%@ critical:%@ url:%d text:%d)", self.pid, self.critical, (int)[self.url length], (int)[self.text length]];
}

@end

@implementation Api62_help_AppUpdate_help_noAppUpdate

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc45a6536 serializeBlock:^bool (__unused Api62_help_AppUpdate_help_noAppUpdate *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.noAppUpdate)"];
}

@end

@implementation Api62_help_AppUpdate_help_getAppUpdate

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xae2de196 serializeBlock:^bool (__unused Api62_help_AppUpdate_help_getAppUpdate *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.getAppUpdate)"];
}

@end




@interface Api62_channels_ChannelParticipant ()

@property (nonatomic, strong) Api62_ChannelParticipant * participant;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_channels_ChannelParticipant_channels_channelParticipant ()

@end

@implementation Api62_channels_ChannelParticipant

+ (Api62_channels_ChannelParticipant_channels_channelParticipant *)channels_channelParticipantWithParticipant:(Api62_ChannelParticipant *)participant users:(NSArray *)users
{
    Api62_channels_ChannelParticipant_channels_channelParticipant *_object = [[Api62_channels_ChannelParticipant_channels_channelParticipant alloc] init];
    _object.participant = participant;
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_channels_ChannelParticipant_channels_channelParticipant

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd0d9b163 serializeBlock:^bool (Api62_channels_ChannelParticipant_channels_channelParticipant *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.participant data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channels.channelParticipant participant:%@ users:%@)", self.participant, self.users];
}

@end




@interface Api62_contacts_SentLink ()

@property (nonatomic, strong) Api62_messages_Message * message;
@property (nonatomic, strong) Api62_contacts_Link * link;

@end

@interface Api62_contacts_SentLink_contacts_sentLink ()

@end

@implementation Api62_contacts_SentLink

+ (Api62_contacts_SentLink_contacts_sentLink *)contacts_sentLinkWithMessage:(Api62_messages_Message *)message link:(Api62_contacts_Link *)link
{
    Api62_contacts_SentLink_contacts_sentLink *_object = [[Api62_contacts_SentLink_contacts_sentLink alloc] init];
    _object.message = message;
    _object.link = link;
    return _object;
}


@end

@implementation Api62_contacts_SentLink_contacts_sentLink

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x96a0c63e serializeBlock:^bool (Api62_contacts_SentLink_contacts_sentLink *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.link data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.sentLink message:%@ link:%@)", self.message, self.link];
}

@end




@interface Api62_ChannelParticipantRole ()

@end

@interface Api62_ChannelParticipantRole_channelRoleEmpty ()

@end

@interface Api62_ChannelParticipantRole_channelRoleModerator ()

@end

@interface Api62_ChannelParticipantRole_channelRoleEditor ()

@end

@implementation Api62_ChannelParticipantRole

+ (Api62_ChannelParticipantRole_channelRoleEmpty *)channelRoleEmpty
{
    Api62_ChannelParticipantRole_channelRoleEmpty *_object = [[Api62_ChannelParticipantRole_channelRoleEmpty alloc] init];
    return _object;
}

+ (Api62_ChannelParticipantRole_channelRoleModerator *)channelRoleModerator
{
    Api62_ChannelParticipantRole_channelRoleModerator *_object = [[Api62_ChannelParticipantRole_channelRoleModerator alloc] init];
    return _object;
}

+ (Api62_ChannelParticipantRole_channelRoleEditor *)channelRoleEditor
{
    Api62_ChannelParticipantRole_channelRoleEditor *_object = [[Api62_ChannelParticipantRole_channelRoleEditor alloc] init];
    return _object;
}


@end

@implementation Api62_ChannelParticipantRole_channelRoleEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb285a0c6 serializeBlock:^bool (__unused Api62_ChannelParticipantRole_channelRoleEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelRoleEmpty)"];
}

@end

@implementation Api62_ChannelParticipantRole_channelRoleModerator

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9618d975 serializeBlock:^bool (__unused Api62_ChannelParticipantRole_channelRoleModerator *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelRoleModerator)"];
}

@end

@implementation Api62_ChannelParticipantRole_channelRoleEditor

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x820bfe8c serializeBlock:^bool (__unused Api62_ChannelParticipantRole_channelRoleEditor *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelRoleEditor)"];
}

@end




@interface Api62_storage_FileType ()

@end

@interface Api62_storage_FileType_storage_fileUnknown ()

@end

@interface Api62_storage_FileType_storage_fileJpeg ()

@end

@interface Api62_storage_FileType_storage_fileGif ()

@end

@interface Api62_storage_FileType_storage_filePng ()

@end

@interface Api62_storage_FileType_storage_filePdf ()

@end

@interface Api62_storage_FileType_storage_fileMp3 ()

@end

@interface Api62_storage_FileType_storage_fileMov ()

@end

@interface Api62_storage_FileType_storage_filePartial ()

@end

@interface Api62_storage_FileType_storage_fileMp4 ()

@end

@interface Api62_storage_FileType_storage_fileWebp ()

@end

@implementation Api62_storage_FileType

+ (Api62_storage_FileType_storage_fileUnknown *)storage_fileUnknown
{
    Api62_storage_FileType_storage_fileUnknown *_object = [[Api62_storage_FileType_storage_fileUnknown alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_fileJpeg *)storage_fileJpeg
{
    Api62_storage_FileType_storage_fileJpeg *_object = [[Api62_storage_FileType_storage_fileJpeg alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_fileGif *)storage_fileGif
{
    Api62_storage_FileType_storage_fileGif *_object = [[Api62_storage_FileType_storage_fileGif alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_filePng *)storage_filePng
{
    Api62_storage_FileType_storage_filePng *_object = [[Api62_storage_FileType_storage_filePng alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_filePdf *)storage_filePdf
{
    Api62_storage_FileType_storage_filePdf *_object = [[Api62_storage_FileType_storage_filePdf alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_fileMp3 *)storage_fileMp3
{
    Api62_storage_FileType_storage_fileMp3 *_object = [[Api62_storage_FileType_storage_fileMp3 alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_fileMov *)storage_fileMov
{
    Api62_storage_FileType_storage_fileMov *_object = [[Api62_storage_FileType_storage_fileMov alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_filePartial *)storage_filePartial
{
    Api62_storage_FileType_storage_filePartial *_object = [[Api62_storage_FileType_storage_filePartial alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_fileMp4 *)storage_fileMp4
{
    Api62_storage_FileType_storage_fileMp4 *_object = [[Api62_storage_FileType_storage_fileMp4 alloc] init];
    return _object;
}

+ (Api62_storage_FileType_storage_fileWebp *)storage_fileWebp
{
    Api62_storage_FileType_storage_fileWebp *_object = [[Api62_storage_FileType_storage_fileWebp alloc] init];
    return _object;
}


@end

@implementation Api62_storage_FileType_storage_fileUnknown

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xaa963b05 serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileUnknown *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileUnknown)"];
}

@end

@implementation Api62_storage_FileType_storage_fileJpeg

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7efe0e serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileJpeg *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileJpeg)"];
}

@end

@implementation Api62_storage_FileType_storage_fileGif

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xcae1aadf serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileGif *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileGif)"];
}

@end

@implementation Api62_storage_FileType_storage_filePng

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa4f63c0 serializeBlock:^bool (__unused Api62_storage_FileType_storage_filePng *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.filePng)"];
}

@end

@implementation Api62_storage_FileType_storage_filePdf

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xae1e508d serializeBlock:^bool (__unused Api62_storage_FileType_storage_filePdf *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.filePdf)"];
}

@end

@implementation Api62_storage_FileType_storage_fileMp3

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x528a0677 serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileMp3 *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileMp3)"];
}

@end

@implementation Api62_storage_FileType_storage_fileMov

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4b09ebbc serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileMov *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileMov)"];
}

@end

@implementation Api62_storage_FileType_storage_filePartial

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x40bc6f52 serializeBlock:^bool (__unused Api62_storage_FileType_storage_filePartial *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.filePartial)"];
}

@end

@implementation Api62_storage_FileType_storage_fileMp4

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb3cea0e4 serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileMp4 *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileMp4)"];
}

@end

@implementation Api62_storage_FileType_storage_fileWebp

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1081464c serializeBlock:^bool (__unused Api62_storage_FileType_storage_fileWebp *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(storage.fileWebp)"];
}

@end




@interface Api62_messages_ArchivedStickers ()

@end

@interface Api62_messages_ArchivedStickers_messages_archivedStickers ()

@property (nonatomic, strong) NSNumber * count;
@property (nonatomic, strong) NSArray * sets;

@end

@interface Api62_messages_ArchivedStickers_messages_getArchivedStickers ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * offsetId;
@property (nonatomic, strong) NSNumber * limit;

@end

@implementation Api62_messages_ArchivedStickers

+ (Api62_messages_ArchivedStickers_messages_archivedStickers *)messages_archivedStickersWithCount:(NSNumber *)count sets:(NSArray *)sets
{
    Api62_messages_ArchivedStickers_messages_archivedStickers *_object = [[Api62_messages_ArchivedStickers_messages_archivedStickers alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sets = 
({
NSMutableArray *sets_copy = [[NSMutableArray alloc] initWithCapacity:sets.count];
for (id sets_item in sets)
{
    [sets_copy addObject:sets_item];
}
id sets_result = [Api62__Serializer addSerializerToObject:sets_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sets_result;});
    return _object;
}

+ (Api62_messages_ArchivedStickers_messages_getArchivedStickers *)messages_getArchivedStickersWithFlags:(NSNumber *)flags offsetId:(NSNumber *)offsetId limit:(NSNumber *)limit
{
    Api62_messages_ArchivedStickers_messages_getArchivedStickers *_object = [[Api62_messages_ArchivedStickers_messages_getArchivedStickers alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.offsetId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.limit = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_ArchivedStickers_messages_archivedStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4fcba9c8 serializeBlock:^bool (Api62_messages_ArchivedStickers_messages_archivedStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sets data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.archivedStickers count:%@ sets:%@)", self.count, self.sets];
}

@end

@implementation Api62_messages_ArchivedStickers_messages_getArchivedStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x57f17692 serializeBlock:^bool (Api62_messages_ArchivedStickers_messages_getArchivedStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.offsetId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.limit data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.getArchivedStickers flags:%@ offset_id:%@ limit:%@)", self.flags, self.offsetId, self.limit];
}

@end




@interface Api62_InputEncryptedFile ()

@end

@interface Api62_InputEncryptedFile_inputEncryptedFileEmpty ()

@end

@interface Api62_InputEncryptedFile_inputEncryptedFileUploaded ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * parts;
@property (nonatomic, strong) NSString * md5Checksum;
@property (nonatomic, strong) NSNumber * keyFingerprint;

@end

@interface Api62_InputEncryptedFile_inputEncryptedFile ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputEncryptedFile_inputEncryptedFileBigUploaded ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * parts;
@property (nonatomic, strong) NSNumber * keyFingerprint;

@end

@implementation Api62_InputEncryptedFile

+ (Api62_InputEncryptedFile_inputEncryptedFileEmpty *)inputEncryptedFileEmpty
{
    Api62_InputEncryptedFile_inputEncryptedFileEmpty *_object = [[Api62_InputEncryptedFile_inputEncryptedFileEmpty alloc] init];
    return _object;
}

+ (Api62_InputEncryptedFile_inputEncryptedFileUploaded *)inputEncryptedFileUploadedWithPid:(NSNumber *)pid parts:(NSNumber *)parts md5Checksum:(NSString *)md5Checksum keyFingerprint:(NSNumber *)keyFingerprint
{
    Api62_InputEncryptedFile_inputEncryptedFileUploaded *_object = [[Api62_InputEncryptedFile_inputEncryptedFileUploaded alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.parts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:parts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.md5Checksum = [Api62__Serializer addSerializerToObject:[md5Checksum copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.keyFingerprint = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_InputEncryptedFile_inputEncryptedFile *)inputEncryptedFileWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputEncryptedFile_inputEncryptedFile *_object = [[Api62_InputEncryptedFile_inputEncryptedFile alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_InputEncryptedFile_inputEncryptedFileBigUploaded *)inputEncryptedFileBigUploadedWithPid:(NSNumber *)pid parts:(NSNumber *)parts keyFingerprint:(NSNumber *)keyFingerprint
{
    Api62_InputEncryptedFile_inputEncryptedFileBigUploaded *_object = [[Api62_InputEncryptedFile_inputEncryptedFileBigUploaded alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.parts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:parts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.keyFingerprint = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_InputEncryptedFile_inputEncryptedFileEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1837c364 serializeBlock:^bool (__unused Api62_InputEncryptedFile_inputEncryptedFileEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputEncryptedFileEmpty)"];
}

@end

@implementation Api62_InputEncryptedFile_inputEncryptedFileUploaded

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x64bd0306 serializeBlock:^bool (Api62_InputEncryptedFile_inputEncryptedFileUploaded *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.parts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.md5Checksum data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.keyFingerprint data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputEncryptedFileUploaded id:%@ parts:%@ md5_checksum:%d key_fingerprint:%@)", self.pid, self.parts, (int)[self.md5Checksum length], self.keyFingerprint];
}

@end

@implementation Api62_InputEncryptedFile_inputEncryptedFile

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5a17b5e5 serializeBlock:^bool (Api62_InputEncryptedFile_inputEncryptedFile *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputEncryptedFile id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end

@implementation Api62_InputEncryptedFile_inputEncryptedFileBigUploaded

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2dc173c8 serializeBlock:^bool (Api62_InputEncryptedFile_inputEncryptedFileBigUploaded *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.parts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.keyFingerprint data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputEncryptedFileBigUploaded id:%@ parts:%@ key_fingerprint:%@)", self.pid, self.parts, self.keyFingerprint];
}

@end




@interface Api62_messages_SentEncryptedMessage ()

@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_messages_SentEncryptedMessage_messages_sentEncryptedMessage ()

@end

@interface Api62_messages_SentEncryptedMessage_messages_sentEncryptedFile ()

@property (nonatomic, strong) Api62_EncryptedFile * file;

@end

@implementation Api62_messages_SentEncryptedMessage

+ (Api62_messages_SentEncryptedMessage_messages_sentEncryptedMessage *)messages_sentEncryptedMessageWithDate:(NSNumber *)date
{
    Api62_messages_SentEncryptedMessage_messages_sentEncryptedMessage *_object = [[Api62_messages_SentEncryptedMessage_messages_sentEncryptedMessage alloc] init];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_messages_SentEncryptedMessage_messages_sentEncryptedFile *)messages_sentEncryptedFileWithDate:(NSNumber *)date file:(Api62_EncryptedFile *)file
{
    Api62_messages_SentEncryptedMessage_messages_sentEncryptedFile *_object = [[Api62_messages_SentEncryptedMessage_messages_sentEncryptedFile alloc] init];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.file = file;
    return _object;
}


@end

@implementation Api62_messages_SentEncryptedMessage_messages_sentEncryptedMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x560f8935 serializeBlock:^bool (Api62_messages_SentEncryptedMessage_messages_sentEncryptedMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.sentEncryptedMessage date:%@)", self.date];
}

@end

@implementation Api62_messages_SentEncryptedMessage_messages_sentEncryptedFile

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9493ff32 serializeBlock:^bool (Api62_messages_SentEncryptedMessage_messages_sentEncryptedFile *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.sentEncryptedFile date:%@ file:%@)", self.date, self.file];
}

@end




@interface Api62_ExportedMessageLink ()

@property (nonatomic, strong) NSString * link;

@end

@interface Api62_ExportedMessageLink_exportedMessageLink ()

@end

@implementation Api62_ExportedMessageLink

+ (Api62_ExportedMessageLink_exportedMessageLink *)exportedMessageLinkWithLink:(NSString *)link
{
    Api62_ExportedMessageLink_exportedMessageLink *_object = [[Api62_ExportedMessageLink_exportedMessageLink alloc] init];
    _object.link = [Api62__Serializer addSerializerToObject:[link copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_ExportedMessageLink_exportedMessageLink

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1f486803 serializeBlock:^bool (Api62_ExportedMessageLink_exportedMessageLink *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.link data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(exportedMessageLink link:%d)", (int)[self.link length]];
}

@end




@interface Api62_auth_Authorization ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * tmpSessions;
@property (nonatomic, strong) Api62_User * user;

@end

@interface Api62_auth_Authorization_auth_authorization ()

@end

@implementation Api62_auth_Authorization

+ (Api62_auth_Authorization_auth_authorization *)auth_authorizationWithFlags:(NSNumber *)flags tmpSessions:(NSNumber *)tmpSessions user:(Api62_User *)user
{
    Api62_auth_Authorization_auth_authorization *_object = [[Api62_auth_Authorization_auth_authorization alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.tmpSessions = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:tmpSessions] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.user = user;
    return _object;
}


@end

@implementation Api62_auth_Authorization_auth_authorization

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xcd050916 serializeBlock:^bool (Api62_auth_Authorization_auth_authorization *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.tmpSessions data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.user data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.authorization flags:%@ tmp_sessions:%@ user:%@)", self.flags, self.tmpSessions, self.user];
}

@end




@interface Api62_InputFile ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * parts;
@property (nonatomic, strong) NSString * name;

@end

@interface Api62_InputFile_inputFile ()

@property (nonatomic, strong) NSString * md5Checksum;

@end

@interface Api62_InputFile_inputFileBig ()

@end

@implementation Api62_InputFile

+ (Api62_InputFile_inputFile *)inputFileWithPid:(NSNumber *)pid parts:(NSNumber *)parts name:(NSString *)name md5Checksum:(NSString *)md5Checksum
{
    Api62_InputFile_inputFile *_object = [[Api62_InputFile_inputFile alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.parts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:parts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.name = [Api62__Serializer addSerializerToObject:[name copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.md5Checksum = [Api62__Serializer addSerializerToObject:[md5Checksum copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputFile_inputFileBig *)inputFileBigWithPid:(NSNumber *)pid parts:(NSNumber *)parts name:(NSString *)name
{
    Api62_InputFile_inputFileBig *_object = [[Api62_InputFile_inputFileBig alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.parts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:parts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.name = [Api62__Serializer addSerializerToObject:[name copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InputFile_inputFile

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf52ff27f serializeBlock:^bool (Api62_InputFile_inputFile *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.parts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.name data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.md5Checksum data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputFile id:%@ parts:%@ name:%d md5_checksum:%d)", self.pid, self.parts, (int)[self.name length], (int)[self.md5Checksum length]];
}

@end

@implementation Api62_InputFile_inputFileBig

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfa4f0bb5 serializeBlock:^bool (Api62_InputFile_inputFileBig *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.parts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.name data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputFileBig id:%@ parts:%@ name:%d)", self.pid, self.parts, (int)[self.name length]];
}

@end




@interface Api62_Peer ()

@end

@interface Api62_Peer_peerUser ()

@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_Peer_peerChat ()

@property (nonatomic, strong) NSNumber * chatId;

@end

@interface Api62_Peer_peerChannel ()

@property (nonatomic, strong) NSNumber * channelId;

@end

@implementation Api62_Peer

+ (Api62_Peer_peerUser *)peerUserWithUserId:(NSNumber *)userId
{
    Api62_Peer_peerUser *_object = [[Api62_Peer_peerUser alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Peer_peerChat *)peerChatWithChatId:(NSNumber *)chatId
{
    Api62_Peer_peerChat *_object = [[Api62_Peer_peerChat alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Peer_peerChannel *)peerChannelWithChannelId:(NSNumber *)channelId
{
    Api62_Peer_peerChannel *_object = [[Api62_Peer_peerChannel alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_Peer_peerUser

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9db1bc6d serializeBlock:^bool (Api62_Peer_peerUser *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerUser user_id:%@)", self.userId];
}

@end

@implementation Api62_Peer_peerChat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbad0e5bb serializeBlock:^bool (Api62_Peer_peerChat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerChat chat_id:%@)", self.chatId];
}

@end

@implementation Api62_Peer_peerChannel

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbddde532 serializeBlock:^bool (Api62_Peer_peerChannel *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerChannel channel_id:%@)", self.channelId];
}

@end




@interface Api62_UserStatus ()

@end

@interface Api62_UserStatus_userStatusEmpty ()

@end

@interface Api62_UserStatus_userStatusOnline ()

@property (nonatomic, strong) NSNumber * expires;

@end

@interface Api62_UserStatus_userStatusOffline ()

@property (nonatomic, strong) NSNumber * wasOnline;

@end

@interface Api62_UserStatus_userStatusRecently ()

@end

@interface Api62_UserStatus_userStatusLastWeek ()

@end

@interface Api62_UserStatus_userStatusLastMonth ()

@end

@implementation Api62_UserStatus

+ (Api62_UserStatus_userStatusEmpty *)userStatusEmpty
{
    Api62_UserStatus_userStatusEmpty *_object = [[Api62_UserStatus_userStatusEmpty alloc] init];
    return _object;
}

+ (Api62_UserStatus_userStatusOnline *)userStatusOnlineWithExpires:(NSNumber *)expires
{
    Api62_UserStatus_userStatusOnline *_object = [[Api62_UserStatus_userStatusOnline alloc] init];
    _object.expires = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:expires] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_UserStatus_userStatusOffline *)userStatusOfflineWithWasOnline:(NSNumber *)wasOnline
{
    Api62_UserStatus_userStatusOffline *_object = [[Api62_UserStatus_userStatusOffline alloc] init];
    _object.wasOnline = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:wasOnline] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_UserStatus_userStatusRecently *)userStatusRecently
{
    Api62_UserStatus_userStatusRecently *_object = [[Api62_UserStatus_userStatusRecently alloc] init];
    return _object;
}

+ (Api62_UserStatus_userStatusLastWeek *)userStatusLastWeek
{
    Api62_UserStatus_userStatusLastWeek *_object = [[Api62_UserStatus_userStatusLastWeek alloc] init];
    return _object;
}

+ (Api62_UserStatus_userStatusLastMonth *)userStatusLastMonth
{
    Api62_UserStatus_userStatusLastMonth *_object = [[Api62_UserStatus_userStatusLastMonth alloc] init];
    return _object;
}


@end

@implementation Api62_UserStatus_userStatusEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9d05049 serializeBlock:^bool (__unused Api62_UserStatus_userStatusEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userStatusEmpty)"];
}

@end

@implementation Api62_UserStatus_userStatusOnline

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xedb93949 serializeBlock:^bool (Api62_UserStatus_userStatusOnline *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.expires data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userStatusOnline expires:%@)", self.expires];
}

@end

@implementation Api62_UserStatus_userStatusOffline

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8c703f serializeBlock:^bool (Api62_UserStatus_userStatusOffline *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.wasOnline data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userStatusOffline was_online:%@)", self.wasOnline];
}

@end

@implementation Api62_UserStatus_userStatusRecently

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe26f42f1 serializeBlock:^bool (__unused Api62_UserStatus_userStatusRecently *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userStatusRecently)"];
}

@end

@implementation Api62_UserStatus_userStatusLastWeek

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7bf09fc serializeBlock:^bool (__unused Api62_UserStatus_userStatusLastWeek *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userStatusLastWeek)"];
}

@end

@implementation Api62_UserStatus_userStatusLastMonth

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x77ebc742 serializeBlock:^bool (__unused Api62_UserStatus_userStatusLastMonth *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userStatusLastMonth)"];
}

@end




@interface Api62_Dialog ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) NSNumber * topMessage;
@property (nonatomic, strong) NSNumber * readInboxMaxId;
@property (nonatomic, strong) NSNumber * readOutboxMaxId;
@property (nonatomic, strong) NSNumber * unreadCount;
@property (nonatomic, strong) Api62_PeerNotifySettings * notifySettings;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) Api62_DraftMessage * draft;

@end

@interface Api62_Dialog_dialog ()

@end

@implementation Api62_Dialog

+ (Api62_Dialog_dialog *)dialogWithFlags:(NSNumber *)flags peer:(Api62_Peer *)peer topMessage:(NSNumber *)topMessage readInboxMaxId:(NSNumber *)readInboxMaxId readOutboxMaxId:(NSNumber *)readOutboxMaxId unreadCount:(NSNumber *)unreadCount notifySettings:(Api62_PeerNotifySettings *)notifySettings pts:(NSNumber *)pts draft:(Api62_DraftMessage *)draft
{
    Api62_Dialog_dialog *_object = [[Api62_Dialog_dialog alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peer = peer;
    _object.topMessage = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:topMessage] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.readInboxMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:readInboxMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.readOutboxMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:readOutboxMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.unreadCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:unreadCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.notifySettings = notifySettings;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.draft = draft;
    return _object;
}


@end

@implementation Api62_Dialog_dialog

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x66ffba14 serializeBlock:^bool (Api62_Dialog_dialog *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.topMessage data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.readInboxMaxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.readOutboxMaxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.unreadCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.notifySettings data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.draft data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(dialog flags:%@ peer:%@ top_message:%@ read_inbox_max_id:%@ read_outbox_max_id:%@ unread_count:%@ notify_settings:%@ pts:%@ draft:%@)", self.flags, self.peer, self.topMessage, self.readInboxMaxId, self.readOutboxMaxId, self.unreadCount, self.notifySettings, self.pts, self.draft];
}

@end




@interface Api62_help_AppChangelog ()

@end

@interface Api62_help_AppChangelog_help_appChangelogEmpty ()

@end

@interface Api62_help_AppChangelog_help_appChangelog ()

@property (nonatomic, strong) NSString * text;

@end

@interface Api62_help_AppChangelog_help_getAppChangelog ()

@end

@implementation Api62_help_AppChangelog

+ (Api62_help_AppChangelog_help_appChangelogEmpty *)help_appChangelogEmpty
{
    Api62_help_AppChangelog_help_appChangelogEmpty *_object = [[Api62_help_AppChangelog_help_appChangelogEmpty alloc] init];
    return _object;
}

+ (Api62_help_AppChangelog_help_appChangelog *)help_appChangelogWithText:(NSString *)text
{
    Api62_help_AppChangelog_help_appChangelog *_object = [[Api62_help_AppChangelog_help_appChangelog alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_help_AppChangelog_help_getAppChangelog *)help_getAppChangelog
{
    Api62_help_AppChangelog_help_getAppChangelog *_object = [[Api62_help_AppChangelog_help_getAppChangelog alloc] init];
    return _object;
}


@end

@implementation Api62_help_AppChangelog_help_appChangelogEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xaf7e0394 serializeBlock:^bool (__unused Api62_help_AppChangelog_help_appChangelogEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.appChangelogEmpty)"];
}

@end

@implementation Api62_help_AppChangelog_help_appChangelog

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4668e6bd serializeBlock:^bool (Api62_help_AppChangelog_help_appChangelog *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.appChangelog text:%d)", (int)[self.text length]];
}

@end

@implementation Api62_help_AppChangelog_help_getAppChangelog

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb921197a serializeBlock:^bool (__unused Api62_help_AppChangelog_help_getAppChangelog *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.getAppChangelog)"];
}

@end




@interface Api62_SendMessageAction ()

@end

@interface Api62_SendMessageAction_sendMessageTypingAction ()

@end

@interface Api62_SendMessageAction_sendMessageCancelAction ()

@end

@interface Api62_SendMessageAction_sendMessageRecordVideoAction ()

@end

@interface Api62_SendMessageAction_sendMessageRecordAudioAction ()

@end

@interface Api62_SendMessageAction_sendMessageGeoLocationAction ()

@end

@interface Api62_SendMessageAction_sendMessageChooseContactAction ()

@end

@interface Api62_SendMessageAction_sendMessageUploadVideoAction ()

@property (nonatomic, strong) NSNumber * progress;

@end

@interface Api62_SendMessageAction_sendMessageUploadAudioAction ()

@property (nonatomic, strong) NSNumber * progress;

@end

@interface Api62_SendMessageAction_sendMessageUploadDocumentAction ()

@property (nonatomic, strong) NSNumber * progress;

@end

@interface Api62_SendMessageAction_sendMessageUploadPhotoAction ()

@property (nonatomic, strong) NSNumber * progress;

@end

@interface Api62_SendMessageAction_sendMessageGamePlayAction ()

@end

@interface Api62_SendMessageAction_sendMessageGameStopAction ()

@end

@implementation Api62_SendMessageAction

+ (Api62_SendMessageAction_sendMessageTypingAction *)sendMessageTypingAction
{
    Api62_SendMessageAction_sendMessageTypingAction *_object = [[Api62_SendMessageAction_sendMessageTypingAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageCancelAction *)sendMessageCancelAction
{
    Api62_SendMessageAction_sendMessageCancelAction *_object = [[Api62_SendMessageAction_sendMessageCancelAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageRecordVideoAction *)sendMessageRecordVideoAction
{
    Api62_SendMessageAction_sendMessageRecordVideoAction *_object = [[Api62_SendMessageAction_sendMessageRecordVideoAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageRecordAudioAction *)sendMessageRecordAudioAction
{
    Api62_SendMessageAction_sendMessageRecordAudioAction *_object = [[Api62_SendMessageAction_sendMessageRecordAudioAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageGeoLocationAction *)sendMessageGeoLocationAction
{
    Api62_SendMessageAction_sendMessageGeoLocationAction *_object = [[Api62_SendMessageAction_sendMessageGeoLocationAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageChooseContactAction *)sendMessageChooseContactAction
{
    Api62_SendMessageAction_sendMessageChooseContactAction *_object = [[Api62_SendMessageAction_sendMessageChooseContactAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageUploadVideoAction *)sendMessageUploadVideoActionWithProgress:(NSNumber *)progress
{
    Api62_SendMessageAction_sendMessageUploadVideoAction *_object = [[Api62_SendMessageAction_sendMessageUploadVideoAction alloc] init];
    _object.progress = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:progress] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageUploadAudioAction *)sendMessageUploadAudioActionWithProgress:(NSNumber *)progress
{
    Api62_SendMessageAction_sendMessageUploadAudioAction *_object = [[Api62_SendMessageAction_sendMessageUploadAudioAction alloc] init];
    _object.progress = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:progress] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageUploadDocumentAction *)sendMessageUploadDocumentActionWithProgress:(NSNumber *)progress
{
    Api62_SendMessageAction_sendMessageUploadDocumentAction *_object = [[Api62_SendMessageAction_sendMessageUploadDocumentAction alloc] init];
    _object.progress = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:progress] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageUploadPhotoAction *)sendMessageUploadPhotoActionWithProgress:(NSNumber *)progress
{
    Api62_SendMessageAction_sendMessageUploadPhotoAction *_object = [[Api62_SendMessageAction_sendMessageUploadPhotoAction alloc] init];
    _object.progress = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:progress] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageGamePlayAction *)sendMessageGamePlayAction
{
    Api62_SendMessageAction_sendMessageGamePlayAction *_object = [[Api62_SendMessageAction_sendMessageGamePlayAction alloc] init];
    return _object;
}

+ (Api62_SendMessageAction_sendMessageGameStopAction *)sendMessageGameStopAction
{
    Api62_SendMessageAction_sendMessageGameStopAction *_object = [[Api62_SendMessageAction_sendMessageGameStopAction alloc] init];
    return _object;
}


@end

@implementation Api62_SendMessageAction_sendMessageTypingAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x16bf744e serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageTypingAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageTypingAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageCancelAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfd5ec8f5 serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageCancelAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageCancelAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageRecordVideoAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa187d66f serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageRecordVideoAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageRecordVideoAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageRecordAudioAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd52f73f7 serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageRecordAudioAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageRecordAudioAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageGeoLocationAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x176f8ba1 serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageGeoLocationAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageGeoLocationAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageChooseContactAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x628cbc6f serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageChooseContactAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageChooseContactAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageUploadVideoAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe9763aec serializeBlock:^bool (Api62_SendMessageAction_sendMessageUploadVideoAction *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.progress data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageUploadVideoAction progress:%@)", self.progress];
}

@end

@implementation Api62_SendMessageAction_sendMessageUploadAudioAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf351d7ab serializeBlock:^bool (Api62_SendMessageAction_sendMessageUploadAudioAction *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.progress data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageUploadAudioAction progress:%@)", self.progress];
}

@end

@implementation Api62_SendMessageAction_sendMessageUploadDocumentAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xaa0cd9e4 serializeBlock:^bool (Api62_SendMessageAction_sendMessageUploadDocumentAction *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.progress data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageUploadDocumentAction progress:%@)", self.progress];
}

@end

@implementation Api62_SendMessageAction_sendMessageUploadPhotoAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd1d34a26 serializeBlock:^bool (Api62_SendMessageAction_sendMessageUploadPhotoAction *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.progress data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageUploadPhotoAction progress:%@)", self.progress];
}

@end

@implementation Api62_SendMessageAction_sendMessageGamePlayAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xdd6a8f48 serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageGamePlayAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageGamePlayAction)"];
}

@end

@implementation Api62_SendMessageAction_sendMessageGameStopAction

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x15c2c99a serializeBlock:^bool (__unused Api62_SendMessageAction_sendMessageGameStopAction *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(sendMessageGameStopAction)"];
}

@end




@interface Api62_PrivacyKey ()

@end

@interface Api62_PrivacyKey_privacyKeyStatusTimestamp ()

@end

@interface Api62_PrivacyKey_privacyKeyChatInvite ()

@end

@implementation Api62_PrivacyKey

+ (Api62_PrivacyKey_privacyKeyStatusTimestamp *)privacyKeyStatusTimestamp
{
    Api62_PrivacyKey_privacyKeyStatusTimestamp *_object = [[Api62_PrivacyKey_privacyKeyStatusTimestamp alloc] init];
    return _object;
}

+ (Api62_PrivacyKey_privacyKeyChatInvite *)privacyKeyChatInvite
{
    Api62_PrivacyKey_privacyKeyChatInvite *_object = [[Api62_PrivacyKey_privacyKeyChatInvite alloc] init];
    return _object;
}


@end

@implementation Api62_PrivacyKey_privacyKeyStatusTimestamp

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbc2eab30 serializeBlock:^bool (__unused Api62_PrivacyKey_privacyKeyStatusTimestamp *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyKeyStatusTimestamp)"];
}

@end

@implementation Api62_PrivacyKey_privacyKeyChatInvite

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x500e6dfa serializeBlock:^bool (__unused Api62_PrivacyKey_privacyKeyChatInvite *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyKeyChatInvite)"];
}

@end




@interface Api62_Update ()

@end

@interface Api62_Update_updateMessageID ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * randomId;

@end

@interface Api62_Update_updateRestoreMessages ()

@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSNumber * pts;

@end

@interface Api62_Update_updateChatParticipants ()

@property (nonatomic, strong) Api62_ChatParticipants * participants;

@end

@interface Api62_Update_updateUserStatus ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_UserStatus * status;

@end

@interface Api62_Update_updateContactRegistered ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_Update_updateContactLocated ()

@property (nonatomic, strong) NSArray * contacts;

@end

@interface Api62_Update_updateActivation ()

@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_Update_updateNewAuthorization ()

@property (nonatomic, strong) NSNumber * authKeyId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSString * device;
@property (nonatomic, strong) NSString * location;

@end

@interface Api62_Update_updatePhoneCallRequested ()

@property (nonatomic, strong) Api62_PhoneCall * phoneCall;

@end

@interface Api62_Update_updatePhoneCallConfirmed ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSData * aOrB;
@property (nonatomic, strong) Api62_PhoneConnection * connection;

@end

@interface Api62_Update_updatePhoneCallDeclined ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_Update_updateUserPhoto ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) Api62_UserProfilePhoto * photo;
@property (nonatomic, strong) Api62_Bool * previous;

@end

@interface Api62_Update_updateNewEncryptedMessage ()

@property (nonatomic, strong) Api62_EncryptedMessage * message;
@property (nonatomic, strong) NSNumber * qts;

@end

@interface Api62_Update_updateEncryptedChatTyping ()

@property (nonatomic, strong) NSNumber * chatId;

@end

@interface Api62_Update_updateEncryption ()

@property (nonatomic, strong) Api62_EncryptedChat * chat;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_Update_updateEncryptedMessagesRead ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * maxDate;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_Update_updateChatParticipantDelete ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * version;

@end

@interface Api62_Update_updateDcOptions ()

@property (nonatomic, strong) NSArray * dcOptions;

@end

@interface Api62_Update_updateUserBlocked ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_Bool * blocked;

@end

@interface Api62_Update_updateNotifySettings ()

@property (nonatomic, strong) Api62_NotifyPeer * peer;
@property (nonatomic, strong) Api62_PeerNotifySettings * notifySettings;

@end

@interface Api62_Update_updateUserTyping ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_SendMessageAction * action;

@end

@interface Api62_Update_updateChatUserTyping ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_SendMessageAction * action;

@end

@interface Api62_Update_updateUserName ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;
@property (nonatomic, strong) NSString * username;

@end

@interface Api62_Update_updateServiceNotification ()

@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) Api62_MessageMedia * media;
@property (nonatomic, strong) Api62_Bool * popup;

@end

@interface Api62_Update_updatePrivacy ()

@property (nonatomic, strong) Api62_PrivacyKey * key;
@property (nonatomic, strong) NSArray * rules;

@end

@interface Api62_Update_updateUserPhone ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSString * phone;

@end

@interface Api62_Update_updateNewMessage ()

@property (nonatomic, strong) Api62_Message * message;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateReadMessages ()

@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateDeleteMessages ()

@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateReadHistoryInbox ()

@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) NSNumber * maxId;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateReadHistoryOutbox ()

@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) NSNumber * maxId;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateContactLink ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_ContactLink * myLink;
@property (nonatomic, strong) Api62_ContactLink * foreignLink;

@end

@interface Api62_Update_updateReadMessagesContents ()

@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateChatParticipantAdd ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * inviterId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * version;

@end

@interface Api62_Update_updateWebPage ()

@property (nonatomic, strong) Api62_WebPage * webpage;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateChannel ()

@property (nonatomic, strong) NSNumber * channelId;

@end

@interface Api62_Update_updateChannelGroup ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) Api62_MessageGroup * group;

@end

@interface Api62_Update_updateNewChannelMessage ()

@property (nonatomic, strong) Api62_Message * message;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateReadChannelInbox ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * maxId;

@end

@interface Api62_Update_updateDeleteChannelMessages ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateChannelMessageViews ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * views;

@end

@interface Api62_Update_updateChatAdmins ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) Api62_Bool * enabled;
@property (nonatomic, strong) NSNumber * version;

@end

@interface Api62_Update_updateChatParticipantAdmin ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_Bool * isAdmin;
@property (nonatomic, strong) NSNumber * version;

@end

@interface Api62_Update_updateNewStickerSet ()

@property (nonatomic, strong) Api62_messages_StickerSet * stickerset;

@end

@interface Api62_Update_updateStickerSets ()

@end

@interface Api62_Update_updateSavedGifs ()

@end

@interface Api62_Update_updateEditChannelMessage ()

@property (nonatomic, strong) Api62_Message * message;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateChannelPinnedMessage ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_Update_updateChannelTooLong ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * pts;

@end

@interface Api62_Update_updateEditMessage ()

@property (nonatomic, strong) Api62_Message * message;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updateBotInlineQuery ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * queryId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSString * query;
@property (nonatomic, strong) Api62_GeoPoint * geo;
@property (nonatomic, strong) NSString * offset;

@end

@interface Api62_Update_updateBotInlineSend ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSString * query;
@property (nonatomic, strong) Api62_GeoPoint * geo;
@property (nonatomic, strong) NSString * pid;
@property (nonatomic, strong) Api62_InputBotInlineMessageID * msgId;

@end

@interface Api62_Update_updateReadChannelOutbox ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * maxId;

@end

@interface Api62_Update_updateDraftMessage ()

@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) Api62_DraftMessage * draft;

@end

@interface Api62_Update_updateReadFeaturedStickers ()

@end

@interface Api62_Update_updateRecentStickers ()

@end

@interface Api62_Update_updateConfig ()

@end

@interface Api62_Update_updatePtsChanged ()

@end

@interface Api62_Update_updateStickerSetsOrder ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSArray * order;

@end

@interface Api62_Update_updateBotCallbackQuery ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * queryId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) NSNumber * msgId;
@property (nonatomic, strong) NSNumber * chatInstance;
@property (nonatomic, strong) NSData * data;
@property (nonatomic, strong) NSString * gameShortName;

@end

@interface Api62_Update_updateInlineBotCallbackQuery ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * queryId;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_InputBotInlineMessageID * msgId;
@property (nonatomic, strong) NSNumber * chatInstance;
@property (nonatomic, strong) NSData * data;
@property (nonatomic, strong) NSString * gameShortName;

@end

@interface Api62_Update_updateChannelWebPage ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) Api62_WebPage * webpage;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_Update_updatePhoneCall ()

@property (nonatomic, strong) Api62_PhoneCall * phoneCall;

@end

@interface Api62_Update_updateDialogPinned ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_Peer * peer;

@end

@interface Api62_Update_updatePinnedDialogs ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSArray * order;

@end

@implementation Api62_Update

+ (Api62_Update_updateMessageID *)updateMessageIDWithPid:(NSNumber *)pid randomId:(NSNumber *)randomId
{
    Api62_Update_updateMessageID *_object = [[Api62_Update_updateMessageID alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.randomId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_Update_updateRestoreMessages *)updateRestoreMessagesWithMessages:(NSArray *)messages pts:(NSNumber *)pts
{
    Api62_Update_updateRestoreMessages *_object = [[Api62_Update_updateRestoreMessages alloc] init];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:messages_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChatParticipants *)updateChatParticipantsWithParticipants:(Api62_ChatParticipants *)participants
{
    Api62_Update_updateChatParticipants *_object = [[Api62_Update_updateChatParticipants alloc] init];
    _object.participants = participants;
    return _object;
}

+ (Api62_Update_updateUserStatus *)updateUserStatusWithUserId:(NSNumber *)userId status:(Api62_UserStatus *)status
{
    Api62_Update_updateUserStatus *_object = [[Api62_Update_updateUserStatus alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.status = status;
    return _object;
}

+ (Api62_Update_updateContactRegistered *)updateContactRegisteredWithUserId:(NSNumber *)userId date:(NSNumber *)date
{
    Api62_Update_updateContactRegistered *_object = [[Api62_Update_updateContactRegistered alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateContactLocated *)updateContactLocatedWithContacts:(NSArray *)contacts
{
    Api62_Update_updateContactLocated *_object = [[Api62_Update_updateContactLocated alloc] init];
    _object.contacts = 
({
NSMutableArray *contacts_copy = [[NSMutableArray alloc] initWithCapacity:contacts.count];
for (id contacts_item in contacts)
{
    [contacts_copy addObject:contacts_item];
}
id contacts_result = [Api62__Serializer addSerializerToObject:contacts_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; contacts_result;});
    return _object;
}

+ (Api62_Update_updateActivation *)updateActivationWithUserId:(NSNumber *)userId
{
    Api62_Update_updateActivation *_object = [[Api62_Update_updateActivation alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateNewAuthorization *)updateNewAuthorizationWithAuthKeyId:(NSNumber *)authKeyId date:(NSNumber *)date device:(NSString *)device location:(NSString *)location
{
    Api62_Update_updateNewAuthorization *_object = [[Api62_Update_updateNewAuthorization alloc] init];
    _object.authKeyId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:authKeyId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.device = [Api62__Serializer addSerializerToObject:[device copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.location = [Api62__Serializer addSerializerToObject:[location copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Update_updatePhoneCallRequested *)updatePhoneCallRequestedWithPhoneCall:(Api62_PhoneCall *)phoneCall
{
    Api62_Update_updatePhoneCallRequested *_object = [[Api62_Update_updatePhoneCallRequested alloc] init];
    _object.phoneCall = phoneCall;
    return _object;
}

+ (Api62_Update_updatePhoneCallConfirmed *)updatePhoneCallConfirmedWithPid:(NSNumber *)pid aOrB:(NSData *)aOrB connection:(Api62_PhoneConnection *)connection
{
    Api62_Update_updatePhoneCallConfirmed *_object = [[Api62_Update_updatePhoneCallConfirmed alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.aOrB = [Api62__Serializer addSerializerToObject:[aOrB copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.connection = connection;
    return _object;
}

+ (Api62_Update_updatePhoneCallDeclined *)updatePhoneCallDeclinedWithPid:(NSNumber *)pid
{
    Api62_Update_updatePhoneCallDeclined *_object = [[Api62_Update_updatePhoneCallDeclined alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_Update_updateUserPhoto *)updateUserPhotoWithUserId:(NSNumber *)userId date:(NSNumber *)date photo:(Api62_UserProfilePhoto *)photo previous:(Api62_Bool *)previous
{
    Api62_Update_updateUserPhoto *_object = [[Api62_Update_updateUserPhoto alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.photo = photo;
    _object.previous = previous;
    return _object;
}

+ (Api62_Update_updateNewEncryptedMessage *)updateNewEncryptedMessageWithMessage:(Api62_EncryptedMessage *)message qts:(NSNumber *)qts
{
    Api62_Update_updateNewEncryptedMessage *_object = [[Api62_Update_updateNewEncryptedMessage alloc] init];
    _object.message = message;
    _object.qts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:qts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateEncryptedChatTyping *)updateEncryptedChatTypingWithChatId:(NSNumber *)chatId
{
    Api62_Update_updateEncryptedChatTyping *_object = [[Api62_Update_updateEncryptedChatTyping alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateEncryption *)updateEncryptionWithChat:(Api62_EncryptedChat *)chat date:(NSNumber *)date
{
    Api62_Update_updateEncryption *_object = [[Api62_Update_updateEncryption alloc] init];
    _object.chat = chat;
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateEncryptedMessagesRead *)updateEncryptedMessagesReadWithChatId:(NSNumber *)chatId maxDate:(NSNumber *)maxDate date:(NSNumber *)date
{
    Api62_Update_updateEncryptedMessagesRead *_object = [[Api62_Update_updateEncryptedMessagesRead alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.maxDate = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChatParticipantDelete *)updateChatParticipantDeleteWithChatId:(NSNumber *)chatId userId:(NSNumber *)userId version:(NSNumber *)version
{
    Api62_Update_updateChatParticipantDelete *_object = [[Api62_Update_updateChatParticipantDelete alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateDcOptions *)updateDcOptionsWithDcOptions:(NSArray *)dcOptions
{
    Api62_Update_updateDcOptions *_object = [[Api62_Update_updateDcOptions alloc] init];
    _object.dcOptions = 
({
NSMutableArray *dcOptions_copy = [[NSMutableArray alloc] initWithCapacity:dcOptions.count];
for (id dcOptions_item in dcOptions)
{
    [dcOptions_copy addObject:dcOptions_item];
}
id dcOptions_result = [Api62__Serializer addSerializerToObject:dcOptions_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; dcOptions_result;});
    return _object;
}

+ (Api62_Update_updateUserBlocked *)updateUserBlockedWithUserId:(NSNumber *)userId blocked:(Api62_Bool *)blocked
{
    Api62_Update_updateUserBlocked *_object = [[Api62_Update_updateUserBlocked alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.blocked = blocked;
    return _object;
}

+ (Api62_Update_updateNotifySettings *)updateNotifySettingsWithPeer:(Api62_NotifyPeer *)peer notifySettings:(Api62_PeerNotifySettings *)notifySettings
{
    Api62_Update_updateNotifySettings *_object = [[Api62_Update_updateNotifySettings alloc] init];
    _object.peer = peer;
    _object.notifySettings = notifySettings;
    return _object;
}

+ (Api62_Update_updateUserTyping *)updateUserTypingWithUserId:(NSNumber *)userId action:(Api62_SendMessageAction *)action
{
    Api62_Update_updateUserTyping *_object = [[Api62_Update_updateUserTyping alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.action = action;
    return _object;
}

+ (Api62_Update_updateChatUserTyping *)updateChatUserTypingWithChatId:(NSNumber *)chatId userId:(NSNumber *)userId action:(Api62_SendMessageAction *)action
{
    Api62_Update_updateChatUserTyping *_object = [[Api62_Update_updateChatUserTyping alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.action = action;
    return _object;
}

+ (Api62_Update_updateUserName *)updateUserNameWithUserId:(NSNumber *)userId firstName:(NSString *)firstName lastName:(NSString *)lastName username:(NSString *)username
{
    Api62_Update_updateUserName *_object = [[Api62_Update_updateUserName alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.username = [Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Update_updateServiceNotification *)updateServiceNotificationWithType:(NSString *)type message:(NSString *)message media:(Api62_MessageMedia *)media popup:(Api62_Bool *)popup
{
    Api62_Update_updateServiceNotification *_object = [[Api62_Update_updateServiceNotification alloc] init];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.media = media;
    _object.popup = popup;
    return _object;
}

+ (Api62_Update_updatePrivacy *)updatePrivacyWithKey:(Api62_PrivacyKey *)key rules:(NSArray *)rules
{
    Api62_Update_updatePrivacy *_object = [[Api62_Update_updatePrivacy alloc] init];
    _object.key = key;
    _object.rules = 
({
NSMutableArray *rules_copy = [[NSMutableArray alloc] initWithCapacity:rules.count];
for (id rules_item in rules)
{
    [rules_copy addObject:rules_item];
}
id rules_result = [Api62__Serializer addSerializerToObject:rules_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; rules_result;});
    return _object;
}

+ (Api62_Update_updateUserPhone *)updateUserPhoneWithUserId:(NSNumber *)userId phone:(NSString *)phone
{
    Api62_Update_updateUserPhone *_object = [[Api62_Update_updateUserPhone alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.phone = [Api62__Serializer addSerializerToObject:[phone copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Update_updateNewMessage *)updateNewMessageWithMessage:(Api62_Message *)message pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateNewMessage *_object = [[Api62_Update_updateNewMessage alloc] init];
    _object.message = message;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateReadMessages *)updateReadMessagesWithMessages:(NSArray *)messages pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateReadMessages *_object = [[Api62_Update_updateReadMessages alloc] init];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:messages_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateDeleteMessages *)updateDeleteMessagesWithMessages:(NSArray *)messages pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateDeleteMessages *_object = [[Api62_Update_updateDeleteMessages alloc] init];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:messages_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateReadHistoryInbox *)updateReadHistoryInboxWithPeer:(Api62_Peer *)peer maxId:(NSNumber *)maxId pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateReadHistoryInbox *_object = [[Api62_Update_updateReadHistoryInbox alloc] init];
    _object.peer = peer;
    _object.maxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateReadHistoryOutbox *)updateReadHistoryOutboxWithPeer:(Api62_Peer *)peer maxId:(NSNumber *)maxId pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateReadHistoryOutbox *_object = [[Api62_Update_updateReadHistoryOutbox alloc] init];
    _object.peer = peer;
    _object.maxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateContactLink *)updateContactLinkWithUserId:(NSNumber *)userId myLink:(Api62_ContactLink *)myLink foreignLink:(Api62_ContactLink *)foreignLink
{
    Api62_Update_updateContactLink *_object = [[Api62_Update_updateContactLink alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.myLink = myLink;
    _object.foreignLink = foreignLink;
    return _object;
}

+ (Api62_Update_updateReadMessagesContents *)updateReadMessagesContentsWithMessages:(NSArray *)messages pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateReadMessagesContents *_object = [[Api62_Update_updateReadMessagesContents alloc] init];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:messages_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChatParticipantAdd *)updateChatParticipantAddWithChatId:(NSNumber *)chatId userId:(NSNumber *)userId inviterId:(NSNumber *)inviterId date:(NSNumber *)date version:(NSNumber *)version
{
    Api62_Update_updateChatParticipantAdd *_object = [[Api62_Update_updateChatParticipantAdd alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateWebPage *)updateWebPageWithWebpage:(Api62_WebPage *)webpage pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateWebPage *_object = [[Api62_Update_updateWebPage alloc] init];
    _object.webpage = webpage;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChannel *)updateChannelWithChannelId:(NSNumber *)channelId
{
    Api62_Update_updateChannel *_object = [[Api62_Update_updateChannel alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChannelGroup *)updateChannelGroupWithChannelId:(NSNumber *)channelId group:(Api62_MessageGroup *)group
{
    Api62_Update_updateChannelGroup *_object = [[Api62_Update_updateChannelGroup alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.group = group;
    return _object;
}

+ (Api62_Update_updateNewChannelMessage *)updateNewChannelMessageWithMessage:(Api62_Message *)message pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateNewChannelMessage *_object = [[Api62_Update_updateNewChannelMessage alloc] init];
    _object.message = message;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateReadChannelInbox *)updateReadChannelInboxWithChannelId:(NSNumber *)channelId maxId:(NSNumber *)maxId
{
    Api62_Update_updateReadChannelInbox *_object = [[Api62_Update_updateReadChannelInbox alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.maxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateDeleteChannelMessages *)updateDeleteChannelMessagesWithChannelId:(NSNumber *)channelId messages:(NSArray *)messages pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateDeleteChannelMessages *_object = [[Api62_Update_updateDeleteChannelMessages alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:messages_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChannelMessageViews *)updateChannelMessageViewsWithChannelId:(NSNumber *)channelId pid:(NSNumber *)pid views:(NSNumber *)views
{
    Api62_Update_updateChannelMessageViews *_object = [[Api62_Update_updateChannelMessageViews alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.views = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:views] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChatAdmins *)updateChatAdminsWithChatId:(NSNumber *)chatId enabled:(Api62_Bool *)enabled version:(NSNumber *)version
{
    Api62_Update_updateChatAdmins *_object = [[Api62_Update_updateChatAdmins alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.enabled = enabled;
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChatParticipantAdmin *)updateChatParticipantAdminWithChatId:(NSNumber *)chatId userId:(NSNumber *)userId isAdmin:(Api62_Bool *)isAdmin version:(NSNumber *)version
{
    Api62_Update_updateChatParticipantAdmin *_object = [[Api62_Update_updateChatParticipantAdmin alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.isAdmin = isAdmin;
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateNewStickerSet *)updateNewStickerSetWithStickerset:(Api62_messages_StickerSet *)stickerset
{
    Api62_Update_updateNewStickerSet *_object = [[Api62_Update_updateNewStickerSet alloc] init];
    _object.stickerset = stickerset;
    return _object;
}

+ (Api62_Update_updateStickerSets *)updateStickerSets
{
    Api62_Update_updateStickerSets *_object = [[Api62_Update_updateStickerSets alloc] init];
    return _object;
}

+ (Api62_Update_updateSavedGifs *)updateSavedGifs
{
    Api62_Update_updateSavedGifs *_object = [[Api62_Update_updateSavedGifs alloc] init];
    return _object;
}

+ (Api62_Update_updateEditChannelMessage *)updateEditChannelMessageWithMessage:(Api62_Message *)message pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateEditChannelMessage *_object = [[Api62_Update_updateEditChannelMessage alloc] init];
    _object.message = message;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChannelPinnedMessage *)updateChannelPinnedMessageWithChannelId:(NSNumber *)channelId pid:(NSNumber *)pid
{
    Api62_Update_updateChannelPinnedMessage *_object = [[Api62_Update_updateChannelPinnedMessage alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateChannelTooLong *)updateChannelTooLongWithFlags:(NSNumber *)flags channelId:(NSNumber *)channelId pts:(NSNumber *)pts
{
    Api62_Update_updateChannelTooLong *_object = [[Api62_Update_updateChannelTooLong alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateEditMessage *)updateEditMessageWithMessage:(Api62_Message *)message pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateEditMessage *_object = [[Api62_Update_updateEditMessage alloc] init];
    _object.message = message;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateBotInlineQuery *)updateBotInlineQueryWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId userId:(NSNumber *)userId query:(NSString *)query geo:(Api62_GeoPoint *)geo offset:(NSString *)offset
{
    Api62_Update_updateBotInlineQuery *_object = [[Api62_Update_updateBotInlineQuery alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.queryId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.query = [Api62__Serializer addSerializerToObject:[query copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.geo = geo;
    _object.offset = [Api62__Serializer addSerializerToObject:[offset copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Update_updateBotInlineSend *)updateBotInlineSendWithFlags:(NSNumber *)flags userId:(NSNumber *)userId query:(NSString *)query geo:(Api62_GeoPoint *)geo pid:(NSString *)pid msgId:(Api62_InputBotInlineMessageID *)msgId
{
    Api62_Update_updateBotInlineSend *_object = [[Api62_Update_updateBotInlineSend alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.query = [Api62__Serializer addSerializerToObject:[query copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.geo = geo;
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.msgId = msgId;
    return _object;
}

+ (Api62_Update_updateReadChannelOutbox *)updateReadChannelOutboxWithChannelId:(NSNumber *)channelId maxId:(NSNumber *)maxId
{
    Api62_Update_updateReadChannelOutbox *_object = [[Api62_Update_updateReadChannelOutbox alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.maxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updateDraftMessage *)updateDraftMessageWithPeer:(Api62_Peer *)peer draft:(Api62_DraftMessage *)draft
{
    Api62_Update_updateDraftMessage *_object = [[Api62_Update_updateDraftMessage alloc] init];
    _object.peer = peer;
    _object.draft = draft;
    return _object;
}

+ (Api62_Update_updateReadFeaturedStickers *)updateReadFeaturedStickers
{
    Api62_Update_updateReadFeaturedStickers *_object = [[Api62_Update_updateReadFeaturedStickers alloc] init];
    return _object;
}

+ (Api62_Update_updateRecentStickers *)updateRecentStickers
{
    Api62_Update_updateRecentStickers *_object = [[Api62_Update_updateRecentStickers alloc] init];
    return _object;
}

+ (Api62_Update_updateConfig *)updateConfig
{
    Api62_Update_updateConfig *_object = [[Api62_Update_updateConfig alloc] init];
    return _object;
}

+ (Api62_Update_updatePtsChanged *)updatePtsChanged
{
    Api62_Update_updatePtsChanged *_object = [[Api62_Update_updatePtsChanged alloc] init];
    return _object;
}

+ (Api62_Update_updateStickerSetsOrder *)updateStickerSetsOrderWithFlags:(NSNumber *)flags order:(NSArray *)order
{
    Api62_Update_updateStickerSetsOrder *_object = [[Api62_Update_updateStickerSetsOrder alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.order = 
({
NSMutableArray *order_copy = [[NSMutableArray alloc] initWithCapacity:order.count];
for (id order_item in order)
{
    [order_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:order_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id order_result = [Api62__Serializer addSerializerToObject:order_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; order_result;});
    return _object;
}

+ (Api62_Update_updateBotCallbackQuery *)updateBotCallbackQueryWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId userId:(NSNumber *)userId peer:(Api62_Peer *)peer msgId:(NSNumber *)msgId chatInstance:(NSNumber *)chatInstance data:(NSData *)data gameShortName:(NSString *)gameShortName
{
    Api62_Update_updateBotCallbackQuery *_object = [[Api62_Update_updateBotCallbackQuery alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.queryId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peer = peer;
    _object.msgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:msgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.chatInstance = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatInstance] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.data = [Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.gameShortName = [Api62__Serializer addSerializerToObject:[gameShortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Update_updateInlineBotCallbackQuery *)updateInlineBotCallbackQueryWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId userId:(NSNumber *)userId msgId:(Api62_InputBotInlineMessageID *)msgId chatInstance:(NSNumber *)chatInstance data:(NSData *)data gameShortName:(NSString *)gameShortName
{
    Api62_Update_updateInlineBotCallbackQuery *_object = [[Api62_Update_updateInlineBotCallbackQuery alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.queryId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.msgId = msgId;
    _object.chatInstance = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatInstance] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.data = [Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.gameShortName = [Api62__Serializer addSerializerToObject:[gameShortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Update_updateChannelWebPage *)updateChannelWebPageWithChannelId:(NSNumber *)channelId webpage:(Api62_WebPage *)webpage pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_Update_updateChannelWebPage *_object = [[Api62_Update_updateChannelWebPage alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.webpage = webpage;
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Update_updatePhoneCall *)updatePhoneCallWithPhoneCall:(Api62_PhoneCall *)phoneCall
{
    Api62_Update_updatePhoneCall *_object = [[Api62_Update_updatePhoneCall alloc] init];
    _object.phoneCall = phoneCall;
    return _object;
}

+ (Api62_Update_updateDialogPinned *)updateDialogPinnedWithFlags:(NSNumber *)flags peer:(Api62_Peer *)peer
{
    Api62_Update_updateDialogPinned *_object = [[Api62_Update_updateDialogPinned alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peer = peer;
    return _object;
}

+ (Api62_Update_updatePinnedDialogs *)updatePinnedDialogsWithFlags:(NSNumber *)flags order:(NSArray *)order
{
    Api62_Update_updatePinnedDialogs *_object = [[Api62_Update_updatePinnedDialogs alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.order = 
({
NSMutableArray *order_copy = [[NSMutableArray alloc] initWithCapacity:order.count];
for (id order_item in order)
{
    [order_copy addObject:order_item];
}
id order_result = [Api62__Serializer addSerializerToObject:order_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; order_result;});
    return _object;
}


@end

@implementation Api62_Update_updateMessageID

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4e90bfd6 serializeBlock:^bool (Api62_Update_updateMessageID *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.randomId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateMessageID id:%@ random_id:%@)", self.pid, self.randomId];
}

@end

@implementation Api62_Update_updateRestoreMessages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd15de04d serializeBlock:^bool (Api62_Update_updateRestoreMessages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateRestoreMessages messages:%@ pts:%@)", self.messages, self.pts];
}

@end

@implementation Api62_Update_updateChatParticipants

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7761198 serializeBlock:^bool (Api62_Update_updateChatParticipants *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.participants data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChatParticipants participants:%@)", self.participants];
}

@end

@implementation Api62_Update_updateUserStatus

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1bfbd823 serializeBlock:^bool (Api62_Update_updateUserStatus *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.status data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateUserStatus user_id:%@ status:%@)", self.userId, self.status];
}

@end

@implementation Api62_Update_updateContactRegistered

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2575bbb9 serializeBlock:^bool (Api62_Update_updateContactRegistered *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateContactRegistered user_id:%@ date:%@)", self.userId, self.date];
}

@end

@implementation Api62_Update_updateContactLocated

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5f83b963 serializeBlock:^bool (Api62_Update_updateContactLocated *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.contacts data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateContactLocated contacts:%@)", self.contacts];
}

@end

@implementation Api62_Update_updateActivation

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6f690963 serializeBlock:^bool (Api62_Update_updateActivation *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateActivation user_id:%@)", self.userId];
}

@end

@implementation Api62_Update_updateNewAuthorization

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8f06529a serializeBlock:^bool (Api62_Update_updateNewAuthorization *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.authKeyId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.device data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.location data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateNewAuthorization auth_key_id:%@ date:%@ device:%d location:%d)", self.authKeyId, self.date, (int)[self.device length], (int)[self.location length]];
}

@end

@implementation Api62_Update_updatePhoneCallRequested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xdad7490e serializeBlock:^bool (Api62_Update_updatePhoneCallRequested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneCall data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePhoneCallRequested phone_call:%@)", self.phoneCall];
}

@end

@implementation Api62_Update_updatePhoneCallConfirmed

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5609ff88 serializeBlock:^bool (Api62_Update_updatePhoneCallConfirmed *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.aOrB data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.connection data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePhoneCallConfirmed id:%@ a_or_b:%d connection:%@)", self.pid, (int)[self.aOrB length], self.connection];
}

@end

@implementation Api62_Update_updatePhoneCallDeclined

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x31ae2cc2 serializeBlock:^bool (Api62_Update_updatePhoneCallDeclined *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePhoneCallDeclined id:%@)", self.pid];
}

@end

@implementation Api62_Update_updateUserPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x95313b0c serializeBlock:^bool (Api62_Update_updateUserPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.previous data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateUserPhoto user_id:%@ date:%@ photo:%@ previous:%@)", self.userId, self.date, self.photo, self.previous];
}

@end

@implementation Api62_Update_updateNewEncryptedMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x12bcbd9a serializeBlock:^bool (Api62_Update_updateNewEncryptedMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.qts data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateNewEncryptedMessage message:%@ qts:%@)", self.message, self.qts];
}

@end

@implementation Api62_Update_updateEncryptedChatTyping

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1710f156 serializeBlock:^bool (Api62_Update_updateEncryptedChatTyping *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateEncryptedChatTyping chat_id:%@)", self.chatId];
}

@end

@implementation Api62_Update_updateEncryption

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb4a2e88d serializeBlock:^bool (Api62_Update_updateEncryption *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chat data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateEncryption chat:%@ date:%@)", self.chat, self.date];
}

@end

@implementation Api62_Update_updateEncryptedMessagesRead

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x38fe25b7 serializeBlock:^bool (Api62_Update_updateEncryptedMessagesRead *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.maxDate data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateEncryptedMessagesRead chat_id:%@ max_date:%@ date:%@)", self.chatId, self.maxDate, self.date];
}

@end

@implementation Api62_Update_updateChatParticipantDelete

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6e5f8c22 serializeBlock:^bool (Api62_Update_updateChatParticipantDelete *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChatParticipantDelete chat_id:%@ user_id:%@ version:%@)", self.chatId, self.userId, self.version];
}

@end

@implementation Api62_Update_updateDcOptions

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8e5e9873 serializeBlock:^bool (Api62_Update_updateDcOptions *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.dcOptions data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateDcOptions dc_options:%@)", self.dcOptions];
}

@end

@implementation Api62_Update_updateUserBlocked

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x80ece81a serializeBlock:^bool (Api62_Update_updateUserBlocked *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.blocked data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateUserBlocked user_id:%@ blocked:%@)", self.userId, self.blocked];
}

@end

@implementation Api62_Update_updateNotifySettings

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbec268ef serializeBlock:^bool (Api62_Update_updateNotifySettings *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.notifySettings data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateNotifySettings peer:%@ notify_settings:%@)", self.peer, self.notifySettings];
}

@end

@implementation Api62_Update_updateUserTyping

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5c486927 serializeBlock:^bool (Api62_Update_updateUserTyping *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.action data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateUserTyping user_id:%@ action:%@)", self.userId, self.action];
}

@end

@implementation Api62_Update_updateChatUserTyping

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9a65ea1f serializeBlock:^bool (Api62_Update_updateChatUserTyping *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.action data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChatUserTyping chat_id:%@ user_id:%@ action:%@)", self.chatId, self.userId, self.action];
}

@end

@implementation Api62_Update_updateUserName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa7332b73 serializeBlock:^bool (Api62_Update_updateUserName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.username data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateUserName user_id:%@ first_name:%d last_name:%d username:%d)", self.userId, (int)[self.firstName length], (int)[self.lastName length], (int)[self.username length]];
}

@end

@implementation Api62_Update_updateServiceNotification

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x382dd3e4 serializeBlock:^bool (Api62_Update_updateServiceNotification *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.media data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.popup data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateServiceNotification type:%d message:%d media:%@ popup:%@)", (int)[self.type length], (int)[self.message length], self.media, self.popup];
}

@end

@implementation Api62_Update_updatePrivacy

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xee3b272a serializeBlock:^bool (Api62_Update_updatePrivacy *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.key data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.rules data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePrivacy key:%@ rules:%@)", self.key, self.rules];
}

@end

@implementation Api62_Update_updateUserPhone

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x12b9417b serializeBlock:^bool (Api62_Update_updateUserPhone *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phone data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateUserPhone user_id:%@ phone:%d)", self.userId, (int)[self.phone length]];
}

@end

@implementation Api62_Update_updateNewMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1f2b0afd serializeBlock:^bool (Api62_Update_updateNewMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateNewMessage message:%@ pts:%@ pts_count:%@)", self.message, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateReadMessages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2e5ab668 serializeBlock:^bool (Api62_Update_updateReadMessages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadMessages messages:%@ pts:%@ pts_count:%@)", self.messages, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateDeleteMessages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa20db0e5 serializeBlock:^bool (Api62_Update_updateDeleteMessages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateDeleteMessages messages:%@ pts:%@ pts_count:%@)", self.messages, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateReadHistoryInbox

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9961fd5c serializeBlock:^bool (Api62_Update_updateReadHistoryInbox *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.maxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadHistoryInbox peer:%@ max_id:%@ pts:%@ pts_count:%@)", self.peer, self.maxId, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateReadHistoryOutbox

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2f2f21bf serializeBlock:^bool (Api62_Update_updateReadHistoryOutbox *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.maxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadHistoryOutbox peer:%@ max_id:%@ pts:%@ pts_count:%@)", self.peer, self.maxId, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateContactLink

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9d2e67c5 serializeBlock:^bool (Api62_Update_updateContactLink *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.myLink data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.foreignLink data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateContactLink user_id:%@ my_link:%@ foreign_link:%@)", self.userId, self.myLink, self.foreignLink];
}

@end

@implementation Api62_Update_updateReadMessagesContents

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x68c13933 serializeBlock:^bool (Api62_Update_updateReadMessagesContents *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadMessagesContents messages:%@ pts:%@ pts_count:%@)", self.messages, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateChatParticipantAdd

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xea4b0e5c serializeBlock:^bool (Api62_Update_updateChatParticipantAdd *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChatParticipantAdd chat_id:%@ user_id:%@ inviter_id:%@ date:%@ version:%@)", self.chatId, self.userId, self.inviterId, self.date, self.version];
}

@end

@implementation Api62_Update_updateWebPage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7f891213 serializeBlock:^bool (Api62_Update_updateWebPage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.webpage data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateWebPage webpage:%@ pts:%@ pts_count:%@)", self.webpage, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateChannel

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb6d45656 serializeBlock:^bool (Api62_Update_updateChannel *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChannel channel_id:%@)", self.channelId];
}

@end

@implementation Api62_Update_updateChannelGroup

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc36c1e3c serializeBlock:^bool (Api62_Update_updateChannelGroup *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.group data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChannelGroup channel_id:%@ group:%@)", self.channelId, self.group];
}

@end

@implementation Api62_Update_updateNewChannelMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x62ba04d9 serializeBlock:^bool (Api62_Update_updateNewChannelMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateNewChannelMessage message:%@ pts:%@ pts_count:%@)", self.message, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateReadChannelInbox

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4214f37f serializeBlock:^bool (Api62_Update_updateReadChannelInbox *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.maxId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadChannelInbox channel_id:%@ max_id:%@)", self.channelId, self.maxId];
}

@end

@implementation Api62_Update_updateDeleteChannelMessages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc37521c9 serializeBlock:^bool (Api62_Update_updateDeleteChannelMessages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateDeleteChannelMessages channel_id:%@ messages:%@ pts:%@ pts_count:%@)", self.channelId, self.messages, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateChannelMessageViews

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x98a12b4b serializeBlock:^bool (Api62_Update_updateChannelMessageViews *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.views data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChannelMessageViews channel_id:%@ id:%@ views:%@)", self.channelId, self.pid, self.views];
}

@end

@implementation Api62_Update_updateChatAdmins

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6e947941 serializeBlock:^bool (Api62_Update_updateChatAdmins *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.enabled data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChatAdmins chat_id:%@ enabled:%@ version:%@)", self.chatId, self.enabled, self.version];
}

@end

@implementation Api62_Update_updateChatParticipantAdmin

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb6901959 serializeBlock:^bool (Api62_Update_updateChatParticipantAdmin *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.isAdmin data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChatParticipantAdmin chat_id:%@ user_id:%@ is_admin:%@ version:%@)", self.chatId, self.userId, self.isAdmin, self.version];
}

@end

@implementation Api62_Update_updateNewStickerSet

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x688a30aa serializeBlock:^bool (Api62_Update_updateNewStickerSet *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.stickerset data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateNewStickerSet stickerset:%@)", self.stickerset];
}

@end

@implementation Api62_Update_updateStickerSets

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x43ae3dec serializeBlock:^bool (__unused Api62_Update_updateStickerSets *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateStickerSets)"];
}

@end

@implementation Api62_Update_updateSavedGifs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9375341e serializeBlock:^bool (__unused Api62_Update_updateSavedGifs *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateSavedGifs)"];
}

@end

@implementation Api62_Update_updateEditChannelMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1b3f4df7 serializeBlock:^bool (Api62_Update_updateEditChannelMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateEditChannelMessage message:%@ pts:%@ pts_count:%@)", self.message, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateChannelPinnedMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x98592475 serializeBlock:^bool (Api62_Update_updateChannelPinnedMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChannelPinnedMessage channel_id:%@ id:%@)", self.channelId, self.pid];
}

@end

@implementation Api62_Update_updateChannelTooLong

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xeb0467fb serializeBlock:^bool (Api62_Update_updateChannelTooLong *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChannelTooLong flags:%@ channel_id:%@ pts:%@)", self.flags, self.channelId, self.pts];
}

@end

@implementation Api62_Update_updateEditMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe40370a3 serializeBlock:^bool (Api62_Update_updateEditMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateEditMessage message:%@ pts:%@ pts_count:%@)", self.message, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updateBotInlineQuery

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x54826690 serializeBlock:^bool (Api62_Update_updateBotInlineQuery *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.queryId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.query data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateBotInlineQuery flags:%@ query_id:%@ user_id:%@ query:%d geo:%@ offset:%d)", self.flags, self.queryId, self.userId, (int)[self.query length], self.geo, (int)[self.offset length]];
}

@end

@implementation Api62_Update_updateBotInlineSend

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe48f964 serializeBlock:^bool (Api62_Update_updateBotInlineSend *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.query data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.msgId data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateBotInlineSend flags:%@ user_id:%@ query:%d geo:%@ id:%d msg_id:%@)", self.flags, self.userId, (int)[self.query length], self.geo, (int)[self.pid length], self.msgId];
}

@end

@implementation Api62_Update_updateReadChannelOutbox

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x25d6c9c7 serializeBlock:^bool (Api62_Update_updateReadChannelOutbox *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.maxId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadChannelOutbox channel_id:%@ max_id:%@)", self.channelId, self.maxId];
}

@end

@implementation Api62_Update_updateDraftMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xee2bb969 serializeBlock:^bool (Api62_Update_updateDraftMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.draft data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateDraftMessage peer:%@ draft:%@)", self.peer, self.draft];
}

@end

@implementation Api62_Update_updateReadFeaturedStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x571d2742 serializeBlock:^bool (__unused Api62_Update_updateReadFeaturedStickers *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateReadFeaturedStickers)"];
}

@end

@implementation Api62_Update_updateRecentStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9a422c20 serializeBlock:^bool (__unused Api62_Update_updateRecentStickers *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateRecentStickers)"];
}

@end

@implementation Api62_Update_updateConfig

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa229dd06 serializeBlock:^bool (__unused Api62_Update_updateConfig *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateConfig)"];
}

@end

@implementation Api62_Update_updatePtsChanged

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3354678f serializeBlock:^bool (__unused Api62_Update_updatePtsChanged *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePtsChanged)"];
}

@end

@implementation Api62_Update_updateStickerSetsOrder

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbb2d201 serializeBlock:^bool (Api62_Update_updateStickerSetsOrder *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.order data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateStickerSetsOrder flags:%@ order:%@)", self.flags, self.order];
}

@end

@implementation Api62_Update_updateBotCallbackQuery

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe73547e1 serializeBlock:^bool (Api62_Update_updateBotCallbackQuery *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.queryId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.msgId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatInstance data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.data data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.gameShortName data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateBotCallbackQuery flags:%@ query_id:%@ user_id:%@ peer:%@ msg_id:%@ chat_instance:%@ data:%d game_short_name:%d)", self.flags, self.queryId, self.userId, self.peer, self.msgId, self.chatInstance, (int)[self.data length], (int)[self.gameShortName length]];
}

@end

@implementation Api62_Update_updateInlineBotCallbackQuery

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf9d27a5a serializeBlock:^bool (Api62_Update_updateInlineBotCallbackQuery *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.queryId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.msgId data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chatInstance data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.data data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.gameShortName data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateInlineBotCallbackQuery flags:%@ query_id:%@ user_id:%@ msg_id:%@ chat_instance:%@ data:%d game_short_name:%d)", self.flags, self.queryId, self.userId, self.msgId, self.chatInstance, (int)[self.data length], (int)[self.gameShortName length]];
}

@end

@implementation Api62_Update_updateChannelWebPage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x40771900 serializeBlock:^bool (Api62_Update_updateChannelWebPage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.webpage data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateChannelWebPage channel_id:%@ webpage:%@ pts:%@ pts_count:%@)", self.channelId, self.webpage, self.pts, self.ptsCount];
}

@end

@implementation Api62_Update_updatePhoneCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xab0f6b1e serializeBlock:^bool (Api62_Update_updatePhoneCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneCall data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePhoneCall phone_call:%@)", self.phoneCall];
}

@end

@implementation Api62_Update_updateDialogPinned

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd711a2cc serializeBlock:^bool (Api62_Update_updateDialogPinned *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateDialogPinned flags:%@ peer:%@)", self.flags, self.peer];
}

@end

@implementation Api62_Update_updatePinnedDialogs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd8caf68d serializeBlock:^bool (Api62_Update_updatePinnedDialogs *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.order data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatePinnedDialogs flags:%@ order:%@)", self.flags, self.order];
}

@end




@interface Api62_ChannelParticipant ()

@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_ChannelParticipant_channelParticipant ()

@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ChannelParticipant_channelParticipantSelf ()

@property (nonatomic, strong) NSNumber * inviterId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ChannelParticipant_channelParticipantModerator ()

@property (nonatomic, strong) NSNumber * inviterId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ChannelParticipant_channelParticipantEditor ()

@property (nonatomic, strong) NSNumber * inviterId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ChannelParticipant_channelParticipantKicked ()

@property (nonatomic, strong) NSNumber * kickedBy;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ChannelParticipant_channelParticipantCreator ()

@end

@implementation Api62_ChannelParticipant

+ (Api62_ChannelParticipant_channelParticipant *)channelParticipantWithUserId:(NSNumber *)userId date:(NSNumber *)date
{
    Api62_ChannelParticipant_channelParticipant *_object = [[Api62_ChannelParticipant_channelParticipant alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChannelParticipant_channelParticipantSelf *)channelParticipantSelfWithUserId:(NSNumber *)userId inviterId:(NSNumber *)inviterId date:(NSNumber *)date
{
    Api62_ChannelParticipant_channelParticipantSelf *_object = [[Api62_ChannelParticipant_channelParticipantSelf alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChannelParticipant_channelParticipantModerator *)channelParticipantModeratorWithUserId:(NSNumber *)userId inviterId:(NSNumber *)inviterId date:(NSNumber *)date
{
    Api62_ChannelParticipant_channelParticipantModerator *_object = [[Api62_ChannelParticipant_channelParticipantModerator alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChannelParticipant_channelParticipantEditor *)channelParticipantEditorWithUserId:(NSNumber *)userId inviterId:(NSNumber *)inviterId date:(NSNumber *)date
{
    Api62_ChannelParticipant_channelParticipantEditor *_object = [[Api62_ChannelParticipant_channelParticipantEditor alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChannelParticipant_channelParticipantKicked *)channelParticipantKickedWithUserId:(NSNumber *)userId kickedBy:(NSNumber *)kickedBy date:(NSNumber *)date
{
    Api62_ChannelParticipant_channelParticipantKicked *_object = [[Api62_ChannelParticipant_channelParticipantKicked alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.kickedBy = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:kickedBy] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ChannelParticipant_channelParticipantCreator *)channelParticipantCreatorWithUserId:(NSNumber *)userId
{
    Api62_ChannelParticipant_channelParticipantCreator *_object = [[Api62_ChannelParticipant_channelParticipantCreator alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ChannelParticipant_channelParticipant

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x15ebac1d serializeBlock:^bool (Api62_ChannelParticipant_channelParticipant *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipant user_id:%@ date:%@)", self.userId, self.date];
}

@end

@implementation Api62_ChannelParticipant_channelParticipantSelf

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa3289a6d serializeBlock:^bool (Api62_ChannelParticipant_channelParticipantSelf *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantSelf user_id:%@ inviter_id:%@ date:%@)", self.userId, self.inviterId, self.date];
}

@end

@implementation Api62_ChannelParticipant_channelParticipantModerator

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x91057fef serializeBlock:^bool (Api62_ChannelParticipant_channelParticipantModerator *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantModerator user_id:%@ inviter_id:%@ date:%@)", self.userId, self.inviterId, self.date];
}

@end

@implementation Api62_ChannelParticipant_channelParticipantEditor

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x98192d61 serializeBlock:^bool (Api62_ChannelParticipant_channelParticipantEditor *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantEditor user_id:%@ inviter_id:%@ date:%@)", self.userId, self.inviterId, self.date];
}

@end

@implementation Api62_ChannelParticipant_channelParticipantKicked

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8cc5e69a serializeBlock:^bool (Api62_ChannelParticipant_channelParticipantKicked *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.kickedBy data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantKicked user_id:%@ kicked_by:%@ date:%@)", self.userId, self.kickedBy, self.date];
}

@end

@implementation Api62_ChannelParticipant_channelParticipantCreator

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe3e2e1f9 serializeBlock:^bool (Api62_ChannelParticipant_channelParticipantCreator *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantCreator user_id:%@)", self.userId];
}

@end




@interface Api62_contacts_Blocked ()

@property (nonatomic, strong) NSArray * blocked;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_Blocked_contacts_blocked ()

@end

@interface Api62_contacts_Blocked_contacts_blockedSlice ()

@property (nonatomic, strong) NSNumber * count;

@end

@implementation Api62_contacts_Blocked

+ (Api62_contacts_Blocked_contacts_blocked *)contacts_blockedWithBlocked:(NSArray *)blocked users:(NSArray *)users
{
    Api62_contacts_Blocked_contacts_blocked *_object = [[Api62_contacts_Blocked_contacts_blocked alloc] init];
    _object.blocked = 
({
NSMutableArray *blocked_copy = [[NSMutableArray alloc] initWithCapacity:blocked.count];
for (id blocked_item in blocked)
{
    [blocked_copy addObject:blocked_item];
}
id blocked_result = [Api62__Serializer addSerializerToObject:blocked_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; blocked_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_contacts_Blocked_contacts_blockedSlice *)contacts_blockedSliceWithCount:(NSNumber *)count blocked:(NSArray *)blocked users:(NSArray *)users
{
    Api62_contacts_Blocked_contacts_blockedSlice *_object = [[Api62_contacts_Blocked_contacts_blockedSlice alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.blocked = 
({
NSMutableArray *blocked_copy = [[NSMutableArray alloc] initWithCapacity:blocked.count];
for (id blocked_item in blocked)
{
    [blocked_copy addObject:blocked_item];
}
id blocked_result = [Api62__Serializer addSerializerToObject:blocked_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; blocked_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_Blocked_contacts_blocked

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1c138d15 serializeBlock:^bool (Api62_contacts_Blocked_contacts_blocked *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.blocked data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.blocked blocked:%@ users:%@)", self.blocked, self.users];
}

@end

@implementation Api62_contacts_Blocked_contacts_blockedSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x900802a1 serializeBlock:^bool (Api62_contacts_Blocked_contacts_blockedSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.blocked data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.blockedSlice count:%@ blocked:%@ users:%@)", self.count, self.blocked, self.users];
}

@end




@interface Api62_Error ()

@property (nonatomic, strong) NSNumber * code;

@end

@interface Api62_Error_error ()

@property (nonatomic, strong) NSString * text;

@end

@interface Api62_Error_richError ()

@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) NSString * nDescription;
@property (nonatomic, strong) NSString * debug;
@property (nonatomic, strong) NSString * requestParams;

@end

@implementation Api62_Error

+ (Api62_Error_error *)errorWithCode:(NSNumber *)code text:(NSString *)text
{
    Api62_Error_error *_object = [[Api62_Error_error alloc] init];
    _object.code = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:code] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Error_richError *)richErrorWithCode:(NSNumber *)code type:(NSString *)type nDescription:(NSString *)nDescription debug:(NSString *)debug requestParams:(NSString *)requestParams
{
    Api62_Error_richError *_object = [[Api62_Error_richError alloc] init];
    _object.code = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:code] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.nDescription = [Api62__Serializer addSerializerToObject:[nDescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.debug = [Api62__Serializer addSerializerToObject:[debug copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.requestParams = [Api62__Serializer addSerializerToObject:[requestParams copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_Error_error

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc4b9f9bb serializeBlock:^bool (Api62_Error_error *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.code data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(error code:%@ text:%d)", self.code, (int)[self.text length]];
}

@end

@implementation Api62_Error_richError

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x59aefc57 serializeBlock:^bool (Api62_Error_richError *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.code data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.nDescription data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.debug data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.requestParams data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(richError code:%@ type:%d n_description:%d debug:%d request_params:%d)", self.code, (int)[self.type length], (int)[self.nDescription length], (int)[self.debug length], (int)[self.requestParams length]];
}

@end




@interface Api62_ContactLocated ()

@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * distance;

@end

@interface Api62_ContactLocated_contactLocated ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_GeoPoint * location;

@end

@interface Api62_ContactLocated_contactLocatedPreview ()

@property (nonatomic, strong) NSString * phash;
@property (nonatomic, strong) Api62_Bool * hidden;

@end

@implementation Api62_ContactLocated

+ (Api62_ContactLocated_contactLocated *)contactLocatedWithUserId:(NSNumber *)userId location:(Api62_GeoPoint *)location date:(NSNumber *)date distance:(NSNumber *)distance
{
    Api62_ContactLocated_contactLocated *_object = [[Api62_ContactLocated_contactLocated alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.location = location;
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.distance = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:distance] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ContactLocated_contactLocatedPreview *)contactLocatedPreviewWithPhash:(NSString *)phash hidden:(Api62_Bool *)hidden date:(NSNumber *)date distance:(NSNumber *)distance
{
    Api62_ContactLocated_contactLocatedPreview *_object = [[Api62_ContactLocated_contactLocatedPreview alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[phash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.hidden = hidden;
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.distance = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:distance] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ContactLocated_contactLocated

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe144acaf serializeBlock:^bool (Api62_ContactLocated_contactLocated *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.location data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.distance data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactLocated user_id:%@ location:%@ date:%@ distance:%@)", self.userId, self.location, self.date, self.distance];
}

@end

@implementation Api62_ContactLocated_contactLocatedPreview

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc1257157 serializeBlock:^bool (Api62_ContactLocated_contactLocatedPreview *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.hidden data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.distance data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactLocatedPreview hash:%d hidden:%@ date:%@ distance:%@)", (int)[self.phash length], self.hidden, self.date, self.distance];
}

@end




@interface Api62_KeyboardButton ()

@property (nonatomic, strong) NSString * text;

@end

@interface Api62_KeyboardButton_keyboardButton ()

@end

@interface Api62_KeyboardButton_keyboardButtonUrl ()

@property (nonatomic, strong) NSString * url;

@end

@interface Api62_KeyboardButton_keyboardButtonCallback ()

@property (nonatomic, strong) NSData * data;

@end

@interface Api62_KeyboardButton_keyboardButtonRequestPhone ()

@end

@interface Api62_KeyboardButton_keyboardButtonRequestGeoLocation ()

@end

@interface Api62_KeyboardButton_keyboardButtonSwitchInline ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * query;

@end

@interface Api62_KeyboardButton_keyboardButtonGame ()

@end

@implementation Api62_KeyboardButton

+ (Api62_KeyboardButton_keyboardButton *)keyboardButtonWithText:(NSString *)text
{
    Api62_KeyboardButton_keyboardButton *_object = [[Api62_KeyboardButton_keyboardButton alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_KeyboardButton_keyboardButtonUrl *)keyboardButtonUrlWithText:(NSString *)text url:(NSString *)url
{
    Api62_KeyboardButton_keyboardButtonUrl *_object = [[Api62_KeyboardButton_keyboardButtonUrl alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_KeyboardButton_keyboardButtonCallback *)keyboardButtonCallbackWithText:(NSString *)text data:(NSData *)data
{
    Api62_KeyboardButton_keyboardButtonCallback *_object = [[Api62_KeyboardButton_keyboardButtonCallback alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.data = [Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}

+ (Api62_KeyboardButton_keyboardButtonRequestPhone *)keyboardButtonRequestPhoneWithText:(NSString *)text
{
    Api62_KeyboardButton_keyboardButtonRequestPhone *_object = [[Api62_KeyboardButton_keyboardButtonRequestPhone alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_KeyboardButton_keyboardButtonRequestGeoLocation *)keyboardButtonRequestGeoLocationWithText:(NSString *)text
{
    Api62_KeyboardButton_keyboardButtonRequestGeoLocation *_object = [[Api62_KeyboardButton_keyboardButtonRequestGeoLocation alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_KeyboardButton_keyboardButtonSwitchInline *)keyboardButtonSwitchInlineWithFlags:(NSNumber *)flags text:(NSString *)text query:(NSString *)query
{
    Api62_KeyboardButton_keyboardButtonSwitchInline *_object = [[Api62_KeyboardButton_keyboardButtonSwitchInline alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.query = [Api62__Serializer addSerializerToObject:[query copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_KeyboardButton_keyboardButtonGame *)keyboardButtonGameWithText:(NSString *)text
{
    Api62_KeyboardButton_keyboardButtonGame *_object = [[Api62_KeyboardButton_keyboardButtonGame alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_KeyboardButton_keyboardButton

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa2fa4880 serializeBlock:^bool (Api62_KeyboardButton_keyboardButton *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButton text:%d)", (int)[self.text length]];
}

@end

@implementation Api62_KeyboardButton_keyboardButtonUrl

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x258aff05 serializeBlock:^bool (Api62_KeyboardButton_keyboardButtonUrl *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonUrl text:%d url:%d)", (int)[self.text length], (int)[self.url length]];
}

@end

@implementation Api62_KeyboardButton_keyboardButtonCallback

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x683a5e46 serializeBlock:^bool (Api62_KeyboardButton_keyboardButtonCallback *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.data data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonCallback text:%d data:%d)", (int)[self.text length], (int)[self.data length]];
}

@end

@implementation Api62_KeyboardButton_keyboardButtonRequestPhone

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb16a6c29 serializeBlock:^bool (Api62_KeyboardButton_keyboardButtonRequestPhone *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonRequestPhone text:%d)", (int)[self.text length]];
}

@end

@implementation Api62_KeyboardButton_keyboardButtonRequestGeoLocation

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfc796b3f serializeBlock:^bool (Api62_KeyboardButton_keyboardButtonRequestGeoLocation *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonRequestGeoLocation text:%d)", (int)[self.text length]];
}

@end

@implementation Api62_KeyboardButton_keyboardButtonSwitchInline

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x568a748 serializeBlock:^bool (Api62_KeyboardButton_keyboardButtonSwitchInline *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.query data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonSwitchInline flags:%@ text:%d query:%d)", self.flags, (int)[self.text length], (int)[self.query length]];
}

@end

@implementation Api62_KeyboardButton_keyboardButtonGame

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x50f41ccf serializeBlock:^bool (Api62_KeyboardButton_keyboardButtonGame *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonGame text:%d)", (int)[self.text length]];
}

@end




@interface Api62_ContactStatus ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_UserStatus * status;

@end

@interface Api62_ContactStatus_contactStatus ()

@end

@implementation Api62_ContactStatus

+ (Api62_ContactStatus_contactStatus *)contactStatusWithUserId:(NSNumber *)userId status:(Api62_UserStatus *)status
{
    Api62_ContactStatus_contactStatus *_object = [[Api62_ContactStatus_contactStatus alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.status = status;
    return _object;
}


@end

@implementation Api62_ContactStatus_contactStatus

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd3680c61 serializeBlock:^bool (Api62_ContactStatus_contactStatus *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.status data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactStatus user_id:%@ status:%@)", self.userId, self.status];
}

@end




@interface Api62_PhotoSize ()

@property (nonatomic, strong) NSString * type;

@end

@interface Api62_PhotoSize_photoSizeEmpty ()

@end

@interface Api62_PhotoSize_photoSize ()

@property (nonatomic, strong) Api62_FileLocation * location;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;
@property (nonatomic, strong) NSNumber * size;

@end

@interface Api62_PhotoSize_photoCachedSize ()

@property (nonatomic, strong) Api62_FileLocation * location;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;
@property (nonatomic, strong) NSData * bytes;

@end

@implementation Api62_PhotoSize

+ (Api62_PhotoSize_photoSizeEmpty *)photoSizeEmptyWithType:(NSString *)type
{
    Api62_PhotoSize_photoSizeEmpty *_object = [[Api62_PhotoSize_photoSizeEmpty alloc] init];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_PhotoSize_photoSize *)photoSizeWithType:(NSString *)type location:(Api62_FileLocation *)location w:(NSNumber *)w h:(NSNumber *)h size:(NSNumber *)size
{
    Api62_PhotoSize_photoSize *_object = [[Api62_PhotoSize_photoSize alloc] init];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.location = location;
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.size = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:size] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_PhotoSize_photoCachedSize *)photoCachedSizeWithType:(NSString *)type location:(Api62_FileLocation *)location w:(NSNumber *)w h:(NSNumber *)h bytes:(NSData *)bytes
{
    Api62_PhotoSize_photoCachedSize *_object = [[Api62_PhotoSize_photoCachedSize alloc] init];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.location = location;
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.bytes = [Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_PhotoSize_photoSizeEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe17e23c serializeBlock:^bool (Api62_PhotoSize_photoSizeEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photoSizeEmpty type:%d)", (int)[self.type length]];
}

@end

@implementation Api62_PhotoSize_photoSize

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x77bfb61b serializeBlock:^bool (Api62_PhotoSize_photoSize *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.location data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.size data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photoSize type:%d location:%@ w:%@ h:%@ size:%@)", (int)[self.type length], self.location, self.w, self.h, self.size];
}

@end

@implementation Api62_PhotoSize_photoCachedSize

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe9a734fa serializeBlock:^bool (Api62_PhotoSize_photoCachedSize *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.location data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.bytes data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photoCachedSize type:%d location:%@ w:%@ h:%@ bytes:%d)", (int)[self.type length], self.location, self.w, self.h, (int)[self.bytes length]];
}

@end




@interface Api62_messages_Stickers ()

@end

@interface Api62_messages_Stickers_messages_stickersNotModified ()

@end

@interface Api62_messages_Stickers_messages_stickers ()

@property (nonatomic, strong) NSString * phash;
@property (nonatomic, strong) NSArray * stickers;

@end

@implementation Api62_messages_Stickers

+ (Api62_messages_Stickers_messages_stickersNotModified *)messages_stickersNotModified
{
    Api62_messages_Stickers_messages_stickersNotModified *_object = [[Api62_messages_Stickers_messages_stickersNotModified alloc] init];
    return _object;
}

+ (Api62_messages_Stickers_messages_stickers *)messages_stickersWithPhash:(NSString *)phash stickers:(NSArray *)stickers
{
    Api62_messages_Stickers_messages_stickers *_object = [[Api62_messages_Stickers_messages_stickers alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[phash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.stickers = 
({
NSMutableArray *stickers_copy = [[NSMutableArray alloc] initWithCapacity:stickers.count];
for (id stickers_item in stickers)
{
    [stickers_copy addObject:stickers_item];
}
id stickers_result = [Api62__Serializer addSerializerToObject:stickers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; stickers_result;});
    return _object;
}


@end

@implementation Api62_messages_Stickers_messages_stickersNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf1749a22 serializeBlock:^bool (__unused Api62_messages_Stickers_messages_stickersNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.stickersNotModified)"];
}

@end

@implementation Api62_messages_Stickers_messages_stickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8a8ecd32 serializeBlock:^bool (Api62_messages_Stickers_messages_stickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.stickers data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.stickers hash:%d stickers:%@)", (int)[self.phash length], self.stickers];
}

@end




@interface Api62_GlobalPrivacySettings ()

@property (nonatomic, strong) Api62_Bool * noSuggestions;
@property (nonatomic, strong) Api62_Bool * hideContacts;
@property (nonatomic, strong) Api62_Bool * hideLocated;
@property (nonatomic, strong) Api62_Bool * hideLastVisit;

@end

@interface Api62_GlobalPrivacySettings_globalPrivacySettings ()

@end

@implementation Api62_GlobalPrivacySettings

+ (Api62_GlobalPrivacySettings_globalPrivacySettings *)globalPrivacySettingsWithNoSuggestions:(Api62_Bool *)noSuggestions hideContacts:(Api62_Bool *)hideContacts hideLocated:(Api62_Bool *)hideLocated hideLastVisit:(Api62_Bool *)hideLastVisit
{
    Api62_GlobalPrivacySettings_globalPrivacySettings *_object = [[Api62_GlobalPrivacySettings_globalPrivacySettings alloc] init];
    _object.noSuggestions = noSuggestions;
    _object.hideContacts = hideContacts;
    _object.hideLocated = hideLocated;
    _object.hideLastVisit = hideLastVisit;
    return _object;
}


@end

@implementation Api62_GlobalPrivacySettings_globalPrivacySettings

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x40f5c53a serializeBlock:^bool (Api62_GlobalPrivacySettings_globalPrivacySettings *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.noSuggestions data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.hideContacts data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.hideLocated data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.hideLastVisit data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(globalPrivacySettings no_suggestions:%@ hide_contacts:%@ hide_located:%@ hide_last_visit:%@)", self.noSuggestions, self.hideContacts, self.hideLocated, self.hideLastVisit];
}

@end




@interface Api62_InlineBotSwitchPM ()

@property (nonatomic, strong) NSString * text;
@property (nonatomic, strong) NSString * startParam;

@end

@interface Api62_InlineBotSwitchPM_inlineBotSwitchPM ()

@end

@implementation Api62_InlineBotSwitchPM

+ (Api62_InlineBotSwitchPM_inlineBotSwitchPM *)inlineBotSwitchPMWithText:(NSString *)text startParam:(NSString *)startParam
{
    Api62_InlineBotSwitchPM_inlineBotSwitchPM *_object = [[Api62_InlineBotSwitchPM_inlineBotSwitchPM alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.startParam = [Api62__Serializer addSerializerToObject:[startParam copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InlineBotSwitchPM_inlineBotSwitchPM

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3c20629f serializeBlock:^bool (Api62_InlineBotSwitchPM_inlineBotSwitchPM *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.startParam data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inlineBotSwitchPM text:%d start_param:%d)", (int)[self.text length], (int)[self.startParam length]];
}

@end




@interface Api62_messages_FoundGifs ()

@property (nonatomic, strong) NSNumber * nextOffset;
@property (nonatomic, strong) NSArray * results;

@end

@interface Api62_messages_FoundGifs_messages_foundGifs ()

@end

@implementation Api62_messages_FoundGifs

+ (Api62_messages_FoundGifs_messages_foundGifs *)messages_foundGifsWithNextOffset:(NSNumber *)nextOffset results:(NSArray *)results
{
    Api62_messages_FoundGifs_messages_foundGifs *_object = [[Api62_messages_FoundGifs_messages_foundGifs alloc] init];
    _object.nextOffset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:nextOffset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.results = 
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;});
    return _object;
}


@end

@implementation Api62_messages_FoundGifs_messages_foundGifs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x450a1c0a serializeBlock:^bool (Api62_messages_FoundGifs_messages_foundGifs *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.nextOffset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.results data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.foundGifs next_offset:%@ results:%@)", self.nextOffset, self.results];
}

@end




@interface Api62_FileLocation ()

@property (nonatomic, strong) NSNumber * volumeId;
@property (nonatomic, strong) NSNumber * localId;
@property (nonatomic, strong) NSNumber * secret;

@end

@interface Api62_FileLocation_fileLocationUnavailable ()

@end

@interface Api62_FileLocation_fileLocation ()

@property (nonatomic, strong) NSNumber * dcId;

@end

@implementation Api62_FileLocation

+ (Api62_FileLocation_fileLocationUnavailable *)fileLocationUnavailableWithVolumeId:(NSNumber *)volumeId localId:(NSNumber *)localId secret:(NSNumber *)secret
{
    Api62_FileLocation_fileLocationUnavailable *_object = [[Api62_FileLocation_fileLocationUnavailable alloc] init];
    _object.volumeId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:volumeId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.localId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:localId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.secret = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:secret] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_FileLocation_fileLocation *)fileLocationWithDcId:(NSNumber *)dcId volumeId:(NSNumber *)volumeId localId:(NSNumber *)localId secret:(NSNumber *)secret
{
    Api62_FileLocation_fileLocation *_object = [[Api62_FileLocation_fileLocation alloc] init];
    _object.dcId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dcId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.volumeId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:volumeId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.localId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:localId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.secret = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:secret] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_FileLocation_fileLocationUnavailable

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7c596b46 serializeBlock:^bool (Api62_FileLocation_fileLocationUnavailable *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.volumeId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.localId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.secret data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(fileLocationUnavailable volume_id:%@ local_id:%@ secret:%@)", self.volumeId, self.localId, self.secret];
}

@end

@implementation Api62_FileLocation_fileLocation

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x53d69076 serializeBlock:^bool (Api62_FileLocation_fileLocation *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.dcId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.volumeId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.localId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.secret data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(fileLocation dc_id:%@ volume_id:%@ local_id:%@ secret:%@)", self.dcId, self.volumeId, self.localId, self.secret];
}

@end




@interface Api62_InputNotifyPeer ()

@end

@interface Api62_InputNotifyPeer_inputNotifyPeer ()

@property (nonatomic, strong) Api62_InputPeer * peer;

@end

@interface Api62_InputNotifyPeer_inputNotifyUsers ()

@end

@interface Api62_InputNotifyPeer_inputNotifyChats ()

@end

@interface Api62_InputNotifyPeer_inputNotifyAll ()

@end

@implementation Api62_InputNotifyPeer

+ (Api62_InputNotifyPeer_inputNotifyPeer *)inputNotifyPeerWithPeer:(Api62_InputPeer *)peer
{
    Api62_InputNotifyPeer_inputNotifyPeer *_object = [[Api62_InputNotifyPeer_inputNotifyPeer alloc] init];
    _object.peer = peer;
    return _object;
}

+ (Api62_InputNotifyPeer_inputNotifyUsers *)inputNotifyUsers
{
    Api62_InputNotifyPeer_inputNotifyUsers *_object = [[Api62_InputNotifyPeer_inputNotifyUsers alloc] init];
    return _object;
}

+ (Api62_InputNotifyPeer_inputNotifyChats *)inputNotifyChats
{
    Api62_InputNotifyPeer_inputNotifyChats *_object = [[Api62_InputNotifyPeer_inputNotifyChats alloc] init];
    return _object;
}

+ (Api62_InputNotifyPeer_inputNotifyAll *)inputNotifyAll
{
    Api62_InputNotifyPeer_inputNotifyAll *_object = [[Api62_InputNotifyPeer_inputNotifyAll alloc] init];
    return _object;
}


@end

@implementation Api62_InputNotifyPeer_inputNotifyPeer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb8bc5b0c serializeBlock:^bool (Api62_InputNotifyPeer_inputNotifyPeer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputNotifyPeer peer:%@)", self.peer];
}

@end

@implementation Api62_InputNotifyPeer_inputNotifyUsers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x193b4417 serializeBlock:^bool (__unused Api62_InputNotifyPeer_inputNotifyUsers *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputNotifyUsers)"];
}

@end

@implementation Api62_InputNotifyPeer_inputNotifyChats

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4a95e84e serializeBlock:^bool (__unused Api62_InputNotifyPeer_inputNotifyChats *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputNotifyChats)"];
}

@end

@implementation Api62_InputNotifyPeer_inputNotifyAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa429b886 serializeBlock:^bool (__unused Api62_InputNotifyPeer_inputNotifyAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputNotifyAll)"];
}

@end




@interface Api62_EncryptedMessage ()

@property (nonatomic, strong) NSNumber * randomId;
@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSData * bytes;

@end

@interface Api62_EncryptedMessage_encryptedMessage ()

@property (nonatomic, strong) Api62_EncryptedFile * file;

@end

@interface Api62_EncryptedMessage_encryptedMessageService ()

@end

@implementation Api62_EncryptedMessage

+ (Api62_EncryptedMessage_encryptedMessage *)encryptedMessageWithRandomId:(NSNumber *)randomId chatId:(NSNumber *)chatId date:(NSNumber *)date bytes:(NSData *)bytes file:(Api62_EncryptedFile *)file
{
    Api62_EncryptedMessage_encryptedMessage *_object = [[Api62_EncryptedMessage_encryptedMessage alloc] init];
    _object.randomId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.bytes = [Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.file = file;
    return _object;
}

+ (Api62_EncryptedMessage_encryptedMessageService *)encryptedMessageServiceWithRandomId:(NSNumber *)randomId chatId:(NSNumber *)chatId date:(NSNumber *)date bytes:(NSData *)bytes
{
    Api62_EncryptedMessage_encryptedMessageService *_object = [[Api62_EncryptedMessage_encryptedMessageService alloc] init];
    _object.randomId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.bytes = [Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_EncryptedMessage_encryptedMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xed18c118 serializeBlock:^bool (Api62_EncryptedMessage_encryptedMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.randomId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.bytes data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedMessage random_id:%@ chat_id:%@ date:%@ bytes:%d file:%@)", self.randomId, self.chatId, self.date, (int)[self.bytes length], self.file];
}

@end

@implementation Api62_EncryptedMessage_encryptedMessageService

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x23734b06 serializeBlock:^bool (Api62_EncryptedMessage_encryptedMessageService *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.randomId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.bytes data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedMessageService random_id:%@ chat_id:%@ date:%@ bytes:%d)", self.randomId, self.chatId, self.date, (int)[self.bytes length]];
}

@end




@interface Api62_ChannelParticipantsFilter ()

@end

@interface Api62_ChannelParticipantsFilter_channelParticipantsRecent ()

@end

@interface Api62_ChannelParticipantsFilter_channelParticipantsAdmins ()

@end

@interface Api62_ChannelParticipantsFilter_channelParticipantsKicked ()

@end

@interface Api62_ChannelParticipantsFilter_channelParticipantsBots ()

@end

@implementation Api62_ChannelParticipantsFilter

+ (Api62_ChannelParticipantsFilter_channelParticipantsRecent *)channelParticipantsRecent
{
    Api62_ChannelParticipantsFilter_channelParticipantsRecent *_object = [[Api62_ChannelParticipantsFilter_channelParticipantsRecent alloc] init];
    return _object;
}

+ (Api62_ChannelParticipantsFilter_channelParticipantsAdmins *)channelParticipantsAdmins
{
    Api62_ChannelParticipantsFilter_channelParticipantsAdmins *_object = [[Api62_ChannelParticipantsFilter_channelParticipantsAdmins alloc] init];
    return _object;
}

+ (Api62_ChannelParticipantsFilter_channelParticipantsKicked *)channelParticipantsKicked
{
    Api62_ChannelParticipantsFilter_channelParticipantsKicked *_object = [[Api62_ChannelParticipantsFilter_channelParticipantsKicked alloc] init];
    return _object;
}

+ (Api62_ChannelParticipantsFilter_channelParticipantsBots *)channelParticipantsBots
{
    Api62_ChannelParticipantsFilter_channelParticipantsBots *_object = [[Api62_ChannelParticipantsFilter_channelParticipantsBots alloc] init];
    return _object;
}


@end

@implementation Api62_ChannelParticipantsFilter_channelParticipantsRecent

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xde3f3c79 serializeBlock:^bool (__unused Api62_ChannelParticipantsFilter_channelParticipantsRecent *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantsRecent)"];
}

@end

@implementation Api62_ChannelParticipantsFilter_channelParticipantsAdmins

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb4608969 serializeBlock:^bool (__unused Api62_ChannelParticipantsFilter_channelParticipantsAdmins *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantsAdmins)"];
}

@end

@implementation Api62_ChannelParticipantsFilter_channelParticipantsKicked

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3c37bb7a serializeBlock:^bool (__unused Api62_ChannelParticipantsFilter_channelParticipantsKicked *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantsKicked)"];
}

@end

@implementation Api62_ChannelParticipantsFilter_channelParticipantsBots

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb0d1865b serializeBlock:^bool (__unused Api62_ChannelParticipantsFilter_channelParticipantsBots *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelParticipantsBots)"];
}

@end




@interface Api62_WebPage ()

@end

@interface Api62_WebPage_webPageEmpty ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_WebPage_webPagePending ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_WebPage_webPageNotModified ()

@end

@interface Api62_WebPage_webPage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * displayUrl;
@property (nonatomic, strong) NSNumber * phash;
@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) NSString * siteName;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * pdescription;
@property (nonatomic, strong) Api62_Photo * photo;
@property (nonatomic, strong) NSString * embedUrl;
@property (nonatomic, strong) NSString * embedType;
@property (nonatomic, strong) NSNumber * embedWidth;
@property (nonatomic, strong) NSNumber * embedHeight;
@property (nonatomic, strong) NSNumber * duration;
@property (nonatomic, strong) NSString * author;
@property (nonatomic, strong) Api62_Document * document;
@property (nonatomic, strong) Api62_Page * cachedPage;

@end

@implementation Api62_WebPage

+ (Api62_WebPage_webPageEmpty *)webPageEmptyWithPid:(NSNumber *)pid
{
    Api62_WebPage_webPageEmpty *_object = [[Api62_WebPage_webPageEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_WebPage_webPagePending *)webPagePendingWithPid:(NSNumber *)pid date:(NSNumber *)date
{
    Api62_WebPage_webPagePending *_object = [[Api62_WebPage_webPagePending alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_WebPage_webPageNotModified *)webPageNotModified
{
    Api62_WebPage_webPageNotModified *_object = [[Api62_WebPage_webPageNotModified alloc] init];
    return _object;
}

+ (Api62_WebPage_webPage *)webPageWithFlags:(NSNumber *)flags pid:(NSNumber *)pid url:(NSString *)url displayUrl:(NSString *)displayUrl phash:(NSNumber *)phash type:(NSString *)type siteName:(NSString *)siteName title:(NSString *)title pdescription:(NSString *)pdescription photo:(Api62_Photo *)photo embedUrl:(NSString *)embedUrl embedType:(NSString *)embedType embedWidth:(NSNumber *)embedWidth embedHeight:(NSNumber *)embedHeight duration:(NSNumber *)duration author:(NSString *)author document:(Api62_Document *)document cachedPage:(Api62_Page *)cachedPage
{
    Api62_WebPage_webPage *_object = [[Api62_WebPage_webPage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.displayUrl = [Api62__Serializer addSerializerToObject:[displayUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.siteName = [Api62__Serializer addSerializerToObject:[siteName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.embedUrl = [Api62__Serializer addSerializerToObject:[embedUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.embedType = [Api62__Serializer addSerializerToObject:[embedType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.embedWidth = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:embedWidth] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.embedHeight = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:embedHeight] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.author = [Api62__Serializer addSerializerToObject:[author copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.document = document;
    _object.cachedPage = cachedPage;
    return _object;
}


@end

@implementation Api62_WebPage_webPageEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xeb1477e8 serializeBlock:^bool (Api62_WebPage_webPageEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(webPageEmpty id:%@)", self.pid];
}

@end

@implementation Api62_WebPage_webPagePending

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc586da1c serializeBlock:^bool (Api62_WebPage_webPagePending *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(webPagePending id:%@ date:%@)", self.pid, self.date];
}

@end

@implementation Api62_WebPage_webPageNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x85849473 serializeBlock:^bool (__unused Api62_WebPage_webPageNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(webPageNotModified)"];
}

@end

@implementation Api62_WebPage_webPage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5f07b4bc serializeBlock:^bool (Api62_WebPage_webPage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.displayUrl data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.siteName data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.embedUrl data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.embedType data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.embedWidth data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.embedHeight data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 8)) {
            if (![Api62__Environment serializeObject:object.author data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 9)) {
            if (![Api62__Environment serializeObject:object.document data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 10)) {
            if (![Api62__Environment serializeObject:object.cachedPage data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(webPage flags:%@ id:%@ url:%d display_url:%d hash:%@ type:%d site_name:%d title:%d description:%d photo:%@ embed_url:%d embed_type:%d embed_width:%@ embed_height:%@ duration:%@ author:%d document:%@ cached_page:%@)", self.flags, self.pid, (int)[self.url length], (int)[self.displayUrl length], self.phash, (int)[self.type length], (int)[self.siteName length], (int)[self.title length], (int)[self.pdescription length], self.photo, (int)[self.embedUrl length], (int)[self.embedType length], self.embedWidth, self.embedHeight, self.duration, (int)[self.author length], self.document, self.cachedPage];
}

@end




@interface Api62_InputBotInlineMessage ()

@property (nonatomic, strong) Api62_ReplyMarkup * replyMarkup;

@end

@interface Api62_InputBotInlineMessage_inputBotInlineMessageMediaAuto ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_InputBotInlineMessage_inputBotInlineMessageText ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) NSArray * entities;

@end

@interface Api62_InputBotInlineMessage_inputBotInlineMessageMediaGeo ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputGeoPoint * geoPoint;

@end

@interface Api62_InputBotInlineMessage_inputBotInlineMessageMediaVenue ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputGeoPoint * geoPoint;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * address;
@property (nonatomic, strong) NSString * provider;
@property (nonatomic, strong) NSString * venueId;

@end

@interface Api62_InputBotInlineMessage_inputBotInlineMessageMediaContact ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * phoneNumber;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;

@end

@interface Api62_InputBotInlineMessage_inputBotInlineMessageGame ()

@end

@implementation Api62_InputBotInlineMessage

+ (Api62_InputBotInlineMessage_inputBotInlineMessageMediaAuto *)inputBotInlineMessageMediaAutoWithFlags:(NSNumber *)flags caption:(NSString *)caption replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_InputBotInlineMessage_inputBotInlineMessageMediaAuto *_object = [[Api62_InputBotInlineMessage_inputBotInlineMessageMediaAuto alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_InputBotInlineMessage_inputBotInlineMessageText *)inputBotInlineMessageTextWithFlags:(NSNumber *)flags message:(NSString *)message entities:(NSArray *)entities replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_InputBotInlineMessage_inputBotInlineMessageText *_object = [[Api62_InputBotInlineMessage_inputBotInlineMessageText alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_InputBotInlineMessage_inputBotInlineMessageMediaGeo *)inputBotInlineMessageMediaGeoWithFlags:(NSNumber *)flags geoPoint:(Api62_InputGeoPoint *)geoPoint replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_InputBotInlineMessage_inputBotInlineMessageMediaGeo *_object = [[Api62_InputBotInlineMessage_inputBotInlineMessageMediaGeo alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.geoPoint = geoPoint;
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_InputBotInlineMessage_inputBotInlineMessageMediaVenue *)inputBotInlineMessageMediaVenueWithFlags:(NSNumber *)flags geoPoint:(Api62_InputGeoPoint *)geoPoint title:(NSString *)title address:(NSString *)address provider:(NSString *)provider venueId:(NSString *)venueId replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_InputBotInlineMessage_inputBotInlineMessageMediaVenue *_object = [[Api62_InputBotInlineMessage_inputBotInlineMessageMediaVenue alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.geoPoint = geoPoint;
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.address = [Api62__Serializer addSerializerToObject:[address copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.provider = [Api62__Serializer addSerializerToObject:[provider copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.venueId = [Api62__Serializer addSerializerToObject:[venueId copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_InputBotInlineMessage_inputBotInlineMessageMediaContact *)inputBotInlineMessageMediaContactWithFlags:(NSNumber *)flags phoneNumber:(NSString *)phoneNumber firstName:(NSString *)firstName lastName:(NSString *)lastName replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_InputBotInlineMessage_inputBotInlineMessageMediaContact *_object = [[Api62_InputBotInlineMessage_inputBotInlineMessageMediaContact alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.phoneNumber = [Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_InputBotInlineMessage_inputBotInlineMessageGame *)inputBotInlineMessageGameWithReplyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_InputBotInlineMessage_inputBotInlineMessageGame *_object = [[Api62_InputBotInlineMessage_inputBotInlineMessageGame alloc] init];
    _object.replyMarkup = replyMarkup;
    return _object;
}


@end

@implementation Api62_InputBotInlineMessage_inputBotInlineMessageMediaAuto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x292fed13 serializeBlock:^bool (Api62_InputBotInlineMessage_inputBotInlineMessageMediaAuto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageMediaAuto flags:%@ caption:%d reply_markup:%@)", self.flags, (int)[self.caption length], self.replyMarkup];
}

@end

@implementation Api62_InputBotInlineMessage_inputBotInlineMessageText

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3dcd7a87 serializeBlock:^bool (Api62_InputBotInlineMessage_inputBotInlineMessageText *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageText flags:%@ message:%d entities:%@ reply_markup:%@)", self.flags, (int)[self.message length], self.entities, self.replyMarkup];
}

@end

@implementation Api62_InputBotInlineMessage_inputBotInlineMessageMediaGeo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf4a59de1 serializeBlock:^bool (Api62_InputBotInlineMessage_inputBotInlineMessageMediaGeo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.geoPoint data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageMediaGeo flags:%@ geo_point:%@ reply_markup:%@)", self.flags, self.geoPoint, self.replyMarkup];
}

@end

@implementation Api62_InputBotInlineMessage_inputBotInlineMessageMediaVenue

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xaaafadc8 serializeBlock:^bool (Api62_InputBotInlineMessage_inputBotInlineMessageMediaVenue *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.geoPoint data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.address data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.provider data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.venueId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageMediaVenue flags:%@ geo_point:%@ title:%d address:%d provider:%d venue_id:%d reply_markup:%@)", self.flags, self.geoPoint, (int)[self.title length], (int)[self.address length], (int)[self.provider length], (int)[self.venueId length], self.replyMarkup];
}

@end

@implementation Api62_InputBotInlineMessage_inputBotInlineMessageMediaContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2daf01a7 serializeBlock:^bool (Api62_InputBotInlineMessage_inputBotInlineMessageMediaContact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phoneNumber data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageMediaContact flags:%@ phone_number:%d first_name:%d last_name:%d reply_markup:%@)", self.flags, (int)[self.phoneNumber length], (int)[self.firstName length], (int)[self.lastName length], self.replyMarkup];
}

@end

@implementation Api62_InputBotInlineMessage_inputBotInlineMessageGame

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3c00f8aa serializeBlock:^bool (Api62_InputBotInlineMessage_inputBotInlineMessageGame *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageGame reply_markup:%@)", self.replyMarkup];
}

@end




@interface Api62_KeyboardButtonRow ()

@property (nonatomic, strong) NSArray * buttons;

@end

@interface Api62_KeyboardButtonRow_keyboardButtonRow ()

@end

@implementation Api62_KeyboardButtonRow

+ (Api62_KeyboardButtonRow_keyboardButtonRow *)keyboardButtonRowWithButtons:(NSArray *)buttons
{
    Api62_KeyboardButtonRow_keyboardButtonRow *_object = [[Api62_KeyboardButtonRow_keyboardButtonRow alloc] init];
    _object.buttons = 
({
NSMutableArray *buttons_copy = [[NSMutableArray alloc] initWithCapacity:buttons.count];
for (id buttons_item in buttons)
{
    [buttons_copy addObject:buttons_item];
}
id buttons_result = [Api62__Serializer addSerializerToObject:buttons_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; buttons_result;});
    return _object;
}


@end

@implementation Api62_KeyboardButtonRow_keyboardButtonRow

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x77608b83 serializeBlock:^bool (Api62_KeyboardButtonRow_keyboardButtonRow *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.buttons data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(keyboardButtonRow buttons:%@)", self.buttons];
}

@end




@interface Api62_StickerSet ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * shortName;
@property (nonatomic, strong) NSNumber * count;
@property (nonatomic, strong) NSNumber * phash;

@end

@interface Api62_StickerSet_stickerSet ()

@end

@implementation Api62_StickerSet

+ (Api62_StickerSet_stickerSet *)stickerSetWithFlags:(NSNumber *)flags pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash title:(NSString *)title shortName:(NSString *)shortName count:(NSNumber *)count phash:(NSNumber *)phash
{
    Api62_StickerSet_stickerSet *_object = [[Api62_StickerSet_stickerSet alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.shortName = [Api62__Serializer addSerializerToObject:[shortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_StickerSet_stickerSet

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xcd303b41 serializeBlock:^bool (Api62_StickerSet_stickerSet *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.shortName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(stickerSet flags:%@ id:%@ access_hash:%@ title:%d short_name:%d count:%@ hash:%@)", self.flags, self.pid, self.accessHash, (int)[self.title length], (int)[self.shortName length], self.count, self.phash];
}

@end




@interface Api62_photos_Photo ()

@end

@interface Api62_photos_Photo_photos_photo ()

@property (nonatomic, strong) Api62_Photo * photo;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_photos_Photo_photos_uploadProfilePhoto ()

@property (nonatomic, strong) Api62_InputFile * file;

@end

@implementation Api62_photos_Photo

+ (Api62_photos_Photo_photos_photo *)photos_photoWithPhoto:(Api62_Photo *)photo users:(NSArray *)users
{
    Api62_photos_Photo_photos_photo *_object = [[Api62_photos_Photo_photos_photo alloc] init];
    _object.photo = photo;
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_photos_Photo_photos_uploadProfilePhoto *)photos_uploadProfilePhotoWithFile:(Api62_InputFile *)file
{
    Api62_photos_Photo_photos_uploadProfilePhoto *_object = [[Api62_photos_Photo_photos_uploadProfilePhoto alloc] init];
    _object.file = file;
    return _object;
}


@end

@implementation Api62_photos_Photo_photos_photo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x20212ca8 serializeBlock:^bool (Api62_photos_Photo_photos_photo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photos.photo photo:%@ users:%@)", self.photo, self.users];
}

@end

@implementation Api62_photos_Photo_photos_uploadProfilePhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4f32c098 serializeBlock:^bool (Api62_photos_Photo_photos_uploadProfilePhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photos.uploadProfilePhoto file:%@)", self.file];
}

@end




@interface Api62_InputContact ()

@property (nonatomic, strong) NSNumber * clientId;
@property (nonatomic, strong) NSString * phone;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;

@end

@interface Api62_InputContact_inputPhoneContact ()

@end

@implementation Api62_InputContact

+ (Api62_InputContact_inputPhoneContact *)inputPhoneContactWithClientId:(NSNumber *)clientId phone:(NSString *)phone firstName:(NSString *)firstName lastName:(NSString *)lastName
{
    Api62_InputContact_inputPhoneContact *_object = [[Api62_InputContact_inputPhoneContact alloc] init];
    _object.clientId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:clientId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.phone = [Api62__Serializer addSerializerToObject:[phone copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InputContact_inputPhoneContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf392b7f4 serializeBlock:^bool (Api62_InputContact_inputPhoneContact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.clientId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phone data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPhoneContact client_id:%@ phone:%d first_name:%d last_name:%d)", self.clientId, (int)[self.phone length], (int)[self.firstName length], (int)[self.lastName length]];
}

@end




@interface Api62_TopPeerCategory ()

@end

@interface Api62_TopPeerCategory_topPeerCategoryBotsPM ()

@end

@interface Api62_TopPeerCategory_topPeerCategoryBotsInline ()

@end

@interface Api62_TopPeerCategory_topPeerCategoryCorrespondents ()

@end

@interface Api62_TopPeerCategory_topPeerCategoryGroups ()

@end

@interface Api62_TopPeerCategory_topPeerCategoryChannels ()

@end

@implementation Api62_TopPeerCategory

+ (Api62_TopPeerCategory_topPeerCategoryBotsPM *)topPeerCategoryBotsPM
{
    Api62_TopPeerCategory_topPeerCategoryBotsPM *_object = [[Api62_TopPeerCategory_topPeerCategoryBotsPM alloc] init];
    return _object;
}

+ (Api62_TopPeerCategory_topPeerCategoryBotsInline *)topPeerCategoryBotsInline
{
    Api62_TopPeerCategory_topPeerCategoryBotsInline *_object = [[Api62_TopPeerCategory_topPeerCategoryBotsInline alloc] init];
    return _object;
}

+ (Api62_TopPeerCategory_topPeerCategoryCorrespondents *)topPeerCategoryCorrespondents
{
    Api62_TopPeerCategory_topPeerCategoryCorrespondents *_object = [[Api62_TopPeerCategory_topPeerCategoryCorrespondents alloc] init];
    return _object;
}

+ (Api62_TopPeerCategory_topPeerCategoryGroups *)topPeerCategoryGroups
{
    Api62_TopPeerCategory_topPeerCategoryGroups *_object = [[Api62_TopPeerCategory_topPeerCategoryGroups alloc] init];
    return _object;
}

+ (Api62_TopPeerCategory_topPeerCategoryChannels *)topPeerCategoryChannels
{
    Api62_TopPeerCategory_topPeerCategoryChannels *_object = [[Api62_TopPeerCategory_topPeerCategoryChannels alloc] init];
    return _object;
}


@end

@implementation Api62_TopPeerCategory_topPeerCategoryBotsPM

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xab661b5b serializeBlock:^bool (__unused Api62_TopPeerCategory_topPeerCategoryBotsPM *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeerCategoryBotsPM)"];
}

@end

@implementation Api62_TopPeerCategory_topPeerCategoryBotsInline

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x148677e2 serializeBlock:^bool (__unused Api62_TopPeerCategory_topPeerCategoryBotsInline *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeerCategoryBotsInline)"];
}

@end

@implementation Api62_TopPeerCategory_topPeerCategoryCorrespondents

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x637b7ed serializeBlock:^bool (__unused Api62_TopPeerCategory_topPeerCategoryCorrespondents *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeerCategoryCorrespondents)"];
}

@end

@implementation Api62_TopPeerCategory_topPeerCategoryGroups

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbd17a14a serializeBlock:^bool (__unused Api62_TopPeerCategory_topPeerCategoryGroups *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeerCategoryGroups)"];
}

@end

@implementation Api62_TopPeerCategory_topPeerCategoryChannels

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x161d9628 serializeBlock:^bool (__unused Api62_TopPeerCategory_topPeerCategoryChannels *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeerCategoryChannels)"];
}

@end




@interface Api62_contacts_Contacts ()

@end

@interface Api62_contacts_Contacts_contacts_contacts ()

@property (nonatomic, strong) NSArray * contacts;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_Contacts_contacts_contactsNotModified ()

@end

@implementation Api62_contacts_Contacts

+ (Api62_contacts_Contacts_contacts_contacts *)contacts_contactsWithContacts:(NSArray *)contacts users:(NSArray *)users
{
    Api62_contacts_Contacts_contacts_contacts *_object = [[Api62_contacts_Contacts_contacts_contacts alloc] init];
    _object.contacts = 
({
NSMutableArray *contacts_copy = [[NSMutableArray alloc] initWithCapacity:contacts.count];
for (id contacts_item in contacts)
{
    [contacts_copy addObject:contacts_item];
}
id contacts_result = [Api62__Serializer addSerializerToObject:contacts_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; contacts_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_contacts_Contacts_contacts_contactsNotModified *)contacts_contactsNotModified
{
    Api62_contacts_Contacts_contacts_contactsNotModified *_object = [[Api62_contacts_Contacts_contacts_contactsNotModified alloc] init];
    return _object;
}


@end

@implementation Api62_contacts_Contacts_contacts_contacts

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6f8b8cb2 serializeBlock:^bool (Api62_contacts_Contacts_contacts_contacts *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.contacts data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.contacts contacts:%@ users:%@)", self.contacts, self.users];
}

@end

@implementation Api62_contacts_Contacts_contacts_contactsNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb74ba9d2 serializeBlock:^bool (__unused Api62_contacts_Contacts_contacts_contactsNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.contactsNotModified)"];
}

@end




@interface Api62_ChannelMessagesFilter ()

@end

@interface Api62_ChannelMessagesFilter_channelMessagesFilterEmpty ()

@end

@interface Api62_ChannelMessagesFilter_channelMessagesFilterCollapsed ()

@end

@interface Api62_ChannelMessagesFilter_channelMessagesFilter ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSArray * ranges;

@end

@implementation Api62_ChannelMessagesFilter

+ (Api62_ChannelMessagesFilter_channelMessagesFilterEmpty *)channelMessagesFilterEmpty
{
    Api62_ChannelMessagesFilter_channelMessagesFilterEmpty *_object = [[Api62_ChannelMessagesFilter_channelMessagesFilterEmpty alloc] init];
    return _object;
}

+ (Api62_ChannelMessagesFilter_channelMessagesFilterCollapsed *)channelMessagesFilterCollapsed
{
    Api62_ChannelMessagesFilter_channelMessagesFilterCollapsed *_object = [[Api62_ChannelMessagesFilter_channelMessagesFilterCollapsed alloc] init];
    return _object;
}

+ (Api62_ChannelMessagesFilter_channelMessagesFilter *)channelMessagesFilterWithFlags:(NSNumber *)flags ranges:(NSArray *)ranges
{
    Api62_ChannelMessagesFilter_channelMessagesFilter *_object = [[Api62_ChannelMessagesFilter_channelMessagesFilter alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ranges = 
({
NSMutableArray *ranges_copy = [[NSMutableArray alloc] initWithCapacity:ranges.count];
for (id ranges_item in ranges)
{
    [ranges_copy addObject:ranges_item];
}
id ranges_result = [Api62__Serializer addSerializerToObject:ranges_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; ranges_result;});
    return _object;
}


@end

@implementation Api62_ChannelMessagesFilter_channelMessagesFilterEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x94d42ee7 serializeBlock:^bool (__unused Api62_ChannelMessagesFilter_channelMessagesFilterEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelMessagesFilterEmpty)"];
}

@end

@implementation Api62_ChannelMessagesFilter_channelMessagesFilterCollapsed

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfa01232e serializeBlock:^bool (__unused Api62_ChannelMessagesFilter_channelMessagesFilterCollapsed *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelMessagesFilterCollapsed)"];
}

@end

@implementation Api62_ChannelMessagesFilter_channelMessagesFilter

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xcd77d957 serializeBlock:^bool (Api62_ChannelMessagesFilter_channelMessagesFilter *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ranges data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(channelMessagesFilter flags:%@ ranges:%@)", self.flags, self.ranges];
}

@end




@interface Api62_auth_PasswordRecovery ()

@property (nonatomic, strong) NSString * emailPattern;

@end

@interface Api62_auth_PasswordRecovery_auth_passwordRecovery ()

@end

@implementation Api62_auth_PasswordRecovery

+ (Api62_auth_PasswordRecovery_auth_passwordRecovery *)auth_passwordRecoveryWithEmailPattern:(NSString *)emailPattern
{
    Api62_auth_PasswordRecovery_auth_passwordRecovery *_object = [[Api62_auth_PasswordRecovery_auth_passwordRecovery alloc] init];
    _object.emailPattern = [Api62__Serializer addSerializerToObject:[emailPattern copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_auth_PasswordRecovery_auth_passwordRecovery

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x137948a5 serializeBlock:^bool (Api62_auth_PasswordRecovery_auth_passwordRecovery *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.emailPattern data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.passwordRecovery email_pattern:%d)", (int)[self.emailPattern length]];
}

@end




@interface Api62_messages_BotResults ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * queryId;
@property (nonatomic, strong) NSString * nextOffset;
@property (nonatomic, strong) Api62_InlineBotSwitchPM * switchPm;
@property (nonatomic, strong) NSArray * results;
@property (nonatomic, strong) NSNumber * cacheTime;

@end

@interface Api62_messages_BotResults_messages_botResults ()

@end

@implementation Api62_messages_BotResults

+ (Api62_messages_BotResults_messages_botResults *)messages_botResultsWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId nextOffset:(NSString *)nextOffset switchPm:(Api62_InlineBotSwitchPM *)switchPm results:(NSArray *)results cacheTime:(NSNumber *)cacheTime
{
    Api62_messages_BotResults_messages_botResults *_object = [[Api62_messages_BotResults_messages_botResults alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.queryId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.nextOffset = [Api62__Serializer addSerializerToObject:[nextOffset copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.switchPm = switchPm;
    _object.results = 
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;});
    _object.cacheTime = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cacheTime] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_BotResults_messages_botResults

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xccd3563d serializeBlock:^bool (Api62_messages_BotResults_messages_botResults *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.queryId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.nextOffset data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.switchPm data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.results data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.cacheTime data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.botResults flags:%@ query_id:%@ next_offset:%d switch_pm:%@ results:%@ cache_time:%@)", self.flags, self.queryId, (int)[self.nextOffset length], self.switchPm, self.results, self.cacheTime];
}

@end




@interface Api62_InputDocument ()

@end

@interface Api62_InputDocument_inputDocumentEmpty ()

@end

@interface Api62_InputDocument_inputDocument ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@implementation Api62_InputDocument

+ (Api62_InputDocument_inputDocumentEmpty *)inputDocumentEmpty
{
    Api62_InputDocument_inputDocumentEmpty *_object = [[Api62_InputDocument_inputDocumentEmpty alloc] init];
    return _object;
}

+ (Api62_InputDocument_inputDocument *)inputDocumentWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputDocument_inputDocument *_object = [[Api62_InputDocument_inputDocument alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputDocument_inputDocumentEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x72f0eaae serializeBlock:^bool (__unused Api62_InputDocument_inputDocumentEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputDocumentEmpty)"];
}

@end

@implementation Api62_InputDocument_inputDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x18798952 serializeBlock:^bool (Api62_InputDocument_inputDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputDocument id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end




@interface Api62_contacts_ResolvedPeer ()

@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_ResolvedPeer_contacts_resolvedPeer ()

@end

@implementation Api62_contacts_ResolvedPeer

+ (Api62_contacts_ResolvedPeer_contacts_resolvedPeer *)contacts_resolvedPeerWithPeer:(Api62_Peer *)peer chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_contacts_ResolvedPeer_contacts_resolvedPeer *_object = [[Api62_contacts_ResolvedPeer_contacts_resolvedPeer alloc] init];
    _object.peer = peer;
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_ResolvedPeer_contacts_resolvedPeer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7f077ad9 serializeBlock:^bool (Api62_contacts_ResolvedPeer_contacts_resolvedPeer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.resolvedPeer peer:%@ chats:%@ users:%@)", self.peer, self.chats, self.users];
}

@end




@interface Api62_InputMedia ()

@end

@interface Api62_InputMedia_inputMediaEmpty ()

@end

@interface Api62_InputMedia_inputMediaGeoPoint ()

@property (nonatomic, strong) Api62_InputGeoPoint * geoPoint;

@end

@interface Api62_InputMedia_inputMediaContact ()

@property (nonatomic, strong) NSString * phoneNumber;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;

@end

@interface Api62_InputMedia_inputMediaPhoto ()

@property (nonatomic, strong) Api62_InputPhoto * pid;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_InputMedia_inputMediaVenue ()

@property (nonatomic, strong) Api62_InputGeoPoint * geoPoint;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * address;
@property (nonatomic, strong) NSString * provider;
@property (nonatomic, strong) NSString * venueId;

@end

@interface Api62_InputMedia_inputMediaGifExternal ()

@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * q;

@end

@interface Api62_InputMedia_inputMediaDocument ()

@property (nonatomic, strong) Api62_InputDocument * pid;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_InputMedia_inputMediaPhotoExternal ()

@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_InputMedia_inputMediaDocumentExternal ()

@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_InputMedia_inputMediaUploadedPhoto ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputFile * file;
@property (nonatomic, strong) NSString * caption;
@property (nonatomic, strong) NSArray * stickers;

@end

@interface Api62_InputMedia_inputMediaUploadedDocument ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputFile * file;
@property (nonatomic, strong) NSString * mimeType;
@property (nonatomic, strong) NSArray * attributes;
@property (nonatomic, strong) NSString * caption;
@property (nonatomic, strong) NSArray * stickers;

@end

@interface Api62_InputMedia_inputMediaUploadedThumbDocument ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputFile * file;
@property (nonatomic, strong) Api62_InputFile * thumb;
@property (nonatomic, strong) NSString * mimeType;
@property (nonatomic, strong) NSArray * attributes;
@property (nonatomic, strong) NSString * caption;
@property (nonatomic, strong) NSArray * stickers;

@end

@interface Api62_InputMedia_inputMediaGame ()

@property (nonatomic, strong) Api62_InputGame * pid;

@end

@implementation Api62_InputMedia

+ (Api62_InputMedia_inputMediaEmpty *)inputMediaEmpty
{
    Api62_InputMedia_inputMediaEmpty *_object = [[Api62_InputMedia_inputMediaEmpty alloc] init];
    return _object;
}

+ (Api62_InputMedia_inputMediaGeoPoint *)inputMediaGeoPointWithGeoPoint:(Api62_InputGeoPoint *)geoPoint
{
    Api62_InputMedia_inputMediaGeoPoint *_object = [[Api62_InputMedia_inputMediaGeoPoint alloc] init];
    _object.geoPoint = geoPoint;
    return _object;
}

+ (Api62_InputMedia_inputMediaContact *)inputMediaContactWithPhoneNumber:(NSString *)phoneNumber firstName:(NSString *)firstName lastName:(NSString *)lastName
{
    Api62_InputMedia_inputMediaContact *_object = [[Api62_InputMedia_inputMediaContact alloc] init];
    _object.phoneNumber = [Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaPhoto *)inputMediaPhotoWithPid:(Api62_InputPhoto *)pid caption:(NSString *)caption
{
    Api62_InputMedia_inputMediaPhoto *_object = [[Api62_InputMedia_inputMediaPhoto alloc] init];
    _object.pid = pid;
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaVenue *)inputMediaVenueWithGeoPoint:(Api62_InputGeoPoint *)geoPoint title:(NSString *)title address:(NSString *)address provider:(NSString *)provider venueId:(NSString *)venueId
{
    Api62_InputMedia_inputMediaVenue *_object = [[Api62_InputMedia_inputMediaVenue alloc] init];
    _object.geoPoint = geoPoint;
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.address = [Api62__Serializer addSerializerToObject:[address copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.provider = [Api62__Serializer addSerializerToObject:[provider copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.venueId = [Api62__Serializer addSerializerToObject:[venueId copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaGifExternal *)inputMediaGifExternalWithUrl:(NSString *)url q:(NSString *)q
{
    Api62_InputMedia_inputMediaGifExternal *_object = [[Api62_InputMedia_inputMediaGifExternal alloc] init];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.q = [Api62__Serializer addSerializerToObject:[q copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaDocument *)inputMediaDocumentWithPid:(Api62_InputDocument *)pid caption:(NSString *)caption
{
    Api62_InputMedia_inputMediaDocument *_object = [[Api62_InputMedia_inputMediaDocument alloc] init];
    _object.pid = pid;
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaPhotoExternal *)inputMediaPhotoExternalWithUrl:(NSString *)url caption:(NSString *)caption
{
    Api62_InputMedia_inputMediaPhotoExternal *_object = [[Api62_InputMedia_inputMediaPhotoExternal alloc] init];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaDocumentExternal *)inputMediaDocumentExternalWithUrl:(NSString *)url caption:(NSString *)caption
{
    Api62_InputMedia_inputMediaDocumentExternal *_object = [[Api62_InputMedia_inputMediaDocumentExternal alloc] init];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_InputMedia_inputMediaUploadedPhoto *)inputMediaUploadedPhotoWithFlags:(NSNumber *)flags file:(Api62_InputFile *)file caption:(NSString *)caption stickers:(NSArray *)stickers
{
    Api62_InputMedia_inputMediaUploadedPhoto *_object = [[Api62_InputMedia_inputMediaUploadedPhoto alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.file = file;
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.stickers = 
({
NSMutableArray *stickers_copy = [[NSMutableArray alloc] initWithCapacity:stickers.count];
for (id stickers_item in stickers)
{
    [stickers_copy addObject:stickers_item];
}
id stickers_result = [Api62__Serializer addSerializerToObject:stickers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; stickers_result;});
    return _object;
}

+ (Api62_InputMedia_inputMediaUploadedDocument *)inputMediaUploadedDocumentWithFlags:(NSNumber *)flags file:(Api62_InputFile *)file mimeType:(NSString *)mimeType attributes:(NSArray *)attributes caption:(NSString *)caption stickers:(NSArray *)stickers
{
    Api62_InputMedia_inputMediaUploadedDocument *_object = [[Api62_InputMedia_inputMediaUploadedDocument alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.file = file;
    _object.mimeType = [Api62__Serializer addSerializerToObject:[mimeType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.attributes = 
({
NSMutableArray *attributes_copy = [[NSMutableArray alloc] initWithCapacity:attributes.count];
for (id attributes_item in attributes)
{
    [attributes_copy addObject:attributes_item];
}
id attributes_result = [Api62__Serializer addSerializerToObject:attributes_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; attributes_result;});
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.stickers = 
({
NSMutableArray *stickers_copy = [[NSMutableArray alloc] initWithCapacity:stickers.count];
for (id stickers_item in stickers)
{
    [stickers_copy addObject:stickers_item];
}
id stickers_result = [Api62__Serializer addSerializerToObject:stickers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; stickers_result;});
    return _object;
}

+ (Api62_InputMedia_inputMediaUploadedThumbDocument *)inputMediaUploadedThumbDocumentWithFlags:(NSNumber *)flags file:(Api62_InputFile *)file thumb:(Api62_InputFile *)thumb mimeType:(NSString *)mimeType attributes:(NSArray *)attributes caption:(NSString *)caption stickers:(NSArray *)stickers
{
    Api62_InputMedia_inputMediaUploadedThumbDocument *_object = [[Api62_InputMedia_inputMediaUploadedThumbDocument alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.file = file;
    _object.thumb = thumb;
    _object.mimeType = [Api62__Serializer addSerializerToObject:[mimeType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.attributes = 
({
NSMutableArray *attributes_copy = [[NSMutableArray alloc] initWithCapacity:attributes.count];
for (id attributes_item in attributes)
{
    [attributes_copy addObject:attributes_item];
}
id attributes_result = [Api62__Serializer addSerializerToObject:attributes_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; attributes_result;});
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.stickers = 
({
NSMutableArray *stickers_copy = [[NSMutableArray alloc] initWithCapacity:stickers.count];
for (id stickers_item in stickers)
{
    [stickers_copy addObject:stickers_item];
}
id stickers_result = [Api62__Serializer addSerializerToObject:stickers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; stickers_result;});
    return _object;
}

+ (Api62_InputMedia_inputMediaGame *)inputMediaGameWithPid:(Api62_InputGame *)pid
{
    Api62_InputMedia_inputMediaGame *_object = [[Api62_InputMedia_inputMediaGame alloc] init];
    _object.pid = pid;
    return _object;
}


@end

@implementation Api62_InputMedia_inputMediaEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9664f57f serializeBlock:^bool (__unused Api62_InputMedia_inputMediaEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaEmpty)"];
}

@end

@implementation Api62_InputMedia_inputMediaGeoPoint

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf9c44144 serializeBlock:^bool (Api62_InputMedia_inputMediaGeoPoint *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.geoPoint data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaGeoPoint geo_point:%@)", self.geoPoint];
}

@end

@implementation Api62_InputMedia_inputMediaContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa6e45987 serializeBlock:^bool (Api62_InputMedia_inputMediaContact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneNumber data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaContact phone_number:%d first_name:%d last_name:%d)", (int)[self.phoneNumber length], (int)[self.firstName length], (int)[self.lastName length]];
}

@end

@implementation Api62_InputMedia_inputMediaPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe9bfb4f3 serializeBlock:^bool (Api62_InputMedia_inputMediaPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaPhoto id:%@ caption:%d)", self.pid, (int)[self.caption length]];
}

@end

@implementation Api62_InputMedia_inputMediaVenue

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2827a81a serializeBlock:^bool (Api62_InputMedia_inputMediaVenue *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.geoPoint data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.address data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.provider data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.venueId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaVenue geo_point:%@ title:%d address:%d provider:%d venue_id:%d)", self.geoPoint, (int)[self.title length], (int)[self.address length], (int)[self.provider length], (int)[self.venueId length]];
}

@end

@implementation Api62_InputMedia_inputMediaGifExternal

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4843b0fd serializeBlock:^bool (Api62_InputMedia_inputMediaGifExternal *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.q data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaGifExternal url:%d q:%d)", (int)[self.url length], (int)[self.q length]];
}

@end

@implementation Api62_InputMedia_inputMediaDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1a77f29c serializeBlock:^bool (Api62_InputMedia_inputMediaDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaDocument id:%@ caption:%d)", self.pid, (int)[self.caption length]];
}

@end

@implementation Api62_InputMedia_inputMediaPhotoExternal

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb55f4f18 serializeBlock:^bool (Api62_InputMedia_inputMediaPhotoExternal *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaPhotoExternal url:%d caption:%d)", (int)[self.url length], (int)[self.caption length]];
}

@end

@implementation Api62_InputMedia_inputMediaDocumentExternal

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe5e9607c serializeBlock:^bool (Api62_InputMedia_inputMediaDocumentExternal *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaDocumentExternal url:%d caption:%d)", (int)[self.url length], (int)[self.caption length]];
}

@end

@implementation Api62_InputMedia_inputMediaUploadedPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x630c9af1 serializeBlock:^bool (Api62_InputMedia_inputMediaUploadedPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.stickers data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaUploadedPhoto flags:%@ file:%@ caption:%d stickers:%@)", self.flags, self.file, (int)[self.caption length], self.stickers];
}

@end

@implementation Api62_InputMedia_inputMediaUploadedDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd070f1e9 serializeBlock:^bool (Api62_InputMedia_inputMediaUploadedDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.mimeType data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.attributes data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.stickers data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaUploadedDocument flags:%@ file:%@ mime_type:%d attributes:%@ caption:%d stickers:%@)", self.flags, self.file, (int)[self.mimeType length], self.attributes, (int)[self.caption length], self.stickers];
}

@end

@implementation Api62_InputMedia_inputMediaUploadedThumbDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x50d88cae serializeBlock:^bool (Api62_InputMedia_inputMediaUploadedThumbDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.thumb data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.mimeType data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.attributes data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.stickers data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaUploadedThumbDocument flags:%@ file:%@ thumb:%@ mime_type:%d attributes:%@ caption:%d stickers:%@)", self.flags, self.file, self.thumb, (int)[self.mimeType length], self.attributes, (int)[self.caption length], self.stickers];
}

@end

@implementation Api62_InputMedia_inputMediaGame

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd33f43f3 serializeBlock:^bool (Api62_InputMedia_inputMediaGame *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMediaGame id:%@)", self.pid];
}

@end




@interface Api62_InputPeer ()

@end

@interface Api62_InputPeer_inputPeerEmpty ()

@end

@interface Api62_InputPeer_inputPeerSelf ()

@end

@interface Api62_InputPeer_inputPeerChat ()

@property (nonatomic, strong) NSNumber * chatId;

@end

@interface Api62_InputPeer_inputPeerUser ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputPeer_inputPeerChannel ()

@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@implementation Api62_InputPeer

+ (Api62_InputPeer_inputPeerEmpty *)inputPeerEmpty
{
    Api62_InputPeer_inputPeerEmpty *_object = [[Api62_InputPeer_inputPeerEmpty alloc] init];
    return _object;
}

+ (Api62_InputPeer_inputPeerSelf *)inputPeerSelf
{
    Api62_InputPeer_inputPeerSelf *_object = [[Api62_InputPeer_inputPeerSelf alloc] init];
    return _object;
}

+ (Api62_InputPeer_inputPeerChat *)inputPeerChatWithChatId:(NSNumber *)chatId
{
    Api62_InputPeer_inputPeerChat *_object = [[Api62_InputPeer_inputPeerChat alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_InputPeer_inputPeerUser *)inputPeerUserWithUserId:(NSNumber *)userId accessHash:(NSNumber *)accessHash
{
    Api62_InputPeer_inputPeerUser *_object = [[Api62_InputPeer_inputPeerUser alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_InputPeer_inputPeerChannel *)inputPeerChannelWithChannelId:(NSNumber *)channelId accessHash:(NSNumber *)accessHash
{
    Api62_InputPeer_inputPeerChannel *_object = [[Api62_InputPeer_inputPeerChannel alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputPeer_inputPeerEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7f3b18ea serializeBlock:^bool (__unused Api62_InputPeer_inputPeerEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerEmpty)"];
}

@end

@implementation Api62_InputPeer_inputPeerSelf

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7da07ec9 serializeBlock:^bool (__unused Api62_InputPeer_inputPeerSelf *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerSelf)"];
}

@end

@implementation Api62_InputPeer_inputPeerChat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x179be863 serializeBlock:^bool (Api62_InputPeer_inputPeerChat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerChat chat_id:%@)", self.chatId];
}

@end

@implementation Api62_InputPeer_inputPeerUser

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7b8e7de6 serializeBlock:^bool (Api62_InputPeer_inputPeerUser *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerUser user_id:%@ access_hash:%@)", self.userId, self.accessHash];
}

@end

@implementation Api62_InputPeer_inputPeerChannel

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x20adaef8 serializeBlock:^bool (Api62_InputPeer_inputPeerChannel *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerChannel channel_id:%@ access_hash:%@)", self.channelId, self.accessHash];
}

@end




@interface Api62_Contact ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) Api62_Bool * mutual;

@end

@interface Api62_Contact_contact ()

@end

@implementation Api62_Contact

+ (Api62_Contact_contact *)contactWithUserId:(NSNumber *)userId mutual:(Api62_Bool *)mutual
{
    Api62_Contact_contact *_object = [[Api62_Contact_contact alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.mutual = mutual;
    return _object;
}


@end

@implementation Api62_Contact_contact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf911c994 serializeBlock:^bool (Api62_Contact_contact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.mutual data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contact user_id:%@ mutual:%@)", self.userId, self.mutual];
}

@end




@interface Api62_BotInlineResult ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * pid;
@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * pdescription;
@property (nonatomic, strong) Api62_BotInlineMessage * sendMessage;

@end

@interface Api62_BotInlineResult_botInlineResult ()

@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * thumbUrl;
@property (nonatomic, strong) NSString * contentUrl;
@property (nonatomic, strong) NSString * contentType;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;
@property (nonatomic, strong) NSNumber * duration;

@end

@interface Api62_BotInlineResult_botInlineMediaResult ()

@property (nonatomic, strong) Api62_Photo * photo;
@property (nonatomic, strong) Api62_Document * document;

@end

@implementation Api62_BotInlineResult

+ (Api62_BotInlineResult_botInlineResult *)botInlineResultWithFlags:(NSNumber *)flags pid:(NSString *)pid type:(NSString *)type title:(NSString *)title pdescription:(NSString *)pdescription url:(NSString *)url thumbUrl:(NSString *)thumbUrl contentUrl:(NSString *)contentUrl contentType:(NSString *)contentType w:(NSNumber *)w h:(NSNumber *)h duration:(NSNumber *)duration sendMessage:(Api62_BotInlineMessage *)sendMessage
{
    Api62_BotInlineResult_botInlineResult *_object = [[Api62_BotInlineResult_botInlineResult alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.thumbUrl = [Api62__Serializer addSerializerToObject:[thumbUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.contentUrl = [Api62__Serializer addSerializerToObject:[contentUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.contentType = [Api62__Serializer addSerializerToObject:[contentType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sendMessage = sendMessage;
    return _object;
}

+ (Api62_BotInlineResult_botInlineMediaResult *)botInlineMediaResultWithFlags:(NSNumber *)flags pid:(NSString *)pid type:(NSString *)type photo:(Api62_Photo *)photo document:(Api62_Document *)document title:(NSString *)title pdescription:(NSString *)pdescription sendMessage:(Api62_BotInlineMessage *)sendMessage
{
    Api62_BotInlineResult_botInlineMediaResult *_object = [[Api62_BotInlineResult_botInlineMediaResult alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.document = document;
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.sendMessage = sendMessage;
    return _object;
}


@end

@implementation Api62_BotInlineResult_botInlineResult

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9bebaeb9 serializeBlock:^bool (Api62_BotInlineResult_botInlineResult *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.thumbUrl data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.contentUrl data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.contentType data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.sendMessage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineResult flags:%@ id:%d type:%d title:%d description:%d url:%d thumb_url:%d content_url:%d content_type:%d w:%@ h:%@ duration:%@ send_message:%@)", self.flags, (int)[self.pid length], (int)[self.type length], (int)[self.title length], (int)[self.pdescription length], (int)[self.url length], (int)[self.thumbUrl length], (int)[self.contentUrl length], (int)[self.contentType length], self.w, self.h, self.duration, self.sendMessage];
}

@end

@implementation Api62_BotInlineResult_botInlineMediaResult

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x17db940b serializeBlock:^bool (Api62_BotInlineResult_botInlineMediaResult *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.document data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.sendMessage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineMediaResult flags:%@ id:%d type:%d photo:%@ document:%@ title:%d description:%d send_message:%@)", self.flags, (int)[self.pid length], (int)[self.type length], self.photo, self.document, (int)[self.title length], (int)[self.pdescription length], self.sendMessage];
}

@end




@interface Api62_messages_BotCallbackAnswer ()

@property (nonatomic, strong) NSNumber * flags;

@end

@interface Api62_messages_BotCallbackAnswer_messages_getBotCallbackAnswer ()

@property (nonatomic, strong) Api62_InputPeer * peer;
@property (nonatomic, strong) NSNumber * msgId;
@property (nonatomic, strong) NSData * data;
@property (nonatomic, strong) NSNumber * gameId;

@end

@interface Api62_messages_BotCallbackAnswer_messages_botCallbackAnswer ()

@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSNumber * cacheTime;

@end

@implementation Api62_messages_BotCallbackAnswer

+ (Api62_messages_BotCallbackAnswer_messages_getBotCallbackAnswer *)messages_getBotCallbackAnswerWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer msgId:(NSNumber *)msgId data:(NSData *)data gameId:(NSNumber *)gameId
{
    Api62_messages_BotCallbackAnswer_messages_getBotCallbackAnswer *_object = [[Api62_messages_BotCallbackAnswer_messages_getBotCallbackAnswer alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peer = peer;
    _object.msgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:msgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.data = [Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.gameId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:gameId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_messages_BotCallbackAnswer_messages_botCallbackAnswer *)messages_botCallbackAnswerWithFlags:(NSNumber *)flags message:(NSString *)message url:(NSString *)url cacheTime:(NSNumber *)cacheTime
{
    Api62_messages_BotCallbackAnswer_messages_botCallbackAnswer *_object = [[Api62_messages_BotCallbackAnswer_messages_botCallbackAnswer alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.cacheTime = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cacheTime] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_BotCallbackAnswer_messages_getBotCallbackAnswer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6c996518 serializeBlock:^bool (Api62_messages_BotCallbackAnswer_messages_getBotCallbackAnswer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.msgId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.data data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.gameId data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.getBotCallbackAnswer flags:%@ peer:%@ msg_id:%@ data:%d game_id:%@)", self.flags, self.peer, self.msgId, (int)[self.data length], self.gameId];
}

@end

@implementation Api62_messages_BotCallbackAnswer_messages_botCallbackAnswer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x36585ea4 serializeBlock:^bool (Api62_messages_BotCallbackAnswer_messages_botCallbackAnswer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.cacheTime data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.botCallbackAnswer flags:%@ message:%d url:%d cache_time:%@)", self.flags, (int)[self.message length], (int)[self.url length], self.cacheTime];
}

@end




@interface Api62_messages_Chats ()

@property (nonatomic, strong) NSArray * chats;

@end

@interface Api62_messages_Chats_messages_chats ()

@end

@interface Api62_messages_Chats_messages_chatsSlice ()

@property (nonatomic, strong) NSNumber * count;

@end

@implementation Api62_messages_Chats

+ (Api62_messages_Chats_messages_chats *)messages_chatsWithChats:(NSArray *)chats
{
    Api62_messages_Chats_messages_chats *_object = [[Api62_messages_Chats_messages_chats alloc] init];
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    return _object;
}

+ (Api62_messages_Chats_messages_chatsSlice *)messages_chatsSliceWithCount:(NSNumber *)count chats:(NSArray *)chats
{
    Api62_messages_Chats_messages_chatsSlice *_object = [[Api62_messages_Chats_messages_chatsSlice alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    return _object;
}


@end

@implementation Api62_messages_Chats_messages_chats

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x64ff9fd5 serializeBlock:^bool (Api62_messages_Chats_messages_chats *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.chats chats:%@)", self.chats];
}

@end

@implementation Api62_messages_Chats_messages_chatsSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9cd81144 serializeBlock:^bool (Api62_messages_Chats_messages_chatsSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.chatsSlice count:%@ chats:%@)", self.count, self.chats];
}

@end




@interface Api62_contacts_MyLink ()

@end

@interface Api62_contacts_MyLink_contacts_myLinkEmpty ()

@end

@interface Api62_contacts_MyLink_contacts_myLinkRequested ()

@property (nonatomic, strong) Api62_Bool * contact;

@end

@interface Api62_contacts_MyLink_contacts_myLinkContact ()

@end

@implementation Api62_contacts_MyLink

+ (Api62_contacts_MyLink_contacts_myLinkEmpty *)contacts_myLinkEmpty
{
    Api62_contacts_MyLink_contacts_myLinkEmpty *_object = [[Api62_contacts_MyLink_contacts_myLinkEmpty alloc] init];
    return _object;
}

+ (Api62_contacts_MyLink_contacts_myLinkRequested *)contacts_myLinkRequestedWithContact:(Api62_Bool *)contact
{
    Api62_contacts_MyLink_contacts_myLinkRequested *_object = [[Api62_contacts_MyLink_contacts_myLinkRequested alloc] init];
    _object.contact = contact;
    return _object;
}

+ (Api62_contacts_MyLink_contacts_myLinkContact *)contacts_myLinkContact
{
    Api62_contacts_MyLink_contacts_myLinkContact *_object = [[Api62_contacts_MyLink_contacts_myLinkContact alloc] init];
    return _object;
}


@end

@implementation Api62_contacts_MyLink_contacts_myLinkEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd22a1c60 serializeBlock:^bool (__unused Api62_contacts_MyLink_contacts_myLinkEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.myLinkEmpty)"];
}

@end

@implementation Api62_contacts_MyLink_contacts_myLinkRequested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6c69efee serializeBlock:^bool (Api62_contacts_MyLink_contacts_myLinkRequested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.contact data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.myLinkRequested contact:%@)", self.contact];
}

@end

@implementation Api62_contacts_MyLink_contacts_myLinkContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc240ebd9 serializeBlock:^bool (__unused Api62_contacts_MyLink_contacts_myLinkContact *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.myLinkContact)"];
}

@end




@interface Api62_InputPrivacyRule ()

@end

@interface Api62_InputPrivacyRule_inputPrivacyValueAllowContacts ()

@end

@interface Api62_InputPrivacyRule_inputPrivacyValueAllowAll ()

@end

@interface Api62_InputPrivacyRule_inputPrivacyValueAllowUsers ()

@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_InputPrivacyRule_inputPrivacyValueDisallowContacts ()

@end

@interface Api62_InputPrivacyRule_inputPrivacyValueDisallowAll ()

@end

@interface Api62_InputPrivacyRule_inputPrivacyValueDisallowUsers ()

@property (nonatomic, strong) NSArray * users;

@end

@implementation Api62_InputPrivacyRule

+ (Api62_InputPrivacyRule_inputPrivacyValueAllowContacts *)inputPrivacyValueAllowContacts
{
    Api62_InputPrivacyRule_inputPrivacyValueAllowContacts *_object = [[Api62_InputPrivacyRule_inputPrivacyValueAllowContacts alloc] init];
    return _object;
}

+ (Api62_InputPrivacyRule_inputPrivacyValueAllowAll *)inputPrivacyValueAllowAll
{
    Api62_InputPrivacyRule_inputPrivacyValueAllowAll *_object = [[Api62_InputPrivacyRule_inputPrivacyValueAllowAll alloc] init];
    return _object;
}

+ (Api62_InputPrivacyRule_inputPrivacyValueAllowUsers *)inputPrivacyValueAllowUsersWithUsers:(NSArray *)users
{
    Api62_InputPrivacyRule_inputPrivacyValueAllowUsers *_object = [[Api62_InputPrivacyRule_inputPrivacyValueAllowUsers alloc] init];
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_InputPrivacyRule_inputPrivacyValueDisallowContacts *)inputPrivacyValueDisallowContacts
{
    Api62_InputPrivacyRule_inputPrivacyValueDisallowContacts *_object = [[Api62_InputPrivacyRule_inputPrivacyValueDisallowContacts alloc] init];
    return _object;
}

+ (Api62_InputPrivacyRule_inputPrivacyValueDisallowAll *)inputPrivacyValueDisallowAll
{
    Api62_InputPrivacyRule_inputPrivacyValueDisallowAll *_object = [[Api62_InputPrivacyRule_inputPrivacyValueDisallowAll alloc] init];
    return _object;
}

+ (Api62_InputPrivacyRule_inputPrivacyValueDisallowUsers *)inputPrivacyValueDisallowUsersWithUsers:(NSArray *)users
{
    Api62_InputPrivacyRule_inputPrivacyValueDisallowUsers *_object = [[Api62_InputPrivacyRule_inputPrivacyValueDisallowUsers alloc] init];
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_InputPrivacyRule_inputPrivacyValueAllowContacts

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd09e07b serializeBlock:^bool (__unused Api62_InputPrivacyRule_inputPrivacyValueAllowContacts *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyValueAllowContacts)"];
}

@end

@implementation Api62_InputPrivacyRule_inputPrivacyValueAllowAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x184b35ce serializeBlock:^bool (__unused Api62_InputPrivacyRule_inputPrivacyValueAllowAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyValueAllowAll)"];
}

@end

@implementation Api62_InputPrivacyRule_inputPrivacyValueAllowUsers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x131cc67f serializeBlock:^bool (Api62_InputPrivacyRule_inputPrivacyValueAllowUsers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyValueAllowUsers users:%@)", self.users];
}

@end

@implementation Api62_InputPrivacyRule_inputPrivacyValueDisallowContacts

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xba52007 serializeBlock:^bool (__unused Api62_InputPrivacyRule_inputPrivacyValueDisallowContacts *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyValueDisallowContacts)"];
}

@end

@implementation Api62_InputPrivacyRule_inputPrivacyValueDisallowAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd66b66c9 serializeBlock:^bool (__unused Api62_InputPrivacyRule_inputPrivacyValueDisallowAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyValueDisallowAll)"];
}

@end

@implementation Api62_InputPrivacyRule_inputPrivacyValueDisallowUsers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x90110467 serializeBlock:^bool (Api62_InputPrivacyRule_inputPrivacyValueDisallowUsers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyValueDisallowUsers users:%@)", self.users];
}

@end




@interface Api62_messages_DhConfig ()

@property (nonatomic, strong) NSData * random;

@end

@interface Api62_messages_DhConfig_messages_dhConfigNotModified ()

@end

@interface Api62_messages_DhConfig_messages_dhConfig ()

@property (nonatomic, strong) NSNumber * g;
@property (nonatomic, strong) NSData * p;
@property (nonatomic, strong) NSNumber * version;

@end

@implementation Api62_messages_DhConfig

+ (Api62_messages_DhConfig_messages_dhConfigNotModified *)messages_dhConfigNotModifiedWithRandom:(NSData *)random
{
    Api62_messages_DhConfig_messages_dhConfigNotModified *_object = [[Api62_messages_DhConfig_messages_dhConfigNotModified alloc] init];
    _object.random = [Api62__Serializer addSerializerToObject:[random copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}

+ (Api62_messages_DhConfig_messages_dhConfig *)messages_dhConfigWithG:(NSNumber *)g p:(NSData *)p version:(NSNumber *)version random:(NSData *)random
{
    Api62_messages_DhConfig_messages_dhConfig *_object = [[Api62_messages_DhConfig_messages_dhConfig alloc] init];
    _object.g = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:g] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.p = [Api62__Serializer addSerializerToObject:[p copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.random = [Api62__Serializer addSerializerToObject:[random copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_DhConfig_messages_dhConfigNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc0e24635 serializeBlock:^bool (Api62_messages_DhConfig_messages_dhConfigNotModified *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.random data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.dhConfigNotModified random:%d)", (int)[self.random length]];
}

@end

@implementation Api62_messages_DhConfig_messages_dhConfig

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2c221edd serializeBlock:^bool (Api62_messages_DhConfig_messages_dhConfig *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.g data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.p data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.random data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.dhConfig g:%@ p:%d version:%@ random:%d)", self.g, (int)[self.p length], self.version, (int)[self.random length]];
}

@end




@interface Api62_auth_ExportedAuthorization ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSData * bytes;

@end

@interface Api62_auth_ExportedAuthorization_auth_exportedAuthorization ()

@end

@implementation Api62_auth_ExportedAuthorization

+ (Api62_auth_ExportedAuthorization_auth_exportedAuthorization *)auth_exportedAuthorizationWithPid:(NSNumber *)pid bytes:(NSData *)bytes
{
    Api62_auth_ExportedAuthorization_auth_exportedAuthorization *_object = [[Api62_auth_ExportedAuthorization_auth_exportedAuthorization alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.bytes = [Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_auth_ExportedAuthorization_auth_exportedAuthorization

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xdf969c2d serializeBlock:^bool (Api62_auth_ExportedAuthorization_auth_exportedAuthorization *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.bytes data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.exportedAuthorization id:%@ bytes:%d)", self.pid, (int)[self.bytes length]];
}

@end




@interface Api62_ContactRequest ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ContactRequest_contactRequest ()

@end

@implementation Api62_ContactRequest

+ (Api62_ContactRequest_contactRequest *)contactRequestWithUserId:(NSNumber *)userId date:(NSNumber *)date
{
    Api62_ContactRequest_contactRequest *_object = [[Api62_ContactRequest_contactRequest alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ContactRequest_contactRequest

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x59f24214 serializeBlock:^bool (Api62_ContactRequest_contactRequest *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactRequest user_id:%@ date:%@)", self.userId, self.date];
}

@end




@interface Api62_messages_AffectedHistory ()

@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;
@property (nonatomic, strong) NSNumber * offset;

@end

@interface Api62_messages_AffectedHistory_messages_affectedHistory ()

@end

@implementation Api62_messages_AffectedHistory

+ (Api62_messages_AffectedHistory_messages_affectedHistory *)messages_affectedHistoryWithPts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount offset:(NSNumber *)offset
{
    Api62_messages_AffectedHistory_messages_affectedHistory *_object = [[Api62_messages_AffectedHistory_messages_affectedHistory alloc] init];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_AffectedHistory_messages_affectedHistory

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb45c69d1 serializeBlock:^bool (Api62_messages_AffectedHistory_messages_affectedHistory *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.affectedHistory pts:%@ pts_count:%@ offset:%@)", self.pts, self.ptsCount, self.offset];
}

@end




@interface Api62_account_PasswordInputSettings ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSData * pnewSalt;
@property (nonatomic, strong) NSData * pnewPasswordHash;
@property (nonatomic, strong) NSString * hint;
@property (nonatomic, strong) NSString * email;

@end

@interface Api62_account_PasswordInputSettings_account_passwordInputSettings ()

@end

@implementation Api62_account_PasswordInputSettings

+ (Api62_account_PasswordInputSettings_account_passwordInputSettings *)account_passwordInputSettingsWithFlags:(NSNumber *)flags pnewSalt:(NSData *)pnewSalt pnewPasswordHash:(NSData *)pnewPasswordHash hint:(NSString *)hint email:(NSString *)email
{
    Api62_account_PasswordInputSettings_account_passwordInputSettings *_object = [[Api62_account_PasswordInputSettings_account_passwordInputSettings alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pnewSalt = [Api62__Serializer addSerializerToObject:[pnewSalt copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.pnewPasswordHash = [Api62__Serializer addSerializerToObject:[pnewPasswordHash copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.hint = [Api62__Serializer addSerializerToObject:[hint copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.email = [Api62__Serializer addSerializerToObject:[email copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_account_PasswordInputSettings_account_passwordInputSettings

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x86916deb serializeBlock:^bool (Api62_account_PasswordInputSettings_account_passwordInputSettings *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.pnewSalt data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.pnewPasswordHash data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.hint data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.email data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.passwordInputSettings flags:%@ new_salt:%d new_password_hash:%d hint:%d email:%d)", self.flags, (int)[self.pnewSalt length], (int)[self.pnewPasswordHash length], (int)[self.hint length], (int)[self.email length]];
}

@end




@interface Api62_messages_MessageEditData ()

@end

@interface Api62_messages_MessageEditData_messages_messageEditData ()

@property (nonatomic, strong) NSNumber * flags;

@end

@interface Api62_messages_MessageEditData_messages_getMessageEditData ()

@property (nonatomic, strong) Api62_InputPeer * peer;
@property (nonatomic, strong) NSNumber * pid;

@end

@implementation Api62_messages_MessageEditData

+ (Api62_messages_MessageEditData_messages_messageEditData *)messages_messageEditDataWithFlags:(NSNumber *)flags
{
    Api62_messages_MessageEditData_messages_messageEditData *_object = [[Api62_messages_MessageEditData_messages_messageEditData alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_messages_MessageEditData_messages_getMessageEditData *)messages_getMessageEditDataWithPeer:(Api62_InputPeer *)peer pid:(NSNumber *)pid
{
    Api62_messages_MessageEditData_messages_getMessageEditData *_object = [[Api62_messages_MessageEditData_messages_getMessageEditData alloc] init];
    _object.peer = peer;
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_MessageEditData_messages_messageEditData

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x26b5dde6 serializeBlock:^bool (Api62_messages_MessageEditData_messages_messageEditData *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.messageEditData flags:%@)", self.flags];
}

@end

@implementation Api62_messages_MessageEditData_messages_getMessageEditData

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfda68d36 serializeBlock:^bool (Api62_messages_MessageEditData_messages_getMessageEditData *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.getMessageEditData peer:%@ id:%@)", self.peer, self.pid];
}

@end




@interface Api62_messages_ChatFull ()

@property (nonatomic, strong) Api62_ChatFull * fullChat;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_messages_ChatFull_messages_chatFull ()

@end

@implementation Api62_messages_ChatFull

+ (Api62_messages_ChatFull_messages_chatFull *)messages_chatFullWithFullChat:(Api62_ChatFull *)fullChat chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_ChatFull_messages_chatFull *_object = [[Api62_messages_ChatFull_messages_chatFull alloc] init];
    _object.fullChat = fullChat;
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_messages_ChatFull_messages_chatFull

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe5d7d19c serializeBlock:^bool (Api62_messages_ChatFull_messages_chatFull *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.fullChat data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.chatFull full_chat:%@ chats:%@ users:%@)", self.fullChat, self.chats, self.users];
}

@end




@interface Api62_contacts_ForeignLink ()

@end

@interface Api62_contacts_ForeignLink_contacts_foreignLinkUnknown ()

@end

@interface Api62_contacts_ForeignLink_contacts_foreignLinkRequested ()

@property (nonatomic, strong) Api62_Bool * hasPhone;

@end

@interface Api62_contacts_ForeignLink_contacts_foreignLinkMutual ()

@end

@implementation Api62_contacts_ForeignLink

+ (Api62_contacts_ForeignLink_contacts_foreignLinkUnknown *)contacts_foreignLinkUnknown
{
    Api62_contacts_ForeignLink_contacts_foreignLinkUnknown *_object = [[Api62_contacts_ForeignLink_contacts_foreignLinkUnknown alloc] init];
    return _object;
}

+ (Api62_contacts_ForeignLink_contacts_foreignLinkRequested *)contacts_foreignLinkRequestedWithHasPhone:(Api62_Bool *)hasPhone
{
    Api62_contacts_ForeignLink_contacts_foreignLinkRequested *_object = [[Api62_contacts_ForeignLink_contacts_foreignLinkRequested alloc] init];
    _object.hasPhone = hasPhone;
    return _object;
}

+ (Api62_contacts_ForeignLink_contacts_foreignLinkMutual *)contacts_foreignLinkMutual
{
    Api62_contacts_ForeignLink_contacts_foreignLinkMutual *_object = [[Api62_contacts_ForeignLink_contacts_foreignLinkMutual alloc] init];
    return _object;
}


@end

@implementation Api62_contacts_ForeignLink_contacts_foreignLinkUnknown

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x133421f8 serializeBlock:^bool (__unused Api62_contacts_ForeignLink_contacts_foreignLinkUnknown *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.foreignLinkUnknown)"];
}

@end

@implementation Api62_contacts_ForeignLink_contacts_foreignLinkRequested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa7801f47 serializeBlock:^bool (Api62_contacts_ForeignLink_contacts_foreignLinkRequested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.hasPhone data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.foreignLinkRequested has_phone:%@)", self.hasPhone];
}

@end

@implementation Api62_contacts_ForeignLink_contacts_foreignLinkMutual

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1bea8ce1 serializeBlock:^bool (__unused Api62_contacts_ForeignLink_contacts_foreignLinkMutual *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.foreignLinkMutual)"];
}

@end




@interface Api62_help_TermsOfService ()

@end

@interface Api62_help_TermsOfService_help_termsOfService ()

@property (nonatomic, strong) NSString * text;

@end

@interface Api62_help_TermsOfService_help_getTermsOfService ()

@end

@implementation Api62_help_TermsOfService

+ (Api62_help_TermsOfService_help_termsOfService *)help_termsOfServiceWithText:(NSString *)text
{
    Api62_help_TermsOfService_help_termsOfService *_object = [[Api62_help_TermsOfService_help_termsOfService alloc] init];
    _object.text = [Api62__Serializer addSerializerToObject:[text copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_help_TermsOfService_help_getTermsOfService *)help_getTermsOfService
{
    Api62_help_TermsOfService_help_getTermsOfService *_object = [[Api62_help_TermsOfService_help_getTermsOfService alloc] init];
    return _object;
}


@end

@implementation Api62_help_TermsOfService_help_termsOfService

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf1ee3e90 serializeBlock:^bool (Api62_help_TermsOfService_help_termsOfService *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.text data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.termsOfService text:%d)", (int)[self.text length]];
}

@end

@implementation Api62_help_TermsOfService_help_getTermsOfService

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x350170f3 serializeBlock:^bool (__unused Api62_help_TermsOfService_help_getTermsOfService *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.getTermsOfService)"];
}

@end




@interface Api62_InputEncryptedChat ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputEncryptedChat_inputEncryptedChat ()

@end

@implementation Api62_InputEncryptedChat

+ (Api62_InputEncryptedChat_inputEncryptedChat *)inputEncryptedChatWithChatId:(NSNumber *)chatId accessHash:(NSNumber *)accessHash
{
    Api62_InputEncryptedChat_inputEncryptedChat *_object = [[Api62_InputEncryptedChat_inputEncryptedChat alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputEncryptedChat_inputEncryptedChat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf141b5e1 serializeBlock:^bool (Api62_InputEncryptedChat_inputEncryptedChat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputEncryptedChat chat_id:%@ access_hash:%@)", self.chatId, self.accessHash];
}

@end




@interface Api62_DraftMessage ()

@end

@interface Api62_DraftMessage_draftMessageEmpty ()

@end

@interface Api62_DraftMessage_draftMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * replyToMsgId;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) NSArray * entities;
@property (nonatomic, strong) NSNumber * date;

@end

@implementation Api62_DraftMessage

+ (Api62_DraftMessage_draftMessageEmpty *)draftMessageEmpty
{
    Api62_DraftMessage_draftMessageEmpty *_object = [[Api62_DraftMessage_draftMessageEmpty alloc] init];
    return _object;
}

+ (Api62_DraftMessage_draftMessage *)draftMessageWithFlags:(NSNumber *)flags replyToMsgId:(NSNumber *)replyToMsgId message:(NSString *)message entities:(NSArray *)entities date:(NSNumber *)date
{
    Api62_DraftMessage_draftMessage *_object = [[Api62_DraftMessage_draftMessage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.replyToMsgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_DraftMessage_draftMessageEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xba4baec5 serializeBlock:^bool (__unused Api62_DraftMessage_draftMessageEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(draftMessageEmpty)"];
}

@end

@implementation Api62_DraftMessage_draftMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfd8e711f serializeBlock:^bool (Api62_DraftMessage_draftMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.replyToMsgId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(draftMessage flags:%@ reply_to_msg_id:%@ message:%d entities:%@ date:%@)", self.flags, self.replyToMsgId, (int)[self.message length], self.entities, self.date];
}

@end




@interface Api62_DisabledFeature ()

@property (nonatomic, strong) NSString * feature;
@property (nonatomic, strong) NSString * nDescription;

@end

@interface Api62_DisabledFeature_disabledFeature ()

@end

@implementation Api62_DisabledFeature

+ (Api62_DisabledFeature_disabledFeature *)disabledFeatureWithFeature:(NSString *)feature nDescription:(NSString *)nDescription
{
    Api62_DisabledFeature_disabledFeature *_object = [[Api62_DisabledFeature_disabledFeature alloc] init];
    _object.feature = [Api62__Serializer addSerializerToObject:[feature copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.nDescription = [Api62__Serializer addSerializerToObject:[nDescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_DisabledFeature_disabledFeature

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xae636f24 serializeBlock:^bool (Api62_DisabledFeature_disabledFeature *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.feature data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.nDescription data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(disabledFeature feature:%d n_description:%d)", (int)[self.feature length], (int)[self.nDescription length]];
}

@end




@interface Api62_EncryptedFile ()

@end

@interface Api62_EncryptedFile_encryptedFileEmpty ()

@end

@interface Api62_EncryptedFile_encryptedFile ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * size;
@property (nonatomic, strong) NSNumber * dcId;
@property (nonatomic, strong) NSNumber * keyFingerprint;

@end

@implementation Api62_EncryptedFile

+ (Api62_EncryptedFile_encryptedFileEmpty *)encryptedFileEmpty
{
    Api62_EncryptedFile_encryptedFileEmpty *_object = [[Api62_EncryptedFile_encryptedFileEmpty alloc] init];
    return _object;
}

+ (Api62_EncryptedFile_encryptedFile *)encryptedFileWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash size:(NSNumber *)size dcId:(NSNumber *)dcId keyFingerprint:(NSNumber *)keyFingerprint
{
    Api62_EncryptedFile_encryptedFile *_object = [[Api62_EncryptedFile_encryptedFile alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.size = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:size] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.dcId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dcId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.keyFingerprint = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_EncryptedFile_encryptedFileEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc21f497e serializeBlock:^bool (__unused Api62_EncryptedFile_encryptedFileEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedFileEmpty)"];
}

@end

@implementation Api62_EncryptedFile_encryptedFile

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4a70994c serializeBlock:^bool (Api62_EncryptedFile_encryptedFile *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.size data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.dcId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.keyFingerprint data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedFile id:%@ access_hash:%@ size:%@ dc_id:%@ key_fingerprint:%@)", self.pid, self.accessHash, self.size, self.dcId, self.keyFingerprint];
}

@end




@interface Api62_NotifyPeer ()

@end

@interface Api62_NotifyPeer_notifyPeer ()

@property (nonatomic, strong) Api62_Peer * peer;

@end

@interface Api62_NotifyPeer_notifyUsers ()

@end

@interface Api62_NotifyPeer_notifyChats ()

@end

@interface Api62_NotifyPeer_notifyAll ()

@end

@implementation Api62_NotifyPeer

+ (Api62_NotifyPeer_notifyPeer *)notifyPeerWithPeer:(Api62_Peer *)peer
{
    Api62_NotifyPeer_notifyPeer *_object = [[Api62_NotifyPeer_notifyPeer alloc] init];
    _object.peer = peer;
    return _object;
}

+ (Api62_NotifyPeer_notifyUsers *)notifyUsers
{
    Api62_NotifyPeer_notifyUsers *_object = [[Api62_NotifyPeer_notifyUsers alloc] init];
    return _object;
}

+ (Api62_NotifyPeer_notifyChats *)notifyChats
{
    Api62_NotifyPeer_notifyChats *_object = [[Api62_NotifyPeer_notifyChats alloc] init];
    return _object;
}

+ (Api62_NotifyPeer_notifyAll *)notifyAll
{
    Api62_NotifyPeer_notifyAll *_object = [[Api62_NotifyPeer_notifyAll alloc] init];
    return _object;
}


@end

@implementation Api62_NotifyPeer_notifyPeer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9fd40bd8 serializeBlock:^bool (Api62_NotifyPeer_notifyPeer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(notifyPeer peer:%@)", self.peer];
}

@end

@implementation Api62_NotifyPeer_notifyUsers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb4c83b4c serializeBlock:^bool (__unused Api62_NotifyPeer_notifyUsers *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(notifyUsers)"];
}

@end

@implementation Api62_NotifyPeer_notifyChats

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc007cec3 serializeBlock:^bool (__unused Api62_NotifyPeer_notifyChats *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(notifyChats)"];
}

@end

@implementation Api62_NotifyPeer_notifyAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x74d07c60 serializeBlock:^bool (__unused Api62_NotifyPeer_notifyAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(notifyAll)"];
}

@end




@interface Api62_InputPrivacyKey ()

@end

@interface Api62_InputPrivacyKey_inputPrivacyKeyStatusTimestamp ()

@end

@interface Api62_InputPrivacyKey_inputPrivacyKeyChatInvite ()

@end

@implementation Api62_InputPrivacyKey

+ (Api62_InputPrivacyKey_inputPrivacyKeyStatusTimestamp *)inputPrivacyKeyStatusTimestamp
{
    Api62_InputPrivacyKey_inputPrivacyKeyStatusTimestamp *_object = [[Api62_InputPrivacyKey_inputPrivacyKeyStatusTimestamp alloc] init];
    return _object;
}

+ (Api62_InputPrivacyKey_inputPrivacyKeyChatInvite *)inputPrivacyKeyChatInvite
{
    Api62_InputPrivacyKey_inputPrivacyKeyChatInvite *_object = [[Api62_InputPrivacyKey_inputPrivacyKeyChatInvite alloc] init];
    return _object;
}


@end

@implementation Api62_InputPrivacyKey_inputPrivacyKeyStatusTimestamp

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4f96cb18 serializeBlock:^bool (__unused Api62_InputPrivacyKey_inputPrivacyKeyStatusTimestamp *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyKeyStatusTimestamp)"];
}

@end

@implementation Api62_InputPrivacyKey_inputPrivacyKeyChatInvite

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbdfb0426 serializeBlock:^bool (__unused Api62_InputPrivacyKey_inputPrivacyKeyChatInvite *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPrivacyKeyChatInvite)"];
}

@end




@interface Api62_ReplyMarkup ()

@end

@interface Api62_ReplyMarkup_replyKeyboardHide ()

@property (nonatomic, strong) NSNumber * flags;

@end

@interface Api62_ReplyMarkup_replyKeyboardForceReply ()

@property (nonatomic, strong) NSNumber * flags;

@end

@interface Api62_ReplyMarkup_replyKeyboardMarkup ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSArray * rows;

@end

@interface Api62_ReplyMarkup_replyInlineMarkup ()

@property (nonatomic, strong) NSArray * rows;

@end

@implementation Api62_ReplyMarkup

+ (Api62_ReplyMarkup_replyKeyboardHide *)replyKeyboardHideWithFlags:(NSNumber *)flags
{
    Api62_ReplyMarkup_replyKeyboardHide *_object = [[Api62_ReplyMarkup_replyKeyboardHide alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ReplyMarkup_replyKeyboardForceReply *)replyKeyboardForceReplyWithFlags:(NSNumber *)flags
{
    Api62_ReplyMarkup_replyKeyboardForceReply *_object = [[Api62_ReplyMarkup_replyKeyboardForceReply alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_ReplyMarkup_replyKeyboardMarkup *)replyKeyboardMarkupWithFlags:(NSNumber *)flags rows:(NSArray *)rows
{
    Api62_ReplyMarkup_replyKeyboardMarkup *_object = [[Api62_ReplyMarkup_replyKeyboardMarkup alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.rows = 
({
NSMutableArray *rows_copy = [[NSMutableArray alloc] initWithCapacity:rows.count];
for (id rows_item in rows)
{
    [rows_copy addObject:rows_item];
}
id rows_result = [Api62__Serializer addSerializerToObject:rows_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; rows_result;});
    return _object;
}

+ (Api62_ReplyMarkup_replyInlineMarkup *)replyInlineMarkupWithRows:(NSArray *)rows
{
    Api62_ReplyMarkup_replyInlineMarkup *_object = [[Api62_ReplyMarkup_replyInlineMarkup alloc] init];
    _object.rows = 
({
NSMutableArray *rows_copy = [[NSMutableArray alloc] initWithCapacity:rows.count];
for (id rows_item in rows)
{
    [rows_copy addObject:rows_item];
}
id rows_result = [Api62__Serializer addSerializerToObject:rows_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; rows_result;});
    return _object;
}


@end

@implementation Api62_ReplyMarkup_replyKeyboardHide

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa03e5b85 serializeBlock:^bool (Api62_ReplyMarkup_replyKeyboardHide *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(replyKeyboardHide flags:%@)", self.flags];
}

@end

@implementation Api62_ReplyMarkup_replyKeyboardForceReply

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf4108aa0 serializeBlock:^bool (Api62_ReplyMarkup_replyKeyboardForceReply *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(replyKeyboardForceReply flags:%@)", self.flags];
}

@end

@implementation Api62_ReplyMarkup_replyKeyboardMarkup

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3502758c serializeBlock:^bool (Api62_ReplyMarkup_replyKeyboardMarkup *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.rows data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(replyKeyboardMarkup flags:%@ rows:%@)", self.flags, self.rows];
}

@end

@implementation Api62_ReplyMarkup_replyInlineMarkup

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x48a30254 serializeBlock:^bool (Api62_ReplyMarkup_replyInlineMarkup *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.rows data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(replyInlineMarkup rows:%@)", self.rows];
}

@end




@interface Api62_HighScore ()

@property (nonatomic, strong) NSNumber * pos;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * score;

@end

@interface Api62_HighScore_highScore ()

@end

@implementation Api62_HighScore

+ (Api62_HighScore_highScore *)highScoreWithPos:(NSNumber *)pos userId:(NSNumber *)userId score:(NSNumber *)score
{
    Api62_HighScore_highScore *_object = [[Api62_HighScore_highScore alloc] init];
    _object.pos = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pos] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.score = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:score] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_HighScore_highScore

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x58fffcd0 serializeBlock:^bool (Api62_HighScore_highScore *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pos data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.score data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(highScore pos:%@ user_id:%@ score:%@)", self.pos, self.userId, self.score];
}

@end




@interface Api62_TopPeer ()

@property (nonatomic, strong) Api62_Peer * peer;
@property (nonatomic, strong) NSNumber * rating;

@end

@interface Api62_TopPeer_topPeer ()

@end

@implementation Api62_TopPeer

+ (Api62_TopPeer_topPeer *)topPeerWithPeer:(Api62_Peer *)peer rating:(NSNumber *)rating
{
    Api62_TopPeer_topPeer *_object = [[Api62_TopPeer_topPeer alloc] init];
    _object.peer = peer;
    _object.rating = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:rating] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    return _object;
}


@end

@implementation Api62_TopPeer_topPeer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xedcdc05b serializeBlock:^bool (Api62_TopPeer_topPeer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.rating data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeer peer:%@ rating:%@)", self.peer, self.rating];
}

@end




@interface Api62_contacts_Link ()

@property (nonatomic, strong) Api62_ContactLink * myLink;
@property (nonatomic, strong) Api62_ContactLink * foreignLink;
@property (nonatomic, strong) Api62_User * user;

@end

@interface Api62_contacts_Link_contacts_link ()

@end

@implementation Api62_contacts_Link

+ (Api62_contacts_Link_contacts_link *)contacts_linkWithMyLink:(Api62_ContactLink *)myLink foreignLink:(Api62_ContactLink *)foreignLink user:(Api62_User *)user
{
    Api62_contacts_Link_contacts_link *_object = [[Api62_contacts_Link_contacts_link alloc] init];
    _object.myLink = myLink;
    _object.foreignLink = foreignLink;
    _object.user = user;
    return _object;
}


@end

@implementation Api62_contacts_Link_contacts_link

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3ace484c serializeBlock:^bool (Api62_contacts_Link_contacts_link *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.myLink data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.foreignLink data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.user data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.link my_link:%@ foreign_link:%@ user:%@)", self.myLink, self.foreignLink, self.user];
}

@end




@interface Api62_ContactBlocked ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_ContactBlocked_contactBlocked ()

@end

@implementation Api62_ContactBlocked

+ (Api62_ContactBlocked_contactBlocked *)contactBlockedWithUserId:(NSNumber *)userId date:(NSNumber *)date
{
    Api62_ContactBlocked_contactBlocked *_object = [[Api62_ContactBlocked_contactBlocked alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ContactBlocked_contactBlocked

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x561bc879 serializeBlock:^bool (Api62_ContactBlocked_contactBlocked *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactBlocked user_id:%@ date:%@)", self.userId, self.date];
}

@end




@interface Api62_auth_CheckedPhone ()

@property (nonatomic, strong) Api62_Bool * phoneRegistered;

@end

@interface Api62_auth_CheckedPhone_auth_checkedPhone ()

@end

@implementation Api62_auth_CheckedPhone

+ (Api62_auth_CheckedPhone_auth_checkedPhone *)auth_checkedPhoneWithPhoneRegistered:(Api62_Bool *)phoneRegistered
{
    Api62_auth_CheckedPhone_auth_checkedPhone *_object = [[Api62_auth_CheckedPhone_auth_checkedPhone alloc] init];
    _object.phoneRegistered = phoneRegistered;
    return _object;
}


@end

@implementation Api62_auth_CheckedPhone_auth_checkedPhone

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x811ea28e serializeBlock:^bool (Api62_auth_CheckedPhone_auth_checkedPhone *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneRegistered data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.checkedPhone phone_registered:%@)", self.phoneRegistered];
}

@end




@interface Api62_InputUser ()

@end

@interface Api62_InputUser_inputUserEmpty ()

@end

@interface Api62_InputUser_inputUserSelf ()

@end

@interface Api62_InputUser_inputUser ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@implementation Api62_InputUser

+ (Api62_InputUser_inputUserEmpty *)inputUserEmpty
{
    Api62_InputUser_inputUserEmpty *_object = [[Api62_InputUser_inputUserEmpty alloc] init];
    return _object;
}

+ (Api62_InputUser_inputUserSelf *)inputUserSelf
{
    Api62_InputUser_inputUserSelf *_object = [[Api62_InputUser_inputUserSelf alloc] init];
    return _object;
}

+ (Api62_InputUser_inputUser *)inputUserWithUserId:(NSNumber *)userId accessHash:(NSNumber *)accessHash
{
    Api62_InputUser_inputUser *_object = [[Api62_InputUser_inputUser alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputUser_inputUserEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb98886cf serializeBlock:^bool (__unused Api62_InputUser_inputUserEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputUserEmpty)"];
}

@end

@implementation Api62_InputUser_inputUserSelf

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf7c1b13f serializeBlock:^bool (__unused Api62_InputUser_inputUserSelf *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputUserSelf)"];
}

@end

@implementation Api62_InputUser_inputUser

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd8292816 serializeBlock:^bool (Api62_InputUser_inputUser *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputUser user_id:%@ access_hash:%@)", self.userId, self.accessHash];
}

@end




@interface Api62_SchemeType ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * predicate;
@property (nonatomic, strong) NSArray * params;
@property (nonatomic, strong) NSString * type;

@end

@interface Api62_SchemeType_schemeType ()

@end

@implementation Api62_SchemeType

+ (Api62_SchemeType_schemeType *)schemeTypeWithPid:(NSNumber *)pid predicate:(NSString *)predicate params:(NSArray *)params type:(NSString *)type
{
    Api62_SchemeType_schemeType *_object = [[Api62_SchemeType_schemeType alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.predicate = [Api62__Serializer addSerializerToObject:[predicate copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.params = 
({
NSMutableArray *params_copy = [[NSMutableArray alloc] initWithCapacity:params.count];
for (id params_item in params)
{
    [params_copy addObject:params_item];
}
id params_result = [Api62__Serializer addSerializerToObject:params_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; params_result;});
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_SchemeType_schemeType

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa8e1e989 serializeBlock:^bool (Api62_SchemeType_schemeType *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.predicate data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.params data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(schemeType id:%@ predicate:%d params:%@ type:%d)", self.pid, (int)[self.predicate length], self.params, (int)[self.type length]];
}

@end




@interface Api62_Page ()

@property (nonatomic, strong) NSArray * blocks;
@property (nonatomic, strong) NSArray * photos;
@property (nonatomic, strong) NSArray * videos;

@end

@interface Api62_Page_pagePart ()

@end

@interface Api62_Page_pageFull ()

@end

@implementation Api62_Page

+ (Api62_Page_pagePart *)pagePartWithBlocks:(NSArray *)blocks photos:(NSArray *)photos videos:(NSArray *)videos
{
    Api62_Page_pagePart *_object = [[Api62_Page_pagePart alloc] init];
    _object.blocks = 
({
NSMutableArray *blocks_copy = [[NSMutableArray alloc] initWithCapacity:blocks.count];
for (id blocks_item in blocks)
{
    [blocks_copy addObject:blocks_item];
}
id blocks_result = [Api62__Serializer addSerializerToObject:blocks_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; blocks_result;});
    _object.photos = 
({
NSMutableArray *photos_copy = [[NSMutableArray alloc] initWithCapacity:photos.count];
for (id photos_item in photos)
{
    [photos_copy addObject:photos_item];
}
id photos_result = [Api62__Serializer addSerializerToObject:photos_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; photos_result;});
    _object.videos = 
({
NSMutableArray *videos_copy = [[NSMutableArray alloc] initWithCapacity:videos.count];
for (id videos_item in videos)
{
    [videos_copy addObject:videos_item];
}
id videos_result = [Api62__Serializer addSerializerToObject:videos_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; videos_result;});
    return _object;
}

+ (Api62_Page_pageFull *)pageFullWithBlocks:(NSArray *)blocks photos:(NSArray *)photos videos:(NSArray *)videos
{
    Api62_Page_pageFull *_object = [[Api62_Page_pageFull alloc] init];
    _object.blocks = 
({
NSMutableArray *blocks_copy = [[NSMutableArray alloc] initWithCapacity:blocks.count];
for (id blocks_item in blocks)
{
    [blocks_copy addObject:blocks_item];
}
id blocks_result = [Api62__Serializer addSerializerToObject:blocks_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; blocks_result;});
    _object.photos = 
({
NSMutableArray *photos_copy = [[NSMutableArray alloc] initWithCapacity:photos.count];
for (id photos_item in photos)
{
    [photos_copy addObject:photos_item];
}
id photos_result = [Api62__Serializer addSerializerToObject:photos_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; photos_result;});
    _object.videos = 
({
NSMutableArray *videos_copy = [[NSMutableArray alloc] initWithCapacity:videos.count];
for (id videos_item in videos)
{
    [videos_copy addObject:videos_item];
}
id videos_result = [Api62__Serializer addSerializerToObject:videos_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; videos_result;});
    return _object;
}


@end

@implementation Api62_Page_pagePart

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8dee6c44 serializeBlock:^bool (Api62_Page_pagePart *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.blocks data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.photos data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.videos data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pagePart blocks:%@ photos:%@ videos:%@)", self.blocks, self.photos, self.videos];
}

@end

@implementation Api62_Page_pageFull

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd7a19d69 serializeBlock:^bool (Api62_Page_pageFull *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.blocks data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.photos data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.videos data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(pageFull blocks:%@ photos:%@ videos:%@)", self.blocks, self.photos, self.videos];
}

@end




@interface Api62_upload_File ()

@property (nonatomic, strong) Api62_storage_FileType * type;
@property (nonatomic, strong) NSNumber * mtime;
@property (nonatomic, strong) NSData * bytes;

@end

@interface Api62_upload_File_upload_file ()

@end

@implementation Api62_upload_File

+ (Api62_upload_File_upload_file *)upload_fileWithType:(Api62_storage_FileType *)type mtime:(NSNumber *)mtime bytes:(NSData *)bytes
{
    Api62_upload_File_upload_file *_object = [[Api62_upload_File_upload_file alloc] init];
    _object.type = type;
    _object.mtime = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:mtime] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.bytes = [Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_upload_File_upload_file

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x96a18d5 serializeBlock:^bool (Api62_upload_File_upload_file *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.type data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.mtime data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.bytes data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(upload.file type:%@ mtime:%@ bytes:%d)", self.type, self.mtime, (int)[self.bytes length]];
}

@end




@interface Api62_MessageRange ()

@property (nonatomic, strong) NSNumber * minId;
@property (nonatomic, strong) NSNumber * maxId;

@end

@interface Api62_MessageRange_messageRange ()

@end

@implementation Api62_MessageRange

+ (Api62_MessageRange_messageRange *)messageRangeWithMinId:(NSNumber *)minId maxId:(NSNumber *)maxId
{
    Api62_MessageRange_messageRange *_object = [[Api62_MessageRange_messageRange alloc] init];
    _object.minId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:minId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.maxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_MessageRange_messageRange

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xae30253 serializeBlock:^bool (Api62_MessageRange_messageRange *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.minId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.maxId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageRange min_id:%@ max_id:%@)", self.minId, self.maxId];
}

@end




@interface Api62_messages_StickerSetInstallResult ()

@end

@interface Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultSuccess ()

@end

@interface Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultArchive ()

@property (nonatomic, strong) NSArray * sets;

@end

@implementation Api62_messages_StickerSetInstallResult

+ (Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultSuccess *)messages_stickerSetInstallResultSuccess
{
    Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultSuccess *_object = [[Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultSuccess alloc] init];
    return _object;
}

+ (Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultArchive *)messages_stickerSetInstallResultArchiveWithSets:(NSArray *)sets
{
    Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultArchive *_object = [[Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultArchive alloc] init];
    _object.sets = 
({
NSMutableArray *sets_copy = [[NSMutableArray alloc] initWithCapacity:sets.count];
for (id sets_item in sets)
{
    [sets_copy addObject:sets_item];
}
id sets_result = [Api62__Serializer addSerializerToObject:sets_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sets_result;});
    return _object;
}


@end

@implementation Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultSuccess

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x38641628 serializeBlock:^bool (__unused Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultSuccess *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.stickerSetInstallResultSuccess)"];
}

@end

@implementation Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultArchive

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x35e410a8 serializeBlock:^bool (Api62_messages_StickerSetInstallResult_messages_stickerSetInstallResultArchive *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.sets data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.stickerSetInstallResultArchive sets:%@)", self.sets];
}

@end




@interface Api62_Config ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * expires;
@property (nonatomic, strong) Api62_Bool * testMode;
@property (nonatomic, strong) NSNumber * thisDc;
@property (nonatomic, strong) NSArray * dcOptions;
@property (nonatomic, strong) NSNumber * chatSizeMax;
@property (nonatomic, strong) NSNumber * megagroupSizeMax;
@property (nonatomic, strong) NSNumber * forwardedCountMax;
@property (nonatomic, strong) NSNumber * onlineUpdatePeriodMs;
@property (nonatomic, strong) NSNumber * offlineBlurTimeoutMs;
@property (nonatomic, strong) NSNumber * offlineIdleTimeoutMs;
@property (nonatomic, strong) NSNumber * onlineCloudTimeoutMs;
@property (nonatomic, strong) NSNumber * notifyCloudDelayMs;
@property (nonatomic, strong) NSNumber * notifyDefaultDelayMs;
@property (nonatomic, strong) NSNumber * chatBigSize;
@property (nonatomic, strong) NSNumber * pushChatPeriodMs;
@property (nonatomic, strong) NSNumber * pushChatLimit;
@property (nonatomic, strong) NSNumber * savedGifsLimit;
@property (nonatomic, strong) NSNumber * editTimeLimit;
@property (nonatomic, strong) NSNumber * ratingEDecay;
@property (nonatomic, strong) NSNumber * stickersRecentLimit;
@property (nonatomic, strong) NSNumber * tmpSessions;
@property (nonatomic, strong) NSNumber * pinnedDialogsCountMax;
@property (nonatomic, strong) NSNumber * callReceiveTimeoutMs;
@property (nonatomic, strong) NSNumber * callRingTimeoutMs;
@property (nonatomic, strong) NSNumber * callConnectTimeoutMs;
@property (nonatomic, strong) NSNumber * callPacketTimeoutMs;
@property (nonatomic, strong) NSArray * disabledFeatures;

@end

@interface Api62_Config_config ()

@end

@implementation Api62_Config

+ (Api62_Config_config *)configWithFlags:(NSNumber *)flags date:(NSNumber *)date expires:(NSNumber *)expires testMode:(Api62_Bool *)testMode thisDc:(NSNumber *)thisDc dcOptions:(NSArray *)dcOptions chatSizeMax:(NSNumber *)chatSizeMax megagroupSizeMax:(NSNumber *)megagroupSizeMax forwardedCountMax:(NSNumber *)forwardedCountMax onlineUpdatePeriodMs:(NSNumber *)onlineUpdatePeriodMs offlineBlurTimeoutMs:(NSNumber *)offlineBlurTimeoutMs offlineIdleTimeoutMs:(NSNumber *)offlineIdleTimeoutMs onlineCloudTimeoutMs:(NSNumber *)onlineCloudTimeoutMs notifyCloudDelayMs:(NSNumber *)notifyCloudDelayMs notifyDefaultDelayMs:(NSNumber *)notifyDefaultDelayMs chatBigSize:(NSNumber *)chatBigSize pushChatPeriodMs:(NSNumber *)pushChatPeriodMs pushChatLimit:(NSNumber *)pushChatLimit savedGifsLimit:(NSNumber *)savedGifsLimit editTimeLimit:(NSNumber *)editTimeLimit ratingEDecay:(NSNumber *)ratingEDecay stickersRecentLimit:(NSNumber *)stickersRecentLimit tmpSessions:(NSNumber *)tmpSessions pinnedDialogsCountMax:(NSNumber *)pinnedDialogsCountMax callReceiveTimeoutMs:(NSNumber *)callReceiveTimeoutMs callRingTimeoutMs:(NSNumber *)callRingTimeoutMs callConnectTimeoutMs:(NSNumber *)callConnectTimeoutMs callPacketTimeoutMs:(NSNumber *)callPacketTimeoutMs disabledFeatures:(NSArray *)disabledFeatures
{
    Api62_Config_config *_object = [[Api62_Config_config alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.expires = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:expires] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.testMode = testMode;
    _object.thisDc = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:thisDc] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.dcOptions = 
({
NSMutableArray *dcOptions_copy = [[NSMutableArray alloc] initWithCapacity:dcOptions.count];
for (id dcOptions_item in dcOptions)
{
    [dcOptions_copy addObject:dcOptions_item];
}
id dcOptions_result = [Api62__Serializer addSerializerToObject:dcOptions_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; dcOptions_result;});
    _object.chatSizeMax = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatSizeMax] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.megagroupSizeMax = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:megagroupSizeMax] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.forwardedCountMax = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:forwardedCountMax] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.onlineUpdatePeriodMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:onlineUpdatePeriodMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.offlineBlurTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offlineBlurTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.offlineIdleTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offlineIdleTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.onlineCloudTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:onlineCloudTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.notifyCloudDelayMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:notifyCloudDelayMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.notifyDefaultDelayMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:notifyDefaultDelayMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.chatBigSize = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatBigSize] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pushChatPeriodMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pushChatPeriodMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pushChatLimit = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pushChatLimit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.savedGifsLimit = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:savedGifsLimit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.editTimeLimit = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:editTimeLimit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ratingEDecay = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ratingEDecay] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.stickersRecentLimit = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:stickersRecentLimit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.tmpSessions = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:tmpSessions] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pinnedDialogsCountMax = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pinnedDialogsCountMax] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.callReceiveTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:callReceiveTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.callRingTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:callRingTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.callConnectTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:callConnectTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.callPacketTimeoutMs = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:callPacketTimeoutMs] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.disabledFeatures = 
({
NSMutableArray *disabledFeatures_copy = [[NSMutableArray alloc] initWithCapacity:disabledFeatures.count];
for (id disabledFeatures_item in disabledFeatures)
{
    [disabledFeatures_copy addObject:disabledFeatures_item];
}
id disabledFeatures_result = [Api62__Serializer addSerializerToObject:disabledFeatures_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; disabledFeatures_result;});
    return _object;
}


@end

@implementation Api62_Config_config

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3af6fb5f serializeBlock:^bool (Api62_Config_config *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.expires data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.testMode data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.thisDc data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.dcOptions data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chatSizeMax data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.megagroupSizeMax data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.forwardedCountMax data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.onlineUpdatePeriodMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.offlineBlurTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.offlineIdleTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.onlineCloudTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.notifyCloudDelayMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.notifyDefaultDelayMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatBigSize data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pushChatPeriodMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pushChatLimit data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.savedGifsLimit data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.editTimeLimit data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ratingEDecay data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.stickersRecentLimit data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.tmpSessions data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.pinnedDialogsCountMax data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.callReceiveTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.callRingTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.callConnectTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.callPacketTimeoutMs data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.disabledFeatures data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(config flags:%@ date:%@ expires:%@ test_mode:%@ this_dc:%@ dc_options:%@ chat_size_max:%@ megagroup_size_max:%@ forwarded_count_max:%@ online_update_period_ms:%@ offline_blur_timeout_ms:%@ offline_idle_timeout_ms:%@ online_cloud_timeout_ms:%@ notify_cloud_delay_ms:%@ notify_default_delay_ms:%@ chat_big_size:%@ push_chat_period_ms:%@ push_chat_limit:%@ saved_gifs_limit:%@ edit_time_limit:%@ rating_e_decay:%@ stickers_recent_limit:%@ tmp_sessions:%@ pinned_dialogs_count_max:%@ call_receive_timeout_ms:%@ call_ring_timeout_ms:%@ call_connect_timeout_ms:%@ call_packet_timeout_ms:%@ disabled_features:%@)", self.flags, self.date, self.expires, self.testMode, self.thisDc, self.dcOptions, self.chatSizeMax, self.megagroupSizeMax, self.forwardedCountMax, self.onlineUpdatePeriodMs, self.offlineBlurTimeoutMs, self.offlineIdleTimeoutMs, self.onlineCloudTimeoutMs, self.notifyCloudDelayMs, self.notifyDefaultDelayMs, self.chatBigSize, self.pushChatPeriodMs, self.pushChatLimit, self.savedGifsLimit, self.editTimeLimit, self.ratingEDecay, self.stickersRecentLimit, self.tmpSessions, self.pinnedDialogsCountMax, self.callReceiveTimeoutMs, self.callRingTimeoutMs, self.callConnectTimeoutMs, self.callPacketTimeoutMs, self.disabledFeatures];
}

@end




@interface Api62_TopPeerCategoryPeers ()

@property (nonatomic, strong) Api62_TopPeerCategory * category;
@property (nonatomic, strong) NSNumber * count;
@property (nonatomic, strong) NSArray * peers;

@end

@interface Api62_TopPeerCategoryPeers_topPeerCategoryPeers ()

@end

@implementation Api62_TopPeerCategoryPeers

+ (Api62_TopPeerCategoryPeers_topPeerCategoryPeers *)topPeerCategoryPeersWithCategory:(Api62_TopPeerCategory *)category count:(NSNumber *)count peers:(NSArray *)peers
{
    Api62_TopPeerCategoryPeers_topPeerCategoryPeers *_object = [[Api62_TopPeerCategoryPeers_topPeerCategoryPeers alloc] init];
    _object.category = category;
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peers = 
({
NSMutableArray *peers_copy = [[NSMutableArray alloc] initWithCapacity:peers.count];
for (id peers_item in peers)
{
    [peers_copy addObject:peers_item];
}
id peers_result = [Api62__Serializer addSerializerToObject:peers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; peers_result;});
    return _object;
}


@end

@implementation Api62_TopPeerCategoryPeers_topPeerCategoryPeers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfb834291 serializeBlock:^bool (Api62_TopPeerCategoryPeers_topPeerCategoryPeers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.category data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peers data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(topPeerCategoryPeers category:%@ count:%@ peers:%@)", self.category, self.count, self.peers];
}

@end




@interface Api62_Game ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSString * shortName;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * pdescription;
@property (nonatomic, strong) Api62_Photo * photo;
@property (nonatomic, strong) Api62_Document * document;

@end

@interface Api62_Game_game ()

@end

@implementation Api62_Game

+ (Api62_Game_game *)gameWithFlags:(NSNumber *)flags pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash shortName:(NSString *)shortName title:(NSString *)title pdescription:(NSString *)pdescription photo:(Api62_Photo *)photo document:(Api62_Document *)document
{
    Api62_Game_game *_object = [[Api62_Game_game alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.shortName = [Api62__Serializer addSerializerToObject:[shortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.document = document;
    return _object;
}


@end

@implementation Api62_Game_game

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbdf9653b serializeBlock:^bool (Api62_Game_game *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.shortName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.document data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(game flags:%@ id:%@ access_hash:%@ short_name:%d title:%d description:%d photo:%@ document:%@)", self.flags, self.pid, self.accessHash, (int)[self.shortName length], (int)[self.title length], (int)[self.pdescription length], self.photo, self.document];
}

@end




@interface Api62_BotCommand ()

@property (nonatomic, strong) NSString * command;
@property (nonatomic, strong) NSString * pdescription;

@end

@interface Api62_BotCommand_botCommand ()

@end

@implementation Api62_BotCommand

+ (Api62_BotCommand_botCommand *)botCommandWithCommand:(NSString *)command pdescription:(NSString *)pdescription
{
    Api62_BotCommand_botCommand *_object = [[Api62_BotCommand_botCommand alloc] init];
    _object.command = [Api62__Serializer addSerializerToObject:[command copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_BotCommand_botCommand

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc27ac8c7 serializeBlock:^bool (Api62_BotCommand_botCommand *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.command data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botCommand command:%d description:%d)", (int)[self.command length], (int)[self.pdescription length]];
}

@end




@interface Api62_contacts_Located ()

@property (nonatomic, strong) NSArray * results;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_Located_contacts_located ()

@end

@implementation Api62_contacts_Located

+ (Api62_contacts_Located_contacts_located *)contacts_locatedWithResults:(NSArray *)results users:(NSArray *)users
{
    Api62_contacts_Located_contacts_located *_object = [[Api62_contacts_Located_contacts_located alloc] init];
    _object.results = 
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_Located_contacts_located

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xaad7f4a7 serializeBlock:^bool (Api62_contacts_Located_contacts_located *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.results data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.located results:%@ users:%@)", self.results, self.users];
}

@end




@interface Api62_messages_AffectedMessages ()

@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;

@end

@interface Api62_messages_AffectedMessages_messages_affectedMessages ()

@end

@implementation Api62_messages_AffectedMessages

+ (Api62_messages_AffectedMessages_messages_affectedMessages *)messages_affectedMessagesWithPts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount
{
    Api62_messages_AffectedMessages_messages_affectedMessages *_object = [[Api62_messages_AffectedMessages_messages_affectedMessages alloc] init];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_AffectedMessages_messages_affectedMessages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x84d19185 serializeBlock:^bool (Api62_messages_AffectedMessages_messages_affectedMessages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.affectedMessages pts:%@ pts_count:%@)", self.pts, self.ptsCount];
}

@end




@interface Api62_messages_SavedGifs ()

@end

@interface Api62_messages_SavedGifs_messages_savedGifsNotModified ()

@end

@interface Api62_messages_SavedGifs_messages_savedGifs ()

@property (nonatomic, strong) NSNumber * phash;
@property (nonatomic, strong) NSArray * gifs;

@end

@implementation Api62_messages_SavedGifs

+ (Api62_messages_SavedGifs_messages_savedGifsNotModified *)messages_savedGifsNotModified
{
    Api62_messages_SavedGifs_messages_savedGifsNotModified *_object = [[Api62_messages_SavedGifs_messages_savedGifsNotModified alloc] init];
    return _object;
}

+ (Api62_messages_SavedGifs_messages_savedGifs *)messages_savedGifsWithPhash:(NSNumber *)phash gifs:(NSArray *)gifs
{
    Api62_messages_SavedGifs_messages_savedGifs *_object = [[Api62_messages_SavedGifs_messages_savedGifs alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.gifs = 
({
NSMutableArray *gifs_copy = [[NSMutableArray alloc] initWithCapacity:gifs.count];
for (id gifs_item in gifs)
{
    [gifs_copy addObject:gifs_item];
}
id gifs_result = [Api62__Serializer addSerializerToObject:gifs_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; gifs_result;});
    return _object;
}


@end

@implementation Api62_messages_SavedGifs_messages_savedGifsNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe8025ca2 serializeBlock:^bool (__unused Api62_messages_SavedGifs_messages_savedGifsNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.savedGifsNotModified)"];
}

@end

@implementation Api62_messages_SavedGifs_messages_savedGifs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2e0709a5 serializeBlock:^bool (Api62_messages_SavedGifs_messages_savedGifs *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.gifs data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.savedGifs hash:%@ gifs:%@)", self.phash, self.gifs];
}

@end




@interface Api62_InputGame ()

@end

@interface Api62_InputGame_inputGameID ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputGame_inputGameShortName ()

@property (nonatomic, strong) Api62_InputUser * botId;
@property (nonatomic, strong) NSString * shortName;

@end

@implementation Api62_InputGame

+ (Api62_InputGame_inputGameID *)inputGameIDWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputGame_inputGameID *_object = [[Api62_InputGame_inputGameID alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_InputGame_inputGameShortName *)inputGameShortNameWithBotId:(Api62_InputUser *)botId shortName:(NSString *)shortName
{
    Api62_InputGame_inputGameShortName *_object = [[Api62_InputGame_inputGameShortName alloc] init];
    _object.botId = botId;
    _object.shortName = [Api62__Serializer addSerializerToObject:[shortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InputGame_inputGameID

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x32c3e77 serializeBlock:^bool (Api62_InputGame_inputGameID *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputGameID id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end

@implementation Api62_InputGame_inputGameShortName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc331e80a serializeBlock:^bool (Api62_InputGame_inputGameShortName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.botId data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.shortName data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputGameShortName bot_id:%@ short_name:%d)", self.botId, (int)[self.shortName length]];
}

@end




@interface Api62_PhoneCallProtocol ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * minLayer;
@property (nonatomic, strong) NSNumber * maxLayer;

@end

@interface Api62_PhoneCallProtocol_phoneCallProtocol ()

@end

@implementation Api62_PhoneCallProtocol

+ (Api62_PhoneCallProtocol_phoneCallProtocol *)phoneCallProtocolWithFlags:(NSNumber *)flags minLayer:(NSNumber *)minLayer maxLayer:(NSNumber *)maxLayer
{
    Api62_PhoneCallProtocol_phoneCallProtocol *_object = [[Api62_PhoneCallProtocol_phoneCallProtocol alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.minLayer = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:minLayer] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.maxLayer = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxLayer] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_PhoneCallProtocol_phoneCallProtocol

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa2bb35cb serializeBlock:^bool (Api62_PhoneCallProtocol_phoneCallProtocol *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.minLayer data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.maxLayer data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallProtocol flags:%@ min_layer:%@ max_layer:%@)", self.flags, self.minLayer, self.maxLayer];
}

@end




@interface Api62_ResponseIndirect ()

@end

@interface Api62_ResponseIndirect_responseIndirect ()

@end

@implementation Api62_ResponseIndirect

+ (Api62_ResponseIndirect_responseIndirect *)responseIndirect
{
    Api62_ResponseIndirect_responseIndirect *_object = [[Api62_ResponseIndirect_responseIndirect alloc] init];
    return _object;
}


@end

@implementation Api62_ResponseIndirect_responseIndirect

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2194f56e serializeBlock:^bool (__unused Api62_ResponseIndirect_responseIndirect *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(responseIndirect)"];
}

@end




@interface Api62_WallPaper ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSNumber * color;

@end

@interface Api62_WallPaper_wallPaper ()

@property (nonatomic, strong) NSArray * sizes;

@end

@interface Api62_WallPaper_wallPaperSolid ()

@property (nonatomic, strong) NSNumber * bgColor;

@end

@implementation Api62_WallPaper

+ (Api62_WallPaper_wallPaper *)wallPaperWithPid:(NSNumber *)pid title:(NSString *)title sizes:(NSArray *)sizes color:(NSNumber *)color
{
    Api62_WallPaper_wallPaper *_object = [[Api62_WallPaper_wallPaper alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.sizes = 
({
NSMutableArray *sizes_copy = [[NSMutableArray alloc] initWithCapacity:sizes.count];
for (id sizes_item in sizes)
{
    [sizes_copy addObject:sizes_item];
}
id sizes_result = [Api62__Serializer addSerializerToObject:sizes_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sizes_result;});
    _object.color = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:color] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_WallPaper_wallPaperSolid *)wallPaperSolidWithPid:(NSNumber *)pid title:(NSString *)title bgColor:(NSNumber *)bgColor color:(NSNumber *)color
{
    Api62_WallPaper_wallPaperSolid *_object = [[Api62_WallPaper_wallPaperSolid alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.bgColor = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:bgColor] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.color = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:color] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_WallPaper_wallPaper

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xccb03657 serializeBlock:^bool (Api62_WallPaper_wallPaper *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sizes data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.color data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(wallPaper id:%@ title:%d sizes:%@ color:%@)", self.pid, (int)[self.title length], self.sizes, self.color];
}

@end

@implementation Api62_WallPaper_wallPaperSolid

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x63117f24 serializeBlock:^bool (Api62_WallPaper_wallPaperSolid *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.bgColor data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.color data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(wallPaperSolid id:%@ title:%d bg_color:%@ color:%@)", self.pid, (int)[self.title length], self.bgColor, self.color];
}

@end




@interface Api62_messages_Messages ()

@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_messages_Messages_messages_messages ()

@end

@interface Api62_messages_Messages_messages_messagesSlice ()

@property (nonatomic, strong) NSNumber * count;

@end

@interface Api62_messages_Messages_messages_channelMessages ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * count;

@end

@implementation Api62_messages_Messages

+ (Api62_messages_Messages_messages_messages *)messages_messagesWithMessages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_Messages_messages_messages *_object = [[Api62_messages_Messages_messages_messages alloc] init];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_messages_Messages_messages_messagesSlice *)messages_messagesSliceWithCount:(NSNumber *)count messages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_Messages_messages_messagesSlice *_object = [[Api62_messages_Messages_messages_messagesSlice alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_messages_Messages_messages_channelMessages *)messages_channelMessagesWithFlags:(NSNumber *)flags pts:(NSNumber *)pts count:(NSNumber *)count messages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_Messages_messages_channelMessages *_object = [[Api62_messages_Messages_messages_channelMessages alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_messages_Messages_messages_messages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8c718e87 serializeBlock:^bool (Api62_messages_Messages_messages_messages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.messages messages:%@ chats:%@ users:%@)", self.messages, self.chats, self.users];
}

@end

@implementation Api62_messages_Messages_messages_messagesSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb446ae3 serializeBlock:^bool (Api62_messages_Messages_messages_messagesSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.messagesSlice count:%@ messages:%@ chats:%@ users:%@)", self.count, self.messages, self.chats, self.users];
}

@end

@implementation Api62_messages_Messages_messages_channelMessages

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x99262e37 serializeBlock:^bool (Api62_messages_Messages_messages_channelMessages *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.channelMessages flags:%@ pts:%@ count:%@ messages:%@ chats:%@ users:%@)", self.flags, self.pts, self.count, self.messages, self.chats, self.users];
}

@end




@interface Api62_auth_SentCode ()

@end

@interface Api62_auth_SentCode_auth_sentCodePreview ()

@property (nonatomic, strong) Api62_Bool * phoneRegistered;
@property (nonatomic, strong) NSString * phoneCodeHash;
@property (nonatomic, strong) NSString * phoneCodeTest;

@end

@interface Api62_auth_SentCode_auth_sentPassPhrase ()

@property (nonatomic, strong) Api62_Bool * phoneRegistered;

@end

@interface Api62_auth_SentCode_auth_sentCode ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_auth_SentCodeType * type;
@property (nonatomic, strong) NSString * phoneCodeHash;
@property (nonatomic, strong) Api62_auth_CodeType * nextType;
@property (nonatomic, strong) NSNumber * timeout;

@end

@interface Api62_auth_SentCode_auth_sendCode ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * phoneNumber;
@property (nonatomic, strong) Api62_Bool * currentNumber;
@property (nonatomic, strong) NSNumber * apiId;
@property (nonatomic, strong) NSString * apiHash;

@end

@implementation Api62_auth_SentCode

+ (Api62_auth_SentCode_auth_sentCodePreview *)auth_sentCodePreviewWithPhoneRegistered:(Api62_Bool *)phoneRegistered phoneCodeHash:(NSString *)phoneCodeHash phoneCodeTest:(NSString *)phoneCodeTest
{
    Api62_auth_SentCode_auth_sentCodePreview *_object = [[Api62_auth_SentCode_auth_sentCodePreview alloc] init];
    _object.phoneRegistered = phoneRegistered;
    _object.phoneCodeHash = [Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.phoneCodeTest = [Api62__Serializer addSerializerToObject:[phoneCodeTest copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_auth_SentCode_auth_sentPassPhrase *)auth_sentPassPhraseWithPhoneRegistered:(Api62_Bool *)phoneRegistered
{
    Api62_auth_SentCode_auth_sentPassPhrase *_object = [[Api62_auth_SentCode_auth_sentPassPhrase alloc] init];
    _object.phoneRegistered = phoneRegistered;
    return _object;
}

+ (Api62_auth_SentCode_auth_sentCode *)auth_sentCodeWithFlags:(NSNumber *)flags type:(Api62_auth_SentCodeType *)type phoneCodeHash:(NSString *)phoneCodeHash nextType:(Api62_auth_CodeType *)nextType timeout:(NSNumber *)timeout
{
    Api62_auth_SentCode_auth_sentCode *_object = [[Api62_auth_SentCode_auth_sentCode alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.type = type;
    _object.phoneCodeHash = [Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.nextType = nextType;
    _object.timeout = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:timeout] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_auth_SentCode_auth_sendCode *)auth_sendCodeWithFlags:(NSNumber *)flags phoneNumber:(NSString *)phoneNumber currentNumber:(Api62_Bool *)currentNumber apiId:(NSNumber *)apiId apiHash:(NSString *)apiHash
{
    Api62_auth_SentCode_auth_sendCode *_object = [[Api62_auth_SentCode_auth_sendCode alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.phoneNumber = [Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.currentNumber = currentNumber;
    _object.apiId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:apiId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.apiHash = [Api62__Serializer addSerializerToObject:[apiHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_auth_SentCode_auth_sentCodePreview

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3cf5727a serializeBlock:^bool (Api62_auth_SentCode_auth_sentCodePreview *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneRegistered data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.phoneCodeHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phoneCodeTest data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentCodePreview phone_registered:%@ phone_code_hash:%d phone_code_test:%d)", self.phoneRegistered, (int)[self.phoneCodeHash length], (int)[self.phoneCodeTest length]];
}

@end

@implementation Api62_auth_SentCode_auth_sentPassPhrase

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1a1e1fae serializeBlock:^bool (Api62_auth_SentCode_auth_sentPassPhrase *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneRegistered data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentPassPhrase phone_registered:%@)", self.phoneRegistered];
}

@end

@implementation Api62_auth_SentCode_auth_sentCode

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5e002502 serializeBlock:^bool (Api62_auth_SentCode_auth_sentCode *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.phoneCodeHash data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.nextType data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.timeout data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentCode flags:%@ type:%@ phone_code_hash:%d next_type:%@ timeout:%@)", self.flags, self.type, (int)[self.phoneCodeHash length], self.nextType, self.timeout];
}

@end

@implementation Api62_auth_SentCode_auth_sendCode

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x86aef0ec serializeBlock:^bool (Api62_auth_SentCode_auth_sendCode *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phoneNumber data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.currentNumber data:data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:object.apiId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.apiHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sendCode flags:%@ phone_number:%d current_number:%@ api_id:%@ api_hash:%d)", self.flags, (int)[self.phoneNumber length], self.currentNumber, self.apiId, (int)[self.apiHash length]];
}

@end




@interface Api62_phone_DhConfig ()

@property (nonatomic, strong) NSNumber * g;
@property (nonatomic, strong) NSString * p;
@property (nonatomic, strong) NSNumber * ringTimeout;
@property (nonatomic, strong) NSNumber * expires;

@end

@interface Api62_phone_DhConfig_phone_dhConfig ()

@end

@implementation Api62_phone_DhConfig

+ (Api62_phone_DhConfig_phone_dhConfig *)phone_dhConfigWithG:(NSNumber *)g p:(NSString *)p ringTimeout:(NSNumber *)ringTimeout expires:(NSNumber *)expires
{
    Api62_phone_DhConfig_phone_dhConfig *_object = [[Api62_phone_DhConfig_phone_dhConfig alloc] init];
    _object.g = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:g] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.p = [Api62__Serializer addSerializerToObject:[p copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.ringTimeout = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ringTimeout] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.expires = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:expires] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_phone_DhConfig_phone_dhConfig

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8a5d855e serializeBlock:^bool (Api62_phone_DhConfig_phone_dhConfig *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.g data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.p data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ringTimeout data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.expires data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phone.dhConfig g:%@ p:%d ring_timeout:%@ expires:%@)", self.g, (int)[self.p length], self.ringTimeout, self.expires];
}

@end




@interface Api62_InputChatPhoto ()

@end

@interface Api62_InputChatPhoto_inputChatPhotoEmpty ()

@end

@interface Api62_InputChatPhoto_inputChatUploadedPhoto ()

@property (nonatomic, strong) Api62_InputFile * file;

@end

@interface Api62_InputChatPhoto_inputChatPhoto ()

@property (nonatomic, strong) Api62_InputPhoto * pid;

@end

@implementation Api62_InputChatPhoto

+ (Api62_InputChatPhoto_inputChatPhotoEmpty *)inputChatPhotoEmpty
{
    Api62_InputChatPhoto_inputChatPhotoEmpty *_object = [[Api62_InputChatPhoto_inputChatPhotoEmpty alloc] init];
    return _object;
}

+ (Api62_InputChatPhoto_inputChatUploadedPhoto *)inputChatUploadedPhotoWithFile:(Api62_InputFile *)file
{
    Api62_InputChatPhoto_inputChatUploadedPhoto *_object = [[Api62_InputChatPhoto_inputChatUploadedPhoto alloc] init];
    _object.file = file;
    return _object;
}

+ (Api62_InputChatPhoto_inputChatPhoto *)inputChatPhotoWithPid:(Api62_InputPhoto *)pid
{
    Api62_InputChatPhoto_inputChatPhoto *_object = [[Api62_InputChatPhoto_inputChatPhoto alloc] init];
    _object.pid = pid;
    return _object;
}


@end

@implementation Api62_InputChatPhoto_inputChatPhotoEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1ca48f57 serializeBlock:^bool (__unused Api62_InputChatPhoto_inputChatPhotoEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputChatPhotoEmpty)"];
}

@end

@implementation Api62_InputChatPhoto_inputChatUploadedPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x927c55b4 serializeBlock:^bool (Api62_InputChatPhoto_inputChatUploadedPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.file data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputChatUploadedPhoto file:%@)", self.file];
}

@end

@implementation Api62_InputChatPhoto_inputChatPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8953ad37 serializeBlock:^bool (Api62_InputChatPhoto_inputChatPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputChatPhoto id:%@)", self.pid];
}

@end




@interface Api62_Updates ()

@end

@interface Api62_Updates_updatesTooLong ()

@end

@interface Api62_Updates_updateShort ()

@property (nonatomic, strong) Api62_Update * update;
@property (nonatomic, strong) NSNumber * date;

@end

@interface Api62_Updates_updatesCombined ()

@property (nonatomic, strong) NSArray * updates;
@property (nonatomic, strong) NSArray * users;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * seqStart;
@property (nonatomic, strong) NSNumber * seq;

@end

@interface Api62_Updates_updates ()

@property (nonatomic, strong) NSArray * updates;
@property (nonatomic, strong) NSArray * users;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * seq;

@end

@interface Api62_Updates_messages_editMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputPeer * peer;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) Api62_ReplyMarkup * replyMarkup;
@property (nonatomic, strong) NSArray * entities;

@end

@interface Api62_Updates_updateShortMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) Api62_MessageFwdHeader * fwdFrom;
@property (nonatomic, strong) NSNumber * viaBotId;
@property (nonatomic, strong) NSNumber * replyToMsgId;
@property (nonatomic, strong) NSArray * entities;

@end

@interface Api62_Updates_updateShortChatMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * fromId;
@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) Api62_MessageFwdHeader * fwdFrom;
@property (nonatomic, strong) NSNumber * viaBotId;
@property (nonatomic, strong) NSNumber * replyToMsgId;
@property (nonatomic, strong) NSArray * entities;

@end

@interface Api62_Updates_updateShortSentMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * ptsCount;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) Api62_MessageMedia * media;
@property (nonatomic, strong) NSArray * entities;

@end

@implementation Api62_Updates

+ (Api62_Updates_updatesTooLong *)updatesTooLong
{
    Api62_Updates_updatesTooLong *_object = [[Api62_Updates_updatesTooLong alloc] init];
    return _object;
}

+ (Api62_Updates_updateShort *)updateShortWithUpdate:(Api62_Update *)update date:(NSNumber *)date
{
    Api62_Updates_updateShort *_object = [[Api62_Updates_updateShort alloc] init];
    _object.update = update;
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Updates_updatesCombined *)updatesCombinedWithUpdates:(NSArray *)updates users:(NSArray *)users chats:(NSArray *)chats date:(NSNumber *)date seqStart:(NSNumber *)seqStart seq:(NSNumber *)seq
{
    Api62_Updates_updatesCombined *_object = [[Api62_Updates_updatesCombined alloc] init];
    _object.updates = 
({
NSMutableArray *updates_copy = [[NSMutableArray alloc] initWithCapacity:updates.count];
for (id updates_item in updates)
{
    [updates_copy addObject:updates_item];
}
id updates_result = [Api62__Serializer addSerializerToObject:updates_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; updates_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.seqStart = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:seqStart] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.seq = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:seq] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Updates_updates *)updatesWithUpdates:(NSArray *)updates users:(NSArray *)users chats:(NSArray *)chats date:(NSNumber *)date seq:(NSNumber *)seq
{
    Api62_Updates_updates *_object = [[Api62_Updates_updates alloc] init];
    _object.updates = 
({
NSMutableArray *updates_copy = [[NSMutableArray alloc] initWithCapacity:updates.count];
for (id updates_item in updates)
{
    [updates_copy addObject:updates_item];
}
id updates_result = [Api62__Serializer addSerializerToObject:updates_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; updates_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.seq = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:seq] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Updates_messages_editMessage *)messages_editMessageWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer pid:(NSNumber *)pid message:(NSString *)message replyMarkup:(Api62_ReplyMarkup *)replyMarkup entities:(NSArray *)entities
{
    Api62_Updates_messages_editMessage *_object = [[Api62_Updates_messages_editMessage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peer = peer;
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    return _object;
}

+ (Api62_Updates_updateShortMessage *)updateShortMessageWithFlags:(NSNumber *)flags pid:(NSNumber *)pid userId:(NSNumber *)userId message:(NSString *)message pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount date:(NSNumber *)date fwdFrom:(Api62_MessageFwdHeader *)fwdFrom viaBotId:(NSNumber *)viaBotId replyToMsgId:(NSNumber *)replyToMsgId entities:(NSArray *)entities
{
    Api62_Updates_updateShortMessage *_object = [[Api62_Updates_updateShortMessage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.fwdFrom = fwdFrom;
    _object.viaBotId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:viaBotId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.replyToMsgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    return _object;
}

+ (Api62_Updates_updateShortChatMessage *)updateShortChatMessageWithFlags:(NSNumber *)flags pid:(NSNumber *)pid fromId:(NSNumber *)fromId chatId:(NSNumber *)chatId message:(NSString *)message pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount date:(NSNumber *)date fwdFrom:(Api62_MessageFwdHeader *)fwdFrom viaBotId:(NSNumber *)viaBotId replyToMsgId:(NSNumber *)replyToMsgId entities:(NSArray *)entities
{
    Api62_Updates_updateShortChatMessage *_object = [[Api62_Updates_updateShortChatMessage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.fromId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fromId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.fwdFrom = fwdFrom;
    _object.viaBotId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:viaBotId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.replyToMsgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    return _object;
}

+ (Api62_Updates_updateShortSentMessage *)updateShortSentMessageWithFlags:(NSNumber *)flags pid:(NSNumber *)pid pts:(NSNumber *)pts ptsCount:(NSNumber *)ptsCount date:(NSNumber *)date media:(Api62_MessageMedia *)media entities:(NSArray *)entities
{
    Api62_Updates_updateShortSentMessage *_object = [[Api62_Updates_updateShortSentMessage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ptsCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.media = media;
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    return _object;
}


@end

@implementation Api62_Updates_updatesTooLong

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe317af7e serializeBlock:^bool (__unused Api62_Updates_updatesTooLong *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatesTooLong)"];
}

@end

@implementation Api62_Updates_updateShort

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x78d4dec1 serializeBlock:^bool (Api62_Updates_updateShort *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.update data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateShort update:%@ date:%@)", self.update, self.date];
}

@end

@implementation Api62_Updates_updatesCombined

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x725b04c3 serializeBlock:^bool (Api62_Updates_updatesCombined *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.updates data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.seqStart data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.seq data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updatesCombined updates:%@ users:%@ chats:%@ date:%@ seq_start:%@ seq:%@)", self.updates, self.users, self.chats, self.date, self.seqStart, self.seq];
}

@end

@implementation Api62_Updates_updates

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x74ae4240 serializeBlock:^bool (Api62_Updates_updates *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.updates data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.seq data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates updates:%@ users:%@ chats:%@ date:%@ seq:%@)", self.updates, self.users, self.chats, self.date, self.seq];
}

@end

@implementation Api62_Updates_messages_editMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xce91e4ca serializeBlock:^bool (Api62_Updates_messages_editMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peer data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 11)) {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.editMessage flags:%@ peer:%@ id:%@ message:%d reply_markup:%@ entities:%@)", self.flags, self.peer, self.pid, (int)[self.message length], self.replyMarkup, self.entities];
}

@end

@implementation Api62_Updates_updateShortMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x914fbf11 serializeBlock:^bool (Api62_Updates_updateShortMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.fwdFrom data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 11)) {
            if (![Api62__Environment serializeObject:object.viaBotId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.replyToMsgId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateShortMessage flags:%@ id:%@ user_id:%@ message:%d pts:%@ pts_count:%@ date:%@ fwd_from:%@ via_bot_id:%@ reply_to_msg_id:%@ entities:%@)", self.flags, self.pid, self.userId, (int)[self.message length], self.pts, self.ptsCount, self.date, self.fwdFrom, self.viaBotId, self.replyToMsgId, self.entities];
}

@end

@implementation Api62_Updates_updateShortChatMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x16812688 serializeBlock:^bool (Api62_Updates_updateShortChatMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.fromId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.fwdFrom data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 11)) {
            if (![Api62__Environment serializeObject:object.viaBotId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.replyToMsgId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateShortChatMessage flags:%@ id:%@ from_id:%@ chat_id:%@ message:%d pts:%@ pts_count:%@ date:%@ fwd_from:%@ via_bot_id:%@ reply_to_msg_id:%@ entities:%@)", self.flags, self.pid, self.fromId, self.chatId, (int)[self.message length], self.pts, self.ptsCount, self.date, self.fwdFrom, self.viaBotId, self.replyToMsgId, self.entities];
}

@end

@implementation Api62_Updates_updateShortSentMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x11f1331c serializeBlock:^bool (Api62_Updates_updateShortSentMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ptsCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 9)) {
            if (![Api62__Environment serializeObject:object.media data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updateShortSentMessage flags:%@ id:%@ pts:%@ pts_count:%@ date:%@ media:%@ entities:%@)", self.flags, self.pid, self.pts, self.ptsCount, self.date, self.media, self.entities];
}

@end




@interface Api62_InitConnection ()

@property (nonatomic, strong) NSNumber * apiId;
@property (nonatomic, strong) NSString * deviceModel;
@property (nonatomic, strong) NSString * systemVersion;
@property (nonatomic, strong) NSString * appVersion;
@property (nonatomic, strong) NSString * langCode;
@property (nonatomic, strong) NSObject * query;

@end

@interface Api62_InitConnection_pinitConnection ()

@end

@implementation Api62_InitConnection

+ (Api62_InitConnection_pinitConnection *)pinitConnectionWithApiId:(NSNumber *)apiId deviceModel:(NSString *)deviceModel systemVersion:(NSString *)systemVersion appVersion:(NSString *)appVersion langCode:(NSString *)langCode query:(NSObject *)query
{
    Api62_InitConnection_pinitConnection *_object = [[Api62_InitConnection_pinitConnection alloc] init];
    _object.apiId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:apiId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.deviceModel = [Api62__Serializer addSerializerToObject:[deviceModel copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.systemVersion = [Api62__Serializer addSerializerToObject:[systemVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.appVersion = [Api62__Serializer addSerializerToObject:[appVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.langCode = [Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.query = query;
    return _object;
}


@end

@implementation Api62_InitConnection_pinitConnection

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x69796de9 serializeBlock:^bool (Api62_InitConnection_pinitConnection *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.apiId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.deviceModel data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.systemVersion data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.appVersion data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.langCode data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.query data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(initConnection api_id:%@ device_model:%d system_version:%d app_version:%d lang_code:%d query:%@)", self.apiId, (int)[self.deviceModel length], (int)[self.systemVersion length], (int)[self.appVersion length], (int)[self.langCode length], self.query];
}

@end




@interface Api62_MessageMedia ()

@end

@interface Api62_MessageMedia_messageMediaEmpty ()

@end

@interface Api62_MessageMedia_messageMediaGeo ()

@property (nonatomic, strong) Api62_GeoPoint * geo;

@end

@interface Api62_MessageMedia_messageMediaContact ()

@property (nonatomic, strong) NSString * phoneNumber;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;
@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_MessageMedia_messageMediaUnsupported ()

@end

@interface Api62_MessageMedia_messageMediaWebPage ()

@property (nonatomic, strong) Api62_WebPage * webpage;

@end

@interface Api62_MessageMedia_messageMediaPhoto ()

@property (nonatomic, strong) Api62_Photo * photo;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_MessageMedia_messageMediaVenue ()

@property (nonatomic, strong) Api62_GeoPoint * geo;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * address;
@property (nonatomic, strong) NSString * provider;
@property (nonatomic, strong) NSString * venueId;

@end

@interface Api62_MessageMedia_messageMediaDocument ()

@property (nonatomic, strong) Api62_Document * document;
@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_MessageMedia_messageMediaGame ()

@property (nonatomic, strong) Api62_Game * game;

@end

@implementation Api62_MessageMedia

+ (Api62_MessageMedia_messageMediaEmpty *)messageMediaEmpty
{
    Api62_MessageMedia_messageMediaEmpty *_object = [[Api62_MessageMedia_messageMediaEmpty alloc] init];
    return _object;
}

+ (Api62_MessageMedia_messageMediaGeo *)messageMediaGeoWithGeo:(Api62_GeoPoint *)geo
{
    Api62_MessageMedia_messageMediaGeo *_object = [[Api62_MessageMedia_messageMediaGeo alloc] init];
    _object.geo = geo;
    return _object;
}

+ (Api62_MessageMedia_messageMediaContact *)messageMediaContactWithPhoneNumber:(NSString *)phoneNumber firstName:(NSString *)firstName lastName:(NSString *)lastName userId:(NSNumber *)userId
{
    Api62_MessageMedia_messageMediaContact *_object = [[Api62_MessageMedia_messageMediaContact alloc] init];
    _object.phoneNumber = [Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageMedia_messageMediaUnsupported *)messageMediaUnsupported
{
    Api62_MessageMedia_messageMediaUnsupported *_object = [[Api62_MessageMedia_messageMediaUnsupported alloc] init];
    return _object;
}

+ (Api62_MessageMedia_messageMediaWebPage *)messageMediaWebPageWithWebpage:(Api62_WebPage *)webpage
{
    Api62_MessageMedia_messageMediaWebPage *_object = [[Api62_MessageMedia_messageMediaWebPage alloc] init];
    _object.webpage = webpage;
    return _object;
}

+ (Api62_MessageMedia_messageMediaPhoto *)messageMediaPhotoWithPhoto:(Api62_Photo *)photo caption:(NSString *)caption
{
    Api62_MessageMedia_messageMediaPhoto *_object = [[Api62_MessageMedia_messageMediaPhoto alloc] init];
    _object.photo = photo;
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageMedia_messageMediaVenue *)messageMediaVenueWithGeo:(Api62_GeoPoint *)geo title:(NSString *)title address:(NSString *)address provider:(NSString *)provider venueId:(NSString *)venueId
{
    Api62_MessageMedia_messageMediaVenue *_object = [[Api62_MessageMedia_messageMediaVenue alloc] init];
    _object.geo = geo;
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.address = [Api62__Serializer addSerializerToObject:[address copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.provider = [Api62__Serializer addSerializerToObject:[provider copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.venueId = [Api62__Serializer addSerializerToObject:[venueId copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageMedia_messageMediaDocument *)messageMediaDocumentWithDocument:(Api62_Document *)document caption:(NSString *)caption
{
    Api62_MessageMedia_messageMediaDocument *_object = [[Api62_MessageMedia_messageMediaDocument alloc] init];
    _object.document = document;
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageMedia_messageMediaGame *)messageMediaGameWithGame:(Api62_Game *)game
{
    Api62_MessageMedia_messageMediaGame *_object = [[Api62_MessageMedia_messageMediaGame alloc] init];
    _object.game = game;
    return _object;
}


@end

@implementation Api62_MessageMedia_messageMediaEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3ded6320 serializeBlock:^bool (__unused Api62_MessageMedia_messageMediaEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaEmpty)"];
}

@end

@implementation Api62_MessageMedia_messageMediaGeo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x56e0d474 serializeBlock:^bool (Api62_MessageMedia_messageMediaGeo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaGeo geo:%@)", self.geo];
}

@end

@implementation Api62_MessageMedia_messageMediaContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5e7d2f39 serializeBlock:^bool (Api62_MessageMedia_messageMediaContact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneNumber data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaContact phone_number:%d first_name:%d last_name:%d user_id:%@)", (int)[self.phoneNumber length], (int)[self.firstName length], (int)[self.lastName length], self.userId];
}

@end

@implementation Api62_MessageMedia_messageMediaUnsupported

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9f84f49e serializeBlock:^bool (__unused Api62_MessageMedia_messageMediaUnsupported *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaUnsupported)"];
}

@end

@implementation Api62_MessageMedia_messageMediaWebPage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa32dd600 serializeBlock:^bool (Api62_MessageMedia_messageMediaWebPage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.webpage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaWebPage webpage:%@)", self.webpage];
}

@end

@implementation Api62_MessageMedia_messageMediaPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3d8ce53d serializeBlock:^bool (Api62_MessageMedia_messageMediaPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaPhoto photo:%@ caption:%d)", self.photo, (int)[self.caption length]];
}

@end

@implementation Api62_MessageMedia_messageMediaVenue

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7912b71f serializeBlock:^bool (Api62_MessageMedia_messageMediaVenue *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.address data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.provider data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.venueId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaVenue geo:%@ title:%d address:%d provider:%d venue_id:%d)", self.geo, (int)[self.title length], (int)[self.address length], (int)[self.provider length], (int)[self.venueId length]];
}

@end

@implementation Api62_MessageMedia_messageMediaDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf3e02ea8 serializeBlock:^bool (Api62_MessageMedia_messageMediaDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.document data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaDocument document:%@ caption:%d)", self.document, (int)[self.caption length]];
}

@end

@implementation Api62_MessageMedia_messageMediaGame

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfdb19008 serializeBlock:^bool (Api62_MessageMedia_messageMediaGame *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.game data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageMediaGame game:%@)", self.game];
}

@end




@interface Api62_Null ()

@end

@interface Api62_Null_null ()

@end

@implementation Api62_Null

+ (Api62_Null_null *)null
{
    Api62_Null_null *_object = [[Api62_Null_null alloc] init];
    return _object;
}


@end

@implementation Api62_Null_null

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x56730bcc serializeBlock:^bool (__unused Api62_Null_null *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(null)"];
}

@end




@interface Api62_auth_CodeType ()

@end

@interface Api62_auth_CodeType_auth_codeTypeSms ()

@end

@interface Api62_auth_CodeType_auth_codeTypeCall ()

@end

@interface Api62_auth_CodeType_auth_codeTypeFlashCall ()

@end

@implementation Api62_auth_CodeType

+ (Api62_auth_CodeType_auth_codeTypeSms *)auth_codeTypeSms
{
    Api62_auth_CodeType_auth_codeTypeSms *_object = [[Api62_auth_CodeType_auth_codeTypeSms alloc] init];
    return _object;
}

+ (Api62_auth_CodeType_auth_codeTypeCall *)auth_codeTypeCall
{
    Api62_auth_CodeType_auth_codeTypeCall *_object = [[Api62_auth_CodeType_auth_codeTypeCall alloc] init];
    return _object;
}

+ (Api62_auth_CodeType_auth_codeTypeFlashCall *)auth_codeTypeFlashCall
{
    Api62_auth_CodeType_auth_codeTypeFlashCall *_object = [[Api62_auth_CodeType_auth_codeTypeFlashCall alloc] init];
    return _object;
}


@end

@implementation Api62_auth_CodeType_auth_codeTypeSms

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x72a3158c serializeBlock:^bool (__unused Api62_auth_CodeType_auth_codeTypeSms *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.codeTypeSms)"];
}

@end

@implementation Api62_auth_CodeType_auth_codeTypeCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x741cd3e3 serializeBlock:^bool (__unused Api62_auth_CodeType_auth_codeTypeCall *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.codeTypeCall)"];
}

@end

@implementation Api62_auth_CodeType_auth_codeTypeFlashCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x226ccefb serializeBlock:^bool (__unused Api62_auth_CodeType_auth_codeTypeFlashCall *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.codeTypeFlashCall)"];
}

@end




@interface Api62_DocumentAttribute ()

@end

@interface Api62_DocumentAttribute_documentAttributeImageSize ()

@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;

@end

@interface Api62_DocumentAttribute_documentAttributeAnimated ()

@end

@interface Api62_DocumentAttribute_documentAttributeVideo ()

@property (nonatomic, strong) NSNumber * duration;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;

@end

@interface Api62_DocumentAttribute_documentAttributeFilename ()

@property (nonatomic, strong) NSString * fileName;

@end

@interface Api62_DocumentAttribute_documentAttributeAudio ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * duration;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * performer;
@property (nonatomic, strong) NSData * waveform;

@end

@interface Api62_DocumentAttribute_documentAttributeSticker ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * alt;
@property (nonatomic, strong) Api62_InputStickerSet * stickerset;
@property (nonatomic, strong) Api62_MaskCoords * maskCoords;

@end

@interface Api62_DocumentAttribute_documentAttributeHasStickers ()

@end

@implementation Api62_DocumentAttribute

+ (Api62_DocumentAttribute_documentAttributeImageSize *)documentAttributeImageSizeWithW:(NSNumber *)w h:(NSNumber *)h
{
    Api62_DocumentAttribute_documentAttributeImageSize *_object = [[Api62_DocumentAttribute_documentAttributeImageSize alloc] init];
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_DocumentAttribute_documentAttributeAnimated *)documentAttributeAnimated
{
    Api62_DocumentAttribute_documentAttributeAnimated *_object = [[Api62_DocumentAttribute_documentAttributeAnimated alloc] init];
    return _object;
}

+ (Api62_DocumentAttribute_documentAttributeVideo *)documentAttributeVideoWithDuration:(NSNumber *)duration w:(NSNumber *)w h:(NSNumber *)h
{
    Api62_DocumentAttribute_documentAttributeVideo *_object = [[Api62_DocumentAttribute_documentAttributeVideo alloc] init];
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_DocumentAttribute_documentAttributeFilename *)documentAttributeFilenameWithFileName:(NSString *)fileName
{
    Api62_DocumentAttribute_documentAttributeFilename *_object = [[Api62_DocumentAttribute_documentAttributeFilename alloc] init];
    _object.fileName = [Api62__Serializer addSerializerToObject:[fileName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_DocumentAttribute_documentAttributeAudio *)documentAttributeAudioWithFlags:(NSNumber *)flags duration:(NSNumber *)duration title:(NSString *)title performer:(NSString *)performer waveform:(NSData *)waveform
{
    Api62_DocumentAttribute_documentAttributeAudio *_object = [[Api62_DocumentAttribute_documentAttributeAudio alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.performer = [Api62__Serializer addSerializerToObject:[performer copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.waveform = [Api62__Serializer addSerializerToObject:[waveform copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}

+ (Api62_DocumentAttribute_documentAttributeSticker *)documentAttributeStickerWithFlags:(NSNumber *)flags alt:(NSString *)alt stickerset:(Api62_InputStickerSet *)stickerset maskCoords:(Api62_MaskCoords *)maskCoords
{
    Api62_DocumentAttribute_documentAttributeSticker *_object = [[Api62_DocumentAttribute_documentAttributeSticker alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.alt = [Api62__Serializer addSerializerToObject:[alt copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.stickerset = stickerset;
    _object.maskCoords = maskCoords;
    return _object;
}

+ (Api62_DocumentAttribute_documentAttributeHasStickers *)documentAttributeHasStickers
{
    Api62_DocumentAttribute_documentAttributeHasStickers *_object = [[Api62_DocumentAttribute_documentAttributeHasStickers alloc] init];
    return _object;
}


@end

@implementation Api62_DocumentAttribute_documentAttributeImageSize

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6c37c15c serializeBlock:^bool (Api62_DocumentAttribute_documentAttributeImageSize *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeImageSize w:%@ h:%@)", self.w, self.h];
}

@end

@implementation Api62_DocumentAttribute_documentAttributeAnimated

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x11b58939 serializeBlock:^bool (__unused Api62_DocumentAttribute_documentAttributeAnimated *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeAnimated)"];
}

@end

@implementation Api62_DocumentAttribute_documentAttributeVideo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5910cccb serializeBlock:^bool (Api62_DocumentAttribute_documentAttributeVideo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeVideo duration:%@ w:%@ h:%@)", self.duration, self.w, self.h];
}

@end

@implementation Api62_DocumentAttribute_documentAttributeFilename

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x15590068 serializeBlock:^bool (Api62_DocumentAttribute_documentAttributeFilename *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.fileName data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeFilename file_name:%d)", (int)[self.fileName length]];
}

@end

@implementation Api62_DocumentAttribute_documentAttributeAudio

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9852f9c6 serializeBlock:^bool (Api62_DocumentAttribute_documentAttributeAudio *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.performer data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.waveform data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeAudio flags:%@ duration:%@ title:%d performer:%d waveform:%d)", self.flags, self.duration, (int)[self.title length], (int)[self.performer length], (int)[self.waveform length]];
}

@end

@implementation Api62_DocumentAttribute_documentAttributeSticker

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6319d612 serializeBlock:^bool (Api62_DocumentAttribute_documentAttributeSticker *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.alt data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.stickerset data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.maskCoords data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeSticker flags:%@ alt:%d stickerset:%@ mask_coords:%@)", self.flags, (int)[self.alt length], self.stickerset, self.maskCoords];
}

@end

@implementation Api62_DocumentAttribute_documentAttributeHasStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9801d2f7 serializeBlock:^bool (__unused Api62_DocumentAttribute_documentAttributeHasStickers *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentAttributeHasStickers)"];
}

@end




@interface Api62_account_Authorizations ()

@property (nonatomic, strong) NSArray * authorizations;

@end

@interface Api62_account_Authorizations_account_authorizations ()

@end

@implementation Api62_account_Authorizations

+ (Api62_account_Authorizations_account_authorizations *)account_authorizationsWithAuthorizations:(NSArray *)authorizations
{
    Api62_account_Authorizations_account_authorizations *_object = [[Api62_account_Authorizations_account_authorizations alloc] init];
    _object.authorizations = 
({
NSMutableArray *authorizations_copy = [[NSMutableArray alloc] initWithCapacity:authorizations.count];
for (id authorizations_item in authorizations)
{
    [authorizations_copy addObject:authorizations_item];
}
id authorizations_result = [Api62__Serializer addSerializerToObject:authorizations_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; authorizations_result;});
    return _object;
}


@end

@implementation Api62_account_Authorizations_account_authorizations

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1250abde serializeBlock:^bool (Api62_account_Authorizations_account_authorizations *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.authorizations data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.authorizations authorizations:%@)", self.authorizations];
}

@end




@interface Api62_ChatPhoto ()

@end

@interface Api62_ChatPhoto_chatPhotoEmpty ()

@end

@interface Api62_ChatPhoto_chatPhoto ()

@property (nonatomic, strong) Api62_FileLocation * photoSmall;
@property (nonatomic, strong) Api62_FileLocation * photoBig;

@end

@implementation Api62_ChatPhoto

+ (Api62_ChatPhoto_chatPhotoEmpty *)chatPhotoEmpty
{
    Api62_ChatPhoto_chatPhotoEmpty *_object = [[Api62_ChatPhoto_chatPhotoEmpty alloc] init];
    return _object;
}

+ (Api62_ChatPhoto_chatPhoto *)chatPhotoWithPhotoSmall:(Api62_FileLocation *)photoSmall photoBig:(Api62_FileLocation *)photoBig
{
    Api62_ChatPhoto_chatPhoto *_object = [[Api62_ChatPhoto_chatPhoto alloc] init];
    _object.photoSmall = photoSmall;
    _object.photoBig = photoBig;
    return _object;
}


@end

@implementation Api62_ChatPhoto_chatPhotoEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x37c1011c serializeBlock:^bool (__unused Api62_ChatPhoto_chatPhotoEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatPhotoEmpty)"];
}

@end

@implementation Api62_ChatPhoto_chatPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6153276a serializeBlock:^bool (Api62_ChatPhoto_chatPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photoSmall data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.photoBig data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatPhoto photo_small:%@ photo_big:%@)", self.photoSmall, self.photoBig];
}

@end




@interface Api62_messages_PeerDialogs ()

@property (nonatomic, strong) NSArray * dialogs;
@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;
@property (nonatomic, strong) Api62_updates_State * state;

@end

@interface Api62_messages_PeerDialogs_messages_peerDialogs ()

@end

@implementation Api62_messages_PeerDialogs

+ (Api62_messages_PeerDialogs_messages_peerDialogs *)messages_peerDialogsWithDialogs:(NSArray *)dialogs messages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users state:(Api62_updates_State *)state
{
    Api62_messages_PeerDialogs_messages_peerDialogs *_object = [[Api62_messages_PeerDialogs_messages_peerDialogs alloc] init];
    _object.dialogs = 
({
NSMutableArray *dialogs_copy = [[NSMutableArray alloc] initWithCapacity:dialogs.count];
for (id dialogs_item in dialogs)
{
    [dialogs_copy addObject:dialogs_item];
}
id dialogs_result = [Api62__Serializer addSerializerToObject:dialogs_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; dialogs_result;});
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    _object.state = state;
    return _object;
}


@end

@implementation Api62_messages_PeerDialogs_messages_peerDialogs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3371c354 serializeBlock:^bool (Api62_messages_PeerDialogs_messages_peerDialogs *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.dialogs data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.state data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.peerDialogs dialogs:%@ messages:%@ chats:%@ users:%@ state:%@)", self.dialogs, self.messages, self.chats, self.users, self.state];
}

@end




@interface Api62_InputStickerSet ()

@end

@interface Api62_InputStickerSet_inputStickerSetEmpty ()

@end

@interface Api62_InputStickerSet_inputStickerSetID ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputStickerSet_inputStickerSetShortName ()

@property (nonatomic, strong) NSString * shortName;

@end

@implementation Api62_InputStickerSet

+ (Api62_InputStickerSet_inputStickerSetEmpty *)inputStickerSetEmpty
{
    Api62_InputStickerSet_inputStickerSetEmpty *_object = [[Api62_InputStickerSet_inputStickerSetEmpty alloc] init];
    return _object;
}

+ (Api62_InputStickerSet_inputStickerSetID *)inputStickerSetIDWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputStickerSet_inputStickerSetID *_object = [[Api62_InputStickerSet_inputStickerSetID alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_InputStickerSet_inputStickerSetShortName *)inputStickerSetShortNameWithShortName:(NSString *)shortName
{
    Api62_InputStickerSet_inputStickerSetShortName *_object = [[Api62_InputStickerSet_inputStickerSetShortName alloc] init];
    _object.shortName = [Api62__Serializer addSerializerToObject:[shortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InputStickerSet_inputStickerSetEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xffb62b95 serializeBlock:^bool (__unused Api62_InputStickerSet_inputStickerSetEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputStickerSetEmpty)"];
}

@end

@implementation Api62_InputStickerSet_inputStickerSetID

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9de7a269 serializeBlock:^bool (Api62_InputStickerSet_inputStickerSetID *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputStickerSetID id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end

@implementation Api62_InputStickerSet_inputStickerSetShortName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x861cc8a0 serializeBlock:^bool (Api62_InputStickerSet_inputStickerSetShortName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.shortName data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputStickerSetShortName short_name:%d)", (int)[self.shortName length]];
}

@end




@interface Api62_BotInfo ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSString * pdescription;
@property (nonatomic, strong) NSArray * commands;

@end

@interface Api62_BotInfo_botInfo ()

@end

@implementation Api62_BotInfo

+ (Api62_BotInfo_botInfo *)botInfoWithUserId:(NSNumber *)userId pdescription:(NSString *)pdescription commands:(NSArray *)commands
{
    Api62_BotInfo_botInfo *_object = [[Api62_BotInfo_botInfo alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.commands = 
({
NSMutableArray *commands_copy = [[NSMutableArray alloc] initWithCapacity:commands.count];
for (id commands_item in commands)
{
    [commands_copy addObject:commands_item];
}
id commands_result = [Api62__Serializer addSerializerToObject:commands_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; commands_result;});
    return _object;
}


@end

@implementation Api62_BotInfo_botInfo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x98e81d3a serializeBlock:^bool (Api62_BotInfo_botInfo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.commands data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInfo user_id:%@ description:%d commands:%@)", self.userId, (int)[self.pdescription length], self.commands];
}

@end




@interface Api62_contacts_Suggested ()

@property (nonatomic, strong) NSArray * results;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_Suggested_contacts_suggested ()

@end

@implementation Api62_contacts_Suggested

+ (Api62_contacts_Suggested_contacts_suggested *)contacts_suggestedWithResults:(NSArray *)results users:(NSArray *)users
{
    Api62_contacts_Suggested_contacts_suggested *_object = [[Api62_contacts_Suggested_contacts_suggested alloc] init];
    _object.results = 
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_Suggested_contacts_suggested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5649dcc5 serializeBlock:^bool (Api62_contacts_Suggested_contacts_suggested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.results data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.suggested results:%@ users:%@)", self.results, self.users];
}

@end




@interface Api62_updates_State ()

@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * qts;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * seq;
@property (nonatomic, strong) NSNumber * unreadCount;

@end

@interface Api62_updates_State_updates_state ()

@end

@implementation Api62_updates_State

+ (Api62_updates_State_updates_state *)updates_stateWithPts:(NSNumber *)pts qts:(NSNumber *)qts date:(NSNumber *)date seq:(NSNumber *)seq unreadCount:(NSNumber *)unreadCount
{
    Api62_updates_State_updates_state *_object = [[Api62_updates_State_updates_state alloc] init];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.qts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:qts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.seq = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:seq] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.unreadCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:unreadCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_updates_State_updates_state

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa56c2a3e serializeBlock:^bool (Api62_updates_State_updates_state *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.qts data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.seq data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.unreadCount data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.state pts:%@ qts:%@ date:%@ seq:%@ unread_count:%@)", self.pts, self.qts, self.date, self.seq, self.unreadCount];
}

@end




@interface Api62_FoundGif ()

@property (nonatomic, strong) NSString * url;

@end

@interface Api62_FoundGif_foundGif ()

@property (nonatomic, strong) NSString * thumbUrl;
@property (nonatomic, strong) NSString * contentUrl;
@property (nonatomic, strong) NSString * contentType;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;

@end

@interface Api62_FoundGif_foundGifCached ()

@property (nonatomic, strong) Api62_Photo * photo;
@property (nonatomic, strong) Api62_Document * document;

@end

@implementation Api62_FoundGif

+ (Api62_FoundGif_foundGif *)foundGifWithUrl:(NSString *)url thumbUrl:(NSString *)thumbUrl contentUrl:(NSString *)contentUrl contentType:(NSString *)contentType w:(NSNumber *)w h:(NSNumber *)h
{
    Api62_FoundGif_foundGif *_object = [[Api62_FoundGif_foundGif alloc] init];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.thumbUrl = [Api62__Serializer addSerializerToObject:[thumbUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.contentUrl = [Api62__Serializer addSerializerToObject:[contentUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.contentType = [Api62__Serializer addSerializerToObject:[contentType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_FoundGif_foundGifCached *)foundGifCachedWithUrl:(NSString *)url photo:(Api62_Photo *)photo document:(Api62_Document *)document
{
    Api62_FoundGif_foundGifCached *_object = [[Api62_FoundGif_foundGifCached alloc] init];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.document = document;
    return _object;
}


@end

@implementation Api62_FoundGif_foundGif

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x162ecc1f serializeBlock:^bool (Api62_FoundGif_foundGif *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.thumbUrl data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.contentUrl data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.contentType data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(foundGif url:%d thumb_url:%d content_url:%d content_type:%d w:%@ h:%@)", (int)[self.url length], (int)[self.thumbUrl length], (int)[self.contentUrl length], (int)[self.contentType length], self.w, self.h];
}

@end

@implementation Api62_FoundGif_foundGifCached

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9c750409 serializeBlock:^bool (Api62_FoundGif_foundGifCached *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.document data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(foundGifCached url:%d photo:%@ document:%@)", (int)[self.url length], self.photo, self.document];
}

@end




@interface Api62_User ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_User_userEmpty ()

@end

@interface Api62_User_user ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;
@property (nonatomic, strong) NSString * username;
@property (nonatomic, strong) NSString * phone;
@property (nonatomic, strong) Api62_UserProfilePhoto * photo;
@property (nonatomic, strong) Api62_UserStatus * status;
@property (nonatomic, strong) NSNumber * botInfoVersion;
@property (nonatomic, strong) NSString * restrictionReason;
@property (nonatomic, strong) NSString * botInlinePlaceholder;

@end

@implementation Api62_User

+ (Api62_User_userEmpty *)userEmptyWithPid:(NSNumber *)pid
{
    Api62_User_userEmpty *_object = [[Api62_User_userEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_User_user *)userWithFlags:(NSNumber *)flags pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash firstName:(NSString *)firstName lastName:(NSString *)lastName username:(NSString *)username phone:(NSString *)phone photo:(Api62_UserProfilePhoto *)photo status:(Api62_UserStatus *)status botInfoVersion:(NSNumber *)botInfoVersion restrictionReason:(NSString *)restrictionReason botInlinePlaceholder:(NSString *)botInlinePlaceholder
{
    Api62_User_user *_object = [[Api62_User_user alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.username = [Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.phone = [Api62__Serializer addSerializerToObject:[phone copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.status = status;
    _object.botInfoVersion = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:botInfoVersion] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.restrictionReason = [Api62__Serializer addSerializerToObject:[restrictionReason copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.botInlinePlaceholder = [Api62__Serializer addSerializerToObject:[botInlinePlaceholder copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_User_userEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x200250ba serializeBlock:^bool (Api62_User_userEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userEmpty id:%@)", self.pid];
}

@end

@implementation Api62_User_user

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd10d979a serializeBlock:^bool (Api62_User_user *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.username data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.phone data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.status data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 14)) {
            if (![Api62__Environment serializeObject:object.botInfoVersion data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 18)) {
            if (![Api62__Environment serializeObject:object.restrictionReason data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 19)) {
            if (![Api62__Environment serializeObject:object.botInlinePlaceholder data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(user flags:%@ id:%@ access_hash:%@ first_name:%d last_name:%d username:%d phone:%d photo:%@ status:%@ bot_info_version:%@ restriction_reason:%d bot_inline_placeholder:%d)", self.flags, self.pid, self.accessHash, (int)[self.firstName length], (int)[self.lastName length], (int)[self.username length], (int)[self.phone length], self.photo, self.status, self.botInfoVersion, (int)[self.restrictionReason length], (int)[self.botInlinePlaceholder length]];
}

@end




@interface Api62_Message ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_Message_messageEmpty ()

@end

@interface Api62_Message_message ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * fromId;
@property (nonatomic, strong) Api62_Peer * toId;
@property (nonatomic, strong) Api62_MessageFwdHeader * fwdFrom;
@property (nonatomic, strong) NSNumber * viaBotId;
@property (nonatomic, strong) NSNumber * replyToMsgId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) Api62_MessageMedia * media;
@property (nonatomic, strong) Api62_ReplyMarkup * replyMarkup;
@property (nonatomic, strong) NSArray * entities;
@property (nonatomic, strong) NSNumber * views;
@property (nonatomic, strong) NSNumber * editDate;

@end

@interface Api62_Message_messageService ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * fromId;
@property (nonatomic, strong) Api62_Peer * toId;
@property (nonatomic, strong) NSNumber * replyToMsgId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) Api62_MessageAction * action;

@end

@implementation Api62_Message

+ (Api62_Message_messageEmpty *)messageEmptyWithPid:(NSNumber *)pid
{
    Api62_Message_messageEmpty *_object = [[Api62_Message_messageEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Message_message *)messageWithFlags:(NSNumber *)flags pid:(NSNumber *)pid fromId:(NSNumber *)fromId toId:(Api62_Peer *)toId fwdFrom:(Api62_MessageFwdHeader *)fwdFrom viaBotId:(NSNumber *)viaBotId replyToMsgId:(NSNumber *)replyToMsgId date:(NSNumber *)date message:(NSString *)message media:(Api62_MessageMedia *)media replyMarkup:(Api62_ReplyMarkup *)replyMarkup entities:(NSArray *)entities views:(NSNumber *)views editDate:(NSNumber *)editDate
{
    Api62_Message_message *_object = [[Api62_Message_message alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.fromId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fromId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.toId = toId;
    _object.fwdFrom = fwdFrom;
    _object.viaBotId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:viaBotId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.replyToMsgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.media = media;
    _object.replyMarkup = replyMarkup;
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    _object.views = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:views] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.editDate = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:editDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Message_messageService *)messageServiceWithFlags:(NSNumber *)flags pid:(NSNumber *)pid fromId:(NSNumber *)fromId toId:(Api62_Peer *)toId replyToMsgId:(NSNumber *)replyToMsgId date:(NSNumber *)date action:(Api62_MessageAction *)action
{
    Api62_Message_messageService *_object = [[Api62_Message_messageService alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.fromId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fromId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.toId = toId;
    _object.replyToMsgId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.action = action;
    return _object;
}


@end

@implementation Api62_Message_messageEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x83e5de54 serializeBlock:^bool (Api62_Message_messageEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEmpty id:%@)", self.pid];
}

@end

@implementation Api62_Message_message

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc09be45f serializeBlock:^bool (Api62_Message_message *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 8)) {
            if (![Api62__Environment serializeObject:object.fromId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.toId data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.fwdFrom data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 11)) {
            if (![Api62__Environment serializeObject:object.viaBotId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.replyToMsgId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 9)) {
            if (![Api62__Environment serializeObject:object.media data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 10)) {
            if (![Api62__Environment serializeObject:object.views data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 15)) {
            if (![Api62__Environment serializeObject:object.editDate data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(message flags:%@ id:%@ from_id:%@ to_id:%@ fwd_from:%@ via_bot_id:%@ reply_to_msg_id:%@ date:%@ message:%d media:%@ reply_markup:%@ entities:%@ views:%@ edit_date:%@)", self.flags, self.pid, self.fromId, self.toId, self.fwdFrom, self.viaBotId, self.replyToMsgId, self.date, (int)[self.message length], self.media, self.replyMarkup, self.entities, self.views, self.editDate];
}

@end

@implementation Api62_Message_messageService

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9e19a1f6 serializeBlock:^bool (Api62_Message_messageService *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 8)) {
            if (![Api62__Environment serializeObject:object.fromId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.toId data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.replyToMsgId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.action data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageService flags:%@ id:%@ from_id:%@ to_id:%@ reply_to_msg_id:%@ date:%@ action:%@)", self.flags, self.pid, self.fromId, self.toId, self.replyToMsgId, self.date, self.action];
}

@end




@interface Api62_messages_RecentStickers ()

@end

@interface Api62_messages_RecentStickers_messages_recentStickersNotModified ()

@end

@interface Api62_messages_RecentStickers_messages_recentStickers ()

@property (nonatomic, strong) NSNumber * phash;
@property (nonatomic, strong) NSArray * stickers;

@end

@interface Api62_messages_RecentStickers_messages_getRecentStickers ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * phash;

@end

@implementation Api62_messages_RecentStickers

+ (Api62_messages_RecentStickers_messages_recentStickersNotModified *)messages_recentStickersNotModified
{
    Api62_messages_RecentStickers_messages_recentStickersNotModified *_object = [[Api62_messages_RecentStickers_messages_recentStickersNotModified alloc] init];
    return _object;
}

+ (Api62_messages_RecentStickers_messages_recentStickers *)messages_recentStickersWithPhash:(NSNumber *)phash stickers:(NSArray *)stickers
{
    Api62_messages_RecentStickers_messages_recentStickers *_object = [[Api62_messages_RecentStickers_messages_recentStickers alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.stickers = 
({
NSMutableArray *stickers_copy = [[NSMutableArray alloc] initWithCapacity:stickers.count];
for (id stickers_item in stickers)
{
    [stickers_copy addObject:stickers_item];
}
id stickers_result = [Api62__Serializer addSerializerToObject:stickers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; stickers_result;});
    return _object;
}

+ (Api62_messages_RecentStickers_messages_getRecentStickers *)messages_getRecentStickersWithFlags:(NSNumber *)flags phash:(NSNumber *)phash
{
    Api62_messages_RecentStickers_messages_getRecentStickers *_object = [[Api62_messages_RecentStickers_messages_getRecentStickers alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_RecentStickers_messages_recentStickersNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb17f890 serializeBlock:^bool (__unused Api62_messages_RecentStickers_messages_recentStickersNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.recentStickersNotModified)"];
}

@end

@implementation Api62_messages_RecentStickers_messages_recentStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5ce20970 serializeBlock:^bool (Api62_messages_RecentStickers_messages_recentStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.stickers data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.recentStickers hash:%@ stickers:%@)", self.phash, self.stickers];
}

@end

@implementation Api62_messages_RecentStickers_messages_getRecentStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5ea192c9 serializeBlock:^bool (Api62_messages_RecentStickers_messages_getRecentStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.getRecentStickers flags:%@ hash:%@)", self.flags, self.phash];
}

@end




@interface Api62_InputFileLocation ()

@end

@interface Api62_InputFileLocation_inputFileLocation ()

@property (nonatomic, strong) NSNumber * volumeId;
@property (nonatomic, strong) NSNumber * localId;
@property (nonatomic, strong) NSNumber * secret;

@end

@interface Api62_InputFileLocation_inputEncryptedFileLocation ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputFileLocation_inputDocumentFileLocation ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * version;

@end

@implementation Api62_InputFileLocation

+ (Api62_InputFileLocation_inputFileLocation *)inputFileLocationWithVolumeId:(NSNumber *)volumeId localId:(NSNumber *)localId secret:(NSNumber *)secret
{
    Api62_InputFileLocation_inputFileLocation *_object = [[Api62_InputFileLocation_inputFileLocation alloc] init];
    _object.volumeId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:volumeId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.localId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:localId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.secret = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:secret] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_InputFileLocation_inputEncryptedFileLocation *)inputEncryptedFileLocationWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputFileLocation_inputEncryptedFileLocation *_object = [[Api62_InputFileLocation_inputEncryptedFileLocation alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_InputFileLocation_inputDocumentFileLocation *)inputDocumentFileLocationWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash version:(NSNumber *)version
{
    Api62_InputFileLocation_inputDocumentFileLocation *_object = [[Api62_InputFileLocation_inputDocumentFileLocation alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_InputFileLocation_inputFileLocation

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x14637196 serializeBlock:^bool (Api62_InputFileLocation_inputFileLocation *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.volumeId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.localId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.secret data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputFileLocation volume_id:%@ local_id:%@ secret:%@)", self.volumeId, self.localId, self.secret];
}

@end

@implementation Api62_InputFileLocation_inputEncryptedFileLocation

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf5235d55 serializeBlock:^bool (Api62_InputFileLocation_inputEncryptedFileLocation *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputEncryptedFileLocation id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end

@implementation Api62_InputFileLocation_inputDocumentFileLocation

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x430f0724 serializeBlock:^bool (Api62_InputFileLocation_inputDocumentFileLocation *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputDocumentFileLocation id:%@ access_hash:%@ version:%@)", self.pid, self.accessHash, self.version];
}

@end




@interface Api62_GeoPoint ()

@end

@interface Api62_GeoPoint_geoPointEmpty ()

@end

@interface Api62_GeoPoint_geoPoint ()

@property (nonatomic, strong) NSNumber * plong;
@property (nonatomic, strong) NSNumber * lat;

@end

@interface Api62_GeoPoint_geoPlace ()

@property (nonatomic, strong) NSNumber * plong;
@property (nonatomic, strong) NSNumber * lat;
@property (nonatomic, strong) Api62_GeoPlaceName * name;

@end

@implementation Api62_GeoPoint

+ (Api62_GeoPoint_geoPointEmpty *)geoPointEmpty
{
    Api62_GeoPoint_geoPointEmpty *_object = [[Api62_GeoPoint_geoPointEmpty alloc] init];
    return _object;
}

+ (Api62_GeoPoint_geoPoint *)geoPointWithPlong:(NSNumber *)plong lat:(NSNumber *)lat
{
    Api62_GeoPoint_geoPoint *_object = [[Api62_GeoPoint_geoPoint alloc] init];
    _object.plong = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:plong] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.lat = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:lat] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    return _object;
}

+ (Api62_GeoPoint_geoPlace *)geoPlaceWithPlong:(NSNumber *)plong lat:(NSNumber *)lat name:(Api62_GeoPlaceName *)name
{
    Api62_GeoPoint_geoPlace *_object = [[Api62_GeoPoint_geoPlace alloc] init];
    _object.plong = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:plong] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.lat = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:lat] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.name = name;
    return _object;
}


@end

@implementation Api62_GeoPoint_geoPointEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1117dd5f serializeBlock:^bool (__unused Api62_GeoPoint_geoPointEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(geoPointEmpty)"];
}

@end

@implementation Api62_GeoPoint_geoPoint

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2049d70c serializeBlock:^bool (Api62_GeoPoint_geoPoint *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.plong data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lat data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(geoPoint long:%@ lat:%@)", self.plong, self.lat];
}

@end

@implementation Api62_GeoPoint_geoPlace

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6e9e21ca serializeBlock:^bool (Api62_GeoPoint_geoPlace *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.plong data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lat data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.name data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(geoPlace long:%@ lat:%@ name:%@)", self.plong, self.lat, self.name];
}

@end




@interface Api62_InputPhoneCall ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputPhoneCall_inputPhoneCall ()

@end

@implementation Api62_InputPhoneCall

+ (Api62_InputPhoneCall_inputPhoneCall *)inputPhoneCallWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputPhoneCall_inputPhoneCall *_object = [[Api62_InputPhoneCall_inputPhoneCall alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputPhoneCall_inputPhoneCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1e36fded serializeBlock:^bool (Api62_InputPhoneCall_inputPhoneCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPhoneCall id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end




@interface Api62_ReceivedNotifyMessage ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * flags;

@end

@interface Api62_ReceivedNotifyMessage_receivedNotifyMessage ()

@end

@implementation Api62_ReceivedNotifyMessage

+ (Api62_ReceivedNotifyMessage_receivedNotifyMessage *)receivedNotifyMessageWithPid:(NSNumber *)pid flags:(NSNumber *)flags
{
    Api62_ReceivedNotifyMessage_receivedNotifyMessage *_object = [[Api62_ReceivedNotifyMessage_receivedNotifyMessage alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ReceivedNotifyMessage_receivedNotifyMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa384b779 serializeBlock:^bool (Api62_ReceivedNotifyMessage_receivedNotifyMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(receivedNotifyMessage id:%@ flags:%@)", self.pid, self.flags];
}

@end




@interface Api62_ChatParticipants ()

@property (nonatomic, strong) NSNumber * chatId;

@end

@interface Api62_ChatParticipants_chatParticipantsForbidden ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_ChatParticipant * selfParticipant;

@end

@interface Api62_ChatParticipants_chatParticipants ()

@property (nonatomic, strong) NSArray * participants;
@property (nonatomic, strong) NSNumber * version;

@end

@implementation Api62_ChatParticipants

+ (Api62_ChatParticipants_chatParticipantsForbidden *)chatParticipantsForbiddenWithFlags:(NSNumber *)flags chatId:(NSNumber *)chatId selfParticipant:(Api62_ChatParticipant *)selfParticipant
{
    Api62_ChatParticipants_chatParticipantsForbidden *_object = [[Api62_ChatParticipants_chatParticipantsForbidden alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.selfParticipant = selfParticipant;
    return _object;
}

+ (Api62_ChatParticipants_chatParticipants *)chatParticipantsWithChatId:(NSNumber *)chatId participants:(NSArray *)participants version:(NSNumber *)version
{
    Api62_ChatParticipants_chatParticipants *_object = [[Api62_ChatParticipants_chatParticipants alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participants = 
({
NSMutableArray *participants_copy = [[NSMutableArray alloc] initWithCapacity:participants.count];
for (id participants_item in participants)
{
    [participants_copy addObject:participants_item];
}
id participants_result = [Api62__Serializer addSerializerToObject:participants_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; participants_result;});
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ChatParticipants_chatParticipantsForbidden

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfc900c2b serializeBlock:^bool (Api62_ChatParticipants_chatParticipantsForbidden *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.selfParticipant data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatParticipantsForbidden flags:%@ chat_id:%@ self_participant:%@)", self.flags, self.chatId, self.selfParticipant];
}

@end

@implementation Api62_ChatParticipants_chatParticipants

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3f460fed serializeBlock:^bool (Api62_ChatParticipants_chatParticipants *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participants data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatParticipants chat_id:%@ participants:%@ version:%@)", self.chatId, self.participants, self.version];
}

@end




@interface Api62_InputStickeredMedia ()

@end

@interface Api62_InputStickeredMedia_inputStickeredMediaPhoto ()

@property (nonatomic, strong) Api62_InputPhoto * pid;

@end

@interface Api62_InputStickeredMedia_inputStickeredMediaDocument ()

@property (nonatomic, strong) Api62_InputDocument * pid;

@end

@implementation Api62_InputStickeredMedia

+ (Api62_InputStickeredMedia_inputStickeredMediaPhoto *)inputStickeredMediaPhotoWithPid:(Api62_InputPhoto *)pid
{
    Api62_InputStickeredMedia_inputStickeredMediaPhoto *_object = [[Api62_InputStickeredMedia_inputStickeredMediaPhoto alloc] init];
    _object.pid = pid;
    return _object;
}

+ (Api62_InputStickeredMedia_inputStickeredMediaDocument *)inputStickeredMediaDocumentWithPid:(Api62_InputDocument *)pid
{
    Api62_InputStickeredMedia_inputStickeredMediaDocument *_object = [[Api62_InputStickeredMedia_inputStickeredMediaDocument alloc] init];
    _object.pid = pid;
    return _object;
}


@end

@implementation Api62_InputStickeredMedia_inputStickeredMediaPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4a992157 serializeBlock:^bool (Api62_InputStickeredMedia_inputStickeredMediaPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputStickeredMediaPhoto id:%@)", self.pid];
}

@end

@implementation Api62_InputStickeredMedia_inputStickeredMediaDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x438865b serializeBlock:^bool (Api62_InputStickeredMedia_inputStickeredMediaDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputStickeredMediaDocument id:%@)", self.pid];
}

@end




@interface Api62_messages_FeaturedStickers ()

@end

@interface Api62_messages_FeaturedStickers_messages_featuredStickersNotModified ()

@end

@interface Api62_messages_FeaturedStickers_messages_featuredStickers ()

@property (nonatomic, strong) NSNumber * phash;
@property (nonatomic, strong) NSArray * sets;
@property (nonatomic, strong) NSArray * unread;

@end

@implementation Api62_messages_FeaturedStickers

+ (Api62_messages_FeaturedStickers_messages_featuredStickersNotModified *)messages_featuredStickersNotModified
{
    Api62_messages_FeaturedStickers_messages_featuredStickersNotModified *_object = [[Api62_messages_FeaturedStickers_messages_featuredStickersNotModified alloc] init];
    return _object;
}

+ (Api62_messages_FeaturedStickers_messages_featuredStickers *)messages_featuredStickersWithPhash:(NSNumber *)phash sets:(NSArray *)sets unread:(NSArray *)unread
{
    Api62_messages_FeaturedStickers_messages_featuredStickers *_object = [[Api62_messages_FeaturedStickers_messages_featuredStickers alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sets = 
({
NSMutableArray *sets_copy = [[NSMutableArray alloc] initWithCapacity:sets.count];
for (id sets_item in sets)
{
    [sets_copy addObject:sets_item];
}
id sets_result = [Api62__Serializer addSerializerToObject:sets_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sets_result;});
    _object.unread = 
({
NSMutableArray *unread_copy = [[NSMutableArray alloc] initWithCapacity:unread.count];
for (id unread_item in unread)
{
    [unread_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:unread_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id unread_result = [Api62__Serializer addSerializerToObject:unread_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; unread_result;});
    return _object;
}


@end

@implementation Api62_messages_FeaturedStickers_messages_featuredStickersNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4ede3cf serializeBlock:^bool (__unused Api62_messages_FeaturedStickers_messages_featuredStickersNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.featuredStickersNotModified)"];
}

@end

@implementation Api62_messages_FeaturedStickers_messages_featuredStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf89d88e5 serializeBlock:^bool (Api62_messages_FeaturedStickers_messages_featuredStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sets data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.unread data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.featuredStickers hash:%@ sets:%@ unread:%@)", self.phash, self.sets, self.unread];
}

@end




@interface Api62_PhoneCallDiscardReason ()

@end

@interface Api62_PhoneCallDiscardReason_phoneCallDiscardReasonMissed ()

@end

@interface Api62_PhoneCallDiscardReason_phoneCallDiscardReasonDisconnect ()

@end

@interface Api62_PhoneCallDiscardReason_phoneCallDiscardReasonHangup ()

@end

@interface Api62_PhoneCallDiscardReason_phoneCallDiscardReasonBusy ()

@end

@implementation Api62_PhoneCallDiscardReason

+ (Api62_PhoneCallDiscardReason_phoneCallDiscardReasonMissed *)phoneCallDiscardReasonMissed
{
    Api62_PhoneCallDiscardReason_phoneCallDiscardReasonMissed *_object = [[Api62_PhoneCallDiscardReason_phoneCallDiscardReasonMissed alloc] init];
    return _object;
}

+ (Api62_PhoneCallDiscardReason_phoneCallDiscardReasonDisconnect *)phoneCallDiscardReasonDisconnect
{
    Api62_PhoneCallDiscardReason_phoneCallDiscardReasonDisconnect *_object = [[Api62_PhoneCallDiscardReason_phoneCallDiscardReasonDisconnect alloc] init];
    return _object;
}

+ (Api62_PhoneCallDiscardReason_phoneCallDiscardReasonHangup *)phoneCallDiscardReasonHangup
{
    Api62_PhoneCallDiscardReason_phoneCallDiscardReasonHangup *_object = [[Api62_PhoneCallDiscardReason_phoneCallDiscardReasonHangup alloc] init];
    return _object;
}

+ (Api62_PhoneCallDiscardReason_phoneCallDiscardReasonBusy *)phoneCallDiscardReasonBusy
{
    Api62_PhoneCallDiscardReason_phoneCallDiscardReasonBusy *_object = [[Api62_PhoneCallDiscardReason_phoneCallDiscardReasonBusy alloc] init];
    return _object;
}


@end

@implementation Api62_PhoneCallDiscardReason_phoneCallDiscardReasonMissed

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x85e42301 serializeBlock:^bool (__unused Api62_PhoneCallDiscardReason_phoneCallDiscardReasonMissed *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallDiscardReasonMissed)"];
}

@end

@implementation Api62_PhoneCallDiscardReason_phoneCallDiscardReasonDisconnect

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe095c1a0 serializeBlock:^bool (__unused Api62_PhoneCallDiscardReason_phoneCallDiscardReasonDisconnect *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallDiscardReasonDisconnect)"];
}

@end

@implementation Api62_PhoneCallDiscardReason_phoneCallDiscardReasonHangup

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x57adc690 serializeBlock:^bool (__unused Api62_PhoneCallDiscardReason_phoneCallDiscardReasonHangup *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallDiscardReasonHangup)"];
}

@end

@implementation Api62_PhoneCallDiscardReason_phoneCallDiscardReasonBusy

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfaf7e8c9 serializeBlock:^bool (__unused Api62_PhoneCallDiscardReason_phoneCallDiscardReasonBusy *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallDiscardReasonBusy)"];
}

@end




@interface Api62_NearestDc ()

@property (nonatomic, strong) NSString * country;
@property (nonatomic, strong) NSNumber * thisDc;
@property (nonatomic, strong) NSNumber * nearestDc;

@end

@interface Api62_NearestDc_nearestDc ()

@end

@implementation Api62_NearestDc

+ (Api62_NearestDc_nearestDc *)nearestDcWithCountry:(NSString *)country thisDc:(NSNumber *)thisDc nearestDc:(NSNumber *)nearestDc
{
    Api62_NearestDc_nearestDc *_object = [[Api62_NearestDc_nearestDc alloc] init];
    _object.country = [Api62__Serializer addSerializerToObject:[country copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.thisDc = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:thisDc] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.nearestDc = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:nearestDc] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_NearestDc_nearestDc

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8e1a1775 serializeBlock:^bool (Api62_NearestDc_nearestDc *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.country data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.thisDc data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.nearestDc data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(nearestDc country:%d this_dc:%@ nearest_dc:%@)", (int)[self.country length], self.thisDc, self.nearestDc];
}

@end




@interface Api62_photos_Photos ()

@property (nonatomic, strong) NSArray * photos;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_photos_Photos_photos_photos ()

@end

@interface Api62_photos_Photos_photos_photosSlice ()

@property (nonatomic, strong) NSNumber * count;

@end

@implementation Api62_photos_Photos

+ (Api62_photos_Photos_photos_photos *)photos_photosWithPhotos:(NSArray *)photos users:(NSArray *)users
{
    Api62_photos_Photos_photos_photos *_object = [[Api62_photos_Photos_photos_photos alloc] init];
    _object.photos = 
({
NSMutableArray *photos_copy = [[NSMutableArray alloc] initWithCapacity:photos.count];
for (id photos_item in photos)
{
    [photos_copy addObject:photos_item];
}
id photos_result = [Api62__Serializer addSerializerToObject:photos_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; photos_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_photos_Photos_photos_photosSlice *)photos_photosSliceWithCount:(NSNumber *)count photos:(NSArray *)photos users:(NSArray *)users
{
    Api62_photos_Photos_photos_photosSlice *_object = [[Api62_photos_Photos_photos_photosSlice alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.photos = 
({
NSMutableArray *photos_copy = [[NSMutableArray alloc] initWithCapacity:photos.count];
for (id photos_item in photos)
{
    [photos_copy addObject:photos_item];
}
id photos_result = [Api62__Serializer addSerializerToObject:photos_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; photos_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_photos_Photos_photos_photos

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8dca6aa5 serializeBlock:^bool (Api62_photos_Photos_photos_photos *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photos data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photos.photos photos:%@ users:%@)", self.photos, self.users];
}

@end

@implementation Api62_photos_Photos_photos_photosSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x15051f54 serializeBlock:^bool (Api62_photos_Photos_photos_photosSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photos data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photos.photosSlice count:%@ photos:%@ users:%@)", self.count, self.photos, self.users];
}

@end




@interface Api62_contacts_ImportedContacts ()

@property (nonatomic, strong) NSArray * imported;
@property (nonatomic, strong) NSArray * retryContacts;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_ImportedContacts_contacts_importedContacts ()

@end

@implementation Api62_contacts_ImportedContacts

+ (Api62_contacts_ImportedContacts_contacts_importedContacts *)contacts_importedContactsWithImported:(NSArray *)imported retryContacts:(NSArray *)retryContacts users:(NSArray *)users
{
    Api62_contacts_ImportedContacts_contacts_importedContacts *_object = [[Api62_contacts_ImportedContacts_contacts_importedContacts alloc] init];
    _object.imported = 
({
NSMutableArray *imported_copy = [[NSMutableArray alloc] initWithCapacity:imported.count];
for (id imported_item in imported)
{
    [imported_copy addObject:imported_item];
}
id imported_result = [Api62__Serializer addSerializerToObject:imported_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; imported_result;});
    _object.retryContacts = 
({
NSMutableArray *retryContacts_copy = [[NSMutableArray alloc] initWithCapacity:retryContacts.count];
for (id retryContacts_item in retryContacts)
{
    [retryContacts_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:retryContacts_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id retryContacts_result = [Api62__Serializer addSerializerToObject:retryContacts_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; retryContacts_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_ImportedContacts_contacts_importedContacts

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xad524315 serializeBlock:^bool (Api62_contacts_ImportedContacts_contacts_importedContacts *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.imported data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.retryContacts data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.importedContacts imported:%@ retry_contacts:%@ users:%@)", self.imported, self.retryContacts, self.users];
}

@end




@interface Api62_phone_PhoneCall ()

@property (nonatomic, strong) Api62_PhoneCall * phoneCall;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_phone_PhoneCall_phone_phoneCall ()

@end

@implementation Api62_phone_PhoneCall

+ (Api62_phone_PhoneCall_phone_phoneCall *)phone_phoneCallWithPhoneCall:(Api62_PhoneCall *)phoneCall users:(NSArray *)users
{
    Api62_phone_PhoneCall_phone_phoneCall *_object = [[Api62_phone_PhoneCall_phone_phoneCall alloc] init];
    _object.phoneCall = phoneCall;
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_phone_PhoneCall_phone_phoneCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xec82e140 serializeBlock:^bool (Api62_phone_PhoneCall_phone_phoneCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneCall data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phone.phoneCall phone_call:%@ users:%@)", self.phoneCall, self.users];
}

@end




@interface Api62_Bool ()

@end

@interface Api62_Bool_boolFalse ()

@end

@interface Api62_Bool_boolTrue ()

@end

@interface Api62_Bool_messages_editInlineBotMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputBotInlineMessageID * pid;
@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) Api62_ReplyMarkup * replyMarkup;
@property (nonatomic, strong) NSArray * entities;

@end

@interface Api62_Bool_messages_setBotCallbackAnswer ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * queryId;
@property (nonatomic, strong) NSString * message;

@end

@interface Api62_Bool_messages_setInlineBotResults ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * queryId;
@property (nonatomic, strong) NSArray * results;
@property (nonatomic, strong) NSNumber * cacheTime;
@property (nonatomic, strong) NSString * nextOffset;
@property (nonatomic, strong) Api62_InlineBotSwitchPM * switchPm;

@end

@interface Api62_Bool_account_registerDevice ()

@property (nonatomic, strong) NSNumber * tokenType;
@property (nonatomic, strong) NSString * token;

@end

@interface Api62_Bool_messages_readFeaturedStickers ()

@property (nonatomic, strong) NSArray * pid;

@end

@interface Api62_Bool_messages_reorderStickerSets ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSArray * order;

@end

@interface Api62_Bool_auth_dropTempAuthKeys ()

@property (nonatomic, strong) NSArray * exceptAuthKeys;

@end

@interface Api62_Bool_messages_saveRecentSticker ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_InputDocument * pid;
@property (nonatomic, strong) Api62_Bool * unsave;

@end

@interface Api62_Bool_messages_clearRecentStickers ()

@property (nonatomic, strong) NSNumber * flags;

@end

@implementation Api62_Bool

+ (Api62_Bool_boolFalse *)boolFalse
{
    Api62_Bool_boolFalse *_object = [[Api62_Bool_boolFalse alloc] init];
    return _object;
}

+ (Api62_Bool_boolTrue *)boolTrue
{
    Api62_Bool_boolTrue *_object = [[Api62_Bool_boolTrue alloc] init];
    return _object;
}

+ (Api62_Bool_messages_editInlineBotMessage *)messages_editInlineBotMessageWithFlags:(NSNumber *)flags pid:(Api62_InputBotInlineMessageID *)pid message:(NSString *)message replyMarkup:(Api62_ReplyMarkup *)replyMarkup entities:(NSArray *)entities
{
    Api62_Bool_messages_editInlineBotMessage *_object = [[Api62_Bool_messages_editInlineBotMessage alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = pid;
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    return _object;
}

+ (Api62_Bool_messages_setBotCallbackAnswer *)messages_setBotCallbackAnswerWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId message:(NSString *)message
{
    Api62_Bool_messages_setBotCallbackAnswer *_object = [[Api62_Bool_messages_setBotCallbackAnswer alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.queryId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Bool_messages_setInlineBotResults *)messages_setInlineBotResultsWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId results:(NSArray *)results cacheTime:(NSNumber *)cacheTime nextOffset:(NSString *)nextOffset switchPm:(Api62_InlineBotSwitchPM *)switchPm
{
    Api62_Bool_messages_setInlineBotResults *_object = [[Api62_Bool_messages_setInlineBotResults alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.queryId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.results = 
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;});
    _object.cacheTime = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cacheTime] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.nextOffset = [Api62__Serializer addSerializerToObject:[nextOffset copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.switchPm = switchPm;
    return _object;
}

+ (Api62_Bool_account_registerDevice *)account_registerDeviceWithTokenType:(NSNumber *)tokenType token:(NSString *)token
{
    Api62_Bool_account_registerDevice *_object = [[Api62_Bool_account_registerDevice alloc] init];
    _object.tokenType = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:tokenType] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.token = [Api62__Serializer addSerializerToObject:[token copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_Bool_messages_readFeaturedStickers *)messages_readFeaturedStickersWithPid:(NSArray *)pid
{
    Api62_Bool_messages_readFeaturedStickers *_object = [[Api62_Bool_messages_readFeaturedStickers alloc] init];
    _object.pid = 
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;});
    return _object;
}

+ (Api62_Bool_messages_reorderStickerSets *)messages_reorderStickerSetsWithFlags:(NSNumber *)flags order:(NSArray *)order
{
    Api62_Bool_messages_reorderStickerSets *_object = [[Api62_Bool_messages_reorderStickerSets alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.order = 
({
NSMutableArray *order_copy = [[NSMutableArray alloc] initWithCapacity:order.count];
for (id order_item in order)
{
    [order_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:order_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id order_result = [Api62__Serializer addSerializerToObject:order_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; order_result;});
    return _object;
}

+ (Api62_Bool_auth_dropTempAuthKeys *)auth_dropTempAuthKeysWithExceptAuthKeys:(NSArray *)exceptAuthKeys
{
    Api62_Bool_auth_dropTempAuthKeys *_object = [[Api62_Bool_auth_dropTempAuthKeys alloc] init];
    _object.exceptAuthKeys = 
({
NSMutableArray *exceptAuthKeys_copy = [[NSMutableArray alloc] initWithCapacity:exceptAuthKeys.count];
for (id exceptAuthKeys_item in exceptAuthKeys)
{
    [exceptAuthKeys_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:exceptAuthKeys_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id exceptAuthKeys_result = [Api62__Serializer addSerializerToObject:exceptAuthKeys_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; exceptAuthKeys_result;});
    return _object;
}

+ (Api62_Bool_messages_saveRecentSticker *)messages_saveRecentStickerWithFlags:(NSNumber *)flags pid:(Api62_InputDocument *)pid unsave:(Api62_Bool *)unsave
{
    Api62_Bool_messages_saveRecentSticker *_object = [[Api62_Bool_messages_saveRecentSticker alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = pid;
    _object.unsave = unsave;
    return _object;
}

+ (Api62_Bool_messages_clearRecentStickers *)messages_clearRecentStickersWithFlags:(NSNumber *)flags
{
    Api62_Bool_messages_clearRecentStickers *_object = [[Api62_Bool_messages_clearRecentStickers alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_Bool_boolFalse

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbc799737 serializeBlock:^bool (__unused Api62_Bool_boolFalse *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(boolFalse)"];
}

@end

@implementation Api62_Bool_boolTrue

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x997275b5 serializeBlock:^bool (__unused Api62_Bool_boolTrue *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(boolTrue)"];
}

@end

@implementation Api62_Bool_messages_editInlineBotMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x130c2c85 serializeBlock:^bool (Api62_Bool_messages_editInlineBotMessage *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 11)) {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.editInlineBotMessage flags:%@ id:%@ message:%d reply_markup:%@ entities:%@)", self.flags, self.pid, (int)[self.message length], self.replyMarkup, self.entities];
}

@end

@implementation Api62_Bool_messages_setBotCallbackAnswer

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x481c591a serializeBlock:^bool (Api62_Bool_messages_setBotCallbackAnswer *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.queryId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.setBotCallbackAnswer flags:%@ query_id:%@ message:%d)", self.flags, self.queryId, (int)[self.message length]];
}

@end

@implementation Api62_Bool_messages_setInlineBotResults

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xeb5ea206 serializeBlock:^bool (Api62_Bool_messages_setInlineBotResults *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.queryId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.results data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.cacheTime data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.nextOffset data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.switchPm data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.setInlineBotResults flags:%@ query_id:%@ results:%@ cache_time:%@ next_offset:%d switch_pm:%@)", self.flags, self.queryId, self.results, self.cacheTime, (int)[self.nextOffset length], self.switchPm];
}

@end

@implementation Api62_Bool_account_registerDevice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x637ea878 serializeBlock:^bool (Api62_Bool_account_registerDevice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.tokenType data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.token data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.registerDevice token_type:%@ token:%d)", self.tokenType, (int)[self.token length]];
}

@end

@implementation Api62_Bool_messages_readFeaturedStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5b118126 serializeBlock:^bool (Api62_Bool_messages_readFeaturedStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.readFeaturedStickers id:%@)", self.pid];
}

@end

@implementation Api62_Bool_messages_reorderStickerSets

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x78337739 serializeBlock:^bool (Api62_Bool_messages_reorderStickerSets *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.order data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.reorderStickerSets flags:%@ order:%@)", self.flags, self.order];
}

@end

@implementation Api62_Bool_auth_dropTempAuthKeys

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8e48a188 serializeBlock:^bool (Api62_Bool_auth_dropTempAuthKeys *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.exceptAuthKeys data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.dropTempAuthKeys except_auth_keys:%@)", self.exceptAuthKeys];
}

@end

@implementation Api62_Bool_messages_saveRecentSticker

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x392718f8 serializeBlock:^bool (Api62_Bool_messages_saveRecentSticker *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.unsave data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.saveRecentSticker flags:%@ id:%@ unsave:%@)", self.flags, self.pid, self.unsave];
}

@end

@implementation Api62_Bool_messages_clearRecentStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8999602d serializeBlock:^bool (Api62_Bool_messages_clearRecentStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.clearRecentStickers flags:%@)", self.flags];
}

@end




@interface Api62_MessageFwdHeader ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * fromId;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * channelId;
@property (nonatomic, strong) NSNumber * channelPost;

@end

@interface Api62_MessageFwdHeader_messageFwdHeader ()

@end

@implementation Api62_MessageFwdHeader

+ (Api62_MessageFwdHeader_messageFwdHeader *)messageFwdHeaderWithFlags:(NSNumber *)flags fromId:(NSNumber *)fromId date:(NSNumber *)date channelId:(NSNumber *)channelId channelPost:(NSNumber *)channelPost
{
    Api62_MessageFwdHeader_messageFwdHeader *_object = [[Api62_MessageFwdHeader_messageFwdHeader alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.fromId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fromId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.channelPost = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelPost] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_MessageFwdHeader_messageFwdHeader

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc786ddcb serializeBlock:^bool (Api62_MessageFwdHeader_messageFwdHeader *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.fromId data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.channelPost data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageFwdHeader flags:%@ from_id:%@ date:%@ channel_id:%@ channel_post:%@)", self.flags, self.fromId, self.date, self.channelId, self.channelPost];
}

@end




@interface Api62_help_Support ()

@property (nonatomic, strong) NSString * phoneNumber;
@property (nonatomic, strong) Api62_User * user;

@end

@interface Api62_help_Support_help_support ()

@end

@implementation Api62_help_Support

+ (Api62_help_Support_help_support *)help_supportWithPhoneNumber:(NSString *)phoneNumber user:(Api62_User *)user
{
    Api62_help_Support_help_support *_object = [[Api62_help_Support_help_support alloc] init];
    _object.phoneNumber = [Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.user = user;
    return _object;
}


@end

@implementation Api62_help_Support_help_support

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x17c6b5f6 serializeBlock:^bool (Api62_help_Support_help_support *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phoneNumber data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.user data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.support phone_number:%d user:%@)", (int)[self.phoneNumber length], self.user];
}

@end




@interface Api62_ChatLocated ()

@property (nonatomic, strong) NSNumber * chatId;
@property (nonatomic, strong) NSNumber * distance;

@end

@interface Api62_ChatLocated_chatLocated ()

@end

@implementation Api62_ChatLocated

+ (Api62_ChatLocated_chatLocated *)chatLocatedWithChatId:(NSNumber *)chatId distance:(NSNumber *)distance
{
    Api62_ChatLocated_chatLocated *_object = [[Api62_ChatLocated_chatLocated alloc] init];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.distance = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:distance] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ChatLocated_chatLocated

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3631cf4c serializeBlock:^bool (Api62_ChatLocated_chatLocated *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.distance data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatLocated chat_id:%@ distance:%@)", self.chatId, self.distance];
}

@end




@interface Api62_MessagesFilter ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterEmpty ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterPhotos ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterVideo ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterPhotoVideo ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterDocument ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterPhotoVideoDocuments ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterVoice ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterMusic ()

@end

@interface Api62_MessagesFilter_inputMessagesFilterChatPhotos ()

@end

@implementation Api62_MessagesFilter

+ (Api62_MessagesFilter_inputMessagesFilterEmpty *)inputMessagesFilterEmpty
{
    Api62_MessagesFilter_inputMessagesFilterEmpty *_object = [[Api62_MessagesFilter_inputMessagesFilterEmpty alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterPhotos *)inputMessagesFilterPhotos
{
    Api62_MessagesFilter_inputMessagesFilterPhotos *_object = [[Api62_MessagesFilter_inputMessagesFilterPhotos alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterVideo *)inputMessagesFilterVideo
{
    Api62_MessagesFilter_inputMessagesFilterVideo *_object = [[Api62_MessagesFilter_inputMessagesFilterVideo alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterPhotoVideo *)inputMessagesFilterPhotoVideo
{
    Api62_MessagesFilter_inputMessagesFilterPhotoVideo *_object = [[Api62_MessagesFilter_inputMessagesFilterPhotoVideo alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterDocument *)inputMessagesFilterDocument
{
    Api62_MessagesFilter_inputMessagesFilterDocument *_object = [[Api62_MessagesFilter_inputMessagesFilterDocument alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterPhotoVideoDocuments *)inputMessagesFilterPhotoVideoDocuments
{
    Api62_MessagesFilter_inputMessagesFilterPhotoVideoDocuments *_object = [[Api62_MessagesFilter_inputMessagesFilterPhotoVideoDocuments alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterVoice *)inputMessagesFilterVoice
{
    Api62_MessagesFilter_inputMessagesFilterVoice *_object = [[Api62_MessagesFilter_inputMessagesFilterVoice alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterMusic *)inputMessagesFilterMusic
{
    Api62_MessagesFilter_inputMessagesFilterMusic *_object = [[Api62_MessagesFilter_inputMessagesFilterMusic alloc] init];
    return _object;
}

+ (Api62_MessagesFilter_inputMessagesFilterChatPhotos *)inputMessagesFilterChatPhotos
{
    Api62_MessagesFilter_inputMessagesFilterChatPhotos *_object = [[Api62_MessagesFilter_inputMessagesFilterChatPhotos alloc] init];
    return _object;
}


@end

@implementation Api62_MessagesFilter_inputMessagesFilterEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x57e2f66c serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterEmpty)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterPhotos

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9609a51c serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterPhotos *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterPhotos)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterVideo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9fc00e65 serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterVideo *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterVideo)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterPhotoVideo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x56e9f0e4 serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterPhotoVideo *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterPhotoVideo)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9eddf188 serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterDocument *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterDocument)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterPhotoVideoDocuments

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd95e73bb serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterPhotoVideoDocuments *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterPhotoVideoDocuments)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterVoice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x50f5c392 serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterVoice *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterVoice)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterMusic

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3751b49e serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterMusic *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterMusic)"];
}

@end

@implementation Api62_MessagesFilter_inputMessagesFilterChatPhotos

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3a20ecb8 serializeBlock:^bool (__unused Api62_MessagesFilter_inputMessagesFilterChatPhotos *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessagesFilterChatPhotos)"];
}

@end




@interface Api62_messages_Dialogs ()

@property (nonatomic, strong) NSArray * dialogs;
@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_messages_Dialogs_messages_dialogs ()

@end

@interface Api62_messages_Dialogs_messages_dialogsSlice ()

@property (nonatomic, strong) NSNumber * count;

@end

@implementation Api62_messages_Dialogs

+ (Api62_messages_Dialogs_messages_dialogs *)messages_dialogsWithDialogs:(NSArray *)dialogs messages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_Dialogs_messages_dialogs *_object = [[Api62_messages_Dialogs_messages_dialogs alloc] init];
    _object.dialogs = 
({
NSMutableArray *dialogs_copy = [[NSMutableArray alloc] initWithCapacity:dialogs.count];
for (id dialogs_item in dialogs)
{
    [dialogs_copy addObject:dialogs_item];
}
id dialogs_result = [Api62__Serializer addSerializerToObject:dialogs_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; dialogs_result;});
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_messages_Dialogs_messages_dialogsSlice *)messages_dialogsSliceWithCount:(NSNumber *)count dialogs:(NSArray *)dialogs messages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_Dialogs_messages_dialogsSlice *_object = [[Api62_messages_Dialogs_messages_dialogsSlice alloc] init];
    _object.count = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:count] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.dialogs = 
({
NSMutableArray *dialogs_copy = [[NSMutableArray alloc] initWithCapacity:dialogs.count];
for (id dialogs_item in dialogs)
{
    [dialogs_copy addObject:dialogs_item];
}
id dialogs_result = [Api62__Serializer addSerializerToObject:dialogs_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; dialogs_result;});
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_messages_Dialogs_messages_dialogs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x15ba6c40 serializeBlock:^bool (Api62_messages_Dialogs_messages_dialogs *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.dialogs data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.dialogs dialogs:%@ messages:%@ chats:%@ users:%@)", self.dialogs, self.messages, self.chats, self.users];
}

@end

@implementation Api62_messages_Dialogs_messages_dialogsSlice

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x71e094f3 serializeBlock:^bool (Api62_messages_Dialogs_messages_dialogsSlice *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.count data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.dialogs data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.dialogsSlice count:%@ dialogs:%@ messages:%@ chats:%@ users:%@)", self.count, self.dialogs, self.messages, self.chats, self.users];
}

@end




@interface Api62_help_InviteText ()

@end

@interface Api62_help_InviteText_help_inviteText ()

@property (nonatomic, strong) NSString * message;

@end

@interface Api62_help_InviteText_help_getInviteText ()

@end

@implementation Api62_help_InviteText

+ (Api62_help_InviteText_help_inviteText *)help_inviteTextWithMessage:(NSString *)message
{
    Api62_help_InviteText_help_inviteText *_object = [[Api62_help_InviteText_help_inviteText alloc] init];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_help_InviteText_help_getInviteText *)help_getInviteText
{
    Api62_help_InviteText_help_getInviteText *_object = [[Api62_help_InviteText_help_getInviteText alloc] init];
    return _object;
}


@end

@implementation Api62_help_InviteText_help_inviteText

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x18cb9f78 serializeBlock:^bool (Api62_help_InviteText_help_inviteText *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.inviteText message:%d)", (int)[self.message length]];
}

@end

@implementation Api62_help_InviteText_help_getInviteText

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4d392343 serializeBlock:^bool (__unused Api62_help_InviteText_help_getInviteText *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.getInviteText)"];
}

@end




@interface Api62_ContactSuggested ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * mutualContacts;

@end

@interface Api62_ContactSuggested_contactSuggested ()

@end

@implementation Api62_ContactSuggested

+ (Api62_ContactSuggested_contactSuggested *)contactSuggestedWithUserId:(NSNumber *)userId mutualContacts:(NSNumber *)mutualContacts
{
    Api62_ContactSuggested_contactSuggested *_object = [[Api62_ContactSuggested_contactSuggested alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.mutualContacts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:mutualContacts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_ContactSuggested_contactSuggested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3de191a1 serializeBlock:^bool (Api62_ContactSuggested_contactSuggested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.mutualContacts data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactSuggested user_id:%@ mutual_contacts:%@)", self.userId, self.mutualContacts];
}

@end




@interface Api62_BotInlineMessage ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_ReplyMarkup * replyMarkup;

@end

@interface Api62_BotInlineMessage_botInlineMessageMediaAuto ()

@property (nonatomic, strong) NSString * caption;

@end

@interface Api62_BotInlineMessage_botInlineMessageText ()

@property (nonatomic, strong) NSString * message;
@property (nonatomic, strong) NSArray * entities;

@end

@interface Api62_BotInlineMessage_botInlineMessageMediaGeo ()

@property (nonatomic, strong) Api62_GeoPoint * geo;

@end

@interface Api62_BotInlineMessage_botInlineMessageMediaVenue ()

@property (nonatomic, strong) Api62_GeoPoint * geo;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * address;
@property (nonatomic, strong) NSString * provider;
@property (nonatomic, strong) NSString * venueId;

@end

@interface Api62_BotInlineMessage_botInlineMessageMediaContact ()

@property (nonatomic, strong) NSString * phoneNumber;
@property (nonatomic, strong) NSString * firstName;
@property (nonatomic, strong) NSString * lastName;

@end

@implementation Api62_BotInlineMessage

+ (Api62_BotInlineMessage_botInlineMessageMediaAuto *)botInlineMessageMediaAutoWithFlags:(NSNumber *)flags caption:(NSString *)caption replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_BotInlineMessage_botInlineMessageMediaAuto *_object = [[Api62_BotInlineMessage_botInlineMessageMediaAuto alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.caption = [Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_BotInlineMessage_botInlineMessageText *)botInlineMessageTextWithFlags:(NSNumber *)flags message:(NSString *)message entities:(NSArray *)entities replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_BotInlineMessage_botInlineMessageText *_object = [[Api62_BotInlineMessage_botInlineMessageText alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.message = [Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.entities = 
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;});
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_BotInlineMessage_botInlineMessageMediaGeo *)botInlineMessageMediaGeoWithFlags:(NSNumber *)flags geo:(Api62_GeoPoint *)geo replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_BotInlineMessage_botInlineMessageMediaGeo *_object = [[Api62_BotInlineMessage_botInlineMessageMediaGeo alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.geo = geo;
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_BotInlineMessage_botInlineMessageMediaVenue *)botInlineMessageMediaVenueWithFlags:(NSNumber *)flags geo:(Api62_GeoPoint *)geo title:(NSString *)title address:(NSString *)address provider:(NSString *)provider venueId:(NSString *)venueId replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_BotInlineMessage_botInlineMessageMediaVenue *_object = [[Api62_BotInlineMessage_botInlineMessageMediaVenue alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.geo = geo;
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.address = [Api62__Serializer addSerializerToObject:[address copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.provider = [Api62__Serializer addSerializerToObject:[provider copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.venueId = [Api62__Serializer addSerializerToObject:[venueId copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    return _object;
}

+ (Api62_BotInlineMessage_botInlineMessageMediaContact *)botInlineMessageMediaContactWithFlags:(NSNumber *)flags phoneNumber:(NSString *)phoneNumber firstName:(NSString *)firstName lastName:(NSString *)lastName replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    Api62_BotInlineMessage_botInlineMessageMediaContact *_object = [[Api62_BotInlineMessage_botInlineMessageMediaContact alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.phoneNumber = [Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.firstName = [Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.lastName = [Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.replyMarkup = replyMarkup;
    return _object;
}


@end

@implementation Api62_BotInlineMessage_botInlineMessageMediaAuto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa74b15b serializeBlock:^bool (Api62_BotInlineMessage_botInlineMessageMediaAuto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.caption data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineMessageMediaAuto flags:%@ caption:%d reply_markup:%@)", self.flags, (int)[self.caption length], self.replyMarkup];
}

@end

@implementation Api62_BotInlineMessage_botInlineMessageText

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8c7f65e2 serializeBlock:^bool (Api62_BotInlineMessage_botInlineMessageText *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.message data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.entities data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineMessageText flags:%@ message:%d entities:%@ reply_markup:%@)", self.flags, (int)[self.message length], self.entities, self.replyMarkup];
}

@end

@implementation Api62_BotInlineMessage_botInlineMessageMediaGeo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3a8fd8b8 serializeBlock:^bool (Api62_BotInlineMessage_botInlineMessageMediaGeo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineMessageMediaGeo flags:%@ geo:%@ reply_markup:%@)", self.flags, self.geo, self.replyMarkup];
}

@end

@implementation Api62_BotInlineMessage_botInlineMessageMediaVenue

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4366232e serializeBlock:^bool (Api62_BotInlineMessage_botInlineMessageMediaVenue *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.geo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.address data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.provider data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.venueId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineMessageMediaVenue flags:%@ geo:%@ title:%d address:%d provider:%d venue_id:%d reply_markup:%@)", self.flags, self.geo, (int)[self.title length], (int)[self.address length], (int)[self.provider length], (int)[self.venueId length], self.replyMarkup];
}

@end

@implementation Api62_BotInlineMessage_botInlineMessageMediaContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x35edb4d4 serializeBlock:^bool (Api62_BotInlineMessage_botInlineMessageMediaContact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.phoneNumber data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.firstName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.lastName data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.replyMarkup data:data addSignature:true])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(botInlineMessageMediaContact flags:%@ phone_number:%d first_name:%d last_name:%d reply_markup:%@)", self.flags, (int)[self.phoneNumber length], (int)[self.firstName length], (int)[self.lastName length], self.replyMarkup];
}

@end




@interface Api62_InputPeerNotifySettings ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * muteUntil;
@property (nonatomic, strong) NSString * sound;

@end

@interface Api62_InputPeerNotifySettings_inputPeerNotifySettings ()

@end

@implementation Api62_InputPeerNotifySettings

+ (Api62_InputPeerNotifySettings_inputPeerNotifySettings *)inputPeerNotifySettingsWithFlags:(NSNumber *)flags muteUntil:(NSNumber *)muteUntil sound:(NSString *)sound
{
    Api62_InputPeerNotifySettings_inputPeerNotifySettings *_object = [[Api62_InputPeerNotifySettings_inputPeerNotifySettings alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.muteUntil = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:muteUntil] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sound = [Api62__Serializer addSerializerToObject:[sound copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_InputPeerNotifySettings_inputPeerNotifySettings

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x38935eb2 serializeBlock:^bool (Api62_InputPeerNotifySettings_inputPeerNotifySettings *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.muteUntil data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sound data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPeerNotifySettings flags:%@ mute_until:%@ sound:%d)", self.flags, self.muteUntil, (int)[self.sound length]];
}

@end




@interface Api62_ExportedChatInvite ()

@end

@interface Api62_ExportedChatInvite_chatInviteEmpty ()

@end

@interface Api62_ExportedChatInvite_chatInviteExported ()

@property (nonatomic, strong) NSString * link;

@end

@implementation Api62_ExportedChatInvite

+ (Api62_ExportedChatInvite_chatInviteEmpty *)chatInviteEmpty
{
    Api62_ExportedChatInvite_chatInviteEmpty *_object = [[Api62_ExportedChatInvite_chatInviteEmpty alloc] init];
    return _object;
}

+ (Api62_ExportedChatInvite_chatInviteExported *)chatInviteExportedWithLink:(NSString *)link
{
    Api62_ExportedChatInvite_chatInviteExported *_object = [[Api62_ExportedChatInvite_chatInviteExported alloc] init];
    _object.link = [Api62__Serializer addSerializerToObject:[link copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_ExportedChatInvite_chatInviteEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x69df3769 serializeBlock:^bool (__unused Api62_ExportedChatInvite_chatInviteEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatInviteEmpty)"];
}

@end

@implementation Api62_ExportedChatInvite_chatInviteExported

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfc2e05bc serializeBlock:^bool (Api62_ExportedChatInvite_chatInviteExported *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.link data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(chatInviteExported link:%d)", (int)[self.link length]];
}

@end




@interface Api62_DcNetworkStats ()

@property (nonatomic, strong) NSNumber * dcId;
@property (nonatomic, strong) NSString * ipAddress;
@property (nonatomic, strong) NSArray * pings;

@end

@interface Api62_DcNetworkStats_dcPingStats ()

@end

@implementation Api62_DcNetworkStats

+ (Api62_DcNetworkStats_dcPingStats *)dcPingStatsWithDcId:(NSNumber *)dcId ipAddress:(NSString *)ipAddress pings:(NSArray *)pings
{
    Api62_DcNetworkStats_dcPingStats *_object = [[Api62_DcNetworkStats_dcPingStats alloc] init];
    _object.dcId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dcId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ipAddress = [Api62__Serializer addSerializerToObject:[ipAddress copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pings = 
({
NSMutableArray *pings_copy = [[NSMutableArray alloc] initWithCapacity:pings.count];
for (id pings_item in pings)
{
    [pings_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pings_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pings_result = [Api62__Serializer addSerializerToObject:pings_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pings_result;});
    return _object;
}


@end

@implementation Api62_DcNetworkStats_dcPingStats

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3203df8c serializeBlock:^bool (Api62_DcNetworkStats_dcPingStats *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.dcId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ipAddress data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pings data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(dcPingStats dc_id:%@ ip_address:%d pings:%@)", self.dcId, (int)[self.ipAddress length], self.pings];
}

@end




@interface Api62_Authorization ()

@property (nonatomic, strong) NSNumber * phash;
@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * deviceModel;
@property (nonatomic, strong) NSString * platform;
@property (nonatomic, strong) NSString * systemVersion;
@property (nonatomic, strong) NSNumber * apiId;
@property (nonatomic, strong) NSString * appName;
@property (nonatomic, strong) NSString * appVersion;
@property (nonatomic, strong) NSNumber * dateCreated;
@property (nonatomic, strong) NSNumber * dateActive;
@property (nonatomic, strong) NSString * ip;
@property (nonatomic, strong) NSString * country;
@property (nonatomic, strong) NSString * region;

@end

@interface Api62_Authorization_authorization ()

@end

@implementation Api62_Authorization

+ (Api62_Authorization_authorization *)authorizationWithPhash:(NSNumber *)phash flags:(NSNumber *)flags deviceModel:(NSString *)deviceModel platform:(NSString *)platform systemVersion:(NSString *)systemVersion apiId:(NSNumber *)apiId appName:(NSString *)appName appVersion:(NSString *)appVersion dateCreated:(NSNumber *)dateCreated dateActive:(NSNumber *)dateActive ip:(NSString *)ip country:(NSString *)country region:(NSString *)region
{
    Api62_Authorization_authorization *_object = [[Api62_Authorization_authorization alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.deviceModel = [Api62__Serializer addSerializerToObject:[deviceModel copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.platform = [Api62__Serializer addSerializerToObject:[platform copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.systemVersion = [Api62__Serializer addSerializerToObject:[systemVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.apiId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:apiId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.appName = [Api62__Serializer addSerializerToObject:[appName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.appVersion = [Api62__Serializer addSerializerToObject:[appVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.dateCreated = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dateCreated] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.dateActive = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dateActive] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.ip = [Api62__Serializer addSerializerToObject:[ip copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.country = [Api62__Serializer addSerializerToObject:[country copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.region = [Api62__Serializer addSerializerToObject:[region copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_Authorization_authorization

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7bf2e6f6 serializeBlock:^bool (Api62_Authorization_authorization *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.deviceModel data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.platform data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.systemVersion data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.apiId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.appName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.appVersion data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.dateCreated data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.dateActive data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ip data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.country data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.region data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(authorization hash:%@ flags:%@ device_model:%d platform:%d system_version:%d api_id:%@ app_name:%d app_version:%d date_created:%@ date_active:%@ ip:%d country:%d region:%d)", self.phash, self.flags, (int)[self.deviceModel length], (int)[self.platform length], (int)[self.systemVersion length], self.apiId, (int)[self.appName length], (int)[self.appVersion length], self.dateCreated, self.dateActive, (int)[self.ip length], (int)[self.country length], (int)[self.region length]];
}

@end




@interface Api62_MaskCoords ()

@property (nonatomic, strong) NSNumber * n;
@property (nonatomic, strong) NSNumber * x;
@property (nonatomic, strong) NSNumber * y;
@property (nonatomic, strong) NSNumber * zoom;

@end

@interface Api62_MaskCoords_maskCoords ()

@end

@implementation Api62_MaskCoords

+ (Api62_MaskCoords_maskCoords *)maskCoordsWithN:(NSNumber *)n x:(NSNumber *)x y:(NSNumber *)y zoom:(NSNumber *)zoom
{
    Api62_MaskCoords_maskCoords *_object = [[Api62_MaskCoords_maskCoords alloc] init];
    _object.n = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:n] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.x = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:x] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.y = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:y] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    _object.zoom = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:zoom] serializer:[[Api62_BuiltinSerializer_Double alloc] init]];
    return _object;
}


@end

@implementation Api62_MaskCoords_maskCoords

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xaed6dbb2 serializeBlock:^bool (Api62_MaskCoords_maskCoords *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.n data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.x data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.y data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.zoom data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(maskCoords n:%@ x:%@ y:%@ zoom:%@)", self.n, self.x, self.y, self.zoom];
}

@end




@interface Api62_messages_AllStickers ()

@end

@interface Api62_messages_AllStickers_messages_allStickersNotModified ()

@end

@interface Api62_messages_AllStickers_messages_allStickers ()

@property (nonatomic, strong) NSNumber * phash;
@property (nonatomic, strong) NSArray * sets;

@end

@interface Api62_messages_AllStickers_messages_getAllStickers ()

@property (nonatomic, strong) NSNumber * phash;

@end

@interface Api62_messages_AllStickers_messages_getMaskStickers ()

@property (nonatomic, strong) NSNumber * phash;

@end

@implementation Api62_messages_AllStickers

+ (Api62_messages_AllStickers_messages_allStickersNotModified *)messages_allStickersNotModified
{
    Api62_messages_AllStickers_messages_allStickersNotModified *_object = [[Api62_messages_AllStickers_messages_allStickersNotModified alloc] init];
    return _object;
}

+ (Api62_messages_AllStickers_messages_allStickers *)messages_allStickersWithPhash:(NSNumber *)phash sets:(NSArray *)sets
{
    Api62_messages_AllStickers_messages_allStickers *_object = [[Api62_messages_AllStickers_messages_allStickers alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sets = 
({
NSMutableArray *sets_copy = [[NSMutableArray alloc] initWithCapacity:sets.count];
for (id sets_item in sets)
{
    [sets_copy addObject:sets_item];
}
id sets_result = [Api62__Serializer addSerializerToObject:sets_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; sets_result;});
    return _object;
}

+ (Api62_messages_AllStickers_messages_getAllStickers *)messages_getAllStickersWithPhash:(NSNumber *)phash
{
    Api62_messages_AllStickers_messages_getAllStickers *_object = [[Api62_messages_AllStickers_messages_getAllStickers alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_messages_AllStickers_messages_getMaskStickers *)messages_getMaskStickersWithPhash:(NSNumber *)phash
{
    Api62_messages_AllStickers_messages_getMaskStickers *_object = [[Api62_messages_AllStickers_messages_getMaskStickers alloc] init];
    _object.phash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_messages_AllStickers_messages_allStickersNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xe86602c3 serializeBlock:^bool (__unused Api62_messages_AllStickers_messages_allStickersNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.allStickersNotModified)"];
}

@end

@implementation Api62_messages_AllStickers_messages_allStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xedfd405f serializeBlock:^bool (Api62_messages_AllStickers_messages_allStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sets data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.allStickers hash:%@ sets:%@)", self.phash, self.sets];
}

@end

@implementation Api62_messages_AllStickers_messages_getAllStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1c9618b1 serializeBlock:^bool (Api62_messages_AllStickers_messages_getAllStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.getAllStickers hash:%@)", self.phash];
}

@end

@implementation Api62_messages_AllStickers_messages_getMaskStickers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x65b8c79f serializeBlock:^bool (Api62_messages_AllStickers_messages_getMaskStickers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.phash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.getMaskStickers hash:%@)", self.phash];
}

@end




@interface Api62_PhoneConnection ()

@end

@interface Api62_PhoneConnection_phoneConnectionNotReady ()

@end

@interface Api62_PhoneConnection_phoneConnection ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSString * ip;
@property (nonatomic, strong) NSString * ipv6;
@property (nonatomic, strong) NSNumber * port;
@property (nonatomic, strong) NSData * peerTag;

@end

@implementation Api62_PhoneConnection

+ (Api62_PhoneConnection_phoneConnectionNotReady *)phoneConnectionNotReady
{
    Api62_PhoneConnection_phoneConnectionNotReady *_object = [[Api62_PhoneConnection_phoneConnectionNotReady alloc] init];
    return _object;
}

+ (Api62_PhoneConnection_phoneConnection *)phoneConnectionWithPid:(NSNumber *)pid ip:(NSString *)ip ipv6:(NSString *)ipv6 port:(NSNumber *)port peerTag:(NSData *)peerTag
{
    Api62_PhoneConnection_phoneConnection *_object = [[Api62_PhoneConnection_phoneConnection alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.ip = [Api62__Serializer addSerializerToObject:[ip copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.ipv6 = [Api62__Serializer addSerializerToObject:[ipv6 copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.port = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:port] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.peerTag = [Api62__Serializer addSerializerToObject:[peerTag copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_PhoneConnection_phoneConnectionNotReady

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x26bc3c3 serializeBlock:^bool (__unused Api62_PhoneConnection_phoneConnectionNotReady *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneConnectionNotReady)"];
}

@end

@implementation Api62_PhoneConnection_phoneConnection

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9d4c17c0 serializeBlock:^bool (Api62_PhoneConnection_phoneConnection *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ip data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.ipv6 data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.port data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.peerTag data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneConnection id:%@ ip:%d ipv6:%d port:%@ peer_tag:%d)", self.pid, (int)[self.ip length], (int)[self.ipv6 length], self.port, (int)[self.peerTag length]];
}

@end




@interface Api62_AccountDaysTTL ()

@property (nonatomic, strong) NSNumber * days;

@end

@interface Api62_AccountDaysTTL_accountDaysTTL ()

@end

@implementation Api62_AccountDaysTTL

+ (Api62_AccountDaysTTL_accountDaysTTL *)accountDaysTTLWithDays:(NSNumber *)days
{
    Api62_AccountDaysTTL_accountDaysTTL *_object = [[Api62_AccountDaysTTL_accountDaysTTL alloc] init];
    _object.days = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:days] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_AccountDaysTTL_accountDaysTTL

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb8d0afdf serializeBlock:^bool (Api62_AccountDaysTTL_accountDaysTTL *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.days data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(accountDaysTTL days:%@)", self.days];
}

@end




@interface Api62_Scheme ()

@end

@interface Api62_Scheme_scheme ()

@property (nonatomic, strong) NSString * schemeRaw;
@property (nonatomic, strong) NSArray * types;
@property (nonatomic, strong) NSArray * methods;
@property (nonatomic, strong) NSNumber * version;

@end

@interface Api62_Scheme_schemeNotModified ()

@end

@implementation Api62_Scheme

+ (Api62_Scheme_scheme *)schemeWithSchemeRaw:(NSString *)schemeRaw types:(NSArray *)types methods:(NSArray *)methods version:(NSNumber *)version
{
    Api62_Scheme_scheme *_object = [[Api62_Scheme_scheme alloc] init];
    _object.schemeRaw = [Api62__Serializer addSerializerToObject:[schemeRaw copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.types = 
({
NSMutableArray *types_copy = [[NSMutableArray alloc] initWithCapacity:types.count];
for (id types_item in types)
{
    [types_copy addObject:types_item];
}
id types_result = [Api62__Serializer addSerializerToObject:types_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; types_result;});
    _object.methods = 
({
NSMutableArray *methods_copy = [[NSMutableArray alloc] initWithCapacity:methods.count];
for (id methods_item in methods)
{
    [methods_copy addObject:methods_item];
}
id methods_result = [Api62__Serializer addSerializerToObject:methods_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; methods_result;});
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_Scheme_schemeNotModified *)schemeNotModified
{
    Api62_Scheme_schemeNotModified *_object = [[Api62_Scheme_schemeNotModified alloc] init];
    return _object;
}


@end

@implementation Api62_Scheme_scheme

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4e6ef65e serializeBlock:^bool (Api62_Scheme_scheme *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.schemeRaw data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.types data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.methods data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(scheme scheme_raw:%d types:%@ methods:%@ version:%@)", (int)[self.schemeRaw length], self.types, self.methods, self.version];
}

@end

@implementation Api62_Scheme_schemeNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x263c9c58 serializeBlock:^bool (__unused Api62_Scheme_schemeNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(schemeNotModified)"];
}

@end




@interface Api62_account_Password ()

@property (nonatomic, strong) NSData * pnewSalt;
@property (nonatomic, strong) NSString * emailUnconfirmedPattern;

@end

@interface Api62_account_Password_account_noPassword ()

@end

@interface Api62_account_Password_account_password ()

@property (nonatomic, strong) NSData * currentSalt;
@property (nonatomic, strong) NSString * hint;
@property (nonatomic, strong) Api62_Bool * hasRecovery;

@end

@implementation Api62_account_Password

+ (Api62_account_Password_account_noPassword *)account_noPasswordWithPnewSalt:(NSData *)pnewSalt emailUnconfirmedPattern:(NSString *)emailUnconfirmedPattern
{
    Api62_account_Password_account_noPassword *_object = [[Api62_account_Password_account_noPassword alloc] init];
    _object.pnewSalt = [Api62__Serializer addSerializerToObject:[pnewSalt copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.emailUnconfirmedPattern = [Api62__Serializer addSerializerToObject:[emailUnconfirmedPattern copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_account_Password_account_password *)account_passwordWithCurrentSalt:(NSData *)currentSalt pnewSalt:(NSData *)pnewSalt hint:(NSString *)hint hasRecovery:(Api62_Bool *)hasRecovery emailUnconfirmedPattern:(NSString *)emailUnconfirmedPattern
{
    Api62_account_Password_account_password *_object = [[Api62_account_Password_account_password alloc] init];
    _object.currentSalt = [Api62__Serializer addSerializerToObject:[currentSalt copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.pnewSalt = [Api62__Serializer addSerializerToObject:[pnewSalt copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.hint = [Api62__Serializer addSerializerToObject:[hint copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.hasRecovery = hasRecovery;
    _object.emailUnconfirmedPattern = [Api62__Serializer addSerializerToObject:[emailUnconfirmedPattern copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_account_Password_account_noPassword

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x96dabc18 serializeBlock:^bool (Api62_account_Password_account_noPassword *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pnewSalt data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.emailUnconfirmedPattern data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.noPassword new_salt:%d email_unconfirmed_pattern:%d)", (int)[self.pnewSalt length], (int)[self.emailUnconfirmedPattern length]];
}

@end

@implementation Api62_account_Password_account_password

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7c18141c serializeBlock:^bool (Api62_account_Password_account_password *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.currentSalt data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pnewSalt data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.hint data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.hasRecovery data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.emailUnconfirmedPattern data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.password current_salt:%d new_salt:%d hint:%d has_recovery:%@ email_unconfirmed_pattern:%d)", (int)[self.currentSalt length], (int)[self.pnewSalt length], (int)[self.hint length], self.hasRecovery, (int)[self.emailUnconfirmedPattern length]];
}

@end




@interface Api62_InputBotInlineResult ()

@property (nonatomic, strong) NSString * pid;
@property (nonatomic, strong) Api62_InputBotInlineMessage * sendMessage;

@end

@interface Api62_InputBotInlineResult_inputBotInlineResult ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * pdescription;
@property (nonatomic, strong) NSString * url;
@property (nonatomic, strong) NSString * thumbUrl;
@property (nonatomic, strong) NSString * contentUrl;
@property (nonatomic, strong) NSString * contentType;
@property (nonatomic, strong) NSNumber * w;
@property (nonatomic, strong) NSNumber * h;
@property (nonatomic, strong) NSNumber * duration;

@end

@interface Api62_InputBotInlineResult_inputBotInlineResultPhoto ()

@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) Api62_InputPhoto * photo;

@end

@interface Api62_InputBotInlineResult_inputBotInlineResultDocument ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSString * type;
@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSString * pdescription;
@property (nonatomic, strong) Api62_InputDocument * document;

@end

@interface Api62_InputBotInlineResult_inputBotInlineResultGame ()

@property (nonatomic, strong) NSString * shortName;

@end

@implementation Api62_InputBotInlineResult

+ (Api62_InputBotInlineResult_inputBotInlineResult *)inputBotInlineResultWithFlags:(NSNumber *)flags pid:(NSString *)pid type:(NSString *)type title:(NSString *)title pdescription:(NSString *)pdescription url:(NSString *)url thumbUrl:(NSString *)thumbUrl contentUrl:(NSString *)contentUrl contentType:(NSString *)contentType w:(NSNumber *)w h:(NSNumber *)h duration:(NSNumber *)duration sendMessage:(Api62_InputBotInlineMessage *)sendMessage
{
    Api62_InputBotInlineResult_inputBotInlineResult *_object = [[Api62_InputBotInlineResult_inputBotInlineResult alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.thumbUrl = [Api62__Serializer addSerializerToObject:[thumbUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.contentUrl = [Api62__Serializer addSerializerToObject:[contentUrl copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.contentType = [Api62__Serializer addSerializerToObject:[contentType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.w = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:w] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.h = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:h] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sendMessage = sendMessage;
    return _object;
}

+ (Api62_InputBotInlineResult_inputBotInlineResultPhoto *)inputBotInlineResultPhotoWithPid:(NSString *)pid type:(NSString *)type photo:(Api62_InputPhoto *)photo sendMessage:(Api62_InputBotInlineMessage *)sendMessage
{
    Api62_InputBotInlineResult_inputBotInlineResultPhoto *_object = [[Api62_InputBotInlineResult_inputBotInlineResultPhoto alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.photo = photo;
    _object.sendMessage = sendMessage;
    return _object;
}

+ (Api62_InputBotInlineResult_inputBotInlineResultDocument *)inputBotInlineResultDocumentWithFlags:(NSNumber *)flags pid:(NSString *)pid type:(NSString *)type title:(NSString *)title pdescription:(NSString *)pdescription document:(Api62_InputDocument *)document sendMessage:(Api62_InputBotInlineMessage *)sendMessage
{
    Api62_InputBotInlineResult_inputBotInlineResultDocument *_object = [[Api62_InputBotInlineResult_inputBotInlineResultDocument alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.pdescription = [Api62__Serializer addSerializerToObject:[pdescription copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.document = document;
    _object.sendMessage = sendMessage;
    return _object;
}

+ (Api62_InputBotInlineResult_inputBotInlineResultGame *)inputBotInlineResultGameWithPid:(NSString *)pid shortName:(NSString *)shortName sendMessage:(Api62_InputBotInlineMessage *)sendMessage
{
    Api62_InputBotInlineResult_inputBotInlineResultGame *_object = [[Api62_InputBotInlineResult_inputBotInlineResultGame alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.shortName = [Api62__Serializer addSerializerToObject:[shortName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.sendMessage = sendMessage;
    return _object;
}


@end

@implementation Api62_InputBotInlineResult_inputBotInlineResult

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2cbbe15a serializeBlock:^bool (Api62_InputBotInlineResult_inputBotInlineResult *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 4)) {
            if (![Api62__Environment serializeObject:object.thumbUrl data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.contentUrl data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 5)) {
            if (![Api62__Environment serializeObject:object.contentType data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.w data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 6)) {
            if (![Api62__Environment serializeObject:object.h data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 7)) {
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.sendMessage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineResult flags:%@ id:%d type:%d title:%d description:%d url:%d thumb_url:%d content_url:%d content_type:%d w:%@ h:%@ duration:%@ send_message:%@)", self.flags, (int)[self.pid length], (int)[self.type length], (int)[self.title length], (int)[self.pdescription length], (int)[self.url length], (int)[self.thumbUrl length], (int)[self.contentUrl length], (int)[self.contentType length], self.w, self.h, self.duration, self.sendMessage];
}

@end

@implementation Api62_InputBotInlineResult_inputBotInlineResultPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa8d864a7 serializeBlock:^bool (Api62_InputBotInlineResult_inputBotInlineResultPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.sendMessage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineResultPhoto id:%d type:%d photo:%@ send_message:%@)", (int)[self.pid length], (int)[self.type length], self.photo, self.sendMessage];
}

@end

@implementation Api62_InputBotInlineResult_inputBotInlineResultDocument

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfff8fdc4 serializeBlock:^bool (Api62_InputBotInlineResult_inputBotInlineResultDocument *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            }
            if ([object.flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:object.pdescription data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.document data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.sendMessage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineResultDocument flags:%@ id:%d type:%d title:%d description:%d document:%@ send_message:%@)", self.flags, (int)[self.pid length], (int)[self.type length], (int)[self.title length], (int)[self.pdescription length], self.document, self.sendMessage];
}

@end

@implementation Api62_InputBotInlineResult_inputBotInlineResultGame

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4fa417f2 serializeBlock:^bool (Api62_InputBotInlineResult_inputBotInlineResultGame *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.shortName data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sendMessage data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineResultGame id:%d short_name:%d send_message:%@)", (int)[self.pid length], (int)[self.shortName length], self.sendMessage];
}

@end




@interface Api62_account_PrivacyRules ()

@property (nonatomic, strong) NSArray * rules;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_account_PrivacyRules_account_privacyRules ()

@end

@implementation Api62_account_PrivacyRules

+ (Api62_account_PrivacyRules_account_privacyRules *)account_privacyRulesWithRules:(NSArray *)rules users:(NSArray *)users
{
    Api62_account_PrivacyRules_account_privacyRules *_object = [[Api62_account_PrivacyRules_account_privacyRules alloc] init];
    _object.rules = 
({
NSMutableArray *rules_copy = [[NSMutableArray alloc] initWithCapacity:rules.count];
for (id rules_item in rules)
{
    [rules_copy addObject:rules_item];
}
id rules_result = [Api62__Serializer addSerializerToObject:rules_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; rules_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_account_PrivacyRules_account_privacyRules

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x554abb6f serializeBlock:^bool (Api62_account_PrivacyRules_account_privacyRules *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.rules data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(account.privacyRules rules:%@ users:%@)", self.rules, self.users];
}

@end




@interface Api62_messages_Message ()

@end

@interface Api62_messages_Message_messages_messageEmpty ()

@end

@interface Api62_messages_Message_messages_message ()

@property (nonatomic, strong) Api62_Message * message;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@implementation Api62_messages_Message

+ (Api62_messages_Message_messages_messageEmpty *)messages_messageEmpty
{
    Api62_messages_Message_messages_messageEmpty *_object = [[Api62_messages_Message_messages_messageEmpty alloc] init];
    return _object;
}

+ (Api62_messages_Message_messages_message *)messages_messageWithMessage:(Api62_Message *)message chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_messages_Message_messages_message *_object = [[Api62_messages_Message_messages_message alloc] init];
    _object.message = message;
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_messages_Message_messages_messageEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3f4e0648 serializeBlock:^bool (__unused Api62_messages_Message_messages_messageEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.messageEmpty)"];
}

@end

@implementation Api62_messages_Message_messages_message

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xff90c417 serializeBlock:^bool (Api62_messages_Message_messages_message *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.message data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.message message:%@ chats:%@ users:%@)", self.message, self.chats, self.users];
}

@end




@interface Api62_PrivacyRule ()

@end

@interface Api62_PrivacyRule_privacyValueAllowContacts ()

@end

@interface Api62_PrivacyRule_privacyValueAllowAll ()

@end

@interface Api62_PrivacyRule_privacyValueAllowUsers ()

@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_PrivacyRule_privacyValueDisallowContacts ()

@end

@interface Api62_PrivacyRule_privacyValueDisallowAll ()

@end

@interface Api62_PrivacyRule_privacyValueDisallowUsers ()

@property (nonatomic, strong) NSArray * users;

@end

@implementation Api62_PrivacyRule

+ (Api62_PrivacyRule_privacyValueAllowContacts *)privacyValueAllowContacts
{
    Api62_PrivacyRule_privacyValueAllowContacts *_object = [[Api62_PrivacyRule_privacyValueAllowContacts alloc] init];
    return _object;
}

+ (Api62_PrivacyRule_privacyValueAllowAll *)privacyValueAllowAll
{
    Api62_PrivacyRule_privacyValueAllowAll *_object = [[Api62_PrivacyRule_privacyValueAllowAll alloc] init];
    return _object;
}

+ (Api62_PrivacyRule_privacyValueAllowUsers *)privacyValueAllowUsersWithUsers:(NSArray *)users
{
    Api62_PrivacyRule_privacyValueAllowUsers *_object = [[Api62_PrivacyRule_privacyValueAllowUsers alloc] init];
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:users_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_PrivacyRule_privacyValueDisallowContacts *)privacyValueDisallowContacts
{
    Api62_PrivacyRule_privacyValueDisallowContacts *_object = [[Api62_PrivacyRule_privacyValueDisallowContacts alloc] init];
    return _object;
}

+ (Api62_PrivacyRule_privacyValueDisallowAll *)privacyValueDisallowAll
{
    Api62_PrivacyRule_privacyValueDisallowAll *_object = [[Api62_PrivacyRule_privacyValueDisallowAll alloc] init];
    return _object;
}

+ (Api62_PrivacyRule_privacyValueDisallowUsers *)privacyValueDisallowUsersWithUsers:(NSArray *)users
{
    Api62_PrivacyRule_privacyValueDisallowUsers *_object = [[Api62_PrivacyRule_privacyValueDisallowUsers alloc] init];
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:users_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_PrivacyRule_privacyValueAllowContacts

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfffe1bac serializeBlock:^bool (__unused Api62_PrivacyRule_privacyValueAllowContacts *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyValueAllowContacts)"];
}

@end

@implementation Api62_PrivacyRule_privacyValueAllowAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x65427b82 serializeBlock:^bool (__unused Api62_PrivacyRule_privacyValueAllowAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyValueAllowAll)"];
}

@end

@implementation Api62_PrivacyRule_privacyValueAllowUsers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4d5bbe0c serializeBlock:^bool (Api62_PrivacyRule_privacyValueAllowUsers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyValueAllowUsers users:%@)", self.users];
}

@end

@implementation Api62_PrivacyRule_privacyValueDisallowContacts

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf888fa1a serializeBlock:^bool (__unused Api62_PrivacyRule_privacyValueDisallowContacts *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyValueDisallowContacts)"];
}

@end

@implementation Api62_PrivacyRule_privacyValueDisallowAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8b73e763 serializeBlock:^bool (__unused Api62_PrivacyRule_privacyValueDisallowAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyValueDisallowAll)"];
}

@end

@implementation Api62_PrivacyRule_privacyValueDisallowUsers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc7f49b7 serializeBlock:^bool (Api62_PrivacyRule_privacyValueDisallowUsers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(privacyValueDisallowUsers users:%@)", self.users];
}

@end




@interface Api62_MessageAction ()

@end

@interface Api62_MessageAction_messageActionEmpty ()

@end

@interface Api62_MessageAction_messageActionChatCreate ()

@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_MessageAction_messageActionChatEditTitle ()

@property (nonatomic, strong) NSString * title;

@end

@interface Api62_MessageAction_messageActionChatEditPhoto ()

@property (nonatomic, strong) Api62_Photo * photo;

@end

@interface Api62_MessageAction_messageActionChatDeletePhoto ()

@end

@interface Api62_MessageAction_messageActionChatDeleteUser ()

@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_MessageAction_messageActionSentRequest ()

@property (nonatomic, strong) Api62_Bool * hasPhone;

@end

@interface Api62_MessageAction_messageActionAcceptRequest ()

@end

@interface Api62_MessageAction_messageActionChatJoinedByLink ()

@property (nonatomic, strong) NSNumber * inviterId;

@end

@interface Api62_MessageAction_messageActionChannelCreate ()

@property (nonatomic, strong) NSString * title;

@end

@interface Api62_MessageAction_messageActionChatMigrateTo ()

@property (nonatomic, strong) NSNumber * channelId;

@end

@interface Api62_MessageAction_messageActionChannelMigrateFrom ()

@property (nonatomic, strong) NSString * title;
@property (nonatomic, strong) NSNumber * chatId;

@end

@interface Api62_MessageAction_messageActionChatAddUser ()

@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_MessageAction_messageActionPinMessage ()

@end

@interface Api62_MessageAction_messageActionHistoryClear ()

@end

@interface Api62_MessageAction_messageActionGameScore ()

@property (nonatomic, strong) NSNumber * gameId;
@property (nonatomic, strong) NSNumber * score;

@end

@interface Api62_MessageAction_messageActionPhoneCall ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * callId;
@property (nonatomic, strong) Api62_PhoneCallDiscardReason * reason;
@property (nonatomic, strong) NSNumber * duration;

@end

@implementation Api62_MessageAction

+ (Api62_MessageAction_messageActionEmpty *)messageActionEmpty
{
    Api62_MessageAction_messageActionEmpty *_object = [[Api62_MessageAction_messageActionEmpty alloc] init];
    return _object;
}

+ (Api62_MessageAction_messageActionChatCreate *)messageActionChatCreateWithTitle:(NSString *)title users:(NSArray *)users
{
    Api62_MessageAction_messageActionChatCreate *_object = [[Api62_MessageAction_messageActionChatCreate alloc] init];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:users_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_MessageAction_messageActionChatEditTitle *)messageActionChatEditTitleWithTitle:(NSString *)title
{
    Api62_MessageAction_messageActionChatEditTitle *_object = [[Api62_MessageAction_messageActionChatEditTitle alloc] init];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionChatEditPhoto *)messageActionChatEditPhotoWithPhoto:(Api62_Photo *)photo
{
    Api62_MessageAction_messageActionChatEditPhoto *_object = [[Api62_MessageAction_messageActionChatEditPhoto alloc] init];
    _object.photo = photo;
    return _object;
}

+ (Api62_MessageAction_messageActionChatDeletePhoto *)messageActionChatDeletePhoto
{
    Api62_MessageAction_messageActionChatDeletePhoto *_object = [[Api62_MessageAction_messageActionChatDeletePhoto alloc] init];
    return _object;
}

+ (Api62_MessageAction_messageActionChatDeleteUser *)messageActionChatDeleteUserWithUserId:(NSNumber *)userId
{
    Api62_MessageAction_messageActionChatDeleteUser *_object = [[Api62_MessageAction_messageActionChatDeleteUser alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionSentRequest *)messageActionSentRequestWithHasPhone:(Api62_Bool *)hasPhone
{
    Api62_MessageAction_messageActionSentRequest *_object = [[Api62_MessageAction_messageActionSentRequest alloc] init];
    _object.hasPhone = hasPhone;
    return _object;
}

+ (Api62_MessageAction_messageActionAcceptRequest *)messageActionAcceptRequest
{
    Api62_MessageAction_messageActionAcceptRequest *_object = [[Api62_MessageAction_messageActionAcceptRequest alloc] init];
    return _object;
}

+ (Api62_MessageAction_messageActionChatJoinedByLink *)messageActionChatJoinedByLinkWithInviterId:(NSNumber *)inviterId
{
    Api62_MessageAction_messageActionChatJoinedByLink *_object = [[Api62_MessageAction_messageActionChatJoinedByLink alloc] init];
    _object.inviterId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:inviterId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionChannelCreate *)messageActionChannelCreateWithTitle:(NSString *)title
{
    Api62_MessageAction_messageActionChannelCreate *_object = [[Api62_MessageAction_messageActionChannelCreate alloc] init];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionChatMigrateTo *)messageActionChatMigrateToWithChannelId:(NSNumber *)channelId
{
    Api62_MessageAction_messageActionChatMigrateTo *_object = [[Api62_MessageAction_messageActionChatMigrateTo alloc] init];
    _object.channelId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:channelId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionChannelMigrateFrom *)messageActionChannelMigrateFromWithTitle:(NSString *)title chatId:(NSNumber *)chatId
{
    Api62_MessageAction_messageActionChannelMigrateFrom *_object = [[Api62_MessageAction_messageActionChannelMigrateFrom alloc] init];
    _object.title = [Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.chatId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionChatAddUser *)messageActionChatAddUserWithUsers:(NSArray *)users
{
    Api62_MessageAction_messageActionChatAddUser *_object = [[Api62_MessageAction_messageActionChatAddUser alloc] init];
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:users_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_MessageAction_messageActionPinMessage *)messageActionPinMessage
{
    Api62_MessageAction_messageActionPinMessage *_object = [[Api62_MessageAction_messageActionPinMessage alloc] init];
    return _object;
}

+ (Api62_MessageAction_messageActionHistoryClear *)messageActionHistoryClear
{
    Api62_MessageAction_messageActionHistoryClear *_object = [[Api62_MessageAction_messageActionHistoryClear alloc] init];
    return _object;
}

+ (Api62_MessageAction_messageActionGameScore *)messageActionGameScoreWithGameId:(NSNumber *)gameId score:(NSNumber *)score
{
    Api62_MessageAction_messageActionGameScore *_object = [[Api62_MessageAction_messageActionGameScore alloc] init];
    _object.gameId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:gameId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.score = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:score] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageAction_messageActionPhoneCall *)messageActionPhoneCallWithFlags:(NSNumber *)flags callId:(NSNumber *)callId reason:(Api62_PhoneCallDiscardReason *)reason duration:(NSNumber *)duration
{
    Api62_MessageAction_messageActionPhoneCall *_object = [[Api62_MessageAction_messageActionPhoneCall alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.callId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:callId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.reason = reason;
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_MessageAction_messageActionEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb6aef7b0 serializeBlock:^bool (__unused Api62_MessageAction_messageActionEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionEmpty)"];
}

@end

@implementation Api62_MessageAction_messageActionChatCreate

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xa6638b9a serializeBlock:^bool (Api62_MessageAction_messageActionChatCreate *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatCreate title:%d users:%@)", (int)[self.title length], self.users];
}

@end

@implementation Api62_MessageAction_messageActionChatEditTitle

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb5a1ce5a serializeBlock:^bool (Api62_MessageAction_messageActionChatEditTitle *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatEditTitle title:%d)", (int)[self.title length]];
}

@end

@implementation Api62_MessageAction_messageActionChatEditPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7fcb13a8 serializeBlock:^bool (Api62_MessageAction_messageActionChatEditPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photo data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatEditPhoto photo:%@)", self.photo];
}

@end

@implementation Api62_MessageAction_messageActionChatDeletePhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x95e3fbef serializeBlock:^bool (__unused Api62_MessageAction_messageActionChatDeletePhoto *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatDeletePhoto)"];
}

@end

@implementation Api62_MessageAction_messageActionChatDeleteUser

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb2ae9b0c serializeBlock:^bool (Api62_MessageAction_messageActionChatDeleteUser *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatDeleteUser user_id:%@)", self.userId];
}

@end

@implementation Api62_MessageAction_messageActionSentRequest

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfc479b0f serializeBlock:^bool (Api62_MessageAction_messageActionSentRequest *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.hasPhone data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionSentRequest has_phone:%@)", self.hasPhone];
}

@end

@implementation Api62_MessageAction_messageActionAcceptRequest

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x7f07d76c serializeBlock:^bool (__unused Api62_MessageAction_messageActionAcceptRequest *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionAcceptRequest)"];
}

@end

@implementation Api62_MessageAction_messageActionChatJoinedByLink

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf89cf5e8 serializeBlock:^bool (Api62_MessageAction_messageActionChatJoinedByLink *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.inviterId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatJoinedByLink inviter_id:%@)", self.inviterId];
}

@end

@implementation Api62_MessageAction_messageActionChannelCreate

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x95d2ac92 serializeBlock:^bool (Api62_MessageAction_messageActionChannelCreate *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChannelCreate title:%d)", (int)[self.title length]];
}

@end

@implementation Api62_MessageAction_messageActionChatMigrateTo

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x51bdb021 serializeBlock:^bool (Api62_MessageAction_messageActionChatMigrateTo *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.channelId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatMigrateTo channel_id:%@)", self.channelId];
}

@end

@implementation Api62_MessageAction_messageActionChannelMigrateFrom

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xb055eaee serializeBlock:^bool (Api62_MessageAction_messageActionChannelMigrateFrom *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.title data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.chatId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChannelMigrateFrom title:%d chat_id:%@)", (int)[self.title length], self.chatId];
}

@end

@implementation Api62_MessageAction_messageActionChatAddUser

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x488a7337 serializeBlock:^bool (Api62_MessageAction_messageActionChatAddUser *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionChatAddUser users:%@)", self.users];
}

@end

@implementation Api62_MessageAction_messageActionPinMessage

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x94bd38ed serializeBlock:^bool (__unused Api62_MessageAction_messageActionPinMessage *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionPinMessage)"];
}

@end

@implementation Api62_MessageAction_messageActionHistoryClear

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9fbab604 serializeBlock:^bool (__unused Api62_MessageAction_messageActionHistoryClear *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionHistoryClear)"];
}

@end

@implementation Api62_MessageAction_messageActionGameScore

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x92a72876 serializeBlock:^bool (Api62_MessageAction_messageActionGameScore *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.gameId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.score data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionGameScore game_id:%@ score:%@)", self.gameId, self.score];
}

@end

@implementation Api62_MessageAction_messageActionPhoneCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x80e11a7f serializeBlock:^bool (Api62_MessageAction_messageActionPhoneCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.callId data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.reason data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageActionPhoneCall flags:%@ call_id:%@ reason:%@ duration:%@)", self.flags, self.callId, self.reason, self.duration];
}

@end




@interface Api62_PhoneCall ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_PhoneCall_phoneCallEmpty ()

@end

@interface Api62_PhoneCall_phoneCallWaiting ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * adminId;
@property (nonatomic, strong) NSNumber * participantId;
@property (nonatomic, strong) Api62_PhoneCallProtocol * protocol;

@end

@interface Api62_PhoneCall_phoneCallRequested ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * adminId;
@property (nonatomic, strong) NSNumber * participantId;
@property (nonatomic, strong) NSData * gA;
@property (nonatomic, strong) Api62_PhoneCallProtocol * protocol;

@end

@interface Api62_PhoneCall_phoneCall ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * adminId;
@property (nonatomic, strong) NSNumber * participantId;
@property (nonatomic, strong) NSData * gAOrB;
@property (nonatomic, strong) NSNumber * keyFingerprint;
@property (nonatomic, strong) Api62_PhoneCallProtocol * protocol;
@property (nonatomic, strong) Api62_PhoneConnection * connection;

@end

@interface Api62_PhoneCall_phoneCallDiscarded ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) Api62_PhoneCallDiscardReason * reason;
@property (nonatomic, strong) NSNumber * duration;

@end

@implementation Api62_PhoneCall

+ (Api62_PhoneCall_phoneCallEmpty *)phoneCallEmptyWithPid:(NSNumber *)pid
{
    Api62_PhoneCall_phoneCallEmpty *_object = [[Api62_PhoneCall_phoneCallEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_PhoneCall_phoneCallWaiting *)phoneCallWaitingWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date adminId:(NSNumber *)adminId participantId:(NSNumber *)participantId protocol:(Api62_PhoneCallProtocol *)protocol
{
    Api62_PhoneCall_phoneCallWaiting *_object = [[Api62_PhoneCall_phoneCallWaiting alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participantId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.protocol = protocol;
    return _object;
}

+ (Api62_PhoneCall_phoneCallRequested *)phoneCallRequestedWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date adminId:(NSNumber *)adminId participantId:(NSNumber *)participantId gA:(NSData *)gA protocol:(Api62_PhoneCallProtocol *)protocol
{
    Api62_PhoneCall_phoneCallRequested *_object = [[Api62_PhoneCall_phoneCallRequested alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participantId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.gA = [Api62__Serializer addSerializerToObject:[gA copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.protocol = protocol;
    return _object;
}

+ (Api62_PhoneCall_phoneCall *)phoneCallWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date adminId:(NSNumber *)adminId participantId:(NSNumber *)participantId gAOrB:(NSData *)gAOrB keyFingerprint:(NSNumber *)keyFingerprint protocol:(Api62_PhoneCallProtocol *)protocol connection:(Api62_PhoneConnection *)connection
{
    Api62_PhoneCall_phoneCall *_object = [[Api62_PhoneCall_phoneCall alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participantId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.gAOrB = [Api62__Serializer addSerializerToObject:[gAOrB copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.keyFingerprint = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.protocol = protocol;
    _object.connection = connection;
    return _object;
}

+ (Api62_PhoneCall_phoneCallDiscarded *)phoneCallDiscardedWithFlags:(NSNumber *)flags pid:(NSNumber *)pid reason:(Api62_PhoneCallDiscardReason *)reason duration:(NSNumber *)duration
{
    Api62_PhoneCall_phoneCallDiscarded *_object = [[Api62_PhoneCall_phoneCallDiscarded alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.reason = reason;
    _object.duration = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}


@end

@implementation Api62_PhoneCall_phoneCallEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5366c915 serializeBlock:^bool (Api62_PhoneCall_phoneCallEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallEmpty id:%@)", self.pid];
}

@end

@implementation Api62_PhoneCall_phoneCallWaiting

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x77e1c0a6 serializeBlock:^bool (Api62_PhoneCall_phoneCallWaiting *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.adminId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participantId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.protocol data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallWaiting id:%@ access_hash:%@ date:%@ admin_id:%@ participant_id:%@ protocol:%@)", self.pid, self.accessHash, self.date, self.adminId, self.participantId, self.protocol];
}

@end

@implementation Api62_PhoneCall_phoneCallRequested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6c448ae8 serializeBlock:^bool (Api62_PhoneCall_phoneCallRequested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.adminId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participantId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.gA data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.protocol data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallRequested id:%@ access_hash:%@ date:%@ admin_id:%@ participant_id:%@ g_a:%d protocol:%@)", self.pid, self.accessHash, self.date, self.adminId, self.participantId, (int)[self.gA length], self.protocol];
}

@end

@implementation Api62_PhoneCall_phoneCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x8d69b896 serializeBlock:^bool (Api62_PhoneCall_phoneCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.adminId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participantId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.gAOrB data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.keyFingerprint data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.protocol data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.connection data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCall id:%@ access_hash:%@ date:%@ admin_id:%@ participant_id:%@ g_a_or_b:%d key_fingerprint:%@ protocol:%@ connection:%@)", self.pid, self.accessHash, self.date, self.adminId, self.participantId, (int)[self.gAOrB length], self.keyFingerprint, self.protocol, self.connection];
}

@end

@implementation Api62_PhoneCall_phoneCallDiscarded

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x50ca4de1 serializeBlock:^bool (Api62_PhoneCall_phoneCallDiscarded *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:object.reason data:data addSignature:true])
                return false;
            }
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.duration data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(phoneCallDiscarded flags:%@ id:%@ reason:%@ duration:%@)", self.flags, self.pid, self.reason, self.duration];
}

@end




@interface Api62_PeerNotifyEvents ()

@end

@interface Api62_PeerNotifyEvents_peerNotifyEventsEmpty ()

@end

@interface Api62_PeerNotifyEvents_peerNotifyEventsAll ()

@end

@implementation Api62_PeerNotifyEvents

+ (Api62_PeerNotifyEvents_peerNotifyEventsEmpty *)peerNotifyEventsEmpty
{
    Api62_PeerNotifyEvents_peerNotifyEventsEmpty *_object = [[Api62_PeerNotifyEvents_peerNotifyEventsEmpty alloc] init];
    return _object;
}

+ (Api62_PeerNotifyEvents_peerNotifyEventsAll *)peerNotifyEventsAll
{
    Api62_PeerNotifyEvents_peerNotifyEventsAll *_object = [[Api62_PeerNotifyEvents_peerNotifyEventsAll alloc] init];
    return _object;
}


@end

@implementation Api62_PeerNotifyEvents_peerNotifyEventsEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xadd53cb3 serializeBlock:^bool (__unused Api62_PeerNotifyEvents_peerNotifyEventsEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerNotifyEventsEmpty)"];
}

@end

@implementation Api62_PeerNotifyEvents_peerNotifyEventsAll

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6d1ded88 serializeBlock:^bool (__unused Api62_PeerNotifyEvents_peerNotifyEventsAll *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerNotifyEventsAll)"];
}

@end




@interface Api62_ContactLink ()

@end

@interface Api62_ContactLink_contactLinkUnknown ()

@end

@interface Api62_ContactLink_contactLinkNone ()

@end

@interface Api62_ContactLink_contactLinkHasPhone ()

@end

@interface Api62_ContactLink_contactLinkContact ()

@end

@implementation Api62_ContactLink

+ (Api62_ContactLink_contactLinkUnknown *)contactLinkUnknown
{
    Api62_ContactLink_contactLinkUnknown *_object = [[Api62_ContactLink_contactLinkUnknown alloc] init];
    return _object;
}

+ (Api62_ContactLink_contactLinkNone *)contactLinkNone
{
    Api62_ContactLink_contactLinkNone *_object = [[Api62_ContactLink_contactLinkNone alloc] init];
    return _object;
}

+ (Api62_ContactLink_contactLinkHasPhone *)contactLinkHasPhone
{
    Api62_ContactLink_contactLinkHasPhone *_object = [[Api62_ContactLink_contactLinkHasPhone alloc] init];
    return _object;
}

+ (Api62_ContactLink_contactLinkContact *)contactLinkContact
{
    Api62_ContactLink_contactLinkContact *_object = [[Api62_ContactLink_contactLinkContact alloc] init];
    return _object;
}


@end

@implementation Api62_ContactLink_contactLinkUnknown

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5f4f9247 serializeBlock:^bool (__unused Api62_ContactLink_contactLinkUnknown *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactLinkUnknown)"];
}

@end

@implementation Api62_ContactLink_contactLinkNone

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfeedd3ad serializeBlock:^bool (__unused Api62_ContactLink_contactLinkNone *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactLinkNone)"];
}

@end

@implementation Api62_ContactLink_contactLinkHasPhone

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x268f3f59 serializeBlock:^bool (__unused Api62_ContactLink_contactLinkHasPhone *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactLinkHasPhone)"];
}

@end

@implementation Api62_ContactLink_contactLinkContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd502c2d0 serializeBlock:^bool (__unused Api62_ContactLink_contactLinkContact *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contactLinkContact)"];
}

@end




@interface Api62_help_AppPrefs ()

@property (nonatomic, strong) NSData * bytes;

@end

@interface Api62_help_AppPrefs_help_appPrefs ()

@end

@implementation Api62_help_AppPrefs

+ (Api62_help_AppPrefs_help_appPrefs *)help_appPrefsWithBytes:(NSData *)bytes
{
    Api62_help_AppPrefs_help_appPrefs *_object = [[Api62_help_AppPrefs_help_appPrefs alloc] init];
    _object.bytes = [Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}


@end

@implementation Api62_help_AppPrefs_help_appPrefs

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x424f8614 serializeBlock:^bool (Api62_help_AppPrefs_help_appPrefs *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.bytes data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(help.appPrefs bytes:%d)", (int)[self.bytes length]];
}

@end




@interface Api62_contacts_Found ()

@property (nonatomic, strong) NSArray * results;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_contacts_Found_contacts_found ()

@end

@implementation Api62_contacts_Found

+ (Api62_contacts_Found_contacts_found *)contacts_foundWithResults:(NSArray *)results chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_contacts_Found_contacts_found *_object = [[Api62_contacts_Found_contacts_found alloc] init];
    _object.results = 
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_Found_contacts_found

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1aa1f784 serializeBlock:^bool (Api62_contacts_Found_contacts_found *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.results data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.found results:%@ chats:%@ users:%@)", self.results, self.chats, self.users];
}

@end




@interface Api62_PeerNotifySettings ()

@end

@interface Api62_PeerNotifySettings_peerNotifySettingsEmpty ()

@end

@interface Api62_PeerNotifySettings_peerNotifySettings ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * muteUntil;
@property (nonatomic, strong) NSString * sound;

@end

@implementation Api62_PeerNotifySettings

+ (Api62_PeerNotifySettings_peerNotifySettingsEmpty *)peerNotifySettingsEmpty
{
    Api62_PeerNotifySettings_peerNotifySettingsEmpty *_object = [[Api62_PeerNotifySettings_peerNotifySettingsEmpty alloc] init];
    return _object;
}

+ (Api62_PeerNotifySettings_peerNotifySettings *)peerNotifySettingsWithFlags:(NSNumber *)flags muteUntil:(NSNumber *)muteUntil sound:(NSString *)sound
{
    Api62_PeerNotifySettings_peerNotifySettings *_object = [[Api62_PeerNotifySettings_peerNotifySettings alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.muteUntil = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:muteUntil] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.sound = [Api62__Serializer addSerializerToObject:[sound copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_PeerNotifySettings_peerNotifySettingsEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x70a68512 serializeBlock:^bool (__unused Api62_PeerNotifySettings_peerNotifySettingsEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerNotifySettingsEmpty)"];
}

@end

@implementation Api62_PeerNotifySettings_peerNotifySettings

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9acda4c0 serializeBlock:^bool (Api62_PeerNotifySettings_peerNotifySettings *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.muteUntil data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.sound data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(peerNotifySettings flags:%@ mute_until:%@ sound:%d)", self.flags, self.muteUntil, (int)[self.sound length]];
}

@end




@interface Api62_InputBotInlineMessageID ()

@property (nonatomic, strong) NSNumber * dcId;
@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@interface Api62_InputBotInlineMessageID_inputBotInlineMessageID ()

@end

@implementation Api62_InputBotInlineMessageID

+ (Api62_InputBotInlineMessageID_inputBotInlineMessageID *)inputBotInlineMessageIDWithDcId:(NSNumber *)dcId pid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputBotInlineMessageID_inputBotInlineMessageID *_object = [[Api62_InputBotInlineMessageID_inputBotInlineMessageID alloc] init];
    _object.dcId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dcId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputBotInlineMessageID_inputBotInlineMessageID

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x890c3d89 serializeBlock:^bool (Api62_InputBotInlineMessageID_inputBotInlineMessageID *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.dcId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputBotInlineMessageID dc_id:%@ id:%@ access_hash:%@)", self.dcId, self.pid, self.accessHash];
}

@end




@interface Api62_SchemeParam ()

@property (nonatomic, strong) NSString * name;
@property (nonatomic, strong) NSString * type;

@end

@interface Api62_SchemeParam_schemeParam ()

@end

@implementation Api62_SchemeParam

+ (Api62_SchemeParam_schemeParam *)schemeParamWithName:(NSString *)name type:(NSString *)type
{
    Api62_SchemeParam_schemeParam *_object = [[Api62_SchemeParam_schemeParam alloc] init];
    _object.name = [Api62__Serializer addSerializerToObject:[name copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.type = [Api62__Serializer addSerializerToObject:[type copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_SchemeParam_schemeParam

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x21b59bef serializeBlock:^bool (Api62_SchemeParam_schemeParam *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.name data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.type data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(schemeParam name:%d type:%d)", (int)[self.name length], (int)[self.type length]];
}

@end




@interface Api62_StickerPack ()

@property (nonatomic, strong) NSString * emoticon;
@property (nonatomic, strong) NSArray * documents;

@end

@interface Api62_StickerPack_stickerPack ()

@end

@implementation Api62_StickerPack

+ (Api62_StickerPack_stickerPack *)stickerPackWithEmoticon:(NSString *)emoticon documents:(NSArray *)documents
{
    Api62_StickerPack_stickerPack *_object = [[Api62_StickerPack_stickerPack alloc] init];
    _object.emoticon = [Api62__Serializer addSerializerToObject:[emoticon copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.documents = 
({
NSMutableArray *documents_copy = [[NSMutableArray alloc] initWithCapacity:documents.count];
for (id documents_item in documents)
{
    [documents_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:documents_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id documents_result = [Api62__Serializer addSerializerToObject:documents_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; documents_result;});
    return _object;
}


@end

@implementation Api62_StickerPack_stickerPack

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x12b299d4 serializeBlock:^bool (Api62_StickerPack_stickerPack *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.emoticon data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.documents data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(stickerPack emoticon:%d documents:%@)", (int)[self.emoticon length], self.documents];
}

@end




@interface Api62_UserProfilePhoto ()

@end

@interface Api62_UserProfilePhoto_userProfilePhotoEmpty ()

@end

@interface Api62_UserProfilePhoto_userProfilePhoto ()

@property (nonatomic, strong) NSNumber * photoId;
@property (nonatomic, strong) Api62_FileLocation * photoSmall;
@property (nonatomic, strong) Api62_FileLocation * photoBig;

@end

@interface Api62_UserProfilePhoto_photos_updateProfilePhoto ()

@property (nonatomic, strong) Api62_InputPhoto * pid;

@end

@implementation Api62_UserProfilePhoto

+ (Api62_UserProfilePhoto_userProfilePhotoEmpty *)userProfilePhotoEmpty
{
    Api62_UserProfilePhoto_userProfilePhotoEmpty *_object = [[Api62_UserProfilePhoto_userProfilePhotoEmpty alloc] init];
    return _object;
}

+ (Api62_UserProfilePhoto_userProfilePhoto *)userProfilePhotoWithPhotoId:(NSNumber *)photoId photoSmall:(Api62_FileLocation *)photoSmall photoBig:(Api62_FileLocation *)photoBig
{
    Api62_UserProfilePhoto_userProfilePhoto *_object = [[Api62_UserProfilePhoto_userProfilePhoto alloc] init];
    _object.photoId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:photoId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.photoSmall = photoSmall;
    _object.photoBig = photoBig;
    return _object;
}

+ (Api62_UserProfilePhoto_photos_updateProfilePhoto *)photos_updateProfilePhotoWithPid:(Api62_InputPhoto *)pid
{
    Api62_UserProfilePhoto_photos_updateProfilePhoto *_object = [[Api62_UserProfilePhoto_photos_updateProfilePhoto alloc] init];
    _object.pid = pid;
    return _object;
}


@end

@implementation Api62_UserProfilePhoto_userProfilePhotoEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x4f11bae1 serializeBlock:^bool (__unused Api62_UserProfilePhoto_userProfilePhotoEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userProfilePhotoEmpty)"];
}

@end

@implementation Api62_UserProfilePhoto_userProfilePhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd559d8c8 serializeBlock:^bool (Api62_UserProfilePhoto_userProfilePhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.photoId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.photoSmall data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.photoBig data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(userProfilePhoto photo_id:%@ photo_small:%@ photo_big:%@)", self.photoId, self.photoSmall, self.photoBig];
}

@end

@implementation Api62_UserProfilePhoto_photos_updateProfilePhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xf0bb5152 serializeBlock:^bool (Api62_UserProfilePhoto_photos_updateProfilePhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(photos.updateProfilePhoto id:%@)", self.pid];
}

@end




@interface Api62_updates_ChannelDifference ()

@property (nonatomic, strong) NSNumber * flags;
@property (nonatomic, strong) NSNumber * pts;
@property (nonatomic, strong) NSNumber * timeout;

@end

@interface Api62_updates_ChannelDifference_updates_channelDifferenceEmpty ()

@end

@interface Api62_updates_ChannelDifference_updates_channelDifference ()

@property (nonatomic, strong) NSArray * pnewMessages;
@property (nonatomic, strong) NSArray * otherUpdates;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_updates_ChannelDifference_updates_channelDifferenceTooLong ()

@property (nonatomic, strong) NSNumber * topMessage;
@property (nonatomic, strong) NSNumber * readInboxMaxId;
@property (nonatomic, strong) NSNumber * readOutboxMaxId;
@property (nonatomic, strong) NSNumber * unreadCount;
@property (nonatomic, strong) NSArray * messages;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@implementation Api62_updates_ChannelDifference

+ (Api62_updates_ChannelDifference_updates_channelDifferenceEmpty *)updates_channelDifferenceEmptyWithFlags:(NSNumber *)flags pts:(NSNumber *)pts timeout:(NSNumber *)timeout
{
    Api62_updates_ChannelDifference_updates_channelDifferenceEmpty *_object = [[Api62_updates_ChannelDifference_updates_channelDifferenceEmpty alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.timeout = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:timeout] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_updates_ChannelDifference_updates_channelDifference *)updates_channelDifferenceWithFlags:(NSNumber *)flags pts:(NSNumber *)pts timeout:(NSNumber *)timeout pnewMessages:(NSArray *)pnewMessages otherUpdates:(NSArray *)otherUpdates chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_updates_ChannelDifference_updates_channelDifference *_object = [[Api62_updates_ChannelDifference_updates_channelDifference alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.timeout = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:timeout] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pnewMessages = 
({
NSMutableArray *pnewMessages_copy = [[NSMutableArray alloc] initWithCapacity:pnewMessages.count];
for (id pnewMessages_item in pnewMessages)
{
    [pnewMessages_copy addObject:pnewMessages_item];
}
id pnewMessages_result = [Api62__Serializer addSerializerToObject:pnewMessages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pnewMessages_result;});
    _object.otherUpdates = 
({
NSMutableArray *otherUpdates_copy = [[NSMutableArray alloc] initWithCapacity:otherUpdates.count];
for (id otherUpdates_item in otherUpdates)
{
    [otherUpdates_copy addObject:otherUpdates_item];
}
id otherUpdates_result = [Api62__Serializer addSerializerToObject:otherUpdates_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; otherUpdates_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}

+ (Api62_updates_ChannelDifference_updates_channelDifferenceTooLong *)updates_channelDifferenceTooLongWithFlags:(NSNumber *)flags pts:(NSNumber *)pts timeout:(NSNumber *)timeout topMessage:(NSNumber *)topMessage readInboxMaxId:(NSNumber *)readInboxMaxId readOutboxMaxId:(NSNumber *)readOutboxMaxId unreadCount:(NSNumber *)unreadCount messages:(NSArray *)messages chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_updates_ChannelDifference_updates_channelDifferenceTooLong *_object = [[Api62_updates_ChannelDifference_updates_channelDifferenceTooLong alloc] init];
    _object.flags = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.pts = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.timeout = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:timeout] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.topMessage = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:topMessage] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.readInboxMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:readInboxMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.readOutboxMaxId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:readOutboxMaxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.unreadCount = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:unreadCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.messages = 
({
NSMutableArray *messages_copy = [[NSMutableArray alloc] initWithCapacity:messages.count];
for (id messages_item in messages)
{
    [messages_copy addObject:messages_item];
}
id messages_result = [Api62__Serializer addSerializerToObject:messages_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; messages_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_updates_ChannelDifference_updates_channelDifferenceEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3e11affb serializeBlock:^bool (Api62_updates_ChannelDifference_updates_channelDifferenceEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.timeout data:data addSignature:false])
                return false;
            }
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.channelDifferenceEmpty flags:%@ pts:%@ timeout:%@)", self.flags, self.pts, self.timeout];
}

@end

@implementation Api62_updates_ChannelDifference_updates_channelDifference

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x2064674e serializeBlock:^bool (Api62_updates_ChannelDifference_updates_channelDifference *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.timeout data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.pnewMessages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.otherUpdates data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.channelDifference flags:%@ pts:%@ timeout:%@ new_messages:%@ other_updates:%@ chats:%@ users:%@)", self.flags, self.pts, self.timeout, self.pnewMessages, self.otherUpdates, self.chats, self.users];
}

@end

@implementation Api62_updates_ChannelDifference_updates_channelDifferenceTooLong

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x410dee07 serializeBlock:^bool (Api62_updates_ChannelDifference_updates_channelDifferenceTooLong *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.flags data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.pts data:data addSignature:false])
                return false;
            if ([object.flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:object.timeout data:data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:object.topMessage data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.readInboxMaxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.readOutboxMaxId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.unreadCount data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.messages data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(updates.channelDifferenceTooLong flags:%@ pts:%@ timeout:%@ top_message:%@ read_inbox_max_id:%@ read_outbox_max_id:%@ unread_count:%@ messages:%@ chats:%@ users:%@)", self.flags, self.pts, self.timeout, self.topMessage, self.readInboxMaxId, self.readOutboxMaxId, self.unreadCount, self.messages, self.chats, self.users];
}

@end




@interface Api62_MessageEntity ()

@property (nonatomic, strong) NSNumber * offset;
@property (nonatomic, strong) NSNumber * length;

@end

@interface Api62_MessageEntity_messageEntityUnknown ()

@end

@interface Api62_MessageEntity_messageEntityMention ()

@end

@interface Api62_MessageEntity_messageEntityHashtag ()

@end

@interface Api62_MessageEntity_messageEntityBotCommand ()

@end

@interface Api62_MessageEntity_messageEntityUrl ()

@end

@interface Api62_MessageEntity_messageEntityEmail ()

@end

@interface Api62_MessageEntity_messageEntityBold ()

@end

@interface Api62_MessageEntity_messageEntityItalic ()

@end

@interface Api62_MessageEntity_messageEntityCode ()

@end

@interface Api62_MessageEntity_messageEntityPre ()

@property (nonatomic, strong) NSString * language;

@end

@interface Api62_MessageEntity_messageEntityTextUrl ()

@property (nonatomic, strong) NSString * url;

@end

@interface Api62_MessageEntity_messageEntityMentionName ()

@property (nonatomic, strong) NSNumber * userId;

@end

@interface Api62_MessageEntity_inputMessageEntityMentionName ()

@property (nonatomic, strong) Api62_InputUser * userId;

@end

@implementation Api62_MessageEntity

+ (Api62_MessageEntity_messageEntityUnknown *)messageEntityUnknownWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityUnknown *_object = [[Api62_MessageEntity_messageEntityUnknown alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityMention *)messageEntityMentionWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityMention *_object = [[Api62_MessageEntity_messageEntityMention alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityHashtag *)messageEntityHashtagWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityHashtag *_object = [[Api62_MessageEntity_messageEntityHashtag alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityBotCommand *)messageEntityBotCommandWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityBotCommand *_object = [[Api62_MessageEntity_messageEntityBotCommand alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityUrl *)messageEntityUrlWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityUrl *_object = [[Api62_MessageEntity_messageEntityUrl alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityEmail *)messageEntityEmailWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityEmail *_object = [[Api62_MessageEntity_messageEntityEmail alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityBold *)messageEntityBoldWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityBold *_object = [[Api62_MessageEntity_messageEntityBold alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityItalic *)messageEntityItalicWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityItalic *_object = [[Api62_MessageEntity_messageEntityItalic alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityCode *)messageEntityCodeWithOffset:(NSNumber *)offset length:(NSNumber *)length
{
    Api62_MessageEntity_messageEntityCode *_object = [[Api62_MessageEntity_messageEntityCode alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityPre *)messageEntityPreWithOffset:(NSNumber *)offset length:(NSNumber *)length language:(NSString *)language
{
    Api62_MessageEntity_messageEntityPre *_object = [[Api62_MessageEntity_messageEntityPre alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.language = [Api62__Serializer addSerializerToObject:[language copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityTextUrl *)messageEntityTextUrlWithOffset:(NSNumber *)offset length:(NSNumber *)length url:(NSString *)url
{
    Api62_MessageEntity_messageEntityTextUrl *_object = [[Api62_MessageEntity_messageEntityTextUrl alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.url = [Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_messageEntityMentionName *)messageEntityMentionNameWithOffset:(NSNumber *)offset length:(NSNumber *)length userId:(NSNumber *)userId
{
    Api62_MessageEntity_messageEntityMentionName *_object = [[Api62_MessageEntity_messageEntityMentionName alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_MessageEntity_inputMessageEntityMentionName *)inputMessageEntityMentionNameWithOffset:(NSNumber *)offset length:(NSNumber *)length userId:(Api62_InputUser *)userId
{
    Api62_MessageEntity_inputMessageEntityMentionName *_object = [[Api62_MessageEntity_inputMessageEntityMentionName alloc] init];
    _object.offset = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.userId = userId;
    return _object;
}


@end

@implementation Api62_MessageEntity_messageEntityUnknown

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbb92ba95 serializeBlock:^bool (Api62_MessageEntity_messageEntityUnknown *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityUnknown offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityMention

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfa04579d serializeBlock:^bool (Api62_MessageEntity_messageEntityMention *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityMention offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityHashtag

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6f635b0d serializeBlock:^bool (Api62_MessageEntity_messageEntityHashtag *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityHashtag offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityBotCommand

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6cef8ac7 serializeBlock:^bool (Api62_MessageEntity_messageEntityBotCommand *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityBotCommand offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityUrl

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x6ed02538 serializeBlock:^bool (Api62_MessageEntity_messageEntityUrl *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityUrl offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityEmail

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x64e475c2 serializeBlock:^bool (Api62_MessageEntity_messageEntityEmail *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityEmail offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityBold

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xbd610bc9 serializeBlock:^bool (Api62_MessageEntity_messageEntityBold *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityBold offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityItalic

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x826f8b60 serializeBlock:^bool (Api62_MessageEntity_messageEntityItalic *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityItalic offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityCode

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x28a20571 serializeBlock:^bool (Api62_MessageEntity_messageEntityCode *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityCode offset:%@ length:%@)", self.offset, self.length];
}

@end

@implementation Api62_MessageEntity_messageEntityPre

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x73924be0 serializeBlock:^bool (Api62_MessageEntity_messageEntityPre *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.language data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityPre offset:%@ length:%@ language:%d)", self.offset, self.length, (int)[self.language length]];
}

@end

@implementation Api62_MessageEntity_messageEntityTextUrl

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x76a6d327 serializeBlock:^bool (Api62_MessageEntity_messageEntityTextUrl *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.url data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityTextUrl offset:%@ length:%@ url:%d)", self.offset, self.length, (int)[self.url length]];
}

@end

@implementation Api62_MessageEntity_messageEntityMentionName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x352dca58 serializeBlock:^bool (Api62_MessageEntity_messageEntityMentionName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messageEntityMentionName offset:%@ length:%@ user_id:%@)", self.offset, self.length, self.userId];
}

@end

@implementation Api62_MessageEntity_inputMessageEntityMentionName

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x208e68c9 serializeBlock:^bool (Api62_MessageEntity_inputMessageEntityMentionName *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.offset data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputMessageEntityMentionName offset:%@ length:%@ user_id:%@)", self.offset, self.length, self.userId];
}

@end




@interface Api62_InputPhoto ()

@end

@interface Api62_InputPhoto_inputPhotoEmpty ()

@end

@interface Api62_InputPhoto_inputPhoto ()

@property (nonatomic, strong) NSNumber * pid;
@property (nonatomic, strong) NSNumber * accessHash;

@end

@implementation Api62_InputPhoto

+ (Api62_InputPhoto_inputPhotoEmpty *)inputPhotoEmpty
{
    Api62_InputPhoto_inputPhotoEmpty *_object = [[Api62_InputPhoto_inputPhotoEmpty alloc] init];
    return _object;
}

+ (Api62_InputPhoto_inputPhoto *)inputPhotoWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash
{
    Api62_InputPhoto_inputPhoto *_object = [[Api62_InputPhoto_inputPhoto alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_InputPhoto_inputPhotoEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x1cd7bf0d serializeBlock:^bool (__unused Api62_InputPhoto_inputPhotoEmpty *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPhotoEmpty)"];
}

@end

@implementation Api62_InputPhoto_inputPhoto

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfb95c6c4 serializeBlock:^bool (Api62_InputPhoto_inputPhoto *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(inputPhoto id:%@ access_hash:%@)", self.pid, self.accessHash];
}

@end




@interface Api62_contacts_TopPeers ()

@end

@interface Api62_contacts_TopPeers_contacts_topPeersNotModified ()

@end

@interface Api62_contacts_TopPeers_contacts_topPeers ()

@property (nonatomic, strong) NSArray * categories;
@property (nonatomic, strong) NSArray * chats;
@property (nonatomic, strong) NSArray * users;

@end

@implementation Api62_contacts_TopPeers

+ (Api62_contacts_TopPeers_contacts_topPeersNotModified *)contacts_topPeersNotModified
{
    Api62_contacts_TopPeers_contacts_topPeersNotModified *_object = [[Api62_contacts_TopPeers_contacts_topPeersNotModified alloc] init];
    return _object;
}

+ (Api62_contacts_TopPeers_contacts_topPeers *)contacts_topPeersWithCategories:(NSArray *)categories chats:(NSArray *)chats users:(NSArray *)users
{
    Api62_contacts_TopPeers_contacts_topPeers *_object = [[Api62_contacts_TopPeers_contacts_topPeers alloc] init];
    _object.categories = 
({
NSMutableArray *categories_copy = [[NSMutableArray alloc] initWithCapacity:categories.count];
for (id categories_item in categories)
{
    [categories_copy addObject:categories_item];
}
id categories_result = [Api62__Serializer addSerializerToObject:categories_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; categories_result;});
    _object.chats = 
({
NSMutableArray *chats_copy = [[NSMutableArray alloc] initWithCapacity:chats.count];
for (id chats_item in chats)
{
    [chats_copy addObject:chats_item];
}
id chats_result = [Api62__Serializer addSerializerToObject:chats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; chats_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_contacts_TopPeers_contacts_topPeersNotModified

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xde266ef5 serializeBlock:^bool (__unused Api62_contacts_TopPeers_contacts_topPeersNotModified *object, __unused NSMutableData *data)
        {
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.topPeersNotModified)"];
}

@end

@implementation Api62_contacts_TopPeers_contacts_topPeers

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x70b772a8 serializeBlock:^bool (Api62_contacts_TopPeers_contacts_topPeers *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.categories data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.chats data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(contacts.topPeers categories:%@ chats:%@ users:%@)", self.categories, self.chats, self.users];
}

@end




@interface Api62_auth_SentCodeType ()

@end

@interface Api62_auth_SentCodeType_auth_sentCodeTypeApp ()

@property (nonatomic, strong) NSNumber * length;

@end

@interface Api62_auth_SentCodeType_auth_sentCodeTypeSms ()

@property (nonatomic, strong) NSNumber * length;

@end

@interface Api62_auth_SentCodeType_auth_sentCodeTypeCall ()

@property (nonatomic, strong) NSNumber * length;

@end

@interface Api62_auth_SentCodeType_auth_sentCodeTypeFlashCall ()

@property (nonatomic, strong) NSString * pattern;

@end

@implementation Api62_auth_SentCodeType

+ (Api62_auth_SentCodeType_auth_sentCodeTypeApp *)auth_sentCodeTypeAppWithLength:(NSNumber *)length
{
    Api62_auth_SentCodeType_auth_sentCodeTypeApp *_object = [[Api62_auth_SentCodeType_auth_sentCodeTypeApp alloc] init];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_auth_SentCodeType_auth_sentCodeTypeSms *)auth_sentCodeTypeSmsWithLength:(NSNumber *)length
{
    Api62_auth_SentCodeType_auth_sentCodeTypeSms *_object = [[Api62_auth_SentCodeType_auth_sentCodeTypeSms alloc] init];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_auth_SentCodeType_auth_sentCodeTypeCall *)auth_sentCodeTypeCallWithLength:(NSNumber *)length
{
    Api62_auth_SentCodeType_auth_sentCodeTypeCall *_object = [[Api62_auth_SentCodeType_auth_sentCodeTypeCall alloc] init];
    _object.length = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:length] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_auth_SentCodeType_auth_sentCodeTypeFlashCall *)auth_sentCodeTypeFlashCallWithPattern:(NSString *)pattern
{
    Api62_auth_SentCodeType_auth_sentCodeTypeFlashCall *_object = [[Api62_auth_SentCodeType_auth_sentCodeTypeFlashCall alloc] init];
    _object.pattern = [Api62__Serializer addSerializerToObject:[pattern copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    return _object;
}


@end

@implementation Api62_auth_SentCodeType_auth_sentCodeTypeApp

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3dbb5986 serializeBlock:^bool (Api62_auth_SentCodeType_auth_sentCodeTypeApp *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentCodeTypeApp length:%@)", self.length];
}

@end

@implementation Api62_auth_SentCodeType_auth_sentCodeTypeSms

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc000bba2 serializeBlock:^bool (Api62_auth_SentCodeType_auth_sentCodeTypeSms *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentCodeTypeSms length:%@)", self.length];
}

@end

@implementation Api62_auth_SentCodeType_auth_sentCodeTypeCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x5353e5a7 serializeBlock:^bool (Api62_auth_SentCodeType_auth_sentCodeTypeCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.length data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentCodeTypeCall length:%@)", self.length];
}

@end

@implementation Api62_auth_SentCodeType_auth_sentCodeTypeFlashCall

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xab03c6d9 serializeBlock:^bool (Api62_auth_SentCodeType_auth_sentCodeTypeFlashCall *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pattern data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(auth.sentCodeTypeFlashCall pattern:%d)", (int)[self.pattern length]];
}

@end




@interface Api62_EncryptedChat ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_EncryptedChat_encryptedChatEmpty ()

@end

@interface Api62_EncryptedChat_encryptedChatWaiting ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * adminId;
@property (nonatomic, strong) NSNumber * participantId;

@end

@interface Api62_EncryptedChat_encryptedChatDiscarded ()

@end

@interface Api62_EncryptedChat_encryptedChatRequested ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * adminId;
@property (nonatomic, strong) NSNumber * participantId;
@property (nonatomic, strong) NSData * gA;

@end

@interface Api62_EncryptedChat_encryptedChat ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSNumber * adminId;
@property (nonatomic, strong) NSNumber * participantId;
@property (nonatomic, strong) NSData * gAOrB;
@property (nonatomic, strong) NSNumber * keyFingerprint;

@end

@implementation Api62_EncryptedChat

+ (Api62_EncryptedChat_encryptedChatEmpty *)encryptedChatEmptyWithPid:(NSNumber *)pid
{
    Api62_EncryptedChat_encryptedChatEmpty *_object = [[Api62_EncryptedChat_encryptedChatEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_EncryptedChat_encryptedChatWaiting *)encryptedChatWaitingWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date adminId:(NSNumber *)adminId participantId:(NSNumber *)participantId
{
    Api62_EncryptedChat_encryptedChatWaiting *_object = [[Api62_EncryptedChat_encryptedChatWaiting alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participantId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_EncryptedChat_encryptedChatDiscarded *)encryptedChatDiscardedWithPid:(NSNumber *)pid
{
    Api62_EncryptedChat_encryptedChatDiscarded *_object = [[Api62_EncryptedChat_encryptedChatDiscarded alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    return _object;
}

+ (Api62_EncryptedChat_encryptedChatRequested *)encryptedChatRequestedWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date adminId:(NSNumber *)adminId participantId:(NSNumber *)participantId gA:(NSData *)gA
{
    Api62_EncryptedChat_encryptedChatRequested *_object = [[Api62_EncryptedChat_encryptedChatRequested alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participantId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.gA = [Api62__Serializer addSerializerToObject:[gA copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    return _object;
}

+ (Api62_EncryptedChat_encryptedChat *)encryptedChatWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date adminId:(NSNumber *)adminId participantId:(NSNumber *)participantId gAOrB:(NSData *)gAOrB keyFingerprint:(NSNumber *)keyFingerprint
{
    Api62_EncryptedChat_encryptedChat *_object = [[Api62_EncryptedChat_encryptedChat alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.adminId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:adminId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.participantId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:participantId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.gAOrB = [Api62__Serializer addSerializerToObject:[gAOrB copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]];
    _object.keyFingerprint = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_EncryptedChat_encryptedChatEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xab7ec0a0 serializeBlock:^bool (Api62_EncryptedChat_encryptedChatEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedChatEmpty id:%@)", self.pid];
}

@end

@implementation Api62_EncryptedChat_encryptedChatWaiting

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x3bf703dc serializeBlock:^bool (Api62_EncryptedChat_encryptedChatWaiting *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.adminId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participantId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedChatWaiting id:%@ access_hash:%@ date:%@ admin_id:%@ participant_id:%@)", self.pid, self.accessHash, self.date, self.adminId, self.participantId];
}

@end

@implementation Api62_EncryptedChat_encryptedChatDiscarded

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x13d6dd27 serializeBlock:^bool (Api62_EncryptedChat_encryptedChatDiscarded *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedChatDiscarded id:%@)", self.pid];
}

@end

@implementation Api62_EncryptedChat_encryptedChatRequested

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xc878527e serializeBlock:^bool (Api62_EncryptedChat_encryptedChatRequested *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.adminId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participantId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.gA data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedChatRequested id:%@ access_hash:%@ date:%@ admin_id:%@ participant_id:%@ g_a:%d)", self.pid, self.accessHash, self.date, self.adminId, self.participantId, (int)[self.gA length]];
}

@end

@implementation Api62_EncryptedChat_encryptedChat

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xfa56ce36 serializeBlock:^bool (Api62_EncryptedChat_encryptedChat *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.adminId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.participantId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.gAOrB data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.keyFingerprint data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(encryptedChat id:%@ access_hash:%@ date:%@ admin_id:%@ participant_id:%@ g_a_or_b:%d key_fingerprint:%@)", self.pid, self.accessHash, self.date, self.adminId, self.participantId, (int)[self.gAOrB length], self.keyFingerprint];
}

@end




@interface Api62_Document ()

@property (nonatomic, strong) NSNumber * pid;

@end

@interface Api62_Document_documentEmpty ()

@end

@interface Api62_Document_document ()

@property (nonatomic, strong) NSNumber * accessHash;
@property (nonatomic, strong) NSNumber * date;
@property (nonatomic, strong) NSString * mimeType;
@property (nonatomic, strong) NSNumber * size;
@property (nonatomic, strong) Api62_PhotoSize * thumb;
@property (nonatomic, strong) NSNumber * dcId;
@property (nonatomic, strong) NSNumber * version;
@property (nonatomic, strong) NSArray * attributes;

@end

@implementation Api62_Document

+ (Api62_Document_documentEmpty *)documentEmptyWithPid:(NSNumber *)pid
{
    Api62_Document_documentEmpty *_object = [[Api62_Document_documentEmpty alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}

+ (Api62_Document_document *)documentWithPid:(NSNumber *)pid accessHash:(NSNumber *)accessHash date:(NSNumber *)date mimeType:(NSString *)mimeType size:(NSNumber *)size thumb:(Api62_PhotoSize *)thumb dcId:(NSNumber *)dcId version:(NSNumber *)version attributes:(NSArray *)attributes
{
    Api62_Document_document *_object = [[Api62_Document_document alloc] init];
    _object.pid = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.accessHash = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:accessHash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    _object.date = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.mimeType = [Api62__Serializer addSerializerToObject:[mimeType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]];
    _object.size = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:size] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.thumb = thumb;
    _object.dcId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dcId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.version = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.attributes = 
({
NSMutableArray *attributes_copy = [[NSMutableArray alloc] initWithCapacity:attributes.count];
for (id attributes_item in attributes)
{
    [attributes_copy addObject:attributes_item];
}
id attributes_result = [Api62__Serializer addSerializerToObject:attributes_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; attributes_result;});
    return _object;
}


@end

@implementation Api62_Document_documentEmpty

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x36f8c871 serializeBlock:^bool (Api62_Document_documentEmpty *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(documentEmpty id:%@)", self.pid];
}

@end

@implementation Api62_Document_document

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x87232bc7 serializeBlock:^bool (Api62_Document_document *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.pid data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.accessHash data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.date data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.mimeType data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.size data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.thumb data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.dcId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.version data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.attributes data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(document id:%@ access_hash:%@ date:%@ mime_type:%d size:%@ thumb:%@ dc_id:%@ version:%@ attributes:%@)", self.pid, self.accessHash, self.date, (int)[self.mimeType length], self.size, self.thumb, self.dcId, self.version, self.attributes];
}

@end




@interface Api62_messages_HighScores ()

@property (nonatomic, strong) NSArray * scores;
@property (nonatomic, strong) NSArray * users;

@end

@interface Api62_messages_HighScores_messages_highScores ()

@end

@implementation Api62_messages_HighScores

+ (Api62_messages_HighScores_messages_highScores *)messages_highScoresWithScores:(NSArray *)scores users:(NSArray *)users
{
    Api62_messages_HighScores_messages_highScores *_object = [[Api62_messages_HighScores_messages_highScores alloc] init];
    _object.scores = 
({
NSMutableArray *scores_copy = [[NSMutableArray alloc] initWithCapacity:scores.count];
for (id scores_item in scores)
{
    [scores_copy addObject:scores_item];
}
id scores_result = [Api62__Serializer addSerializerToObject:scores_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; scores_result;});
    _object.users = 
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;});
    return _object;
}


@end

@implementation Api62_messages_HighScores_messages_highScores

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0x9a3bfd99 serializeBlock:^bool (Api62_messages_HighScores_messages_highScores *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.scores data:data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:object.users data:data addSignature:true])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(messages.highScores scores:%@ users:%@)", self.scores, self.users];
}

@end




@interface Api62_ImportedContact ()

@property (nonatomic, strong) NSNumber * userId;
@property (nonatomic, strong) NSNumber * clientId;

@end

@interface Api62_ImportedContact_importedContact ()

@end

@implementation Api62_ImportedContact

+ (Api62_ImportedContact_importedContact *)importedContactWithUserId:(NSNumber *)userId clientId:(NSNumber *)clientId
{
    Api62_ImportedContact_importedContact *_object = [[Api62_ImportedContact_importedContact alloc] init];
    _object.userId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:userId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]];
    _object.clientId = [Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:clientId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]];
    return _object;
}


@end

@implementation Api62_ImportedContact_importedContact

- (instancetype)init
{
    self = [super init];
    if (self != nil)
    {
        [Api62__Serializer addSerializerToObject:self withConstructorSignature:0xd0028438 serializeBlock:^bool (Api62_ImportedContact_importedContact *object, NSMutableData *data)
        {
            if (![Api62__Environment serializeObject:object.userId data:data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:object.clientId data:data addSignature:false])
                return false;
            return true;
        }];
    }
    return self;
}

- (NSString *)description
{
    return [[NSString alloc] initWithFormat:@"(importedContact user_id:%@ client_id:%@)", self.userId, self.clientId];
}

@end




@implementation Api62: NSObject

+ (Api62_FunctionContext *)messages_getMessagesWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1109588596;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getMessages"];
}
+ (Api62_FunctionContext *)messages_restoreMessagesWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 962567550;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
    return result;
    } metadata:@"messages.restoreMessages"];
}
+ (Api62_FunctionContext *)messages_getChatsWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1013621127;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getChats"];
}
+ (Api62_FunctionContext *)messages_getFullChatWithChatId:(NSNumber *)chatId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 998448230;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getFullChat"];
}
+ (Api62_FunctionContext *)messages_getDhConfigWithVersion:(NSNumber *)version randomLength:(NSNumber *)randomLength
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 651135312;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomLength] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getDhConfig"];
}
+ (Api62_FunctionContext *)messages_requestEncryptionWithUserId:(Api62_InputUser *)userId randomId:(NSNumber *)randomId gA:(NSData *)gA
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -162681021;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[gA copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.requestEncryption"];
}
+ (Api62_FunctionContext *)messages_acceptEncryptionWithPeer:(Api62_InputEncryptedChat *)peer gB:(NSData *)gB keyFingerprint:(NSNumber *)keyFingerprint
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1035731989;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[gB copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.acceptEncryption"];
}
+ (Api62_FunctionContext *)messages_discardEncryptionWithChatId:(NSNumber *)chatId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -304536635;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.discardEncryption"];
}
+ (Api62_FunctionContext *)messages_setEncryptedTypingWithPeer:(Api62_InputEncryptedChat *)peer typing:(Api62_Bool *)typing
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 2031374829;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:typing data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.setEncryptedTyping"];
}
+ (Api62_FunctionContext *)messages_readEncryptedHistoryWithPeer:(Api62_InputEncryptedChat *)peer maxDate:(NSNumber *)maxDate
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 2135648522;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.readEncryptedHistory"];
}
+ (Api62_FunctionContext *)messages_sendEncryptedWithPeer:(Api62_InputEncryptedChat *)peer randomId:(NSNumber *)randomId data:(NSData *)data
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1451792525;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendEncrypted"];
}
+ (Api62_FunctionContext *)messages_sendEncryptedFileWithPeer:(Api62_InputEncryptedChat *)peer randomId:(NSNumber *)randomId data:(NSData *)data file:(Api62_InputEncryptedFile *)file
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1701831834;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:file data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendEncryptedFile"];
}
+ (Api62_FunctionContext *)messages_sendEncryptedServiceWithPeer:(Api62_InputEncryptedChat *)peer randomId:(NSNumber *)randomId data:(NSData *)data
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 852769188;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendEncryptedService"];
}
+ (Api62_FunctionContext *)messages_receivedQueueWithMaxQts:(NSNumber *)maxQts
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1436924774;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxQts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
    return result;
    } metadata:@"messages.receivedQueue"];
}
+ (Api62_FunctionContext *)messages_setTypingWithPeer:(Api62_InputPeer *)peer action:(Api62_SendMessageAction *)action
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1551737264;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:action data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.setTyping"];
}
+ (Api62_FunctionContext *)messages_getStickersWithEmoticon:(NSString *)emoticon phash:(NSString *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1373446075;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[emoticon copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getStickers"];
}
+ (Api62_FunctionContext *)messages_deleteMessagesWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1510897371;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.deleteMessages"];
}
+ (Api62_FunctionContext *)messages_readMessageContentsWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 916930423;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.readMessageContents"];
}
+ (Api62_FunctionContext *)messages_editChatTitleWithChatId:(NSNumber *)chatId title:(NSString *)title
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -599447467;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.editChatTitle"];
}
+ (Api62_FunctionContext *)messages_editChatPhotoWithChatId:(NSNumber *)chatId photo:(Api62_InputChatPhoto *)photo
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -900957736;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:photo data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.editChatPhoto"];
}
+ (Api62_FunctionContext *)messages_addChatUserWithChatId:(NSNumber *)chatId userId:(Api62_InputUser *)userId fwdLimit:(NSNumber *)fwdLimit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -106911223;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fwdLimit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.addChatUser"];
}
+ (Api62_FunctionContext *)messages_deleteChatUserWithChatId:(NSNumber *)chatId userId:(Api62_InputUser *)userId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -530505962;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.deleteChatUser"];
}
+ (Api62_FunctionContext *)messages_createChatWithUsers:(NSArray *)users title:(NSString *)title
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 164303470;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.createChat"];
}
+ (Api62_FunctionContext *)messages_sendBroadcastWithContacts:(NSArray *)contacts randomId:(NSArray *)randomId message:(NSString *)message media:(Api62_InputMedia *)media
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1082919718;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *contacts_copy = [[NSMutableArray alloc] initWithCapacity:contacts.count];
for (id contacts_item in contacts)
{
    [contacts_copy addObject:contacts_item];
}
id contacts_result = [Api62__Serializer addSerializerToObject:contacts_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; contacts_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *randomId_copy = [[NSMutableArray alloc] initWithCapacity:randomId.count];
for (id randomId_item in randomId)
{
    [randomId_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id randomId_result = [Api62__Serializer addSerializerToObject:randomId_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; randomId_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:media data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendBroadcast"];
}
+ (Api62_FunctionContext *)messages_getWebPagePreviewWithMessage:(NSString *)message
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 623001124;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getWebPagePreview"];
}
+ (Api62_FunctionContext *)messages_forwardMessageWithPeer:(Api62_InputPeer *)peer pid:(NSNumber *)pid randomId:(NSNumber *)randomId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 865483769;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.forwardMessage"];
}
+ (Api62_FunctionContext *)messages_receivedMessagesWithMaxId:(NSNumber *)maxId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 94983360;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
    return result;
    } metadata:@"messages.receivedMessages"];
}
+ (Api62_FunctionContext *)messages_exportChatInviteWithChatId:(NSNumber *)chatId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 2106086025;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.exportChatInvite"];
}
+ (Api62_FunctionContext *)messages_checkChatInviteWithPhash:(NSString *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1051570619;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.checkChatInvite"];
}
+ (Api62_FunctionContext *)messages_importChatInviteWithPhash:(NSString *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1817183516;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.importChatInvite"];
}
+ (Api62_FunctionContext *)messages_getStickerSetWithStickerset:(Api62_InputStickerSet *)stickerset
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 639215886;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:stickerset data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getStickerSet"];
}
+ (Api62_FunctionContext *)messages_uninstallStickerSetWithStickerset:(Api62_InputStickerSet *)stickerset
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -110209570;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:stickerset data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.uninstallStickerSet"];
}
+ (Api62_FunctionContext *)messages_searchWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer q:(NSString *)q filter:(Api62_MessagesFilter *)filter minDate:(NSNumber *)minDate maxDate:(NSNumber *)maxDate offset:(NSNumber *)offset maxId:(NSNumber *)maxId limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -732523960;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[q copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:filter data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:minDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.search"];
}
+ (Api62_FunctionContext *)messages_getMessagesViewsWithPeer:(Api62_InputPeer *)peer pid:(NSArray *)pid increment:(Api62_Bool *)increment
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -993483427;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:increment data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getMessagesViews"];
}
+ (Api62_FunctionContext *)messages_toggleChatAdminsWithChatId:(NSNumber *)chatId enabled:(Api62_Bool *)enabled
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -326379039;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:enabled data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.toggleChatAdmins"];
}
+ (Api62_FunctionContext *)messages_editChatAdminWithChatId:(NSNumber *)chatId userId:(Api62_InputUser *)userId isAdmin:(Api62_Bool *)isAdmin
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1444503762;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:isAdmin data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.editChatAdmin"];
}
+ (Api62_FunctionContext *)messages_readHistoryWithPeer:(Api62_InputPeer *)peer maxId:(NSNumber *)maxId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 238054714;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.readHistory"];
}
+ (Api62_FunctionContext *)messages_migrateChatWithChatId:(NSNumber *)chatId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 363051235;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:chatId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.migrateChat"];
}
+ (Api62_FunctionContext *)messages_searchGlobalWithQ:(NSString *)q offsetDate:(NSNumber *)offsetDate offsetPeer:(Api62_InputPeer *)offsetPeer offsetId:(NSNumber *)offsetId limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1640190800;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[q copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:offsetPeer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.searchGlobal"];
}
+ (Api62_FunctionContext *)messages_startBotWithBot:(Api62_InputUser *)bot peer:(Api62_InputPeer *)peer randomId:(NSNumber *)randomId startParam:(NSString *)startParam
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -421563528;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:bot data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[startParam copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.startBot"];
}
+ (Api62_FunctionContext *)messages_getAllStickersWithPhash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 479598769;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getAllStickers"];
}
+ (Api62_FunctionContext *)messages_reorderStickerSetsWithOrder:(NSArray *)order
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1613775824;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *order_copy = [[NSMutableArray alloc] initWithCapacity:order.count];
for (id order_item in order)
{
    [order_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:order_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id order_result = [Api62__Serializer addSerializerToObject:order_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; order_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.reorderStickerSets"];
}
+ (Api62_FunctionContext *)messages_getDocumentByHashWithSha256:(NSData *)sha256 size:(NSNumber *)size mimeType:(NSString *)mimeType
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 864953444;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[sha256 copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:size] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[mimeType copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getDocumentByHash"];
}
+ (Api62_FunctionContext *)messages_searchGifsWithQ:(NSString *)q offset:(NSNumber *)offset
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1080395925;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[q copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.searchGifs"];
}
+ (Api62_FunctionContext *)messages_getSavedGifsWithPhash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -2084618926;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getSavedGifs"];
}
+ (Api62_FunctionContext *)messages_saveGifWithPid:(Api62_InputDocument *)pid unsave:(Api62_Bool *)unsave
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 846868683;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:unsave data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.saveGif"];
}
+ (Api62_FunctionContext *)messages_setInlineBotResultsWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId results:(NSArray *)results cacheTime:(NSNumber *)cacheTime nextOffset:(NSString *)nextOffset
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1059318802;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *results_copy = [[NSMutableArray alloc] initWithCapacity:results.count];
for (id results_item in results)
{
    [results_copy addObject:results_item];
}
id results_result = [Api62__Serializer addSerializerToObject:results_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; results_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cacheTime] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[nextOffset copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.setInlineBotResults"];
}
+ (Api62_FunctionContext *)messages_getHistoryWithPeer:(Api62_InputPeer *)peer offsetId:(NSNumber *)offsetId offsetDate:(NSNumber *)offsetDate addOffset:(NSNumber *)addOffset limit:(NSNumber *)limit maxId:(NSNumber *)maxId minId:(NSNumber *)minId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1347868602;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:addOffset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:minId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getHistory"];
}
+ (Api62_FunctionContext *)messages_sendMessageWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer replyToMsgId:(NSNumber *)replyToMsgId message:(NSString *)message randomId:(NSNumber *)randomId replyMarkup:(Api62_ReplyMarkup *)replyMarkup entities:(NSArray *)entities
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -91733382;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:replyMarkup data:_data addSignature:true])
                return false;
            }
            if ([flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;}) data:_data addSignature:true])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendMessage"];
}
+ (Api62_FunctionContext *)messages_sendMediaWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer replyToMsgId:(NSNumber *)replyToMsgId media:(Api62_InputMedia *)media randomId:(NSNumber *)randomId replyMarkup:(Api62_ReplyMarkup *)replyMarkup
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -923703407;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:media data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:replyMarkup data:_data addSignature:true])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendMedia"];
}
+ (Api62_FunctionContext *)messages_sendInlineBotResultWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer replyToMsgId:(NSNumber *)replyToMsgId randomId:(NSNumber *)randomId queryId:(NSNumber *)queryId pid:(NSString *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1318189314;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[pid copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.sendInlineBotResult"];
}
+ (Api62_FunctionContext *)messages_forwardMessagesWithFlags:(NSNumber *)flags fromPeer:(Api62_InputPeer *)fromPeer pid:(NSArray *)pid randomId:(NSArray *)randomId toPeer:(Api62_InputPeer *)toPeer
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1888354709;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:fromPeer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *randomId_copy = [[NSMutableArray alloc] initWithCapacity:randomId.count];
for (id randomId_item in randomId)
{
    [randomId_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId_item] serializer:[[Api62_BuiltinSerializer_Long alloc] init]]];
}
id randomId_result = [Api62__Serializer addSerializerToObject:randomId_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; randomId_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:toPeer data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.forwardMessages"];
}
+ (Api62_FunctionContext *)messages_getInlineBotResultsWithFlags:(NSNumber *)flags bot:(Api62_InputUser *)bot geoPoint:(Api62_InputGeoPoint *)geoPoint query:(NSString *)query offset:(NSString *)offset
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1796755088;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:bot data:_data addSignature:true])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:geoPoint data:_data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[query copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[offset copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getInlineBotResults"];
}
+ (Api62_FunctionContext *)messages_getPeerDialogsWithPeers:(NSArray *)peers
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 764901049;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *peers_copy = [[NSMutableArray alloc] initWithCapacity:peers.count];
for (id peers_item in peers)
{
    [peers_copy addObject:peers_item];
}
id peers_result = [Api62__Serializer addSerializerToObject:peers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; peers_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getPeerDialogs"];
}
+ (Api62_FunctionContext *)messages_saveDraftWithFlags:(NSNumber *)flags replyToMsgId:(NSNumber *)replyToMsgId peer:(Api62_InputPeer *)peer message:(NSString *)message entities:(NSArray *)entities
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1137057461;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:replyToMsgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;}) data:_data addSignature:true])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.saveDraft"];
}
+ (Api62_FunctionContext *)messages_getAllDrafts
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1782549861;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getAllDrafts"];
}
+ (Api62_FunctionContext *)messages_deleteHistoryWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer maxId:(NSNumber *)maxId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 469850889;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.deleteHistory"];
}
+ (Api62_FunctionContext *)messages_getFeaturedStickersWithPhash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 766298703;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getFeaturedStickers"];
}
+ (Api62_FunctionContext *)messages_readFeaturedStickers
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 14818491;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.readFeaturedStickers"];
}
+ (Api62_FunctionContext *)messages_getRecentStickersWithPhash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1726383060;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getRecentStickers"];
}
+ (Api62_FunctionContext *)messages_saveRecentStickerWithPid:(Api62_InputDocument *)pid unsave:(Api62_Bool *)unsave
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 881736127;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:unsave data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.saveRecentSticker"];
}
+ (Api62_FunctionContext *)messages_clearRecentStickers
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1425873454;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.clearRecentStickers"];
}
+ (Api62_FunctionContext *)messages_installStickerSetWithStickerset:(Api62_InputStickerSet *)stickerset archived:(Api62_Bool *)archived
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -946871200;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:stickerset data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:archived data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.installStickerSet"];
}
+ (Api62_FunctionContext *)messages_getUnusedStickersWithLimit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1124718171;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getUnusedStickers"];
}
+ (Api62_FunctionContext *)messages_getArchivedStickersWithOffsetId:(NSNumber *)offsetId limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1871829985;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getArchivedStickers"];
}
+ (Api62_FunctionContext *)messages_setGameScoreWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer pid:(NSNumber *)pid userId:(Api62_InputUser *)userId score:(NSNumber *)score
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1896289088;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:score] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.setGameScore"];
}
+ (Api62_FunctionContext *)messages_setInlineGameScoreWithFlags:(NSNumber *)flags pid:(Api62_InputBotInlineMessageID *)pid userId:(Api62_InputUser *)userId score:(NSNumber *)score
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 363700068;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:score] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.setInlineGameScore"];
}
+ (Api62_FunctionContext *)messages_getGameHighScoresWithPeer:(Api62_InputPeer *)peer pid:(NSNumber *)pid userId:(Api62_InputUser *)userId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -400399203;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getGameHighScores"];
}
+ (Api62_FunctionContext *)messages_getInlineGameHighScoresWithPid:(Api62_InputBotInlineMessageID *)pid userId:(Api62_InputUser *)userId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 258170395;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getInlineGameHighScores"];
}
+ (Api62_FunctionContext *)messages_getBotCallbackAnswerWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer msgId:(NSNumber *)msgId data:(NSData *)data
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -2130010132;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:msgId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[data copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getBotCallbackAnswer"];
}
+ (Api62_FunctionContext *)messages_setBotCallbackAnswerWithFlags:(NSNumber *)flags queryId:(NSNumber *)queryId message:(NSString *)message url:(NSString *)url cacheTime:(NSNumber *)cacheTime
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -712043766;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:queryId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            }
            if ([flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[url copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:cacheTime] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.setBotCallbackAnswer"];
}
+ (Api62_FunctionContext *)messages_getCommonChatsWithUserId:(Api62_InputUser *)userId maxId:(NSNumber *)maxId limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 218777796;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getCommonChats"];
}
+ (Api62_FunctionContext *)messages_getAllChatsWithExceptIds:(NSArray *)exceptIds
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -341307408;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *exceptIds_copy = [[NSMutableArray alloc] initWithCapacity:exceptIds.count];
for (id exceptIds_item in exceptIds)
{
    [exceptIds_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:exceptIds_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id exceptIds_result = [Api62__Serializer addSerializerToObject:exceptIds_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; exceptIds_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getAllChats"];
}
+ (Api62_FunctionContext *)messages_getWebPageWithPid:(NSNumber *)pid phash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 101843938;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getWebPage"];
}
+ (Api62_FunctionContext *)messages_toggleDialogPinWithFlags:(NSNumber *)flags peer:(Api62_InputPeer *)peer
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 847887978;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.toggleDialogPin"];
}
+ (Api62_FunctionContext *)messages_reorderPinnedDialogsWithFlags:(NSNumber *)flags order:(NSArray *)order
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1784678844;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *order_copy = [[NSMutableArray alloc] initWithCapacity:order.count];
for (id order_item in order)
{
    [order_copy addObject:order_item];
}
id order_result = [Api62__Serializer addSerializerToObject:order_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; order_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.reorderPinnedDialogs"];
}
+ (Api62_FunctionContext *)messages_getPinnedDialogs
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -497756594;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getPinnedDialogs"];
}
+ (Api62_FunctionContext *)messages_getDialogsWithFlags:(NSNumber *)flags offsetDate:(NSNumber *)offsetDate offsetId:(NSNumber *)offsetId offsetPeer:(Api62_InputPeer *)offsetPeer limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 421243333;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:offsetPeer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"messages.getDialogs"];
}
+ (Api62_FunctionContext *)channels_getDialogsWithOffset:(NSNumber *)offset limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1445735863;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getDialogs"];
}
+ (Api62_FunctionContext *)channels_readHistoryWithChannel:(Api62_InputChannel *)channel maxId:(NSNumber *)maxId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -871347913;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.readHistory"];
}
+ (Api62_FunctionContext *)channels_deleteMessagesWithChannel:(Api62_InputChannel *)channel pid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -2067661490;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.deleteMessages"];
}
+ (Api62_FunctionContext *)channels_deleteUserHistoryWithChannel:(Api62_InputChannel *)channel userId:(Api62_InputUser *)userId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -787622117;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.deleteUserHistory"];
}
+ (Api62_FunctionContext *)channels_reportSpamWithChannel:(Api62_InputChannel *)channel userId:(Api62_InputUser *)userId pid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -32999408;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.reportSpam"];
}
+ (Api62_FunctionContext *)channels_getMessagesWithChannel:(Api62_InputChannel *)channel pid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1814580409;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid_item] serializer:[[Api62_BuiltinSerializer_Int alloc] init]]];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getMessages"];
}
+ (Api62_FunctionContext *)channels_getParticipantsWithChannel:(Api62_InputChannel *)channel filter:(Api62_ChannelParticipantsFilter *)filter offset:(NSNumber *)offset limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 618237842;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:filter data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getParticipants"];
}
+ (Api62_FunctionContext *)channels_getParticipantWithChannel:(Api62_InputChannel *)channel userId:(Api62_InputUser *)userId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1416484774;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getParticipant"];
}
+ (Api62_FunctionContext *)channels_getChannelsWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 176122811;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:pid_item];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getChannels"];
}
+ (Api62_FunctionContext *)channels_getFullChannelWithChannel:(Api62_InputChannel *)channel
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 141781513;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getFullChannel"];
}
+ (Api62_FunctionContext *)channels_editAboutWithChannel:(Api62_InputChannel *)channel about:(NSString *)about
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 333610782;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[about copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.editAbout"];
}
+ (Api62_FunctionContext *)channels_editTitleWithChannel:(Api62_InputChannel *)channel title:(NSString *)title
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1450044624;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.editTitle"];
}
+ (Api62_FunctionContext *)channels_editPhotoWithChannel:(Api62_InputChannel *)channel photo:(Api62_InputChatPhoto *)photo
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -248621111;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:photo data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.editPhoto"];
}
+ (Api62_FunctionContext *)channels_toggleCommentsWithChannel:(Api62_InputChannel *)channel enabled:(Api62_Bool *)enabled
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1432183160;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:enabled data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.toggleComments"];
}
+ (Api62_FunctionContext *)channels_checkUsernameWithChannel:(Api62_InputChannel *)channel username:(NSString *)username
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 283557164;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.checkUsername"];
}
+ (Api62_FunctionContext *)channels_updateUsernameWithChannel:(Api62_InputChannel *)channel username:(NSString *)username
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 890549214;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.updateUsername"];
}
+ (Api62_FunctionContext *)channels_joinChannelWithChannel:(Api62_InputChannel *)channel
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 615851205;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.joinChannel"];
}
+ (Api62_FunctionContext *)channels_leaveChannelWithChannel:(Api62_InputChannel *)channel
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -130635115;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.leaveChannel"];
}
+ (Api62_FunctionContext *)channels_inviteToChannelWithChannel:(Api62_InputChannel *)channel users:(NSArray *)users
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 429865580;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.inviteToChannel"];
}
+ (Api62_FunctionContext *)channels_kickFromChannelWithChannel:(Api62_InputChannel *)channel userId:(Api62_InputUser *)userId kicked:(Api62_Bool *)kicked
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1502421484;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:kicked data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.kickFromChannel"];
}
+ (Api62_FunctionContext *)channels_exportInviteWithChannel:(Api62_InputChannel *)channel
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -950663035;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.exportInvite"];
}
+ (Api62_FunctionContext *)channels_deleteChannelWithChannel:(Api62_InputChannel *)channel
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1072619549;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.deleteChannel"];
}
+ (Api62_FunctionContext *)channels_createChannelWithFlags:(NSNumber *)flags title:(NSString *)title about:(NSString *)about
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -192332417;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[title copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[about copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.createChannel"];
}
+ (Api62_FunctionContext *)channels_editAdminWithChannel:(Api62_InputChannel *)channel userId:(Api62_InputUser *)userId role:(Api62_ChannelParticipantRole *)role
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -344583728;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:role data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.editAdmin"];
}
+ (Api62_FunctionContext *)channels_getImportantHistoryWithChannel:(Api62_InputChannel *)channel offsetId:(NSNumber *)offsetId offsetDate:(NSNumber *)offsetDate addOffset:(NSNumber *)addOffset limit:(NSNumber *)limit maxId:(NSNumber *)maxId minId:(NSNumber *)minId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1891021902;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offsetDate] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:addOffset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:minId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getImportantHistory"];
}
+ (Api62_FunctionContext *)channels_toggleInvitesWithChannel:(Api62_InputChannel *)channel enabled:(Api62_Bool *)enabled
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1231065863;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:enabled data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.toggleInvites"];
}
+ (Api62_FunctionContext *)channels_exportMessageLinkWithChannel:(Api62_InputChannel *)channel pid:(NSNumber *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -934882771;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.exportMessageLink"];
}
+ (Api62_FunctionContext *)channels_toggleSignaturesWithChannel:(Api62_InputChannel *)channel enabled:(Api62_Bool *)enabled
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 527021574;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:enabled data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.toggleSignatures"];
}
+ (Api62_FunctionContext *)channels_editMessageWithFlags:(NSNumber *)flags channel:(Api62_InputChannel *)channel pid:(NSNumber *)pid message:(NSString *)message entities:(NSArray *)entities
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -589659923;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 3)) {
            if (![Api62__Environment serializeObject:
({
NSMutableArray *entities_copy = [[NSMutableArray alloc] initWithCapacity:entities.count];
for (id entities_item in entities)
{
    [entities_copy addObject:entities_item];
}
id entities_result = [Api62__Serializer addSerializerToObject:entities_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; entities_result;}) data:_data addSignature:true])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.editMessage"];
}
+ (Api62_FunctionContext *)channels_updatePinnedMessageWithFlags:(NSNumber *)flags channel:(Api62_InputChannel *)channel pid:(NSNumber *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1490162350;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.updatePinnedMessage"];
}
+ (Api62_FunctionContext *)channels_getAdminedPublicChannels
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1920105769;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"channels.getAdminedPublicChannels"];
}
+ (Api62_FunctionContext *)auth_checkPhoneWithPhoneNumber:(NSString *)phoneNumber
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1877286395;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.checkPhone"];
}
+ (Api62_FunctionContext *)auth_sendCallWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 63247716;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.sendCall"];
}
+ (Api62_FunctionContext *)auth_signUpWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash phoneCode:(NSString *)phoneCode firstName:(NSString *)firstName lastName:(NSString *)lastName
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 453408308;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.signUp"];
}
+ (Api62_FunctionContext *)auth_signInWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash phoneCode:(NSString *)phoneCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1126886015;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.signIn"];
}
+ (Api62_FunctionContext *)auth_logOut
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1461180992;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.logOut"];
}
+ (Api62_FunctionContext *)auth_resetAuthorizations
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1616179942;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.resetAuthorizations"];
}
+ (Api62_FunctionContext *)auth_sendInvitesWithPhoneNumbers:(NSArray *)phoneNumbers message:(NSString *)message
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1998331287;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *phoneNumbers_copy = [[NSMutableArray alloc] initWithCapacity:phoneNumbers.count];
for (id phoneNumbers_item in phoneNumbers)
{
    [phoneNumbers_copy addObject:[Api62__Serializer addSerializerToObject:[phoneNumbers_item copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]]];
}
id phoneNumbers_result = [Api62__Serializer addSerializerToObject:phoneNumbers_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:false])
        return false;
    }
    return true;
}]]; phoneNumbers_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.sendInvites"];
}
+ (Api62_FunctionContext *)auth_exportAuthorizationWithDcId:(NSNumber *)dcId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -440401971;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:dcId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.exportAuthorization"];
}
+ (Api62_FunctionContext *)auth_importAuthorizationWithPid:(NSNumber *)pid bytes:(NSData *)bytes
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -470837741;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pid] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.importAuthorization"];
}
+ (Api62_FunctionContext *)auth_sendSmsWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 229241832;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.sendSms"];
}
+ (Api62_FunctionContext *)auth_resetAccountPasswordWithFirstName:(NSString *)firstName lastName:(NSString *)lastName
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1232524865;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.resetAccountPassword"];
}
+ (Api62_FunctionContext *)auth_checkPasswordWithPasswordHash:(NSData *)passwordHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 174260510;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[passwordHash copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.checkPassword"];
}
+ (Api62_FunctionContext *)auth_requestPasswordRecovery
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -661144474;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.requestPasswordRecovery"];
}
+ (Api62_FunctionContext *)auth_recoverPasswordWithCode:(NSString *)code
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1319464594;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[code copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.recoverPassword"];
}
+ (Api62_FunctionContext *)auth_sendCodeWithFlags:(NSNumber *)flags phoneNumber:(NSString *)phoneNumber currentNumber:(Api62_Bool *)currentNumber apiId:(NSNumber *)apiId apiHash:(NSString *)apiHash langCode:(NSString *)langCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -855805745;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:currentNumber data:_data addSignature:true])
                return false;
            }
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:apiId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[apiHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.sendCode"];
}
+ (Api62_FunctionContext *)auth_resendCodeWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1056025023;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.resendCode"];
}
+ (Api62_FunctionContext *)auth_cancelCodeWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 520357240;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"auth.cancelCode"];
}
+ (Api62_FunctionContext *)geo_saveGeoPlaceWithGeoPoint:(Api62_InputGeoPoint *)geoPoint langCode:(NSString *)langCode placeName:(Api62_InputGeoPlaceName *)placeName
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1896021556;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:geoPoint data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:placeName data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"geo.saveGeoPlace"];
}
+ (Api62_FunctionContext *)users_getUsersWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 227648840;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:pid_item];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
    return result;
    } metadata:@"users.getUsers"];
}
+ (Api62_FunctionContext *)users_getFullUserWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -902781519;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"users.getFullUser"];
}
+ (Api62_FunctionContext *)contacts_getContactIDs
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 333222173;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0xa8509bda]]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getContactIDs"];
}
+ (Api62_FunctionContext *)contacts_getStatuses
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -995929106;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getStatuses"];
}
+ (Api62_FunctionContext *)contacts_getContactsWithNHash:(NSString *)nHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 583445000;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[nHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getContacts"];
}
+ (Api62_FunctionContext *)contacts_getRequestsWithOffset:(NSNumber *)offset limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -250972370;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getRequests"];
}
+ (Api62_FunctionContext *)contacts_getLinkWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -451068847;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getLink"];
}
+ (Api62_FunctionContext *)contacts_importContactsWithContacts:(NSArray *)contacts replace:(Api62_Bool *)replace
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -634342611;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *contacts_copy = [[NSMutableArray alloc] initWithCapacity:contacts.count];
for (id contacts_item in contacts)
{
    [contacts_copy addObject:contacts_item];
}
id contacts_result = [Api62__Serializer addSerializerToObject:contacts_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; contacts_result;}) data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:replace data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.importContacts"];
}
+ (Api62_FunctionContext *)contacts_getLocatedWithGeoPoint:(Api62_InputGeoPoint *)geoPoint hidden:(Api62_Bool *)hidden radius:(NSNumber *)radius limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1639285372;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:geoPoint data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:hidden data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:radius] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getLocated"];
}
+ (Api62_FunctionContext *)contacts_getSuggestedWithLimit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -847825880;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getSuggested"];
}
+ (Api62_FunctionContext *)contacts_sendRequestWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1923828526;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.sendRequest"];
}
+ (Api62_FunctionContext *)contacts_acceptRequestWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1804853359;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.acceptRequest"];
}
+ (Api62_FunctionContext *)contacts_declineRequestWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 308953976;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.declineRequest"];
}
+ (Api62_FunctionContext *)contacts_deleteContactWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1902823612;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.deleteContact"];
}
+ (Api62_FunctionContext *)contacts_clearContactWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -596855117;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.clearContact"];
}
+ (Api62_FunctionContext *)contacts_deleteContactsWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1504393374;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:pid_item];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.deleteContacts"];
}
+ (Api62_FunctionContext *)contacts_blockWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 858475004;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.block"];
}
+ (Api62_FunctionContext *)contacts_unblockWithPid:(Api62_InputUser *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -448724803;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.unblock"];
}
+ (Api62_FunctionContext *)contacts_getBlockedWithOffset:(NSNumber *)offset limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -176409329;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getBlocked"];
}
+ (Api62_FunctionContext *)contacts_searchWithQ:(NSString *)q limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 301470424;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[q copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.search"];
}
+ (Api62_FunctionContext *)contacts_resolveUsernameWithUsername:(NSString *)username
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -113456221;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.resolveUsername"];
}
+ (Api62_FunctionContext *)contacts_getTopPeersWithFlags:(NSNumber *)flags offset:(NSNumber *)offset limit:(NSNumber *)limit phash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -728224331;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.getTopPeers"];
}
+ (Api62_FunctionContext *)contacts_resetTopPeerRatingWithCategory:(Api62_TopPeerCategory *)category peer:(Api62_InputPeer *)peer
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 451113900;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:category data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contacts.resetTopPeerRating"];
}
+ (Api62_FunctionContext *)contest_saveDeveloperInfoWithVkId:(NSNumber *)vkId name:(NSString *)name phoneNumber:(NSString *)phoneNumber age:(NSNumber *)age city:(NSString *)city
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1705021803;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:vkId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[name copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:age] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[city copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"contest.saveDeveloperInfo"];
}
+ (Api62_FunctionContext *)help_getConfig
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -990308245;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getConfig"];
}
+ (Api62_FunctionContext *)help_getNearestDc
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 531836966;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getNearestDc"];
}
+ (Api62_FunctionContext *)help_getSchemeWithVersion:(NSNumber *)version
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -608789858;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:version] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getScheme"];
}
+ (Api62_FunctionContext *)help_getAppUpdateWithDeviceModel:(NSString *)deviceModel systemVersion:(NSString *)systemVersion appVersion:(NSString *)appVersion langCode:(NSString *)langCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -938300290;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[deviceModel copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[systemVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[appVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getAppUpdate"];
}
+ (Api62_FunctionContext *)help_getInviteTextWithLangCode:(NSString *)langCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1532407418;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getInviteText"];
}
+ (Api62_FunctionContext *)help_getAppPrefsWithApiId:(NSNumber *)apiId apiHash:(NSString *)apiHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1883316387;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:apiId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[apiHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getAppPrefs"];
}
+ (Api62_FunctionContext *)help_saveNetworkStatsWithStats:(NSArray *)stats
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1113444435;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *stats_copy = [[NSMutableArray alloc] initWithCapacity:stats.count];
for (id stats_item in stats)
{
    [stats_copy addObject:stats_item];
}
id stats_result = [Api62__Serializer addSerializerToObject:stats_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; stats_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.saveNetworkStats"];
}
+ (Api62_FunctionContext *)help_test
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1058929929;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.test"];
}
+ (Api62_FunctionContext *)help_getSupport
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1663104819;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getSupport"];
}
+ (Api62_FunctionContext *)help_getAppChangelogWithDeviceModel:(NSString *)deviceModel systemVersion:(NSString *)systemVersion appVersion:(NSString *)appVersion langCode:(NSString *)langCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1537966002;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[deviceModel copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[systemVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[appVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getAppChangelog"];
}
+ (Api62_FunctionContext *)help_getTermsOfServiceWithLangCode:(NSString *)langCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 936873859;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.getTermsOfService"];
}
+ (Api62_FunctionContext *)help_setBotUpdatesStatusWithPendingUpdatesCount:(NSNumber *)pendingUpdatesCount message:(NSString *)message
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -333262899;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pendingUpdatesCount] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[message copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"help.setBotUpdatesStatus"];
}
+ (Api62_FunctionContext *)updates_getState
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -304838614;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"updates.getState"];
}
+ (Api62_FunctionContext *)updates_subscribeWithUsers:(NSArray *)users
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -72144472;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"updates.subscribe"];
}
+ (Api62_FunctionContext *)updates_unsubscribeWithUsers:(NSArray *)users
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 138751864;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *users_copy = [[NSMutableArray alloc] initWithCapacity:users.count];
for (id users_item in users)
{
    [users_copy addObject:users_item];
}
id users_result = [Api62__Serializer addSerializerToObject:users_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; users_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"updates.unsubscribe"];
}
+ (Api62_FunctionContext *)updates_getDifferenceWithFlags:(NSNumber *)flags pts:(NSNumber *)pts ptsTotalLimit:(NSNumber *)ptsTotalLimit date:(NSNumber *)date qts:(NSNumber *)qts
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 630429265;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:ptsTotalLimit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            }
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:date] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:qts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"updates.getDifference"];
}
+ (Api62_FunctionContext *)updates_getChannelDifferenceWithFlags:(NSNumber *)flags channel:(Api62_InputChannel *)channel filter:(Api62_ChannelMessagesFilter *)filter pts:(NSNumber *)pts limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 51854712;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:channel data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:filter data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:pts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"updates.getChannelDifference"];
}
+ (Api62_FunctionContext *)upload_saveFilePartWithFileId:(NSNumber *)fileId filePart:(NSNumber *)filePart bytes:(NSData *)bytes
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1291540959;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fileId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:filePart] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"upload.saveFilePart"];
}
+ (Api62_FunctionContext *)upload_getFileWithLocation:(Api62_InputFileLocation *)location offset:(NSNumber *)offset limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -475607115;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:location data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"upload.getFile"];
}
+ (Api62_FunctionContext *)upload_saveBigFilePartWithFileId:(NSNumber *)fileId filePart:(NSNumber *)filePart fileTotalParts:(NSNumber *)fileTotalParts bytes:(NSData *)bytes
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -562337987;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fileId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:filePart] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:fileTotalParts] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[bytes copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"upload.saveBigFilePart"];
}
+ (Api62_FunctionContext *)account_unregisterDeviceWithTokenType:(NSNumber *)tokenType token:(NSString *)token
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1707432768;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:tokenType] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[token copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.unregisterDevice"];
}
+ (Api62_FunctionContext *)account_updateNotifySettingsWithPeer:(Api62_InputNotifyPeer *)peer settings:(Api62_InputPeerNotifySettings *)settings
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -2067899501;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:settings data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.updateNotifySettings"];
}
+ (Api62_FunctionContext *)account_getNotifySettingsWithPeer:(Api62_InputNotifyPeer *)peer
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 313765169;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.getNotifySettings"];
}
+ (Api62_FunctionContext *)account_resetNotifySettings
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -612493497;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.resetNotifySettings"];
}
+ (Api62_FunctionContext *)account_updateStatusWithOffline:(Api62_Bool *)offline
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1713919532;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:offline data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.updateStatus"];
}
+ (Api62_FunctionContext *)account_getWallPapers
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1068696894;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[Api62__BoxedTypeMetaInfo boxedTypeMetaInfo]]) == nil)
               return nil;
    return result;
    } metadata:@"account.getWallPapers"];
}
+ (Api62_FunctionContext *)account_registerDeviceWithTokenType:(NSNumber *)tokenType token:(NSString *)token deviceModel:(NSString *)deviceModel systemVersion:(NSString *)systemVersion appVersion:(NSString *)appVersion appSandbox:(Api62_Bool *)appSandbox langCode:(NSString *)langCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1147957548;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:tokenType] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[token copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[deviceModel copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[systemVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[appVersion copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:appSandbox data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[langCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.registerDevice"];
}
+ (Api62_FunctionContext *)account_checkUsernameWithUsername:(NSString *)username
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 655677548;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.checkUsername"];
}
+ (Api62_FunctionContext *)account_updateUsernameWithUsername:(NSString *)username
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1040964988;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[username copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.updateUsername"];
}
+ (Api62_FunctionContext *)account_getPrivacyWithKey:(Api62_InputPrivacyKey *)key
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -623130288;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:key data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.getPrivacy"];
}
+ (Api62_FunctionContext *)account_setPrivacyWithKey:(Api62_InputPrivacyKey *)key rules:(NSArray *)rules
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -906486552;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:key data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:
({
NSMutableArray *rules_copy = [[NSMutableArray alloc] initWithCapacity:rules.count];
for (id rules_item in rules)
{
    [rules_copy addObject:rules_item];
}
id rules_result = [Api62__Serializer addSerializerToObject:rules_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; rules_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.setPrivacy"];
}
+ (Api62_FunctionContext *)account_deleteAccountWithReason:(NSString *)reason
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1099779595;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[reason copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.deleteAccount"];
}
+ (Api62_FunctionContext *)account_getAccountTTL
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 150761757;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.getAccountTTL"];
}
+ (Api62_FunctionContext *)account_setAccountTTLWithTtl:(Api62_AccountDaysTTL *)ttl
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 608323678;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:ttl data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.setAccountTTL"];
}
+ (Api62_FunctionContext *)account_changePhoneWithPhoneNumber:(NSString *)phoneNumber phoneCodeHash:(NSString *)phoneCodeHash phoneCode:(NSString *)phoneCode
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1891839707;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCodeHash copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneCode copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.changePhone"];
}
+ (Api62_FunctionContext *)account_setPasswordWithCurrentPasswordHash:(NSData *)currentPasswordHash pnewSalt:(NSData *)pnewSalt pnewPasswordHash:(NSData *)pnewPasswordHash hint:(NSString *)hint
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -584430193;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[currentPasswordHash copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[pnewSalt copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[pnewPasswordHash copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[hint copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.setPassword"];
}
+ (Api62_FunctionContext *)account_updateDeviceLockedWithPeriod:(NSNumber *)period
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 954152242;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:period] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.updateDeviceLocked"];
}
+ (Api62_FunctionContext *)account_getAuthorizations
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -484392616;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.getAuthorizations"];
}
+ (Api62_FunctionContext *)account_resetAuthorizationWithPhash:(NSNumber *)phash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -545786948;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:phash] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.resetAuthorization"];
}
+ (Api62_FunctionContext *)account_getPassword
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1418342645;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.getPassword"];
}
+ (Api62_FunctionContext *)account_getPasswordSettingsWithCurrentPasswordHash:(NSData *)currentPasswordHash
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1131605573;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[currentPasswordHash copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.getPasswordSettings"];
}
+ (Api62_FunctionContext *)account_updatePasswordSettingsWithCurrentPasswordHash:(NSData *)currentPasswordHash pnewSettings:(Api62_account_PasswordInputSettings *)pnewSettings
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -92517498;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[currentPasswordHash copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:pnewSettings data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.updatePasswordSettings"];
}
+ (Api62_FunctionContext *)account_updateProfileWithFlags:(NSNumber *)flags firstName:(NSString *)firstName lastName:(NSString *)lastName about:(NSString *)about
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 2018596725;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[firstName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            }
            if ([flags intValue] & (1 << 1)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[lastName copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            }
            if ([flags intValue] & (1 << 2)) {
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[about copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.updateProfile"];
}
+ (Api62_FunctionContext *)account_sendChangePhoneCodeWithFlags:(NSNumber *)flags phoneNumber:(NSString *)phoneNumber currentNumber:(Api62_Bool *)currentNumber
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 149257707;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:flags] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[phoneNumber copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if ([flags intValue] & (1 << 0)) {
            if (![Api62__Environment serializeObject:currentNumber data:_data addSignature:true])
                return false;
            }
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"account.sendChangePhoneCode"];
}
+ (Api62_FunctionContext *)photos_getPhotosWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 20076782;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:pid_item];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.getPhotos"];
}
+ (Api62_FunctionContext *)photos_getWallWithUserId:(Api62_InputUser *)userId offset:(NSNumber *)offset maxId:(NSNumber *)maxId limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 34033964;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.getWall"];
}
+ (Api62_FunctionContext *)photos_readWallWithUserId:(Api62_InputUser *)userId maxId:(NSNumber *)maxId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1170316907;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.readWall"];
}
+ (Api62_FunctionContext *)photos_editPhotoWithPid:(Api62_InputPhoto *)pid caption:(NSString *)caption geoPoint:(Api62_InputGeoPoint *)geoPoint
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1364846786;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:geoPoint data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.editPhoto"];
}
+ (Api62_FunctionContext *)photos_updateProfilePhotoWithPid:(Api62_InputPhoto *)pid crop:(Api62_InputPhotoCrop *)crop
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -285902432;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:crop data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.updateProfilePhoto"];
}
+ (Api62_FunctionContext *)photos_uploadPhotoWithFile:(Api62_InputFile *)file caption:(NSString *)caption geoPoint:(Api62_InputGeoPoint *)geoPoint
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1688640082;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:file data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:geoPoint data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.uploadPhoto"];
}
+ (Api62_FunctionContext *)photos_uploadProfilePhotoWithFile:(Api62_InputFile *)file caption:(NSString *)caption geoPoint:(Api62_InputGeoPoint *)geoPoint crop:(Api62_InputPhotoCrop *)crop
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -720397176;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:file data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[caption copy] serializer:[[Api62_BuiltinSerializer_String alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:geoPoint data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:crop data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.uploadProfilePhoto"];
}
+ (Api62_FunctionContext *)photos_deletePhotosWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -2016444625;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:pid_item];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
    return result;
    } metadata:@"photos.deletePhotos"];
}
+ (Api62_FunctionContext *)photos_restorePhotosWithPid:(NSArray *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 602134380;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:
({
NSMutableArray *pid_copy = [[NSMutableArray alloc] initWithCapacity:pid.count];
for (id pid_item in pid)
{
    [pid_copy addObject:pid_item];
}
id pid_result = [Api62__Serializer addSerializerToObject:pid_copy serializer:[[Api62__Serializer alloc] initWithConstructorSignature:(int32_t)0x1cb5c415 serializeBlock:^bool (NSArray *object, NSMutableData *data)
{
    int32_t count = (int32_t)object.count;
    [data appendBytes:(void *)&count length:4];
    for (id item in object)
    {
        if (![Api62__Environment serializeObject:item data:data addSignature:true])
        return false;
    }
    return true;
}]]; pid_result;}) data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:[[Api62__UnboxedTypeMetaInfo alloc] initWithConstructorSignature:(int32_t)0x22076cba]]) == nil)
               return nil;
    return result;
    } metadata:@"photos.restorePhotos"];
}
+ (Api62_FunctionContext *)photos_getUserPhotosWithUserId:(Api62_InputUser *)userId offset:(NSNumber *)offset maxId:(NSNumber *)maxId limit:(NSNumber *)limit
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1848823128;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:offset] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:maxId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:limit] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"photos.getUserPhotos"];
}
+ (Api62_FunctionContext *)phone_getDhConfig
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -999155058;
    [_data appendBytes:&_functionSignature length:4];
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"phone.getDhConfig"];
}
+ (Api62_FunctionContext *)phone_confirmCallWithPid:(Api62_InputPhoneCall *)pid aOrB:(NSData *)aOrB
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1043872105;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[aOrB copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"phone.confirmCall"];
}
+ (Api62_FunctionContext *)phone_declineCallWithPid:(Api62_InputPhoneCall *)pid
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 983145256;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:pid data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"phone.declineCall"];
}
+ (Api62_FunctionContext *)phone_requestCallWithUserId:(Api62_InputUser *)userId randomId:(NSNumber *)randomId gA:(NSData *)gA protocol:(Api62_PhoneCallProtocol *)protocol
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = -1541757468;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:userId data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:randomId] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[gA copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:protocol data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"phone.requestCall"];
}
+ (Api62_FunctionContext *)phone_acceptCallWithPeer:(Api62_InputPhoneCall *)peer gB:(NSData *)gB keyFingerprint:(NSNumber *)keyFingerprint protocol:(Api62_PhoneCallProtocol *)protocol
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 571411232;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[gB copy] serializer:[[Api62_BuiltinSerializer_Bytes alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:keyFingerprint] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:protocol data:_data addSignature:true])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"phone.acceptCall"];
}
+ (Api62_FunctionContext *)phone_discardCallWithPeer:(Api62_InputPhoneCall *)peer duration:(NSNumber *)duration reason:(Api62_PhoneCallDiscardReason *)reason connectionId:(NSNumber *)connectionId
{
    NSMutableData *_data = [[NSMutableData alloc] init];
    int32_t _functionSignature = 1576783324;
    [_data appendBytes:&_functionSignature length:4];
            if (![Api62__Environment serializeObject:peer data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:duration] serializer:[[Api62_BuiltinSerializer_Int alloc] init]] data:_data addSignature:false])
                return false;
            if (![Api62__Environment serializeObject:reason data:_data addSignature:true])
                return false;
            if (![Api62__Environment serializeObject:[Api62__Serializer addSerializerToObject:[[Api62__Number alloc] initWithNumber:connectionId] serializer:[[Api62_BuiltinSerializer_Long alloc] init]] data:_data addSignature:false])
                return false;
    return [[Api62_FunctionContext alloc] initWithPayload:_data responseParser:^id (NSData *_data) {
    id result = nil;
    NSUInteger __offset = 0;
    NSUInteger *_offset = &__offset;
            int32_t result_signature = 0; [_data getBytes:(void *)&result_signature range:NSMakeRange(*_offset, 4)]; *_offset += 4;
            if ((result = [Api62__Environment parseObject:_data offset:_offset implicitSignature:result_signature metaInfo:nil]) == nil)
               return nil;
    return result;
    } metadata:@"phone.discardCall"];
}
@end
