<?php
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: keyapis/access_control/v1/keyapis_access_control_building_v1.proto

namespace Keyapis\AccessControl\V1;

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

/**
 * Дом
 *
 * Generated from protobuf message <code>keyapis.access_control.v1.Building</code>
 */
class Building extends \Google\Protobuf\Internal\Message
{
    /**
     * Идентификатор дома
     *
     * Generated from protobuf field <code>int32 id = 1;</code>
     */
    protected $id = 0;
    /**
     * Идентификатор РФ
     *
     * Generated from protobuf field <code>int32 rf_id = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $rf_id = 0;
    /**
     * Идентификатор МРФ
     *
     * Generated from protobuf field <code>int32 mrf_id = 3 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $mrf_id = 0;
    /**
     * ОРПОН
     *
     * Generated from protobuf field <code>int64 orpon = 4 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $orpon = 0;
    /**
     * Город
     *
     * Generated from protobuf field <code>string city = 5 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $city = '';
    /**
     * Улица
     *
     * Generated from protobuf field <code>string street = 6 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $street = '';
    /**
     * Номер дома
     *
     * Generated from protobuf field <code>string number = 7;</code>
     */
    protected $number = '';
    /**
     * Корпус
     *
     * Generated from protobuf field <code>string part = 8;</code>
     */
    protected $part = '';
    /**
     * Идентификатор компании
     *
     * Generated from protobuf field <code>int32 company_id = 9 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $company_id = 0;
    /**
     * Префикс
     *
     * Generated from protobuf field <code>string prefix = 10;</code>
     */
    protected $prefix = '';
    /**
     * Дата создания.
     * # Тип: DateTime
     *
     * Generated from protobuf field <code>.google.protobuf.Timestamp created_at = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
     */
    protected $created_at = null;
    /**
     * Дата удаления.
     * # Тип: DateTime
     *
     * Generated from protobuf field <code>.google.protobuf.Timestamp deleted_at = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
     */
    protected $deleted_at = null;
    /**
     * Идентификатор квартирограммы
     *
     * Generated from protobuf field <code>int32 flatgramm_id = 13 [(.google.api.field_behavior) = REQUIRED];</code>
     */
    protected $flatgramm_id = 0;
    /**
     * ОРПОН города, в котором находится дом
     *
     * Generated from protobuf field <code>int64 city_orpon = 14;</code>
     */
    protected $city_orpon = 0;
    /**
     * Идентификатор в федеральной информационной адресной системе.
     * Тип: Guid
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue fias = 15;</code>
     */
    protected $fias = null;
    /**
     * Наименование района города.
     * # Диапазон: 0..200
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue district = 16;</code>
     */
    protected $district = null;
    /**
     * Уникальный номер адреса.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value unom = 17;</code>
     */
    protected $unom = null;
    /**
     * ОРПОН региона
     *
     * Generated from protobuf field <code>int64 region_orpon = 18;</code>
     */
    protected $region_orpon = 0;
    /**
     * Смещение таймзоны в минутах.
     * # Диапазон: -720..840
     *
     * Generated from protobuf field <code>int32 utc_offset = 19;</code>
     */
    protected $utc_offset = 0;
    /**
     * Флаг указывает на то могут ли жители этого дома приобрести ключи домофона в партнёрских салонах или на маркетплейсах
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_sale_points = 20;</code>
     */
    protected $is_key_purchase_possible_in_sale_points = false;
    /**
     * Флаг указывает на то могут ли жители этого дома приобретать ключи через управляющую компанию
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_management_company = 21;</code>
     */
    protected $is_key_purchase_possible_in_management_company = false;
    /**
     * Флаг указывает на то могут ли жители этого дома приобрести ключи напрямую у домофонной компании
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_intercom_company = 22;</code>
     */
    protected $is_key_purchase_possible_in_intercom_company = false;
    /**
     * Флаг указывает на то поддерживает ли дом использование RFID-меток с типом MIFARE
     *
     * Generated from protobuf field <code>bool is_rfid_mifare_supported = 23;</code>
     */
    protected $is_rfid_mifare_supported = false;
    /**
     * Наименование муниципального района.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area = 24;</code>
     */
    protected $area = null;
    /**
     * ОРПОН муниципального района.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value area_orpon = 25;</code>
     */
    protected $area_orpon = null;
    /**
     * КЛАДР муниципального района.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area_kladr = 26;</code>
     */
    protected $area_kladr = null;
    /**
     * Признак принадлежности населённого пункта к столичному статусу.
     * 1 — центр района.
     * 2 — центр региона.
     * 3 — центр района и региона.
     * 4 — центральный район региона.
     * 0 — ничего из перечисленного.
     * # Диапазон: 0..4
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value capital_marker = 27;</code>
     */
    protected $capital_marker = null;
    /**
     * КЛАДР-код города.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue city_kladr = 28;</code>
     */
    protected $city_kladr = null;
    /**
     * КЛАДР-код строения.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue kladr = 29;</code>
     */
    protected $kladr = null;
    /**
     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — страна.
     * 1 — регион.
     * 3 — район.
     * 4 — город.
     * 5 — район города.
     * 6 — населенный пункт.
     * 7 — улица.
     * 8 — дом.
     * 9 — квартира.
     * 65 — планировочная структура.
     * 90 — доп. территория.
     * 91 — улица в доп. территории.
     * -1 — иностранный или пустой.
     * # Диапазон: -1..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_level = 30;</code>
     */
    protected $fias_level = null;
    /**
     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — актуальный.
     * 1-50 — переименован.
     * 51 — переподчинен.
     * 99 — удален.
     * # Диапазон: 0..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_actuality_state = 31;</code>
     */
    protected $fias_actuality_state = null;
    /**
     * Координаты: широта
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lat = 32;</code>
     */
    protected $geo_lat = null;
    /**
     * Координаты: долгота
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lon = 33;</code>
     */
    protected $geo_lon = null;
    /**
     * Код ОКАТО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value okato = 34;</code>
     */
    protected $okato = null;
    /**
     * Код ОКТМО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value oktmo = 35;</code>
     */
    protected $oktmo = null;
    /**
     * Почтовый индекс
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value postal_code = 36;</code>
     */
    protected $postal_code = null;
    /**
     * Наименование региона.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region = 37;</code>
     */
    protected $region = null;
    /**
     * КЛАДР-код региона.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region_kladr = 38;</code>
     */
    protected $region_kladr = null;
    /**
     * КЛАДР-код улицы.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue street_kladr = 39;</code>
     */
    protected $street_kladr = null;
    /**
     * ОРПОН улицы.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value street_orpon = 40;</code>
     */
    protected $street_orpon = null;

