def normalize_shape(shape):
    """
    This function ensure that the given shape will be easily convertible
    in a c++ callback (ie that it won't interfere badly in pybind11
    overload resolution algorithm)

    :example:

        >>> normalize_shape([4, 5])
        (4, 5)

    :param shape: an iterable of integers
    :return: the equivalent normalized shape
    """
    return tuple(int(i) for i in shape)