code: def _get_share_qparams_op_configs(dtype_configs):
      """Get the operator config for the operators that works for both float and quantized input
      if input is quantized, the output Tensor shares the same quantization parameter
      with input.
      Example operator: avgpool2d, reshape, transpose, maxpool2d
      Example observed operator:
      observer_0 - avgpool2d - observer_0 (same observer instance as input)
      """
  
      def _get_share_qprams_op_backend_config(op):
          return (
              BackendPatternConfig(op)
              .set_observation_type(
                  ObservationType.OUTPUT_SHARE_OBSERVER_WITH_INPUT
              )
              .set_dtype_configs(dtype_configs)
          )
  
      share_qparams_ops = [
          torch.nn.AdaptiveAvgPool1d,
          torch.nn.AdaptiveAvgPool2d,
          torch.nn.AdaptiveAvgPool3d,
          torch.nn.AvgPool1d,
          torch.nn.AvgPool2d,
          torch.nn.AvgPool3d,
          torch.nn.Hardtanh,
          torch.nn.Identity,
          torch.nn.MaxPool1d,
          torch.nn.MaxPool2d,
          torch.nn.MaxPool3d,
          torch.nn.PixelShuffle,
          torch.nn.PixelUnshuffle,
          torch.nn.ReLU,
          torch.nn.ReLU6,
          torch.adaptive_avg_pool1d,
          torch.nn.functional.adaptive_avg_pool2d,
          torch.nn.functional.adaptive_avg_pool3d,
          torch.nn.functional.hardtanh,
          torch.nn.functional.hardtanh_,
          torch.nn.functional.interpolate,
          torch.nn.functional.max_pool1d,
          torch.nn.functional.max_pool2d,
          torch.nn.functional.max_pool3d,
          torch.nn.functional.pixel_shuffle,
          torch.nn.functional.pixel_unshuffle,
          torch.nn.functional.relu,
          torch.nn.functional.relu6,
          torch.avg_pool1d,
          torch._C._nn.avg_pool2d,
          torch._C._nn.avg_pool3d,
          torch.clamp,
          torch.flatten,
          torch.mean,
          torch.narrow,
          torch.repeat_interleave,
          torch.transpose,
          torch.squeeze,
          torch.stack,
          torch.unsqueeze,
          operator.floordiv,
          "contiguous",
          "clamp",
          "detach",
          "detach_",
          "mean",
          "permute",
          "repeat",
          "repeat_interleave",
          "reshape",
          "resize_",
          "relu",
          "relu_",
          "squeeze",
          "squeeze_",
          "transpose",
          "unsqueeze",
          "unsqueeze_",
          "view",
      ]
      return [
          _get_share_qprams_op_backend_config(op)
          for op in share_qparams_ops
      ]
  
imports: import copy
  import operator
  import torch
  import torch.nn.functional
  import torch.nn
  import torch.ao.nn.intrinsic
  import torch.ao.nn.intrinsic.qat
  import torch.ao.nn.qat
  import torch.ao.nn.quantized.reference
  from collections import namedtuple
  from typing import Callable, Dict, List, Union
  from .backend_config import BackendPatternConfig, DTypeConfig, DTypeWithConstraints, ObservationType
  from ..fuser_method_mappings import _sequential_wrapper2, fuse_conv_bn, fuse_conv_bn_relu, fuse_linear_bn, fuse_convtranspose_bn
label_desc: Use image node_id 9 for calling a global function with example usage: _get_share_qparams_op_configs(dtype_configs) and returns: unknown, BackendPatternConfig