def METHOD_NAME(self, kernel_shape, strides, padding, dilation, activation):
    """Returns tf.function that creates TFLite Conv2d layer"""
    @tf.function
    def conv2d_single_function(ifm_tensor):
        """Returns TFLite Conv2d layer"""
        op = tf.nn.conv2d(
            ifm_tensor,
            filters=tf.constant(
                np.random.uniform(size=[kernel_shape[0], kernel_shape[1], 3, 3]),
                dtype=tf.float32,
            ),
            strides=[1, strides[0], strides[1], 1],
            padding=padding,
            dilations=dilation,
        )
        if activation == "RELU":
            op = tf.nn.relu(op)
        elif activation == "NONE":
            pass
        else:
            assert False, f"Unsupported activation {activation}"
        return op
    return conv2d_single_function