




def     __SCREAMING_SNAKE_CASE      (     lowercase_					)				->		list:

    """simple docstring"""


    __UpperCamelCase     						=  len(lowercase_					)

    # Set the gap value to be decreased by a factor of 1.3
    # after each iteration
    __UpperCamelCase     						=  1.3

    # Continue sorting until the gap is 1
    while gap > 1:
        # Decrease the gap value
        __UpperCamelCase     						=  int(gap / shrink					)

        # Sort the elements using insertion sort
        for i in range(lowercase_    ,   len(lowercase_					)					):
            __UpperCamelCase     						=  collection[i]
            __UpperCamelCase     						=  i
            while j >= gap and collection[j - gap] > temp:
                __UpperCamelCase     						=  collection[j - gap]
                j -= gap
            __UpperCamelCase     						=  temp

    return collection


if __name__ == "__main__":
 import doctest

 doctest.testmod()












def     __SCREAMING_SNAKE_CASE      (     lowercase_    ,   lowercase_					)				->		int:

    """simple docstring"""


    __UpperCamelCase     						=  1.0
    for i in range(1    ,   r + 1					):
        ret *= (n + 1 - i) / i
    return round(lowercase_					)




def     __SCREAMING_SNAKE_CASE      (     lowercase_					)				->		int:

    """simple docstring"""


    return choose(8 + n    ,   lowercase_					) + choose(9 + n    ,   lowercase_					) - 10




def     __SCREAMING_SNAKE_CASE      (     lowercase_					)				->		int:

    """simple docstring"""


    return sum(non_bouncy_exact(lowercase_					) for i in range(1    ,   n + 1					)					)




def     __SCREAMING_SNAKE_CASE      (     lowercase_ = 1_00					)				->		int:

    """simple docstring"""


    return non_bouncy_upto(lowercase_					)


if __name__ == "__main__":
 print(f"""{solution() = }""")