    /**
     * Constructor.
     *
     * @param array $data {
     *     Optional. Data for populating the Message object.
     *
     *     @type int $id
     *           Идентификатор дома
     *     @type int $rf_id
     *           Идентификатор РФ
     *     @type int $mrf_id
     *           Идентификатор МРФ
     *     @type int|string $orpon
     *           ОРПОН
     *     @type string $city
     *           Город
     *     @type string $street
     *           Улица
     *     @type string $number
     *           Номер дома
     *     @type string $part
     *           Корпус
     *     @type int $company_id
     *           Идентификатор компании
     *     @type string $prefix
     *           Префикс
     *     @type \Google\Protobuf\Timestamp $created_at
     *           Дата создания.
     *           # Тип: DateTime
     *     @type \Google\Protobuf\Timestamp $deleted_at
     *           Дата удаления.
     *           # Тип: DateTime
     *     @type int $flatgramm_id
     *           Идентификатор квартирограммы
     *     @type int|string $city_orpon
     *           ОРПОН города, в котором находится дом
     *     @type \Google\Protobuf\StringValue $fias
     *           Идентификатор в федеральной информационной адресной системе.
     *           Тип: Guid
     *     @type \Google\Protobuf\StringValue $district
     *           Наименование района города.
     *           # Диапазон: 0..200
     *     @type \Google\Protobuf\Int64Value $unom
     *           Уникальный номер адреса.
     *           # Диапазон: 0..9999999999
     *     @type int|string $region_orpon
     *           ОРПОН региона
     *     @type int $utc_offset
     *           Смещение таймзоны в минутах.
     *           # Диапазон: -720..840
     *     @type bool $is_key_purchase_possible_in_sale_points
     *           Флаг указывает на то могут ли жители этого дома приобрести ключи домофона в партнёрских салонах или на маркетплейсах
     *     @type bool $is_key_purchase_possible_in_management_company
     *           Флаг указывает на то могут ли жители этого дома приобретать ключи через управляющую компанию
     *     @type bool $is_key_purchase_possible_in_intercom_company
     *           Флаг указывает на то могут ли жители этого дома приобрести ключи напрямую у домофонной компании
     *     @type bool $is_rfid_mifare_supported
     *           Флаг указывает на то поддерживает ли дом использование RFID-меток с типом MIFARE
     *     @type \Google\Protobuf\StringValue $area
     *           Наименование муниципального района.
     *           # Диапазон: 0..64
     *     @type \Google\Protobuf\Int64Value $area_orpon
     *           ОРПОН муниципального района.
     *           # Диапазон: 0..9999999999
     *     @type \Google\Protobuf\StringValue $area_kladr
     *           КЛАДР муниципального района.
     *           # Диапазон: 0..32
     *     @type \Google\Protobuf\Int32Value $capital_marker
     *           Признак принадлежности населённого пункта к столичному статусу.
     *           1 — центр района.
     *           2 — центр региона.
     *           3 — центр района и региона.
     *           4 — центральный район региона.
     *           0 — ничего из перечисленного.
     *           # Диапазон: 0..4
     *     @type \Google\Protobuf\StringValue $city_kladr
     *           КЛАДР-код города.
     *           # Диапазон: 0..17
     *     @type \Google\Protobuf\StringValue $kladr
     *           КЛАДР-код строения.
     *           # Диапазон: 0..17
     *     @type \Google\Protobuf\Int32Value $fias_level
     *           Уровень детализации, до которого адрес найден в ФИАС.
     *           0 — страна.
     *           1 — регион.
     *           3 — район.
     *           4 — город.
     *           5 — район города.
     *           6 — населенный пункт.
     *           7 — улица.
     *           8 — дом.
     *           9 — квартира.
     *           65 — планировочная структура.
     *           90 — доп. территория.
     *           91 — улица в доп. территории.
     *           -1 — иностранный или пустой.
     *           # Диапазон: -1..99
     *     @type \Google\Protobuf\Int32Value $fias_actuality_state
     *           Уровень детализации, до которого адрес найден в ФИАС.
     *           0 — актуальный.
     *           1-50 — переименован.
     *           51 — переподчинен.
     *           99 — удален.
     *           # Диапазон: 0..99
     *     @type \Google\Protobuf\DoubleValue $geo_lat
     *           Координаты: широта
     *     @type \Google\Protobuf\DoubleValue $geo_lon
     *           Координаты: долгота
     *     @type \Google\Protobuf\Int32Value $okato
     *           Код ОКАТО
     *     @type \Google\Protobuf\Int32Value $oktmo
     *           Код ОКТМО
     *     @type \Google\Protobuf\Int32Value $postal_code
     *           Почтовый индекс
     *     @type \Google\Protobuf\StringValue $region
     *           Наименование региона.
     *           # Диапазон: 0..64
     *     @type \Google\Protobuf\StringValue $region_kladr
     *           КЛАДР-код региона.
     *           # Диапазон: 0..32
     *     @type \Google\Protobuf\StringValue $street_kladr
     *           КЛАДР-код улицы.
     *           # Диапазон: 0..32
     *     @type \Google\Protobuf\Int64Value $street_orpon
     *           ОРПОН улицы.
     *           # Диапазон: 0..9999999999
     * }
     */
    public function __construct($data = NULL) {
        \GPBMetadata\Keyapis\AccessControl\V1\KeyapisAccessControlBuildingV1::initOnce();
        parent::__construct($data);
    }

