def METHOD_NAME(df: pd.DataFrame) -> pd.DataFrame:
    id_vars = ["country", "year"]
    var_name = "chemical"
    value_name = "consumption"
    # Add data for the World
    df_world = df.groupby(["year", "chemical"], as_index=False)[[value_name]].sum().assign(country="World")
    df = pd.concat([df, df_world], ignore_index=True)
    # Pivot
    df_pivot = df.pivot(index=id_vars, columns=[var_name], values=value_name).reset_index()
    # Add continent data
    regions = ["Asia", "Africa", "North America", "South America", "Oceania"]
    for region in regions:
        df_pivot = add_region_aggregates(df_pivot, region=region)
    # Unpivot back
    df = df_pivot.melt(id_vars=id_vars, var_name=var_name, value_name=value_name).dropna(subset=[value_name])
    # Add EU28 data
    df = add_eu28(df)
    # Add Europe data
    df = add_europe(df)
    return df