public static function itIsNotConsideredValid(
        MapsProperty $property,
        $value
    ): Throwable {
        if (is_object($value)) {
            return new self(sprintf(
                'Cannot assign the `%s` to property `%s`: ' .
                'The value did not satisfy the specifications.',
                get_class($value),
                $property->name()
            ));
        }
        return new self(sprintf(
            'Cannot assign `%s` to property `%s`: ' .
            'The value did not satisfy the specifications.',
            $value,
            $property->name()
        ));
    }