Converts CamelCase to snake_case.

    Args:
        name (string): The name to convert from CamelCase to snake_case.

    Returns:
        string: Converted string.

def camel_to_snake(name):
    """Converts CamelCase to snake_case.

    Args:
        name (string): The name to convert from CamelCase to snake_case.

    Returns:
        string: Converted string.
    """
    s1 = re.sub("(.)([A-Z][a-z]+)", r"\1_\2", name)
    return re.sub("([a-z0-9])([A-Z])", r"\1_\2", s1).lower()