/**
  * @param object $object
  * @return $this
  * @throws UnexpectedValueException
  */
 public function fromObject($object)
 {
     parent::fromObject($object);
     if (property_exists($object, 'bankAccountIban')) {
         if (!is_object($object->bankAccountIban)) {
             throw new UnexpectedValueException('value \'' . print_r($object->bankAccountIban, true) . '\' is not an object');
         }
         $value = new BankAccountIban();
         $this->bankAccountIban = $value->fromObject($object->bankAccountIban);
     }
     if (property_exists($object, 'paymentProduct836SpecificOutput')) {
         if (!is_object($object->paymentProduct836SpecificOutput)) {
             throw new UnexpectedValueException('value \'' . print_r($object->paymentProduct836SpecificOutput, true) . '\' is not an object');
         }
         $value = new PaymentProduct836SpecificOutput();
         $this->paymentProduct836SpecificOutput = $value->fromObject($object->paymentProduct836SpecificOutput);
     }
     if (property_exists($object, 'paymentProduct840SpecificOutput')) {
         if (!is_object($object->paymentProduct840SpecificOutput)) {
             throw new UnexpectedValueException('value \'' . print_r($object->paymentProduct840SpecificOutput, true) . '\' is not an object');
         }
         $value = new PaymentProduct840SpecificOutput();
         $this->paymentProduct840SpecificOutput = $value->fromObject($object->paymentProduct840SpecificOutput);
     }
     return $this;
 }
 /**
  * @param object $object
  * @return $this
  * @throws UnexpectedValueException
  */
 public function fromObject($object)
 {
     parent::fromObject($object);
     if (property_exists($object, 'authorisationCode')) {
         $this->authorisationCode = $object->authorisationCode;
     }
     if (property_exists($object, 'card')) {
         if (!is_object($object->card)) {
             throw new UnexpectedValueException('value \'' . print_r($object->card, true) . '\' is not an object');
         }
         $value = new CardEssentials();
         $this->card = $value->fromObject($object->card);
     }
     if (property_exists($object, 'fraudResults')) {
         if (!is_object($object->fraudResults)) {
             throw new UnexpectedValueException('value \'' . print_r($object->fraudResults, true) . '\' is not an object');
         }
         $value = new CardFraudResults();
         $this->fraudResults = $value->fromObject($object->fraudResults);
     }
     if (property_exists($object, 'threeDSecureResults')) {
         if (!is_object($object->threeDSecureResults)) {
             throw new UnexpectedValueException('value \'' . print_r($object->threeDSecureResults, true) . '\' is not an object');
         }
         $value = new ThreeDSecureResults();
         $this->threeDSecureResults = $value->fromObject($object->threeDSecureResults);
     }
     return $this;
 }
 /**
  * @param object $object
  * @return $this
  * @throws UnexpectedValueException
  */
 public function fromObject($object)
 {
     parent::fromObject($object);
     if (property_exists($object, 'fraudResults')) {
         if (!is_object($object->fraudResults)) {
             throw new UnexpectedValueException('value \'' . print_r($object->fraudResults, true) . '\' is not an object');
         }
         $value = new FraudResults();
         $this->fraudResults = $value->fromObject($object->fraudResults);
     }
     return $this;
 }
 /**
  * @param object $object
  * @return $this
  * @throws UnexpectedValueException
  */
 public function fromObject($object)
 {
     parent::fromObject($object);
     return $this;
 }