code: def setUp(self):
      # swap axes for tensorflow
      self.input_layer = layers.Input(batch_shape=(None, 4, 4, 2))
      # tensorflow, shockingly, does not flip the weights of a conv
      self.w1 = (
          np.arange(8).reshape(2, 2, 2)[:, ::1, ::1].astype("float32")
      )
      self.w2 = (
          -np.arange(8).reshape(2, 2, 2)[:, ::1, ::1].astype("float32")
      )
      self.conv_W = (
          np.array([self.w1, self.w2])
          .transpose(2, 3, 1, 0)
          .astype("float32")
      )
      self.conv_b = np.array([-1.0, 1.0]).astype("float32")
  
imports: from __future__ import division
  from __future__ import print_function
  from __future__ import absolute_import
  import unittest
  from unittest import skip
  import sys
  import os
  import numpy
  import deeplift.layers
  from deeplift.layers import DenseMxtsMode
  from deeplift.layers.convolutional import PoolMode, PaddingMode
  from deeplift.util import compile_func
  import itertools
label_desc: Use image node_id 1 for calling the TestConv obj's underlying member method code with example usage: obj.setUp() without return types