message MccDatabase { repeated group MCC = 1 { required bytes mcc2 = 2; required bytes mcc3 = 3; optional bytes mcc4 = 4; } } message Build { optional bytes fingerprint = 1; optional bytes hardware = 2; optional bytes brand = 3; optional bytes radio = 4; optional bytes bootloader = 5; optional bytes client_id = 6; optional int64 time = 7; optional int32 version = 8; optional bytes device = 9; } message Event { required bytes event1 = 1; optional bytes event2 = 2; optional int64 event3 = 3; } message Statistic { required bytes stat1 = 1; optional int32 stat2 = 2; optional float stat3 = 3; } message Checkin { optional Build build = 1; optional int64 check2 = 2; repeated Event event = 3; repeated Statistic statistics = 4; repeated bytes check5 = 5; optional bytes networkOperator = 6; optional bytes simOperator = 7; optional bytes networkInfo = 8; } message CheckinRequest { optional bytes deviceId = 1; optional int64 cr2 = 2; optional bytes cr3 = 3; required Checkin checkin = 4; optional bytes cr5 = 5; optional bytes locale = 6; optional int64 id = 7; optional bytes cr8 = 8; optional bytes macaddress = 9; optional bytes cr10 = 10; repeated bytes accountInfo = 11 ; optional bytes timezone = 12; optional int64 cr13 = 13; optional int32 cr14 = 14; repeated bytes cr15 = 15; } message Intent { required bytes intent1 = 1 ; optional bytes intent2 = 2; optional bytes intent3 = 3; optional bytes intent4 = 4; repeated group EXTRA = 5 { required bytes intent6 = 6; optional bytes intent7 = 7; } } message GServiceSetting { required bytes gset1 = 1; required bytes gset2 = 2; } message CheckinResponse { required bool cres1 = 1; repeated Intent intent = 2; optional int64 cres3 = 3; optional bytes cres4 = 4; repeated GServiceSetting gs = 5 ; optional bool cres6 = 6; optional int64 cres7 = 7; optional int64 cres8 = 8; }