code: def connection_pattern(self, node):
      return [
          [True, True, False],  # x
          [True, True, True],  # dy
          [True, False, False],  # scale
          [True, True, False],  # x_mean
          [True, True, False],  # x_invstd
          [False, False, False],
      ]
  
imports: from __future__ import absolute_import, print_function, division
  import numpy
  import theano
  from theano import Apply, Op
  from theano.gof import local_optimizer
  from theano.gof.opt import copy_stack_trace
  from theano.tensor import as_tensor_variable, TensorType
  from theano.tensor import basic
  from theano.tensor.opt import register_specialize_device
  from theano.scalar import Composite, as_common_dtype
  from theano.scalar import add, sub, true_div, mul
label_desc: Use image node_id 4 for calling the AbstractBatchNormTrainGrad obj's underlying member method code with example usage: obj.connection_pattern(node) and returns: list