def queryparse(query, evaluator=lambda x: x):
    q = URLQuery()
    parts = query.split("&")
    for part in parts:
        if part:
            try:
                l, r = part.split("=", 1)
            except __HOLE__:
                l, r = part, ""
            key = unquote_plus(l)
            val = evaluator(unquote_plus(r))
            q[key] = val
    return q

# URL queries can have names repeated
# This is a dictionary that manages multiple values in a list.
# getting the string value is urlencoded form.
dataset/ETHPy150Open kdart/pycopia/aid/pycopia/urlparse.py/queryparse