<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def append_with_data(url, data):
 """Append the given URL with the given data OrderedDict. Args: url (str):
 The URL to append. data (obj):
 The key value OrderedDict to append to the URL. Returns: str: The new URL. """


        if data is None:
            return url

        url_parts = list(urlparse(url))

        query = OrderedDict(parse_qsl(url_parts[4], keep_blank_values=True))
        query.update(data)

        url_parts[4] = URLHelper.query_dict_to_string(query)

        return urlunparse(url_parts)