def _dictDeUnderscore(d):
    """Takes a dict, and renames all keys that start with an '_' to not contain that
    anymore. This is done because some keys are illegal as kwargs (notably
    'with' and '3d'), so the user passes in '_with' and '_3d', which ARE legal

    """
    d2 = {}
    for key in d:
        if isinstance(key, (str, bytes)) and key[0] == '_':
            d2[key[1:]] = d[key]
        else:
            d2[key] = d[key]
    return d2
