def details_changed(prev_details, new_details):
    """
    Checks if at least one of the main details from a subscriptions
        has changed.

    Arguments:
        prev_details - previous details of a subscription
        new_details - new details of a subscription
    Returns:
        changed - True/False
    """

    changed = False

    if (
        (prev_details.handout_status != new_details.handout_status)
        or (prev_details.subscription_name != new_details.subscription_name)
        or (
            prev_details.subscription_status != new_details.subscription_status
        )
        or (
            prev_details.subscription_expiry_date
            != new_details.subscription_expiry_date
        )
        or (prev_details.handout_budget != new_details.handout_budget)
        or (prev_details.subscription_users != new_details.subscription_users)
    ):

        changed = True

    return changed