code: def __Fire(
      original_fn,
      component,
      args_,
      parsed_flag_args,
      context,
      name,
      *args,
      **kwargs,
  ):  # noqa
      if not running_remotely():
          return original_fn(
              component,
              args_,
              parsed_flag_args,
              context,
              name,
              *args,
              **kwargs,
          )
      command = PatchFire._load_task_params()
      if command is not None:
          replaced_args = command.split(PatchFire._commands_sep)
      else:
          replaced_args = []
      for param in PatchFire.__remote_task_params[
          PatchFire._section_name
      ].values():
          if (
              command is not None
              and param.type
              == PatchFire._command_arg_type_template % command
          ):
              replaced_args.append(
                  "--"
                  + param.name[len(command + PatchFire._args_sep) :]
              )
              value = PatchFire.__remote_task_params_dict[param.name]
              if len(value) > 0:
                  replaced_args.append(value)
          if param.type == PatchFire._shared_arg_type:
              replaced_args.append("--" + param.name)
              value = PatchFire.__remote_task_params_dict[param.name]
              if len(value) > 0:
                  replaced_args.append(value)
      return original_fn(
          component,
          replaced_args,
          parsed_flag_args,
          context,
          name,
          *args,
          **kwargs,
      )
  
imports: import inspect
  from .frameworks import _patched_call
  from ..config import get_remote_task_id, running_remotely
  from ..utilities.dicts import cast_str_to_bool
label_desc: Use image node_id 3 for calling the PatchFire obj's underlying member method code with example usage: obj.__Fire(original_fn, component, args_, parsed_flag_args, context, name) and returns: original_fn, original_fn