<?php

namespace Proxies\__CG__\App\Entity;

/**
 * DO NOT EDIT THIS FILE - IT WAS CREATED BY DOCTRINE'S PROXY GENERATOR
 */
class TAccounts extends \App\Entity\TAccounts 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" . 'App\\Entity\\TAccounts' . "\0" . 'id', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'coaCode', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountType', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountCode', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountImage', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountName', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountPhone1', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountPhone2', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountPhysicalAdd', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountEmailAdd', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'contactPerson', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankName', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankAccountBranch', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankAccountName', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankAccountNo', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountStatus', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'defaultAccount', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'lastModifiedBy', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'lastModifiedOn', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'status', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'note', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'balance', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'details', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'transactionsAccounts', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'transactionTempNo', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'account_system_no', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'transactionaccounts2', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'cost', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'coa', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'tTransactionsCashiers'];
        }

        return ['__isInitialized__', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'id', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'coaCode', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountType', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountCode', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountImage', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountName', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountPhone1', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountPhone2', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountPhysicalAdd', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountEmailAdd', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'contactPerson', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankName', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankAccountBranch', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankAccountName', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountBankAccountNo', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'accountStatus', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'defaultAccount', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'lastModifiedBy', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'lastModifiedOn', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'status', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'note', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'balance', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'details', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'transactionsAccounts', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'transactionTempNo', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'account_system_no', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'transactionaccounts2', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'cost', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'coa', '' . "\0" . 'App\\Entity\\TAccounts' . "\0" . 'tTransactionsCashiers'];
    }

    /**
     * 
     */
    public function __wakeup()
    {
        if ( ! $this->__isInitialized__) {
            $this->__initializer__ = function (TAccounts $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()
    {
        $this->__initializer__ && $this->__initializer__->__invoke($this, '__load', []);
    }

    /**
     * {@inheritDoc}
     * @internal generated method: use only when explicitly handling proxy specific loading logic
     */
    public function __isInitialized()
    {
        return $this->__isInitialized__;
    }

    /**
     * {@inheritDoc}
     * @internal generated method: use only when explicitly handling proxy specific loading logic
     */
    public function __setInitialized($initialized)
    {
        $this->__isInitialized__ = $initialized;
    }

    /**
     * {@inheritDoc}
     * @internal generated method: use only when explicitly handling proxy specific loading logic
     */
    public function __setInitializer(\Closure $initializer = null)
    {
        $this->__initializer__ = $initializer;
    }

    /**
     * {@inheritDoc}
     * @internal generated method: use only when explicitly handling proxy specific loading logic
     */
    public function __getInitializer()
    {
        return $this->__initializer__;
    }

    /**
     * {@inheritDoc}
     * @internal generated method: use only when explicitly handling proxy specific loading logic
     */
    public function __setCloner(\Closure $cloner = null)
    {
        $this->__cloner__ = $cloner;
    }

    /**
     * {@inheritDoc}
     * @internal generated method: use only when explicitly handling proxy specific cloning logic
     */
    public function __getCloner()
    {
        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()
    {
        return self::$lazyPropertiesDefaults;
    }

    
    /**
     * {@inheritDoc}
     */
    public function getId(): ?int
    {
        if ($this->__isInitialized__ === false) {
            return (int)  parent::getId();
        }


        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getId', []);

        return parent::getId();
    }

    /**
     * {@inheritDoc}
     */
    public function getCoaCode(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getCoaCode', []);

        return parent::getCoaCode();
    }

    /**
     * {@inheritDoc}
     */
    public function setCoaCode(string $coaCode): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setCoaCode', [$coaCode]);

        return parent::setCoaCode($coaCode);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountType(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountType', []);

        return parent::getAccountType();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountType(?string $accountType): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountType', [$accountType]);

        return parent::setAccountType($accountType);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountCode(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountCode', []);

        return parent::getAccountCode();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountCode(?string $accountCode): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountCode', [$accountCode]);

        return parent::setAccountCode($accountCode);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountImage(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountImage', []);

        return parent::getAccountImage();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountImage(?string $accountImage): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountImage', [$accountImage]);

        return parent::setAccountImage($accountImage);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountName(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountName', []);

        return parent::getAccountName();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountName(?string $accountName): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountName', [$accountName]);

        return parent::setAccountName($accountName);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountPhone1(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountPhone1', []);

        return parent::getAccountPhone1();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountPhone1(?string $accountPhone1): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountPhone1', [$accountPhone1]);

        return parent::setAccountPhone1($accountPhone1);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountPhone2(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountPhone2', []);

        return parent::getAccountPhone2();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountPhone2(?string $accountPhone2): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountPhone2', [$accountPhone2]);

        return parent::setAccountPhone2($accountPhone2);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountPhysicalAdd(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountPhysicalAdd', []);

        return parent::getAccountPhysicalAdd();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountPhysicalAdd(?string $accountPhysicalAdd): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountPhysicalAdd', [$accountPhysicalAdd]);

        return parent::setAccountPhysicalAdd($accountPhysicalAdd);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountEmailAdd(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountEmailAdd', []);

        return parent::getAccountEmailAdd();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountEmailAdd(?string $accountEmailAdd): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountEmailAdd', [$accountEmailAdd]);

        return parent::setAccountEmailAdd($accountEmailAdd);
    }

    /**
     * {@inheritDoc}
     */
    public function getContactPerson(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getContactPerson', []);

        return parent::getContactPerson();
    }

    /**
     * {@inheritDoc}
     */
    public function setContactPerson(?string $contactPerson): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setContactPerson', [$contactPerson]);

        return parent::setContactPerson($contactPerson);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountBankName(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountBankName', []);

        return parent::getAccountBankName();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountBankName(?string $accountBankName): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountBankName', [$accountBankName]);

        return parent::setAccountBankName($accountBankName);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountBankAccountBranch(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountBankAccountBranch', []);

        return parent::getAccountBankAccountBranch();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountBankAccountBranch(?string $accountBankAccountBranch): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountBankAccountBranch', [$accountBankAccountBranch]);

        return parent::setAccountBankAccountBranch($accountBankAccountBranch);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountBankAccountName(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountBankAccountName', []);

        return parent::getAccountBankAccountName();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountBankAccountName(?string $accountBankAccountName): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountBankAccountName', [$accountBankAccountName]);

        return parent::setAccountBankAccountName($accountBankAccountName);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountBankAccountNo(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountBankAccountNo', []);

        return parent::getAccountBankAccountNo();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountBankAccountNo(?string $accountBankAccountNo): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountBankAccountNo', [$accountBankAccountNo]);

        return parent::setAccountBankAccountNo($accountBankAccountNo);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountStatus(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountStatus', []);

        return parent::getAccountStatus();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountStatus(?string $accountStatus): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountStatus', [$accountStatus]);

        return parent::setAccountStatus($accountStatus);
    }

    /**
     * {@inheritDoc}
     */
    public function getDefaultAccount(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getDefaultAccount', []);

        return parent::getDefaultAccount();
    }

    /**
     * {@inheritDoc}
     */
    public function setDefaultAccount(?string $defaultAccount): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setDefaultAccount', [$defaultAccount]);

        return parent::setDefaultAccount($defaultAccount);
    }

    /**
     * {@inheritDoc}
     */
    public function getLastModifiedBy(): ?int
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getLastModifiedBy', []);

        return parent::getLastModifiedBy();
    }

    /**
     * {@inheritDoc}
     */
    public function setLastModifiedBy(?int $lastModifiedBy): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setLastModifiedBy', [$lastModifiedBy]);

        return parent::setLastModifiedBy($lastModifiedBy);
    }

    /**
     * {@inheritDoc}
     */
    public function getLastModifiedOn(): ?\DateTimeInterface
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getLastModifiedOn', []);

        return parent::getLastModifiedOn();
    }

    /**
     * {@inheritDoc}
     */
    public function setLastModifiedOn(?\DateTimeInterface $lastModifiedOn): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setLastModifiedOn', [$lastModifiedOn]);

        return parent::setLastModifiedOn($lastModifiedOn);
    }

    /**
     * {@inheritDoc}
     */
    public function getStatus(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getStatus', []);

        return parent::getStatus();
    }

    /**
     * {@inheritDoc}
     */
    public function setStatus(?string $status): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setStatus', [$status]);

        return parent::setStatus($status);
    }

    /**
     * {@inheritDoc}
     */
    public function getNote(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getNote', []);

        return parent::getNote();
    }

    /**
     * {@inheritDoc}
     */
    public function setNote(?string $note): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setNote', [$note]);

        return parent::setNote($note);
    }

    /**
     * {@inheritDoc}
     */
    public function getBalance(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getBalance', []);

        return parent::getBalance();
    }

    /**
     * {@inheritDoc}
     */
    public function setBalance(?string $balance): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setBalance', [$balance]);

        return parent::setBalance($balance);
    }

    /**
     * {@inheritDoc}
     */
    public function getDetails(): \Doctrine\Common\Collections\Collection
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getDetails', []);

        return parent::getDetails();
    }

    /**
     * {@inheritDoc}
     */
    public function addDetail(\App\Entity\TTransactionsDetails $detail): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'addDetail', [$detail]);

        return parent::addDetail($detail);
    }

    /**
     * {@inheritDoc}
     */
    public function removeDetail(\App\Entity\TTransactionsDetails $detail): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'removeDetail', [$detail]);

        return parent::removeDetail($detail);
    }

    /**
     * {@inheritDoc}
     */
    public function getTransactionsAccounts(): \Doctrine\Common\Collections\Collection
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getTransactionsAccounts', []);

        return parent::getTransactionsAccounts();
    }

    /**
     * {@inheritDoc}
     */
    public function addTransactionsAccount(\App\Entity\TTransactionsAccounts $transactionsAccount): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'addTransactionsAccount', [$transactionsAccount]);

        return parent::addTransactionsAccount($transactionsAccount);
    }

    /**
     * {@inheritDoc}
     */
    public function removeTransactionsAccount(\App\Entity\TTransactionsAccounts $transactionsAccount): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'removeTransactionsAccount', [$transactionsAccount]);

        return parent::removeTransactionsAccount($transactionsAccount);
    }

    /**
     * {@inheritDoc}
     */
    public function getTransactionTempNo(): \Doctrine\Common\Collections\Collection
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getTransactionTempNo', []);

        return parent::getTransactionTempNo();
    }

    /**
     * {@inheritDoc}
     */
    public function addTransactionTempNo(\App\Entity\TTransactionsTempsNos $transactionTempNo): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'addTransactionTempNo', [$transactionTempNo]);

        return parent::addTransactionTempNo($transactionTempNo);
    }

    /**
     * {@inheritDoc}
     */
    public function removeTransactionTempNo(\App\Entity\TTransactionsTempsNos $transactionTempNo): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'removeTransactionTempNo', [$transactionTempNo]);

        return parent::removeTransactionTempNo($transactionTempNo);
    }

    /**
     * {@inheritDoc}
     */
    public function getAccountSystemNo(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getAccountSystemNo', []);

        return parent::getAccountSystemNo();
    }

    /**
     * {@inheritDoc}
     */
    public function setAccountSystemNo(?string $account_system_no): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setAccountSystemNo', [$account_system_no]);

        return parent::setAccountSystemNo($account_system_no);
    }

    /**
     * {@inheritDoc}
     */
    public function getTransactionaccounts2(): \Doctrine\Common\Collections\Collection
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getTransactionaccounts2', []);

        return parent::getTransactionaccounts2();
    }

    /**
     * {@inheritDoc}
     */
    public function addTransactionaccounts2(\App\Entity\TTransactionsAccounts $transactionaccounts2): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'addTransactionaccounts2', [$transactionaccounts2]);

        return parent::addTransactionaccounts2($transactionaccounts2);
    }

    /**
     * {@inheritDoc}
     */
    public function removeTransactionaccounts2(\App\Entity\TTransactionsAccounts $transactionaccounts2): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'removeTransactionaccounts2', [$transactionaccounts2]);

        return parent::removeTransactionaccounts2($transactionaccounts2);
    }

    /**
     * {@inheritDoc}
     */
    public function getTotalBalance()
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getTotalBalance', []);

        return parent::getTotalBalance();
    }

    /**
     * {@inheritDoc}
     */
    public function getCost(): ?string
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getCost', []);

        return parent::getCost();
    }

    /**
     * {@inheritDoc}
     */
    public function setCost(?string $cost): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setCost', [$cost]);

        return parent::setCost($cost);
    }

    /**
     * {@inheritDoc}
     */
    public function getCoa(): ?\App\Entity\TChartOfAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getCoa', []);

        return parent::getCoa();
    }

    /**
     * {@inheritDoc}
     */
    public function setCoa(?\App\Entity\TChartOfAccounts $coa): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'setCoa', [$coa]);

        return parent::setCoa($coa);
    }

    /**
     * {@inheritDoc}
     */
    public function getTTransactionsCashiers(): \Doctrine\Common\Collections\Collection
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'getTTransactionsCashiers', []);

        return parent::getTTransactionsCashiers();
    }

    /**
     * {@inheritDoc}
     */
    public function addTTransactionsCashier(\App\Entity\TTransactionsCashier $tTransactionsCashier): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'addTTransactionsCashier', [$tTransactionsCashier]);

        return parent::addTTransactionsCashier($tTransactionsCashier);
    }

    /**
     * {@inheritDoc}
     */
    public function removeTTransactionsCashier(\App\Entity\TTransactionsCashier $tTransactionsCashier): \App\Entity\TAccounts
    {

        $this->__initializer__ && $this->__initializer__->__invoke($this, 'removeTTransactionsCashier', [$tTransactionsCashier]);

        return parent::removeTTransactionsCashier($tTransactionsCashier);
    }

}
