def _get_new_watermark_size(self, size, mark_default_size):
        """
        New size can be passed as a pair of valuer (tuple) or
        a fsloat (persentage case)
        """
        if hasattr(size, "__getitem__"):
            # a tuple or any iterable already
            mark_size = size
        elif isinstance(size, float):
            mark_size = map(lambda coord: int(coord * size), mark_default_size)
        else:
            raise ImproperlyConfigured(
                "Watermark sizes must be a pair " "of integers or a float number"
            )
        return mark_size