/**
  * @param RequestInterface $request The request that caused the failure.
  * @param string|null $reason
  */
 public function __construct(RequestInterface $request, $reason = null)
 {
     $this->request = $request;
     parent::__construct(static::$name, $reason);
 }
 /**
  * @param ArrayObject $args The arguments that caused the failure.
  * @param string|null $reason The reason (if any) of the failure.
  */
 public function __construct(ArrayObject $args, $reason = null)
 {
     $this->args = $args;
     parent::__construct(static::$name, $reason);
 }