class_docstr: main model 
class_docstr_tok: ["main","model"]
code: def call(self, features):
      x = features["inputs"]
      x = self.cnn1(x)
      x = self.tanh_sig(x)
      x = self.cnn2(x)
      x = self.tanh_sig(x)
      x = self.cnn3(x)
      x1 = self.tanh_sig(x)
  
      x2 = self.reshape(x1)
  
      x3 = self.cnn4(x2)
      x3 = tf.nn.relu(x3)
      x3 = self.cnn5(x2)
      x3 = tf.nn.relu(x3)
      x3 += x2
  
      x4 = self.cnn6(x2)
      x4 = tf.nn.relu(x4)
      x4 += x2
  
      x5 = x3 + x4
      x6 = self.cnn7(x5)
      x6 = tf.nn.relu(x6)
      x6 = self.reshape2(x6)
  
      x6 = self.nn1(x6)
      x6 = tf.nn.relu(x6)
      x7 = self.reshape3(x6)
  
      x8 = self.max_pool(x7)
      logits = self.nn2(x8)
      return logits
  
imports: import numpy
  from absl import logging
  import delta.compat
  from tensorflow.python.keras import backend
  from delta.models.base_model import Model
  from delta.layers.base_layer import Layer
  from delta import utils
  from delta.utils.register import registers
label_desc: Use image node_id 3 for calling the EmoCFNNModel obj's underlying member method code with example usage: obj.call(features) and returns: logits