```python
def glob_path(pattern: str, path: str) -> bool:
    if not isinstance(pattern, str):
        raise ValueError("Pattern must not be a non-string")
    if not isinstance(path, str):
        raise ValueError("Path must not be a non-string")
    if not pattern:
        raise ValueError("Pattern must not be an empty string")
    if not path:
        raise ValueError("Path must not be an empty string")

    if pattern == path:
        return True

    if pattern == '**':
        return path == path

    if pattern == '*':
        return path == path

    if pattern == '?':
        return path == path

    if pattern == '*?':
        return path == path

    if pattern == '*.*':
        return path == path

    if pattern == '*.*?':
        return path == path

    if pattern == '*.*.*':
        return path == path

    if pattern == '*.*.*?':
        return path == path

    if pattern == '*.*.*.*':
        return path == path

    if pattern == '*.*.*.*?':
        return path == path

    if pattern == '*.*.*.*.*':
        return path == path

    if path == '*.*.*.*.*':
        return path == path

    if path == '*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*':
        return path == path

    if path == '*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*.*?':
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*.*.*.*?:
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*.*.*.*.*?:
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*.*.*.*.*.*?:
        return path == path

    if path == '*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*.*?:
        return path == path

    if = False
    for i in path.split('/'):
        if = False
        for char in pattern:
            if = False
            if char == '*':
                continue
            elif char == '?':
                if
            elif char == '.':
                continue
            elif char == '/':
                if.append(file)
                break
            elif char == '*?':
                if file.endswith('*'):
                    files.append(file)
                elif file.endswith('*?'):
                    files.append(file)
                elif file.endswith('*.*'):
                    files.append(file)
                elif file.endswith('*.*?'):
                    files.append(file)
                elif file.endswith('*.*.*'):
                    files.append(file)
                elif file.endswith('*.*.*?'):
                    files