:param arg name
    :return: pair containing  name, comparitor

    given an argument name, munge it and return a proper comparitor

    >>> arg_comparitor("a")
    a, operator.eq

    >>> arg_comparitor("a__in")
    a, operator.contains

def arg_comparitor(name):
    """
    :param arg name
    :return: pair containing  name, comparitor

    given an argument name, munge it and return a proper comparitor

    >>> arg_comparitor("a")
    a, operator.eq

    >>> arg_comparitor("a__in")
    a, operator.contains
    """
    if name.endswith("__in"):
        return name[:-4], contains
    elif name.endswith("__ge"):
        return name[:-4], ge
    elif name.endswith("__gt"):
        return name[:-4], gt
    elif name.endswith("__le"):
        return name[:-4], le
    elif name.endswith("__lt"):
        return name[:-4], lt
    if name.endswith("__eq"):
        return name[:-4], eq
    if name.endswith("__ne"):
        return name[:-4], ne
    else:
        return name, eq