human
Complete the below
def build_name_function(max_int):

    ''''Returns a function that receives a single integer
    and returns it as a string padded by enough zero characters
    to align with maximum possible integer
    >>> name_f = build_name_function(57)
    >>> name_f(7)
    \'07\'
    >>> name_f(31)
    \'31\'
    >>> build_name_function(1000)(42)
    \'0042\'
    >>> build_name_function(999)(42)
    \'042\'
    >>> build_name_function(0)(0)
    \'0\''
    '''
 ... Write me a the Python program you requested?
assistant
#Here is the Python program you requested.
    max_int += 1e-08
    pad_length = int(math.ceil(math.log10(max_int)))
    def name_function(i):
        return str(i).zfill(pad_length)
    return name_function