code: def call(self, inputs):
      if self.data_mode == "disjoint":
          X = inputs[0]
          I = inputs[1]
          if K.ndim(I) == 2:
              I = I[:, 0]
      else:
          X = inputs
  
      if self.data_mode == "disjoint":
          return self.pooling_op(X, I)
      else:
          return self.batch_pooling_op(
              X, axis=-2, keepdims=(self.data_mode == "single")
          )
  
imports: import tensorflow
  from tensorflow.keras import backend
  from tensorflow.keras import constraints, initializers, regularizers
  from tensorflow.keras.layers import Dense, Layer
  from spektral.layers import ops
label_desc: Use image node_id 3 for calling the GlobalPool obj's underlying member method code with example usage: obj.call(inputs) and returns: self, self