def __eq__(x, y): return classeq(x, y) and x.function==y.function and x.args==y.args
def __eq__(x, y): return classeq(x, y) and x.operator==y.operator
def __eq__(x, y): return classeq(x, y) and x.name==y.name
def __eq__(x, y): return classeq(x, y) and x.head==y.head and x.tail==y.tail
def __eq__(x, y): return classeq(x, y) and x.args==y.args
def __eq__(x, y): return classeq(x, y) and x.args == y.args
def __eq__(x, y): return classeq(x, y) and x.test==y.test and x.body==y.body
def __eq__(x, y): return classeq(x, y) and x.params==y.params and x.body==y.body
def __eq__(x, y): return classeq(x, y) and x.caller==y.caller and x.args==y.args
def __eq__(x, y): return classeq(x, y) and x.test==y.test and x.body==y.body
def __eq__(x, y): return classeq(x, y) and x.var==y.var and x.range==y.range and x.body==y.body
def __eq__(x, y): return classeq(x, y) and x.params==y.params and x.body==y.body
def __eq__(x, y): return classeq(x, y)
def __eq__(x, y): return classeq(x, y) and x.statements==y.statements
def __eq__(x, y): return classeq(x, y) and x.var==y.var and x.exp==y.exp
def __eq__(x, y): return classeq(x, y) and x.test==y.test and x.then==y.then and x.else_==y.else_
def __eq__(x, y): return classeq(x, y) and x.item==y.item
def __eq__(x, y): return classeq(x, y)
def __eq__(x, y): return classeq(x, y) and x.operator == y.operator
def __eq__(x, y): return (classeq(x, y) and x.item==y.item) or ( (isinstance(y, list) and x.item==y))