    /**
     * Идентификатор дома
     *
     * Generated from protobuf field <code>int32 id = 1;</code>
     * @return int
     */
    public function getId()
    {
        return $this->id;
    }

    /**
     * Идентификатор дома
     *
     * Generated from protobuf field <code>int32 id = 1;</code>
     * @param int $var
     * @return $this
     */
    public function setId($var)
    {
        GPBUtil::checkInt32($var);
        $this->id = $var;

        return $this;
    }

    /**
     * Идентификатор РФ
     *
     * Generated from protobuf field <code>int32 rf_id = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return int
     */
    public function getRfId()
    {
        return $this->rf_id;
    }

    /**
     * Идентификатор РФ
     *
     * Generated from protobuf field <code>int32 rf_id = 2 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param int $var
     * @return $this
     */
    public function setRfId($var)
    {
        GPBUtil::checkInt32($var);
        $this->rf_id = $var;

        return $this;
    }

    /**
     * Идентификатор МРФ
     *
     * Generated from protobuf field <code>int32 mrf_id = 3 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return int
     */
    public function getMrfId()
    {
        return $this->mrf_id;
    }

    /**
     * Идентификатор МРФ
     *
     * Generated from protobuf field <code>int32 mrf_id = 3 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param int $var
     * @return $this
     */
    public function setMrfId($var)
    {
        GPBUtil::checkInt32($var);
        $this->mrf_id = $var;

        return $this;
    }

    /**
     * ОРПОН
     *
     * Generated from protobuf field <code>int64 orpon = 4 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return int|string
     */
    public function getOrpon()
    {
        return $this->orpon;
    }

    /**
     * ОРПОН
     *
     * Generated from protobuf field <code>int64 orpon = 4 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param int|string $var
     * @return $this
     */
    public function setOrpon($var)
    {
        GPBUtil::checkInt64($var);
        $this->orpon = $var;

        return $this;
    }

    /**
     * Город
     *
     * Generated from protobuf field <code>string city = 5 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return string
     */
    public function getCity()
    {
        return $this->city;
    }

    /**
     * Город
     *
     * Generated from protobuf field <code>string city = 5 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param string $var
     * @return $this
     */
    public function setCity($var)
    {
        GPBUtil::checkString($var, True);
        $this->city = $var;

        return $this;
    }

    /**
     * Улица
     *
     * Generated from protobuf field <code>string street = 6 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return string
     */
    public function getStreet()
    {
        return $this->street;
    }

    /**
     * Улица
     *
     * Generated from protobuf field <code>string street = 6 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param string $var
     * @return $this
     */
    public function setStreet($var)
    {
        GPBUtil::checkString($var, True);
        $this->street = $var;

        return $this;
    }

    /**
     * Номер дома
     *
     * Generated from protobuf field <code>string number = 7;</code>
     * @return string
     */
    public function getNumber()
    {
        return $this->number;
    }

    /**
     * Номер дома
     *
     * Generated from protobuf field <code>string number = 7;</code>
     * @param string $var
     * @return $this
     */
    public function setNumber($var)
    {
        GPBUtil::checkString($var, True);
        $this->number = $var;

        return $this;
    }

    /**
     * Корпус
     *
     * Generated from protobuf field <code>string part = 8;</code>
     * @return string
     */
    public function getPart()
    {
        return $this->part;
    }

    /**
     * Корпус
     *
     * Generated from protobuf field <code>string part = 8;</code>
     * @param string $var
     * @return $this
     */
    public function setPart($var)
    {
        GPBUtil::checkString($var, True);
        $this->part = $var;

        return $this;
    }

    /**
     * Идентификатор компании
     *
     * Generated from protobuf field <code>int32 company_id = 9 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return int
     */
    public function getCompanyId()
    {
        return $this->company_id;
    }

    /**
     * Идентификатор компании
     *
     * Generated from protobuf field <code>int32 company_id = 9 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param int $var
     * @return $this
     */
    public function setCompanyId($var)
    {
        GPBUtil::checkInt32($var);
        $this->company_id = $var;

        return $this;
    }

    /**
     * Префикс
     *
     * Generated from protobuf field <code>string prefix = 10;</code>
     * @return string
     */
    public function getPrefix()
    {
        return $this->prefix;
    }

    /**
     * Префикс
     *
     * Generated from protobuf field <code>string prefix = 10;</code>
     * @param string $var
     * @return $this
     */
    public function setPrefix($var)
    {
        GPBUtil::checkString($var, True);
        $this->prefix = $var;

        return $this;
    }

    /**
     * Дата создания.
     * # Тип: DateTime
     *
     * Generated from protobuf field <code>.google.protobuf.Timestamp created_at = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
     * @return \Google\Protobuf\Timestamp|null
     */
    public function getCreatedAt()
    {
        return $this->created_at;
    }

    public function hasCreatedAt()
    {
        return isset($this->created_at);
    }

    public function clearCreatedAt()
    {
        unset($this->created_at);
    }

    /**
     * Дата создания.
     * # Тип: DateTime
     *
     * Generated from protobuf field <code>.google.protobuf.Timestamp created_at = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
     * @param \Google\Protobuf\Timestamp $var
     * @return $this
     */
    public function setCreatedAt($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
        $this->created_at = $var;

        return $this;
    }

    /**
     * Дата удаления.
     * # Тип: DateTime
     *
     * Generated from protobuf field <code>.google.protobuf.Timestamp deleted_at = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
     * @return \Google\Protobuf\Timestamp|null
     */
    public function getDeletedAt()
    {
        return $this->deleted_at;
    }

    public function hasDeletedAt()
    {
        return isset($this->deleted_at);
    }

    public function clearDeletedAt()
    {
        unset($this->deleted_at);
    }

