/**
  * @param object $object
  * @return $this
  * @throws UnexpectedValueException
  */
 public function fromObject($object)
 {
     parent::fromObject($object);
     if (property_exists($object, 'isAuthorized')) {
         $this->isAuthorized = $object->isAuthorized;
     }
     if (property_exists($object, 'isRefundable')) {
         $this->isRefundable = $object->isRefundable;
     }
     return $this;
 }
 /**
  * @param object $object
  * @return $this
  * @throws UnexpectedValueException
  */
 public function fromObject($object)
 {
     parent::fromObject($object);
     if (property_exists($object, 'payoutOutput')) {
         if (!is_object($object->payoutOutput)) {
             throw new UnexpectedValueException('value \'' . print_r($object->payoutOutput, true) . '\' is not an object');
         }
         $value = new OrderOutput();
         $this->payoutOutput = $value->fromObject($object->payoutOutput);
     }
     if (property_exists($object, 'status')) {
         $this->status = $object->status;
     }
     if (property_exists($object, 'statusOutput')) {
         if (!is_object($object->statusOutput)) {
             throw new UnexpectedValueException('value \'' . print_r($object->statusOutput, true) . '\' is not an object');
         }
         $value = new OrderStatusOutput();
         $this->statusOutput = $value->fromObject($object->statusOutput);
     }
     return $this;
 }