protected function unpack(array $definition) : input\Argument
    {
        // If the 4th argument is an integer, we are going to assume it's one of the input\Value
        // class constants defining the mode and attempt to instantiate a input\Value with such.
        if (isset($definition[2]) && is_int($definition[2])) {
            $definition[2] = new input\Value($definition[2]);
        }

        return new input\Argument(...$definition);
    }