    /**
     * Дата удаления.
     * # Тип: DateTime
     *
     * Generated from protobuf field <code>.google.protobuf.Timestamp deleted_at = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];</code>
     * @param \Google\Protobuf\Timestamp $var
     * @return $this
     */
    public function setDeletedAt($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
        $this->deleted_at = $var;

        return $this;
    }

    /**
     * Идентификатор квартирограммы
     *
     * Generated from protobuf field <code>int32 flatgramm_id = 13 [(.google.api.field_behavior) = REQUIRED];</code>
     * @return int
     */
    public function getFlatgrammId()
    {
        return $this->flatgramm_id;
    }

    /**
     * Идентификатор квартирограммы
     *
     * Generated from protobuf field <code>int32 flatgramm_id = 13 [(.google.api.field_behavior) = REQUIRED];</code>
     * @param int $var
     * @return $this
     */
    public function setFlatgrammId($var)
    {
        GPBUtil::checkInt32($var);
        $this->flatgramm_id = $var;

        return $this;
    }

    /**
     * ОРПОН города, в котором находится дом
     *
     * Generated from protobuf field <code>int64 city_orpon = 14;</code>
     * @return int|string
     */
    public function getCityOrpon()
    {
        return $this->city_orpon;
    }

    /**
     * ОРПОН города, в котором находится дом
     *
     * Generated from protobuf field <code>int64 city_orpon = 14;</code>
     * @param int|string $var
     * @return $this
     */
    public function setCityOrpon($var)
    {
        GPBUtil::checkInt64($var);
        $this->city_orpon = $var;

        return $this;
    }

    /**
     * Идентификатор в федеральной информационной адресной системе.
     * Тип: Guid
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue fias = 15;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getFias()
    {
        return $this->fias;
    }

    public function hasFias()
    {
        return isset($this->fias);
    }

    public function clearFias()
    {
        unset($this->fias);
    }

    /**
     * Returns the unboxed value from <code>getFias()</code>

     * Идентификатор в федеральной информационной адресной системе.
     * Тип: Guid
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue fias = 15;</code>
     * @return string|null
     */
    public function getFiasUnwrapped()
    {
        return $this->readWrapperValue("fias");
    }

    /**
     * Идентификатор в федеральной информационной адресной системе.
     * Тип: Guid
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue fias = 15;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setFias($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->fias = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * Идентификатор в федеральной информационной адресной системе.
     * Тип: Guid
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue fias = 15;</code>
     * @param string|null $var
     * @return $this
     */
    public function setFiasUnwrapped($var)
    {
        $this->writeWrapperValue("fias", $var);
        return $this;}

    /**
     * Наименование района города.
     * # Диапазон: 0..200
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue district = 16;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getDistrict()
    {
        return $this->district;
    }

    public function hasDistrict()
    {
        return isset($this->district);
    }

    public function clearDistrict()
    {
        unset($this->district);
    }

    /**
     * Returns the unboxed value from <code>getDistrict()</code>

     * Наименование района города.
     * # Диапазон: 0..200
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue district = 16;</code>
     * @return string|null
     */
    public function getDistrictUnwrapped()
    {
        return $this->readWrapperValue("district");
    }

    /**
     * Наименование района города.
     * # Диапазон: 0..200
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue district = 16;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setDistrict($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->district = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * Наименование района города.
     * # Диапазон: 0..200
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue district = 16;</code>
     * @param string|null $var
     * @return $this
     */
    public function setDistrictUnwrapped($var)
    {
        $this->writeWrapperValue("district", $var);
        return $this;}

    /**
     * Уникальный номер адреса.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value unom = 17;</code>
     * @return \Google\Protobuf\Int64Value|null
     */
    public function getUnom()
    {
        return $this->unom;
    }

    public function hasUnom()
    {
        return isset($this->unom);
    }

    public function clearUnom()
    {
        unset($this->unom);
    }

    /**
     * Returns the unboxed value from <code>getUnom()</code>

     * Уникальный номер адреса.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value unom = 17;</code>
     * @return int|string|null
     */
    public function getUnomUnwrapped()
    {
        return $this->readWrapperValue("unom");
    }

    /**
     * Уникальный номер адреса.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value unom = 17;</code>
     * @param \Google\Protobuf\Int64Value $var
     * @return $this
     */
    public function setUnom($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int64Value::class);
        $this->unom = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int64Value object.

     * Уникальный номер адреса.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value unom = 17;</code>
     * @param int|string|null $var
     * @return $this
     */
    public function setUnomUnwrapped($var)
    {
        $this->writeWrapperValue("unom", $var);
        return $this;}

    /**
     * ОРПОН региона
     *
     * Generated from protobuf field <code>int64 region_orpon = 18;</code>
     * @return int|string
     */
    public function getRegionOrpon()
    {
        return $this->region_orpon;
    }

    /**
     * ОРПОН региона
     *
     * Generated from protobuf field <code>int64 region_orpon = 18;</code>
     * @param int|string $var
     * @return $this
     */
    public function setRegionOrpon($var)
    {
        GPBUtil::checkInt64($var);
        $this->region_orpon = $var;

        return $this;
    }

    /**
     * Смещение таймзоны в минутах.
     * # Диапазон: -720..840
     *
     * Generated from protobuf field <code>int32 utc_offset = 19;</code>
     * @return int
     */
    public function getUtcOffset()
    {
        return $this->utc_offset;
    }

    /**
     * Смещение таймзоны в минутах.
     * # Диапазон: -720..840
     *
     * Generated from protobuf field <code>int32 utc_offset = 19;</code>
     * @param int $var
     * @return $this
     */
    public function setUtcOffset($var)
    {
        GPBUtil::checkInt32($var);
        $this->utc_offset = $var;

        return $this;
    }

    /**
     * Флаг указывает на то могут ли жители этого дома приобрести ключи домофона в партнёрских салонах или на маркетплейсах
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_sale_points = 20;</code>
     * @return bool
     */
    public function getIsKeyPurchasePossibleInSalePoints()
    {
        return $this->is_key_purchase_possible_in_sale_points;
    }

