code: def build_network(self, input_shape, **kwargs):
      """Construct a network and return its input and output layers.
  
      Parameters
      ----------
      input_shape : tuple
          The shape of the data fed into the input layer
  
      Returns
      -------
      input_layers : keras layers
      output_layer : a keras layer
      """
      from tensorflow import keras
  
      from sktime.networks.lstmfcn_layers import make_attention_lstm
  
      input_layer = keras.layers.Input(shape=input_shape)
  
      x = keras.layers.Permute((2, 1))(input_layer)
  
      if self.attention:
          AttentionLSTM = make_attention_lstm()
          x = AttentionLSTM(self.lstm_size)(x)
      else:
          x = keras.layers.LSTM(self.lstm_size)(x)
  
      x = keras.layers.Dropout(self.dropout)(x)
  
      y = keras.layers.Conv1D(
          self.filter_sizes[0],
          self.kernel_sizes[0],
          padding="same",
          kernel_initializer="he_uniform",
      )(input_layer)
      y = keras.layers.BatchNormalization()(y)
      y = keras.layers.Activation("relu")(y)
  
      y = keras.layers.Conv1D(
          self.filter_sizes[1],
          self.kernel_sizes[1],
          padding="same",
          kernel_initializer="he_uniform",
      )(y)
      y = keras.layers.BatchNormalization()(y)
      y = keras.layers.Activation("relu")(y)
  
      y = keras.layers.Conv1D(
          self.filter_sizes[2],
          self.kernel_sizes[2],
          padding="same",
          kernel_initializer="he_uniform",
      )(y)
      y = keras.layers.BatchNormalization()(y)
      y = keras.layers.Activation("relu")(y)
  
      y = keras.layers.GlobalAveragePooling1D()(y)
  
      output_layer = keras.layers.concatenate([x, y])
  
      return input_layer, output_layer
  
imports: from sktime.networks.base import BaseDeepNetwork
label_desc: Use image node_id 2 for calling the LSTMFCNNetwork obj's underlying member method code with example usage: obj.build_network(input_shape) and returns: input_layer,  output_layer