def get_overflow(sample: dict, obj: dict, all_sub=False) -> list:
    """Returns a list of all fields which exist in obj, but not in sample."""
    fields = []
    if hasattr(obj, "__iter__"):
        for field in obj:
            if field not in sample:
                fields.append(field)
            else:
                if all_sub and type(obj[field]) == dict:
                    fs = get_overflow(sample[field]["embedded_dict"], obj[field], all_sub)
                    fields.extend(fs)
        return fields
    else:
        return []