code: def _is_arg_with_complex_dtype(arg: fx_type_utils.Argument) -> bool:
      """Check if the node has complex dtype recursively."""
      if (
          isinstance(arg, torch.fx.Node)
          and "val" in arg.meta
          and isinstance(arg.meta["val"], torch.Tensor)
          and torch.is_complex(arg.meta["val"])
      ):
          return True
      elif isinstance(arg, list):
          for item in arg:
              return _is_arg_with_complex_dtype(item)
      return False
  
imports: from __future__ import annotations
  import logging
  import operator
  import types
  from typing import Any, Callable, Dict, List, Optional, Sequence, Set, Tuple, TYPE_CHECKING, Union
  import torch
  import torch._ops
  import torch.fx
  from torch.onnx._internal import _beartype
  from torch.onnx._internal.fx import diagnostics, registration, type_utils
  from onnxscript.function_libs.torch_lib import graph_building
label_desc: Use image node_id 3 for calling a global function with example usage: _is_arg_with_complex_dtype(arg) and returns: False, True, _is_arg_with_complex_dtype