class_docstr: A string that represents a path relative to an artifact or run.
  
  The format of the string is always as a POSIX path, e.g. "foo/bar.txt".
  
  A neat trick is that you can use this class as if it were a PurePosixPath. E.g.:
  ```
  >>> path = LogicalPath("foo/bar.txt")
  >>> path.parts
  ('foo', 'bar.txt')
  >>> path.parent / "baz.txt"
  'foo/baz.txt'
  >>> type(path.relative_to("foo"))
  LogicalPath
  ```
code: def __new__(cls, path: StrPath) -> "LogicalPath":
      if isinstance(path, LogicalPath):
          return super().__new__(cls, path)
      if hasattr(path, "as_posix"):
          path = PurePosixPath(path.as_posix())
          return super().__new__(cls, str(path))
      if hasattr(path, "__fspath__"):
          path = path.__fspath__()  # Can be str or bytes.
      if isinstance(path, bytes):
          path = os.fsdecode(path)
      # For historical reasons we have to convert backslashes to forward slashes, but
      # only on Windows, and need to do it before any pathlib operations.
      if platform.system() == "Windows":
          path = path.replace("\\", "/")
      # This weird contortion and the one above are because in some unusual cases
      # PurePosixPath(path.as_posix()).as_posix() != path.as_posix().
      path = PurePath(path).as_posix()
      return super().__new__(cls, str(PurePosixPath(path)))
  
file_path: wandb/wandb/sdk/lib/paths.py
imports: import os
  import platform
  from functools import wraps
  from pathlib import PurePath, PurePosixPath
  from typing import Any, NewType, Union
label_desc: Use image node_id 1 for calling the LogicalPath obj's underlying member method code with example usage: obj.__new__(cls, path) and returns: super, super, super