protected function getValueType($v = null): string
    {
        if (\is_scalar($v) || \is_array($v)) {
            return (string) \gettype($v);
        }
        if (\is_object($v)) {
            return 'an instance of ' . \get_class($v);
        }
        return (string) \var_export($v, true);
    }