    /**
     * Флаг указывает на то могут ли жители этого дома приобрести ключи домофона в партнёрских салонах или на маркетплейсах
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_sale_points = 20;</code>
     * @param bool $var
     * @return $this
     */
    public function setIsKeyPurchasePossibleInSalePoints($var)
    {
        GPBUtil::checkBool($var);
        $this->is_key_purchase_possible_in_sale_points = $var;

        return $this;
    }

    /**
     * Флаг указывает на то могут ли жители этого дома приобретать ключи через управляющую компанию
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_management_company = 21;</code>
     * @return bool
     */
    public function getIsKeyPurchasePossibleInManagementCompany()
    {
        return $this->is_key_purchase_possible_in_management_company;
    }

    /**
     * Флаг указывает на то могут ли жители этого дома приобретать ключи через управляющую компанию
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_management_company = 21;</code>
     * @param bool $var
     * @return $this
     */
    public function setIsKeyPurchasePossibleInManagementCompany($var)
    {
        GPBUtil::checkBool($var);
        $this->is_key_purchase_possible_in_management_company = $var;

        return $this;
    }

    /**
     * Флаг указывает на то могут ли жители этого дома приобрести ключи напрямую у домофонной компании
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_intercom_company = 22;</code>
     * @return bool
     */
    public function getIsKeyPurchasePossibleInIntercomCompany()
    {
        return $this->is_key_purchase_possible_in_intercom_company;
    }

    /**
     * Флаг указывает на то могут ли жители этого дома приобрести ключи напрямую у домофонной компании
     *
     * Generated from protobuf field <code>bool is_key_purchase_possible_in_intercom_company = 22;</code>
     * @param bool $var
     * @return $this
     */
    public function setIsKeyPurchasePossibleInIntercomCompany($var)
    {
        GPBUtil::checkBool($var);
        $this->is_key_purchase_possible_in_intercom_company = $var;

        return $this;
    }

    /**
     * Флаг указывает на то поддерживает ли дом использование RFID-меток с типом MIFARE
     *
     * Generated from protobuf field <code>bool is_rfid_mifare_supported = 23;</code>
     * @return bool
     */
    public function getIsRfidMifareSupported()
    {
        return $this->is_rfid_mifare_supported;
    }

    /**
     * Флаг указывает на то поддерживает ли дом использование RFID-меток с типом MIFARE
     *
     * Generated from protobuf field <code>bool is_rfid_mifare_supported = 23;</code>
     * @param bool $var
     * @return $this
     */
    public function setIsRfidMifareSupported($var)
    {
        GPBUtil::checkBool($var);
        $this->is_rfid_mifare_supported = $var;

        return $this;
    }

    /**
     * Наименование муниципального района.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area = 24;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getArea()
    {
        return $this->area;
    }

    public function hasArea()
    {
        return isset($this->area);
    }

    public function clearArea()
    {
        unset($this->area);
    }

    /**
     * Returns the unboxed value from <code>getArea()</code>

     * Наименование муниципального района.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area = 24;</code>
     * @return string|null
     */
    public function getAreaUnwrapped()
    {
        return $this->readWrapperValue("area");
    }

    /**
     * Наименование муниципального района.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area = 24;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setArea($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->area = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * Наименование муниципального района.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area = 24;</code>
     * @param string|null $var
     * @return $this
     */
    public function setAreaUnwrapped($var)
    {
        $this->writeWrapperValue("area", $var);
        return $this;}

    /**
     * ОРПОН муниципального района.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value area_orpon = 25;</code>
     * @return \Google\Protobuf\Int64Value|null
     */
    public function getAreaOrpon()
    {
        return $this->area_orpon;
    }

    public function hasAreaOrpon()
    {
        return isset($this->area_orpon);
    }

    public function clearAreaOrpon()
    {
        unset($this->area_orpon);
    }

    /**
     * Returns the unboxed value from <code>getAreaOrpon()</code>

     * ОРПОН муниципального района.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value area_orpon = 25;</code>
     * @return int|string|null
     */
    public function getAreaOrponUnwrapped()
    {
        return $this->readWrapperValue("area_orpon");
    }

    /**
     * ОРПОН муниципального района.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value area_orpon = 25;</code>
     * @param \Google\Protobuf\Int64Value $var
     * @return $this
     */
    public function setAreaOrpon($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int64Value::class);
        $this->area_orpon = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int64Value object.

     * ОРПОН муниципального района.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value area_orpon = 25;</code>
     * @param int|string|null $var
     * @return $this
     */
    public function setAreaOrponUnwrapped($var)
    {
        $this->writeWrapperValue("area_orpon", $var);
        return $this;}

    /**
     * КЛАДР муниципального района.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area_kladr = 26;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getAreaKladr()
    {
        return $this->area_kladr;
    }

    public function hasAreaKladr()
    {
        return isset($this->area_kladr);
    }

    public function clearAreaKladr()
    {
        unset($this->area_kladr);
    }

    /**
     * Returns the unboxed value from <code>getAreaKladr()</code>

     * КЛАДР муниципального района.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area_kladr = 26;</code>
     * @return string|null
     */
    public function getAreaKladrUnwrapped()
    {
        return $this->readWrapperValue("area_kladr");
    }

    /**
     * КЛАДР муниципального района.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area_kladr = 26;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setAreaKladr($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->area_kladr = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * КЛАДР муниципального района.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue area_kladr = 26;</code>
     * @param string|null $var
     * @return $this
     */
    public function setAreaKladrUnwrapped($var)
    {
        $this->writeWrapperValue("area_kladr", $var);
        return $this;}

    /**
     * Признак принадлежности населённого пункта к столичному статусу.
     * 1 — центр района.
     * 2 — центр региона.
     * 3 — центр района и региона.
     * 4 — центральный район региона.
     * 0 — ничего из перечисленного.
     * # Диапазон: 0..4
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value capital_marker = 27;</code>
     * @return \Google\Protobuf\Int32Value|null
     */
    public function getCapitalMarker()
    {
        return $this->capital_marker;
    }

