def METHOD_NAME(x, i):
    """ Return header format string for datatype x
    """
    if isinstance(x, str):
        return '{'+str(i)+':>20}'
    elif isinstance(x, int):
        return '{'+str(i)+':>8}'
    elif isinstance(x, Real):
        return '{'+str(i)+':>20}'
    else:
        # Is this something we need to iterate over?
        try:
            return [ METHOD_NAME(k,i+j) for j, k in enumerate(x) ]
        except:
            return '{'+str(i)+':>20}'