- <?php
- namespace Proxies\__CG__\Whater\Domain\Zones\Model;
- /**
-  * DO NOT EDIT THIS FILE - IT WAS CREATED BY DOCTRINE'S PROXY GENERATOR
-  */
- class Country extends \Whater\Domain\Zones\Model\Country implements \Doctrine\ORM\Proxy\Proxy
- {
-     /**
-      * @var \Closure the callback responsible for loading properties in the proxy object. This callback is called with
-      *      three parameters, being respectively the proxy object to be initialized, the method that triggered the
-      *      initialization process and an array of ordered parameters that were passed to that method.
-      *
-      * @see \Doctrine\Common\Proxy\Proxy::__setInitializer
-      */
-     public $__initializer__;
-     /**
-      * @var \Closure the callback responsible of loading properties that need to be copied in the cloned object
-      *
-      * @see \Doctrine\Common\Proxy\Proxy::__setCloner
-      */
-     public $__cloner__;
-     /**
-      * @var boolean flag indicating if this object was already initialized
-      *
-      * @see \Doctrine\Persistence\Proxy::__isInitialized
-      */
-     public $__isInitialized__ = false;
-     /**
-      * @var array<string, null> properties to be lazy loaded, indexed by property name
-      */
-     public static $lazyPropertiesNames = array (
- );
-     /**
-      * @var array<string, mixed> default values of properties to be lazy loaded, with keys being the property names
-      *
-      * @see \Doctrine\Common\Proxy\Proxy::__getLazyProperties
-      */
-     public static $lazyPropertiesDefaults = array (
- );
-     public function __construct(?\Closure $initializer = null, ?\Closure $cloner = null)
-     {
-         $this->__initializer__ = $initializer;
-         $this->__cloner__      = $cloner;
-     }
-     /**
-      * 
-      * @return array
-      */
-     public function __sleep()
-     {
-         if ($this->__isInitialized__) {
-             return ['__isInitialized__', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'uuid', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'isoCode', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'name', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'countryAreas', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'towns', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'townLocations', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'organizationLicenses', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'products', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'distributionNetworks', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'whaterOrganizations', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'createdAt', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'updatedAt', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'isoCode3', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'isoNumeric', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'capital', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'areaInKm2', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'population', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'continent', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'geoNameId', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'latitude', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'longitude', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'recordedEvents'];
-         }
-         return ['__isInitialized__', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'uuid', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'isoCode', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'name', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'countryAreas', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'towns', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'townLocations', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'organizationLicenses', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'products', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'distributionNetworks', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'whaterOrganizations', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'createdAt', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'updatedAt', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'isoCode3', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'isoNumeric', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'capital', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'areaInKm2', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'population', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'continent', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'geoNameId', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'latitude', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'longitude', '' . "\0" . 'Whater\\Domain\\Zones\\Model\\Country' . "\0" . 'recordedEvents'];
-     }
-     /**
-      * 
-      */
-     public function __wakeup()
-     {
-         if ( ! $this->__isInitialized__) {
-             $this->__initializer__ = function (Country $proxy) {
-                 $proxy->__setInitializer(null);
-                 $proxy->__setCloner(null);
-                 $existingProperties = get_object_vars($proxy);
-                 foreach ($proxy::$lazyPropertiesDefaults as $property => $defaultValue) {
-                     if ( ! array_key_exists($property, $existingProperties)) {
-                         $proxy->$property = $defaultValue;
-                     }
-                 }
-             };
-         }
-     }
-     /**
-      * 
-      */
-     public function __clone()
-     {
-         $this->__cloner__ && $this->__cloner__->__invoke($this, '__clone', []);
-     }
-     /**
-      * Forces initialization of the proxy
-      */
-     public function __load(): void
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, '__load', []);
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific loading logic
-      */
-     public function __isInitialized(): bool
-     {
-         return $this->__isInitialized__;
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific loading logic
-      */
-     public function __setInitialized($initialized): void
-     {
-         $this->__isInitialized__ = $initialized;
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific loading logic
-      */
-     public function __setInitializer(?\Closure $initializer = null): void
-     {
-         $this->__initializer__ = $initializer;
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific loading logic
-      */
-     public function __getInitializer(): ?\Closure
-     {
-         return $this->__initializer__;
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific loading logic
-      */
-     public function __setCloner(?\Closure $cloner = null): void
-     {
-         $this->__cloner__ = $cloner;
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific cloning logic
-      */
-     public function __getCloner(): ?\Closure
-     {
-         return $this->__cloner__;
-     }
-     /**
-      * {@inheritDoc}
-      * @internal generated method: use only when explicitly handling proxy specific loading logic
-      * @deprecated no longer in use - generated code now relies on internal components rather than generated public API
-      * @static
-      */
-     public function __getLazyProperties(): array
-     {
-         return self::$lazyPropertiesDefaults;
-     }
-     
-     /**
-      * {@inheritDoc}
-      */
-     public function updateCountryData(string $isoCode, string $name, ?string $isoCode3 = NULL, ?string $isoNumeric = NULL, ?string $geoNameId = NULL, ?string $continent = NULL, ?string $capital = NULL, ?string $areaInKm2 = NULL, ?string $population = NULL, ?float $latitude = NULL, ?float $longitude = NULL)
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'updateCountryData', [$isoCode, $name, $isoCode3, $isoNumeric, $geoNameId, $continent, $capital, $areaInKm2, $population, $latitude, $longitude]);
-         return parent::updateCountryData($isoCode, $name, $isoCode3, $isoNumeric, $geoNameId, $continent, $capital, $areaInKm2, $population, $latitude, $longitude);
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function id(): string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'id', []);
-         return parent::id();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function name(): string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'name', []);
-         return parent::name();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function isoCode(): string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'isoCode', []);
-         return parent::isoCode();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function isoCode3(): ?string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'isoCode3', []);
-         return parent::isoCode3();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function isoNumeric(): ?string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'isoNumeric', []);
-         return parent::isoNumeric();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function geoNameId(): ?string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'geoNameId', []);
-         return parent::geoNameId();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function continent(): ?string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'continent', []);
-         return parent::continent();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function capital(): ?string
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'capital', []);
-         return parent::capital();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function areaInKm2(): ?int
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'areaInKm2', []);
-         return parent::areaInKm2();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function population(): ?int
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'population', []);
-         return parent::population();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function latitude(): float
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'latitude', []);
-         return parent::latitude();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function longitude(): float
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'longitude', []);
-         return parent::longitude();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function whaterOrganizations(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'whaterOrganizations', []);
-         return parent::whaterOrganizations();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function distributionNetworks(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'distributionNetworks', []);
-         return parent::distributionNetworks();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function countryAreas(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'countryAreas', []);
-         return parent::countryAreas();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function towns(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'towns', []);
-         return parent::towns();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function townLocations(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'townLocations', []);
-         return parent::townLocations();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function organizationLicenses(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'organizationLicenses', []);
-         return parent::organizationLicenses();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function products(): \Doctrine\Common\Collections\Collection
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'products', []);
-         return parent::products();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function createdAt(): \DateTime
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'createdAt', []);
-         return parent::createdAt();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function updatedAt(): \DateTime
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'updatedAt', []);
-         return parent::updatedAt();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function equals(\Whater\Domain\Zones\Model\Country $country)
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'equals', [$country]);
-         return parent::equals($country);
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function releaseEvents()
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'releaseEvents', []);
-         return parent::releaseEvents();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function eraseEvents()
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'eraseEvents', []);
-         return parent::eraseEvents();
-     }
-     /**
-      * {@inheritDoc}
-      */
-     public function record($event)
-     {
-         $this->__initializer__ && $this->__initializer__->__invoke($this, 'record', [$event]);
-         return parent::record($event);
-     }
- }