code: def values(self, predicate=None):
          
          if predicate:
              predicate_data = self._to_data(predicate)
              return self._encode_invoke(map_values_with_predicate_codec, predicate=predicate_data)
          else:
              return self._encode_invoke(map_values_codec)
docs: Returns a list clone of the values contained in this map or values of the entries which are filtered with
          the predicate if provided.
  
          **Warning:
          The list is NOT backed by the map, so changes to the map are NOT reflected in the list, and
          vice-versa.**
  
          :param predicate: (Predicate), predicate to filter the entries (optional).
          :return: (Sequence), a list of clone of the values contained in this map.
  
          .. seealso:: :class:`~hazelcast.serialization.predicate.Predicate` for more info about predicates.