code: def max(self, key=None):
          
  
          def _max(result, item):
              val = data_get(item, key)
  
              if result is None or val > result:
                  return value
  
              return result
  
          return self.reduce(_max)
docs: Get the max value of a given key.
  
          :param key: The key
          :type key: str or None
  
          :rtype: mixed