code: def call(
      self, x: tf.Tensor
  ) -> Tuple[tf.Tensor, tf.Tensor, tf.Tensor]:
      x = self.encoder_net(x)
      if len(x.shape) > 2:
          x = Flatten()(x)
      z_mean = self.fc_mean(x)
      z_log_var = self.fc_log_var(x)
      z = self.sampling((z_mean, z_log_var))
      return z_mean, z_log_var, z
  
imports: import numpy
  import tensorflow
  from tensorflow.keras.layers import Bidirectional, Concatenate, Dense, Flatten, Layer, LSTM
  from typing import Callable, List, Tuple
  from alibi_detect.utils.tensorflow.distance import relative_euclidean_distance
label_desc: Use image node_id 2 for calling the EncoderVAE obj's underlying member method code with example usage: obj.call(x) and returns: z_mean,  z_log_var,  z