code: def create_node_from_old_node_preserve_meta(
      quantized_graph: Graph,
      create_node_args: Tuple[Any, ...],
      old_node: Node,
  ) -> Node:
      """
      Creates `new_node` and copies the necessary metadata to it from `old_node`.
      """
      new_node = quantized_graph.create_node(*create_node_args)
      new_node.stack_trace = old_node.stack_trace
      return new_node
  
imports: import copy
  import torch
  import torch.nn
  from torch.ao.quantization import QConfigAny, QuantType
  from torch.ao.quantization.backend_config import DTypeWithConstraints
  from torch.ao.quantization.fake_quantize import FakeQuantizeBase, FixedQParamsFakeQuantize
  from torch.ao.quantization.observer import FixedQParamsObserver, ObserverBase
  from torch.ao.quantization.qconfig import float16_static_qconfig, float16_dynamic_qconfig, qconfig_equals
  from torch.ao.quantization.stubs import DeQuantStub
  from torch.ao.quantization.utils import activation_is_statically_quantized
  from torch.ao.quantization.observer import _is_activation_post_process
  from torch.ao.quantization.qconfig_mapping import QConfigMapping
  from torch.fx import GraphModule, map_arg
  from torch.fx.graph import Graph, Node
  from .custom_config import PrepareCustomConfig
  from ._decomposed import quantized_decomposed_lib
  from typing import Callable, Optional, List, Dict, Any, Set, Tuple, Union, Type
  from dataclasses import dataclass
  from collections import namedtuple
  import operator
  import warnings
label_desc: Use image node_id 16 for calling a global function with example usage: create_node_from_old_node_preserve_meta(quantized_graph, create_node_args, old_node) and returns: new_node