    public function hasCapitalMarker()
    {
        return isset($this->capital_marker);
    }

    public function clearCapitalMarker()
    {
        unset($this->capital_marker);
    }

    /**
     * Returns the unboxed value from <code>getCapitalMarker()</code>

     * Признак принадлежности населённого пункта к столичному статусу.
     * 1 — центр района.
     * 2 — центр региона.
     * 3 — центр района и региона.
     * 4 — центральный район региона.
     * 0 — ничего из перечисленного.
     * # Диапазон: 0..4
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value capital_marker = 27;</code>
     * @return int|null
     */
    public function getCapitalMarkerUnwrapped()
    {
        return $this->readWrapperValue("capital_marker");
    }

    /**
     * Признак принадлежности населённого пункта к столичному статусу.
     * 1 — центр района.
     * 2 — центр региона.
     * 3 — центр района и региона.
     * 4 — центральный район региона.
     * 0 — ничего из перечисленного.
     * # Диапазон: 0..4
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value capital_marker = 27;</code>
     * @param \Google\Protobuf\Int32Value $var
     * @return $this
     */
    public function setCapitalMarker($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int32Value::class);
        $this->capital_marker = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int32Value object.

     * Признак принадлежности населённого пункта к столичному статусу.
     * 1 — центр района.
     * 2 — центр региона.
     * 3 — центр района и региона.
     * 4 — центральный район региона.
     * 0 — ничего из перечисленного.
     * # Диапазон: 0..4
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value capital_marker = 27;</code>
     * @param int|null $var
     * @return $this
     */
    public function setCapitalMarkerUnwrapped($var)
    {
        $this->writeWrapperValue("capital_marker", $var);
        return $this;}

    /**
     * КЛАДР-код города.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue city_kladr = 28;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getCityKladr()
    {
        return $this->city_kladr;
    }

    public function hasCityKladr()
    {
        return isset($this->city_kladr);
    }

    public function clearCityKladr()
    {
        unset($this->city_kladr);
    }

    /**
     * Returns the unboxed value from <code>getCityKladr()</code>

     * КЛАДР-код города.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue city_kladr = 28;</code>
     * @return string|null
     */
    public function getCityKladrUnwrapped()
    {
        return $this->readWrapperValue("city_kladr");
    }

    /**
     * КЛАДР-код города.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue city_kladr = 28;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setCityKladr($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->city_kladr = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * КЛАДР-код города.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue city_kladr = 28;</code>
     * @param string|null $var
     * @return $this
     */
    public function setCityKladrUnwrapped($var)
    {
        $this->writeWrapperValue("city_kladr", $var);
        return $this;}

    /**
     * КЛАДР-код строения.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue kladr = 29;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getKladr()
    {
        return $this->kladr;
    }

    public function hasKladr()
    {
        return isset($this->kladr);
    }

    public function clearKladr()
    {
        unset($this->kladr);
    }

    /**
     * Returns the unboxed value from <code>getKladr()</code>

     * КЛАДР-код строения.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue kladr = 29;</code>
     * @return string|null
     */
    public function getKladrUnwrapped()
    {
        return $this->readWrapperValue("kladr");
    }

    /**
     * КЛАДР-код строения.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue kladr = 29;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setKladr($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->kladr = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * КЛАДР-код строения.
     * # Диапазон: 0..17
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue kladr = 29;</code>
     * @param string|null $var
     * @return $this
     */
    public function setKladrUnwrapped($var)
    {
        $this->writeWrapperValue("kladr", $var);
        return $this;}

    /**
     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — страна.
     * 1 — регион.
     * 3 — район.
     * 4 — город.
     * 5 — район города.
     * 6 — населенный пункт.
     * 7 — улица.
     * 8 — дом.
     * 9 — квартира.
     * 65 — планировочная структура.
     * 90 — доп. территория.
     * 91 — улица в доп. территории.
     * -1 — иностранный или пустой.
     * # Диапазон: -1..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_level = 30;</code>
     * @return \Google\Protobuf\Int32Value|null
     */
    public function getFiasLevel()
    {
        return $this->fias_level;
    }

    public function hasFiasLevel()
    {
        return isset($this->fias_level);
    }

    public function clearFiasLevel()
    {
        unset($this->fias_level);
    }

    /**
     * Returns the unboxed value from <code>getFiasLevel()</code>

     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — страна.
     * 1 — регион.
     * 3 — район.
     * 4 — город.
     * 5 — район города.
     * 6 — населенный пункт.
     * 7 — улица.
     * 8 — дом.
     * 9 — квартира.
     * 65 — планировочная структура.
     * 90 — доп. территория.
     * 91 — улица в доп. территории.
     * -1 — иностранный или пустой.
     * # Диапазон: -1..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_level = 30;</code>
     * @return int|null
     */
    public function getFiasLevelUnwrapped()
    {
        return $this->readWrapperValue("fias_level");
    }

    /**
     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — страна.
     * 1 — регион.
     * 3 — район.
     * 4 — город.
     * 5 — район города.
     * 6 — населенный пункт.
     * 7 — улица.
     * 8 — дом.
     * 9 — квартира.
     * 65 — планировочная структура.
     * 90 — доп. территория.
     * 91 — улица в доп. территории.
     * -1 — иностранный или пустой.
     * # Диапазон: -1..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_level = 30;</code>
     * @param \Google\Protobuf\Int32Value $var
     * @return $this
     */
    public function setFiasLevel($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int32Value::class);
        $this->fias_level = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int32Value object.

     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — страна.
     * 1 — регион.
     * 3 — район.
     * 4 — город.
     * 5 — район города.
     * 6 — населенный пункт.
     * 7 — улица.
     * 8 — дом.
     * 9 — квартира.
     * 65 — планировочная структура.
     * 90 — доп. территория.
     * 91 — улица в доп. территории.
     * -1 — иностранный или пустой.
     * # Диапазон: -1..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_level = 30;</code>
     * @param int|null $var
     * @return $this
     */
    public function setFiasLevelUnwrapped($var)
    {
        $this->writeWrapperValue("fias_level", $var);
        return $this;}

