def METHOD_NAME(
    cls,
    scheme: str = "",
    netloc: str = "",
    path: str = "",
    fragment: str = "",
    query: str = "",
) -> URL:
    """Create a new URL from components.
    Args:
        scheme: URL scheme
        netloc: Network location
        path: Hierarchical path
        query: Query component
        fragment: Fragment identifier
    Returns:
        A new URL with the given components
    """
    return cls(  # type: ignore[no-any-return]
        SplitResult(
            scheme=scheme,
            netloc=netloc,
            path=path,
            fragment=fragment,
            query=query,
        )
    )