def getBiggestArea(freePlaceValues, place=1):
    """
    Returns the biggest requested area from the freeMap.
    If place is 1, the biggest will be returned
    If place is 2, the second biggest will be returned
    Etc
    :param freePlaceValues: Whole map with free places
    :param place: x biggest area (1./2./3./...)
    :return: index of the biggest area
    """
    if freePlaceValues is None or len(freePlaceValues) > place <= 0:
        return
    maximum = max(freePlaceValues)
    newIndex = freePlaceValues.index(maximum)
    for _ in range(1, place):
        currentMax = 0
        for value in freePlaceValues:
            if maximum > value > currentMax:
                currentMax = value
                newIndex = freePlaceValues.index(value)
        maximum = currentMax
    return newIndex