    /**
     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — актуальный.
     * 1-50 — переименован.
     * 51 — переподчинен.
     * 99 — удален.
     * # Диапазон: 0..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_actuality_state = 31;</code>
     * @return \Google\Protobuf\Int32Value|null
     */
    public function getFiasActualityState()
    {
        return $this->fias_actuality_state;
    }

    public function hasFiasActualityState()
    {
        return isset($this->fias_actuality_state);
    }

    public function clearFiasActualityState()
    {
        unset($this->fias_actuality_state);
    }

    /**
     * Returns the unboxed value from <code>getFiasActualityState()</code>

     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — актуальный.
     * 1-50 — переименован.
     * 51 — переподчинен.
     * 99 — удален.
     * # Диапазон: 0..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_actuality_state = 31;</code>
     * @return int|null
     */
    public function getFiasActualityStateUnwrapped()
    {
        return $this->readWrapperValue("fias_actuality_state");
    }

    /**
     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — актуальный.
     * 1-50 — переименован.
     * 51 — переподчинен.
     * 99 — удален.
     * # Диапазон: 0..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_actuality_state = 31;</code>
     * @param \Google\Protobuf\Int32Value $var
     * @return $this
     */
    public function setFiasActualityState($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int32Value::class);
        $this->fias_actuality_state = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int32Value object.

     * Уровень детализации, до которого адрес найден в ФИАС.
     * 0 — актуальный.
     * 1-50 — переименован.
     * 51 — переподчинен.
     * 99 — удален.
     * # Диапазон: 0..99
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value fias_actuality_state = 31;</code>
     * @param int|null $var
     * @return $this
     */
    public function setFiasActualityStateUnwrapped($var)
    {
        $this->writeWrapperValue("fias_actuality_state", $var);
        return $this;}

    /**
     * Координаты: широта
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lat = 32;</code>
     * @return \Google\Protobuf\DoubleValue|null
     */
    public function getGeoLat()
    {
        return $this->geo_lat;
    }

    public function hasGeoLat()
    {
        return isset($this->geo_lat);
    }

    public function clearGeoLat()
    {
        unset($this->geo_lat);
    }

    /**
     * Returns the unboxed value from <code>getGeoLat()</code>

     * Координаты: широта
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lat = 32;</code>
     * @return float|null
     */
    public function getGeoLatUnwrapped()
    {
        return $this->readWrapperValue("geo_lat");
    }

    /**
     * Координаты: широта
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lat = 32;</code>
     * @param \Google\Protobuf\DoubleValue $var
     * @return $this
     */
    public function setGeoLat($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\DoubleValue::class);
        $this->geo_lat = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\DoubleValue object.

     * Координаты: широта
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lat = 32;</code>
     * @param float|null $var
     * @return $this
     */
    public function setGeoLatUnwrapped($var)
    {
        $this->writeWrapperValue("geo_lat", $var);
        return $this;}

    /**
     * Координаты: долгота
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lon = 33;</code>
     * @return \Google\Protobuf\DoubleValue|null
     */
    public function getGeoLon()
    {
        return $this->geo_lon;
    }

    public function hasGeoLon()
    {
        return isset($this->geo_lon);
    }

    public function clearGeoLon()
    {
        unset($this->geo_lon);
    }

    /**
     * Returns the unboxed value from <code>getGeoLon()</code>

     * Координаты: долгота
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lon = 33;</code>
     * @return float|null
     */
    public function getGeoLonUnwrapped()
    {
        return $this->readWrapperValue("geo_lon");
    }

    /**
     * Координаты: долгота
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lon = 33;</code>
     * @param \Google\Protobuf\DoubleValue $var
     * @return $this
     */
    public function setGeoLon($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\DoubleValue::class);
        $this->geo_lon = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\DoubleValue object.

     * Координаты: долгота
     *
     * Generated from protobuf field <code>.google.protobuf.DoubleValue geo_lon = 33;</code>
     * @param float|null $var
     * @return $this
     */
    public function setGeoLonUnwrapped($var)
    {
        $this->writeWrapperValue("geo_lon", $var);
        return $this;}

    /**
     * Код ОКАТО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value okato = 34;</code>
     * @return \Google\Protobuf\Int32Value|null
     */
    public function getOkato()
    {
        return $this->okato;
    }

    public function hasOkato()
    {
        return isset($this->okato);
    }

    public function clearOkato()
    {
        unset($this->okato);
    }

    /**
     * Returns the unboxed value from <code>getOkato()</code>

     * Код ОКАТО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value okato = 34;</code>
     * @return int|null
     */
    public function getOkatoUnwrapped()
    {
        return $this->readWrapperValue("okato");
    }

    /**
     * Код ОКАТО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value okato = 34;</code>
     * @param \Google\Protobuf\Int32Value $var
     * @return $this
     */
    public function setOkato($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int32Value::class);
        $this->okato = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int32Value object.

     * Код ОКАТО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value okato = 34;</code>
     * @param int|null $var
     * @return $this
     */
    public function setOkatoUnwrapped($var)
    {
        $this->writeWrapperValue("okato", $var);
        return $this;}

    /**
     * Код ОКТМО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value oktmo = 35;</code>
     * @return \Google\Protobuf\Int32Value|null
     */
    public function getOktmo()
    {
        return $this->oktmo;
    }

    public function hasOktmo()
    {
        return isset($this->oktmo);
    }

    public function clearOktmo()
    {
        unset($this->oktmo);
    }

    /**
     * Returns the unboxed value from <code>getOktmo()</code>

     * Код ОКТМО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value oktmo = 35;</code>
     * @return int|null
     */
    public function getOktmoUnwrapped()
    {
        return $this->readWrapperValue("oktmo");
    }

    /**
     * Код ОКТМО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value oktmo = 35;</code>
     * @param \Google\Protobuf\Int32Value $var
     * @return $this
     */
    public function setOktmo($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int32Value::class);
        $this->oktmo = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int32Value object.

