code: def _get_conv_bn_pattern(conv_fn: Callable) -> Callable:
      def _conv_bn_pattern(
          x: torch.Tensor,
          conv_weight: torch.Tensor,
          conv_bias: torch.Tensor,
          bn_weight: torch.Tensor,
          bn_bias: torch.Tensor,
          bn_running_mean: torch.Tensor,
          bn_running_var: torch.Tensor,
      ) -> torch.Tensor:
          x = conv_fn(x, conv_weight, conv_bias)
          x = F.batch_norm(
              x,
              bn_running_mean,
              bn_running_var,
              bn_weight,
              bn_bias,
              training=True,
          )
          return x
  
      return _conv_bn_pattern
  
imports: import dataclasses
  import itertools
  import operator
  from typing import Any, Callable, Dict, List, Tuple, TYPE_CHECKING
  import torch
  from torch.fx import Graph, GraphModule, Node
  from torch.fx.subgraph_rewriter import replace_pattern_with_filters, ReplacedPatterns
  import torch.nn.functional
  from torch.ao.quantization.fx._decomposed import quantized_decomposed_lib
  from torch.ao.quantization.quantizer import DerivedQuantizationSpec, EdgeOrNode, SharedQuantizationSpec, QuantizationSpecBase
  from .utils import _conv1d_bn_example_inputs, _conv2d_bn_example_inputs, _is_conv, _is_bn_node, fold_bn_weights_into_conv_node, get_aten_graph_module
label_desc: Use image node_id 2 for calling a global function with example usage: _get_conv_bn_pattern(conv_fn) and returns: _conv_bn_pattern, x