class_docstr: FPN cells.
code: def call(self, feats, training):
      for cell in self.cells:
          cell_feats = cell(feats, training)
          min_level = self.config.min_level
          max_level = self.config.max_level
  
          feats = []
          for level in range(min_level, max_level + 1):
              for i, fnode in enumerate(
                  reversed(self.fpn_config.nodes)
              ):
                  if fnode["feat_level"] == level:
                      feats.append(cell_feats[-1 - i])
                      break
  
      return feats
  
imports: import functools
  from absl import logging
  import numpy
  import tensorflow
  import utils
  from .None import fpn_configs
label_desc: Use image node_id 2 for calling the FPNCells obj's underlying member method code with example usage: obj.call(feats, training) and returns: feats