     * Код ОКТМО
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value oktmo = 35;</code>
     * @param int|null $var
     * @return $this
     */
    public function setOktmoUnwrapped($var)
    {
        $this->writeWrapperValue("oktmo", $var);
        return $this;}

    /**
     * Почтовый индекс
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value postal_code = 36;</code>
     * @return \Google\Protobuf\Int32Value|null
     */
    public function getPostalCode()
    {
        return $this->postal_code;
    }

    public function hasPostalCode()
    {
        return isset($this->postal_code);
    }

    public function clearPostalCode()
    {
        unset($this->postal_code);
    }

    /**
     * Returns the unboxed value from <code>getPostalCode()</code>

     * Почтовый индекс
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value postal_code = 36;</code>
     * @return int|null
     */
    public function getPostalCodeUnwrapped()
    {
        return $this->readWrapperValue("postal_code");
    }

    /**
     * Почтовый индекс
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value postal_code = 36;</code>
     * @param \Google\Protobuf\Int32Value $var
     * @return $this
     */
    public function setPostalCode($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int32Value::class);
        $this->postal_code = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int32Value object.

     * Почтовый индекс
     *
     * Generated from protobuf field <code>.google.protobuf.Int32Value postal_code = 36;</code>
     * @param int|null $var
     * @return $this
     */
    public function setPostalCodeUnwrapped($var)
    {
        $this->writeWrapperValue("postal_code", $var);
        return $this;}

    /**
     * Наименование региона.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region = 37;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getRegion()
    {
        return $this->region;
    }

    public function hasRegion()
    {
        return isset($this->region);
    }

    public function clearRegion()
    {
        unset($this->region);
    }

    /**
     * Returns the unboxed value from <code>getRegion()</code>

     * Наименование региона.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region = 37;</code>
     * @return string|null
     */
    public function getRegionUnwrapped()
    {
        return $this->readWrapperValue("region");
    }

    /**
     * Наименование региона.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region = 37;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setRegion($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->region = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * Наименование региона.
     * # Диапазон: 0..64
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region = 37;</code>
     * @param string|null $var
     * @return $this
     */
    public function setRegionUnwrapped($var)
    {
        $this->writeWrapperValue("region", $var);
        return $this;}

    /**
     * КЛАДР-код региона.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region_kladr = 38;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getRegionKladr()
    {
        return $this->region_kladr;
    }

    public function hasRegionKladr()
    {
        return isset($this->region_kladr);
    }

    public function clearRegionKladr()
    {
        unset($this->region_kladr);
    }

    /**
     * Returns the unboxed value from <code>getRegionKladr()</code>

     * КЛАДР-код региона.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region_kladr = 38;</code>
     * @return string|null
     */
    public function getRegionKladrUnwrapped()
    {
        return $this->readWrapperValue("region_kladr");
    }

    /**
     * КЛАДР-код региона.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region_kladr = 38;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setRegionKladr($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->region_kladr = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * КЛАДР-код региона.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue region_kladr = 38;</code>
     * @param string|null $var
     * @return $this
     */
    public function setRegionKladrUnwrapped($var)
    {
        $this->writeWrapperValue("region_kladr", $var);
        return $this;}

    /**
     * КЛАДР-код улицы.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue street_kladr = 39;</code>
     * @return \Google\Protobuf\StringValue|null
     */
    public function getStreetKladr()
    {
        return $this->street_kladr;
    }

    public function hasStreetKladr()
    {
        return isset($this->street_kladr);
    }

    public function clearStreetKladr()
    {
        unset($this->street_kladr);
    }

    /**
     * Returns the unboxed value from <code>getStreetKladr()</code>

     * КЛАДР-код улицы.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue street_kladr = 39;</code>
     * @return string|null
     */
    public function getStreetKladrUnwrapped()
    {
        return $this->readWrapperValue("street_kladr");
    }

    /**
     * КЛАДР-код улицы.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue street_kladr = 39;</code>
     * @param \Google\Protobuf\StringValue $var
     * @return $this
     */
    public function setStreetKladr($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\StringValue::class);
        $this->street_kladr = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\StringValue object.

     * КЛАДР-код улицы.
     * # Диапазон: 0..32
     *
     * Generated from protobuf field <code>.google.protobuf.StringValue street_kladr = 39;</code>
     * @param string|null $var
     * @return $this
     */
    public function setStreetKladrUnwrapped($var)
    {
        $this->writeWrapperValue("street_kladr", $var);
        return $this;}

    /**
     * ОРПОН улицы.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value street_orpon = 40;</code>
     * @return \Google\Protobuf\Int64Value|null
     */
    public function getStreetOrpon()
    {
        return $this->street_orpon;
    }

    public function hasStreetOrpon()
    {
        return isset($this->street_orpon);
    }

    public function clearStreetOrpon()
    {
        unset($this->street_orpon);
    }

    /**
     * Returns the unboxed value from <code>getStreetOrpon()</code>

     * ОРПОН улицы.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value street_orpon = 40;</code>
     * @return int|string|null
     */
    public function getStreetOrponUnwrapped()
    {
        return $this->readWrapperValue("street_orpon");
    }

    /**
     * ОРПОН улицы.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value street_orpon = 40;</code>
     * @param \Google\Protobuf\Int64Value $var
     * @return $this
     */
    public function setStreetOrpon($var)
    {
        GPBUtil::checkMessage($var, \Google\Protobuf\Int64Value::class);
        $this->street_orpon = $var;

        return $this;
    }

    /**
     * Sets the field by wrapping a primitive type in a Google\Protobuf\Int64Value object.

     * ОРПОН улицы.
     * # Диапазон: 0..9999999999
     *
     * Generated from protobuf field <code>.google.protobuf.Int64Value street_orpon = 40;</code>
     * @param int|string|null $var
     * @return $this
     */
    public function setStreetOrponUnwrapped($var)
    {
        $this->writeWrapperValue("street_orpon", $var);
        return $this;}

}

