<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# NO CHECKED-IN PROTOBUF GENCODE
# source: WAProto.proto

namespace PhpWA\Protocol\Proto;

use Google\Protobuf\Internal\GPBType;
use Google\Protobuf\Internal\GPBUtil;
use Google\Protobuf\RepeatedField;

/**
 * Generated from protobuf message <code>proto.ClientPayload</code>
 */
class ClientPayload extends \Google\Protobuf\Internal\Message
{
    /**
     * Generated from protobuf field <code>optional uint64 username = 1;</code>
     */
    protected $username = null;
    /**
     * Generated from protobuf field <code>optional bool passive = 3;</code>
     */
    protected $passive = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.UserAgent userAgent = 5;</code>
     */
    protected $userAgent = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.WebInfo webInfo = 6;</code>
     */
    protected $webInfo = null;
    /**
     * Generated from protobuf field <code>optional string pushName = 7;</code>
     */
    protected $pushName = null;
    /**
     * Generated from protobuf field <code>optional sfixed32 sessionId = 9;</code>
     */
    protected $sessionId = null;
    /**
     * Generated from protobuf field <code>optional bool shortConnect = 10;</code>
     */
    protected $shortConnect = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.ConnectType connectType = 12;</code>
     */
    protected $connectType = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.ConnectReason connectReason = 13;</code>
     */
    protected $connectReason = null;
    /**
     * Generated from protobuf field <code>repeated int32 shards = 14;</code>
     */
    private $shards;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.DNSSource dnsSource = 15;</code>
     */
    protected $dnsSource = null;
    /**
     * Generated from protobuf field <code>optional uint32 connectAttemptCount = 16;</code>
     */
    protected $connectAttemptCount = null;
    /**
     * Generated from protobuf field <code>optional uint32 device = 18;</code>
     */
    protected $device = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.DevicePairingRegistrationData devicePairingData = 19;</code>
     */
    protected $devicePairingData = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.Product product = 20;</code>
     */
    protected $product = null;
    /**
     * Generated from protobuf field <code>optional bytes fbCat = 21;</code>
     */
    protected $fbCat = null;
    /**
     * Generated from protobuf field <code>optional bytes fbUserAgent = 22;</code>
     */
    protected $fbUserAgent = null;
    /**
     * Generated from protobuf field <code>optional bool oc = 23;</code>
     */
    protected $oc = null;
    /**
     * Generated from protobuf field <code>optional int32 lc = 24;</code>
     */
    protected $lc = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.IOSAppExtension iosAppExtension = 30;</code>
     */
    protected $iosAppExtension = null;
    /**
     * Generated from protobuf field <code>optional uint64 fbAppId = 31;</code>
     */
    protected $fbAppId = null;
    /**
     * Generated from protobuf field <code>optional bytes fbDeviceId = 32;</code>
     */
    protected $fbDeviceId = null;
    /**
     * Generated from protobuf field <code>optional bool pull = 33;</code>
     */
    protected $pull = null;
    /**
     * Generated from protobuf field <code>optional bytes paddingBytes = 34;</code>
     */
    protected $paddingBytes = null;
    /**
     * Generated from protobuf field <code>optional int32 yearClass = 36;</code>
     */
    protected $yearClass = null;
    /**
     * Generated from protobuf field <code>optional int32 memClass = 37;</code>
     */
    protected $memClass = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.InteropData interopData = 38;</code>
     */
    protected $interopData = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.TrafficAnonymization trafficAnonymization = 40;</code>
     */
    protected $trafficAnonymization = null;
    /**
     * Generated from protobuf field <code>optional bool lidDbMigrated = 41;</code>
     */
    protected $lidDbMigrated = null;
    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.AccountType accountType = 42;</code>
     */
    protected $accountType = null;
    /**
     * Generated from protobuf field <code>optional sfixed32 connectionSequenceInfo = 43;</code>
     */
    protected $connectionSequenceInfo = null;
    /**
     * Generated from protobuf field <code>optional bool paaLink = 44;</code>
     */
    protected $paaLink = null;
    /**
     * Generated from protobuf field <code>optional int32 preacksCount = 45;</code>
     */
    protected $preacksCount = null;
    /**
     * Generated from protobuf field <code>optional int32 processingQueueSize = 46;</code>
     */
    protected $processingQueueSize = null;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type int|string $username
     *     @type bool $passive
     *     @type \PhpWA\Protocol\Proto\ClientPayload\UserAgent $userAgent
     *     @type \PhpWA\Protocol\Proto\ClientPayload\WebInfo $webInfo
     *     @type string $pushName
     *     @type int $sessionId
     *     @type bool $shortConnect
     *     @type int $connectType
     *     @type int $connectReason
     *     @type int[] $shards
     *     @type \PhpWA\Protocol\Proto\ClientPayload\DNSSource $dnsSource
     *     @type int $connectAttemptCount
     *     @type int $device
     *     @type \PhpWA\Protocol\Proto\ClientPayload\DevicePairingRegistrationData $devicePairingData
     *     @type int $product
     *     @type string $fbCat
     *     @type string $fbUserAgent
     *     @type bool $oc
     *     @type int $lc
     *     @type int $iosAppExtension
     *     @type int|string $fbAppId
     *     @type string $fbDeviceId
     *     @type bool $pull
     *     @type string $paddingBytes
     *     @type int $yearClass
     *     @type int $memClass
     *     @type \PhpWA\Protocol\Proto\ClientPayload\InteropData $interopData
     *     @type int $trafficAnonymization
     *     @type bool $lidDbMigrated
     *     @type int $accountType
     *     @type int $connectionSequenceInfo
     *     @type bool $paaLink
     *     @type int $preacksCount
     *     @type int $processingQueueSize
     * }
     */
    public function __construct($data = NULL) {
        \PhpWA\Protocol\Proto\Metadata\WAProto::initOnce();
        parent::__construct($data);
    }

    /**
     * Generated from protobuf field <code>optional uint64 username = 1;</code>
     * @return int|string
     */
    public function getUsername()
    {
        return isset($this->username) ? $this->username : 0;
    }

    public function hasUsername()
    {
        return isset($this->username);
    }

    public function clearUsername()
    {
        unset($this->username);
    }

    /**
     * Generated from protobuf field <code>optional uint64 username = 1;</code>
     * @param int|string $var
     * @return $this
     */
    public function setUsername($var)
    {
        GPBUtil::checkUint64($var);
        $this->username = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool passive = 3;</code>
     * @return bool
     */
    public function getPassive()
    {
        return isset($this->passive) ? $this->passive : false;
    }

    public function hasPassive()
    {
        return isset($this->passive);
    }

    public function clearPassive()
    {
        unset($this->passive);
    }

    /**
     * Generated from protobuf field <code>optional bool passive = 3;</code>
     * @param bool $var
     * @return $this
     */
    public function setPassive($var)
    {
        GPBUtil::checkBool($var);
        $this->passive = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.UserAgent userAgent = 5;</code>
     * @return \PhpWA\Protocol\Proto\ClientPayload\UserAgent|null
     */
    public function getUserAgent()
    {
        return $this->userAgent;
    }

    public function hasUserAgent()
    {
        return isset($this->userAgent);
    }

    public function clearUserAgent()
    {
        unset($this->userAgent);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.UserAgent userAgent = 5;</code>
     * @param \PhpWA\Protocol\Proto\ClientPayload\UserAgent $var
     * @return $this
     */
    public function setUserAgent($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\ClientPayload\UserAgent::class);
        $this->userAgent = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.WebInfo webInfo = 6;</code>
     * @return \PhpWA\Protocol\Proto\ClientPayload\WebInfo|null
     */
    public function getWebInfo()
    {
        return $this->webInfo;
    }

    public function hasWebInfo()
    {
        return isset($this->webInfo);
    }

    public function clearWebInfo()
    {
        unset($this->webInfo);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.WebInfo webInfo = 6;</code>
     * @param \PhpWA\Protocol\Proto\ClientPayload\WebInfo $var
     * @return $this
     */
    public function setWebInfo($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\ClientPayload\WebInfo::class);
        $this->webInfo = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional string pushName = 7;</code>
     * @return string
     */
    public function getPushName()
    {
        return isset($this->pushName) ? $this->pushName : '';
    }

    public function hasPushName()
    {
        return isset($this->pushName);
    }

    public function clearPushName()
    {
        unset($this->pushName);
    }

    /**
     * Generated from protobuf field <code>optional string pushName = 7;</code>
     * @param string $var
     * @return $this
     */
    public function setPushName($var)
    {
        GPBUtil::checkString($var, True);
        $this->pushName = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional sfixed32 sessionId = 9;</code>
     * @return int
     */
    public function getSessionId()
    {
        return isset($this->sessionId) ? $this->sessionId : 0;
    }

    public function hasSessionId()
    {
        return isset($this->sessionId);
    }

    public function clearSessionId()
    {
        unset($this->sessionId);
    }

    /**
     * Generated from protobuf field <code>optional sfixed32 sessionId = 9;</code>
     * @param int $var
     * @return $this
     */
    public function setSessionId($var)
    {
        GPBUtil::checkInt32($var);
        $this->sessionId = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool shortConnect = 10;</code>
     * @return bool
     */
    public function getShortConnect()
    {
        return isset($this->shortConnect) ? $this->shortConnect : false;
    }

    public function hasShortConnect()
    {
        return isset($this->shortConnect);
    }

    public function clearShortConnect()
    {
        unset($this->shortConnect);
    }

    /**
     * Generated from protobuf field <code>optional bool shortConnect = 10;</code>
     * @param bool $var
     * @return $this
     */
    public function setShortConnect($var)
    {
        GPBUtil::checkBool($var);
        $this->shortConnect = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.ConnectType connectType = 12;</code>
     * @return int
     */
    public function getConnectType()
    {
        return isset($this->connectType) ? $this->connectType : 0;
    }

    public function hasConnectType()
    {
        return isset($this->connectType);
    }

    public function clearConnectType()
    {
        unset($this->connectType);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.ConnectType connectType = 12;</code>
     * @param int $var
     * @return $this
     */
    public function setConnectType($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\ClientPayload\ConnectType::class);
        $this->connectType = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.ConnectReason connectReason = 13;</code>
     * @return int
     */
    public function getConnectReason()
    {
        return isset($this->connectReason) ? $this->connectReason : 0;
    }

    public function hasConnectReason()
    {
        return isset($this->connectReason);
    }

    public function clearConnectReason()
    {
        unset($this->connectReason);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.ConnectReason connectReason = 13;</code>
     * @param int $var
     * @return $this
     */
    public function setConnectReason($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\ClientPayload\ConnectReason::class);
        $this->connectReason = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>repeated int32 shards = 14;</code>
     * @return RepeatedField<int>
     */
    public function getShards()
    {
        return $this->shards;
    }

    /**
     * Generated from protobuf field <code>repeated int32 shards = 14;</code>
     * @param int[] $var
     * @return $this
     */
    public function setShards($var)
    {
        $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::INT32);
        $this->shards = $arr;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.DNSSource dnsSource = 15;</code>
     * @return \PhpWA\Protocol\Proto\ClientPayload\DNSSource|null
     */
    public function getDnsSource()
    {
        return $this->dnsSource;
    }

    public function hasDnsSource()
    {
        return isset($this->dnsSource);
    }

    public function clearDnsSource()
    {
        unset($this->dnsSource);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.DNSSource dnsSource = 15;</code>
     * @param \PhpWA\Protocol\Proto\ClientPayload\DNSSource $var
     * @return $this
     */
    public function setDnsSource($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\ClientPayload\DNSSource::class);
        $this->dnsSource = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint32 connectAttemptCount = 16;</code>
     * @return int
     */
    public function getConnectAttemptCount()
    {
        return isset($this->connectAttemptCount) ? $this->connectAttemptCount : 0;
    }

    public function hasConnectAttemptCount()
    {
        return isset($this->connectAttemptCount);
    }

    public function clearConnectAttemptCount()
    {
        unset($this->connectAttemptCount);
    }

    /**
     * Generated from protobuf field <code>optional uint32 connectAttemptCount = 16;</code>
     * @param int $var
     * @return $this
     */
    public function setConnectAttemptCount($var)
    {
        GPBUtil::checkUint32($var);
        $this->connectAttemptCount = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint32 device = 18;</code>
     * @return int
     */
    public function getDevice()
    {
        return isset($this->device) ? $this->device : 0;
    }

    public function hasDevice()
    {
        return isset($this->device);
    }

    public function clearDevice()
    {
        unset($this->device);
    }

    /**
     * Generated from protobuf field <code>optional uint32 device = 18;</code>
     * @param int $var
     * @return $this
     */
    public function setDevice($var)
    {
        GPBUtil::checkUint32($var);
        $this->device = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.DevicePairingRegistrationData devicePairingData = 19;</code>
     * @return \PhpWA\Protocol\Proto\ClientPayload\DevicePairingRegistrationData|null
     */
    public function getDevicePairingData()
    {
        return $this->devicePairingData;
    }

    public function hasDevicePairingData()
    {
        return isset($this->devicePairingData);
    }

    public function clearDevicePairingData()
    {
        unset($this->devicePairingData);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.DevicePairingRegistrationData devicePairingData = 19;</code>
     * @param \PhpWA\Protocol\Proto\ClientPayload\DevicePairingRegistrationData $var
     * @return $this
     */
    public function setDevicePairingData($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\ClientPayload\DevicePairingRegistrationData::class);
        $this->devicePairingData = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.Product product = 20;</code>
     * @return int
     */
    public function getProduct()
    {
        return isset($this->product) ? $this->product : 0;
    }

    public function hasProduct()
    {
        return isset($this->product);
    }

    public function clearProduct()
    {
        unset($this->product);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.Product product = 20;</code>
     * @param int $var
     * @return $this
     */
    public function setProduct($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\ClientPayload\Product::class);
        $this->product = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bytes fbCat = 21;</code>
     * @return string
     */
    public function getFbCat()
    {
        return isset($this->fbCat) ? $this->fbCat : '';
    }

    public function hasFbCat()
    {
        return isset($this->fbCat);
    }

    public function clearFbCat()
    {
        unset($this->fbCat);
    }

    /**
     * Generated from protobuf field <code>optional bytes fbCat = 21;</code>
     * @param string $var
     * @return $this
     */
    public function setFbCat($var)
    {
        GPBUtil::checkString($var, False);
        $this->fbCat = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bytes fbUserAgent = 22;</code>
     * @return string
     */
    public function getFbUserAgent()
    {
        return isset($this->fbUserAgent) ? $this->fbUserAgent : '';
    }

    public function hasFbUserAgent()
    {
        return isset($this->fbUserAgent);
    }

    public function clearFbUserAgent()
    {
        unset($this->fbUserAgent);
    }

    /**
     * Generated from protobuf field <code>optional bytes fbUserAgent = 22;</code>
     * @param string $var
     * @return $this
     */
    public function setFbUserAgent($var)
    {
        GPBUtil::checkString($var, False);
        $this->fbUserAgent = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool oc = 23;</code>
     * @return bool
     */
    public function getOc()
    {
        return isset($this->oc) ? $this->oc : false;
    }

    public function hasOc()
    {
        return isset($this->oc);
    }

    public function clearOc()
    {
        unset($this->oc);
    }

    /**
     * Generated from protobuf field <code>optional bool oc = 23;</code>
     * @param bool $var
     * @return $this
     */
    public function setOc($var)
    {
        GPBUtil::checkBool($var);
        $this->oc = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional int32 lc = 24;</code>
     * @return int
     */
    public function getLc()
    {
        return isset($this->lc) ? $this->lc : 0;
    }

    public function hasLc()
    {
        return isset($this->lc);
    }

    public function clearLc()
    {
        unset($this->lc);
    }

    /**
     * Generated from protobuf field <code>optional int32 lc = 24;</code>
     * @param int $var
     * @return $this
     */
    public function setLc($var)
    {
        GPBUtil::checkInt32($var);
        $this->lc = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.IOSAppExtension iosAppExtension = 30;</code>
     * @return int
     */
    public function getIosAppExtension()
    {
        return isset($this->iosAppExtension) ? $this->iosAppExtension : 0;
    }

    public function hasIosAppExtension()
    {
        return isset($this->iosAppExtension);
    }

    public function clearIosAppExtension()
    {
        unset($this->iosAppExtension);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.IOSAppExtension iosAppExtension = 30;</code>
     * @param int $var
     * @return $this
     */
    public function setIosAppExtension($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\ClientPayload\IOSAppExtension::class);
        $this->iosAppExtension = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional uint64 fbAppId = 31;</code>
     * @return int|string
     */
    public function getFbAppId()
    {
        return isset($this->fbAppId) ? $this->fbAppId : 0;
    }

    public function hasFbAppId()
    {
        return isset($this->fbAppId);
    }

    public function clearFbAppId()
    {
        unset($this->fbAppId);
    }

    /**
     * Generated from protobuf field <code>optional uint64 fbAppId = 31;</code>
     * @param int|string $var
     * @return $this
     */
    public function setFbAppId($var)
    {
        GPBUtil::checkUint64($var);
        $this->fbAppId = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bytes fbDeviceId = 32;</code>
     * @return string
     */
    public function getFbDeviceId()
    {
        return isset($this->fbDeviceId) ? $this->fbDeviceId : '';
    }

    public function hasFbDeviceId()
    {
        return isset($this->fbDeviceId);
    }

    public function clearFbDeviceId()
    {
        unset($this->fbDeviceId);
    }

    /**
     * Generated from protobuf field <code>optional bytes fbDeviceId = 32;</code>
     * @param string $var
     * @return $this
     */
    public function setFbDeviceId($var)
    {
        GPBUtil::checkString($var, False);
        $this->fbDeviceId = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool pull = 33;</code>
     * @return bool
     */
    public function getPull()
    {
        return isset($this->pull) ? $this->pull : false;
    }

    public function hasPull()
    {
        return isset($this->pull);
    }

    public function clearPull()
    {
        unset($this->pull);
    }

    /**
     * Generated from protobuf field <code>optional bool pull = 33;</code>
     * @param bool $var
     * @return $this
     */
    public function setPull($var)
    {
        GPBUtil::checkBool($var);
        $this->pull = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bytes paddingBytes = 34;</code>
     * @return string
     */
    public function getPaddingBytes()
    {
        return isset($this->paddingBytes) ? $this->paddingBytes : '';
    }

    public function hasPaddingBytes()
    {
        return isset($this->paddingBytes);
    }

    public function clearPaddingBytes()
    {
        unset($this->paddingBytes);
    }

    /**
     * Generated from protobuf field <code>optional bytes paddingBytes = 34;</code>
     * @param string $var
     * @return $this
     */
    public function setPaddingBytes($var)
    {
        GPBUtil::checkString($var, False);
        $this->paddingBytes = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional int32 yearClass = 36;</code>
     * @return int
     */
    public function getYearClass()
    {
        return isset($this->yearClass) ? $this->yearClass : 0;
    }

    public function hasYearClass()
    {
        return isset($this->yearClass);
    }

    public function clearYearClass()
    {
        unset($this->yearClass);
    }

    /**
     * Generated from protobuf field <code>optional int32 yearClass = 36;</code>
     * @param int $var
     * @return $this
     */
    public function setYearClass($var)
    {
        GPBUtil::checkInt32($var);
        $this->yearClass = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional int32 memClass = 37;</code>
     * @return int
     */
    public function getMemClass()
    {
        return isset($this->memClass) ? $this->memClass : 0;
    }

    public function hasMemClass()
    {
        return isset($this->memClass);
    }

    public function clearMemClass()
    {
        unset($this->memClass);
    }

    /**
     * Generated from protobuf field <code>optional int32 memClass = 37;</code>
     * @param int $var
     * @return $this
     */
    public function setMemClass($var)
    {
        GPBUtil::checkInt32($var);
        $this->memClass = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.InteropData interopData = 38;</code>
     * @return \PhpWA\Protocol\Proto\ClientPayload\InteropData|null
     */
    public function getInteropData()
    {
        return $this->interopData;
    }

    public function hasInteropData()
    {
        return isset($this->interopData);
    }

    public function clearInteropData()
    {
        unset($this->interopData);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.InteropData interopData = 38;</code>
     * @param \PhpWA\Protocol\Proto\ClientPayload\InteropData $var
     * @return $this
     */
    public function setInteropData($var)
    {
        GPBUtil::checkMessage($var, \PhpWA\Protocol\Proto\ClientPayload\InteropData::class);
        $this->interopData = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.TrafficAnonymization trafficAnonymization = 40;</code>
     * @return int
     */
    public function getTrafficAnonymization()
    {
        return isset($this->trafficAnonymization) ? $this->trafficAnonymization : 0;
    }

    public function hasTrafficAnonymization()
    {
        return isset($this->trafficAnonymization);
    }

    public function clearTrafficAnonymization()
    {
        unset($this->trafficAnonymization);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.TrafficAnonymization trafficAnonymization = 40;</code>
     * @param int $var
     * @return $this
     */
    public function setTrafficAnonymization($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\ClientPayload\TrafficAnonymization::class);
        $this->trafficAnonymization = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool lidDbMigrated = 41;</code>
     * @return bool
     */
    public function getLidDbMigrated()
    {
        return isset($this->lidDbMigrated) ? $this->lidDbMigrated : false;
    }

    public function hasLidDbMigrated()
    {
        return isset($this->lidDbMigrated);
    }

    public function clearLidDbMigrated()
    {
        unset($this->lidDbMigrated);
    }

    /**
     * Generated from protobuf field <code>optional bool lidDbMigrated = 41;</code>
     * @param bool $var
     * @return $this
     */
    public function setLidDbMigrated($var)
    {
        GPBUtil::checkBool($var);
        $this->lidDbMigrated = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.AccountType accountType = 42;</code>
     * @return int
     */
    public function getAccountType()
    {
        return isset($this->accountType) ? $this->accountType : 0;
    }

    public function hasAccountType()
    {
        return isset($this->accountType);
    }

    public function clearAccountType()
    {
        unset($this->accountType);
    }

    /**
     * Generated from protobuf field <code>optional .proto.ClientPayload.AccountType accountType = 42;</code>
     * @param int $var
     * @return $this
     */
    public function setAccountType($var)
    {
        GPBUtil::checkEnum($var, \PhpWA\Protocol\Proto\ClientPayload\AccountType::class);
        $this->accountType = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional sfixed32 connectionSequenceInfo = 43;</code>
     * @return int
     */
    public function getConnectionSequenceInfo()
    {
        return isset($this->connectionSequenceInfo) ? $this->connectionSequenceInfo : 0;
    }

    public function hasConnectionSequenceInfo()
    {
        return isset($this->connectionSequenceInfo);
    }

    public function clearConnectionSequenceInfo()
    {
        unset($this->connectionSequenceInfo);
    }

    /**
     * Generated from protobuf field <code>optional sfixed32 connectionSequenceInfo = 43;</code>
     * @param int $var
     * @return $this
     */
    public function setConnectionSequenceInfo($var)
    {
        GPBUtil::checkInt32($var);
        $this->connectionSequenceInfo = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional bool paaLink = 44;</code>
     * @return bool
     */
    public function getPaaLink()
    {
        return isset($this->paaLink) ? $this->paaLink : false;
    }

    public function hasPaaLink()
    {
        return isset($this->paaLink);
    }

    public function clearPaaLink()
    {
        unset($this->paaLink);
    }

    /**
     * Generated from protobuf field <code>optional bool paaLink = 44;</code>
     * @param bool $var
     * @return $this
     */
    public function setPaaLink($var)
    {
        GPBUtil::checkBool($var);
        $this->paaLink = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional int32 preacksCount = 45;</code>
     * @return int
     */
    public function getPreacksCount()
    {
        return isset($this->preacksCount) ? $this->preacksCount : 0;
    }

    public function hasPreacksCount()
    {
        return isset($this->preacksCount);
    }

    public function clearPreacksCount()
    {
        unset($this->preacksCount);
    }

    /**
     * Generated from protobuf field <code>optional int32 preacksCount = 45;</code>
     * @param int $var
     * @return $this
     */
    public function setPreacksCount($var)
    {
        GPBUtil::checkInt32($var);
        $this->preacksCount = $var;

        return $this;
    }

    /**
     * Generated from protobuf field <code>optional int32 processingQueueSize = 46;</code>
     * @return int
     */
    public function getProcessingQueueSize()
    {
        return isset($this->processingQueueSize) ? $this->processingQueueSize : 0;
    }

    public function hasProcessingQueueSize()
    {
        return isset($this->processingQueueSize);
    }

    public function clearProcessingQueueSize()
    {
        unset($this->processingQueueSize);
    }

    /**
     * Generated from protobuf field <code>optional int32 processingQueueSize = 46;</code>
     * @param int $var
     * @return $this
     */
    public function setProcessingQueueSize($var)
    {
        GPBUtil::checkInt32($var);
        $this->processingQueueSize = $var;

        return $this;
    }

}

