code: def __call__(self, document, sentences_count):
      ratings = defaultdict(int)
  
      if self._cue_weight > 0.0:
          method = self._build_cue_method_instance()
          ratings = self._update_ratings(
              ratings, method.rate_sentences(document)
          )
      if self._key_weight > 0.0:
          method = self._build_key_method_instance()
          ratings = self._update_ratings(
              ratings, method.rate_sentences(document)
          )
      if self._title_weight > 0.0:
          method = self._build_title_method_instance()
          ratings = self._update_ratings(
              ratings, method.rate_sentences(document)
          )
      if self._location_weight > 0.0:
          method = self._build_location_method_instance()
          ratings = self._update_ratings(
              ratings, method.rate_sentences(document)
          )
  
      return self._get_best_sentences(
          document.sentences, sentences_count, ratings
      )
  
imports: from __future__ import absolute_import
  from __future__ import division, print_function, unicode_literals
  from collections import defaultdict
  from ..nlp.stemmers import null_stemmer
  from ._summarizer import AbstractSummarizer
  from .edmundson_cue import EdmundsonCueMethod
  from .edmundson_key import EdmundsonKeyMethod
  from .edmundson_title import EdmundsonTitleMethod
  from .edmundson_location import EdmundsonLocationMethod
label_desc: Use image node_id 9 for calling the EdmundsonSummarizer obj's underlying member method code with example usage: obj.__call__(document, sentences_count) and returns: self