'!':  LHS = RHS + equal(LHS,RHS) * e

xLHS = []
xRHS = []
for constraint in constraints:
    if comparator(constraint):
        split = constraint.split('!=')
        xLHS.append(split[0].rstrip('=').strip())
        xRHS.append(split[-1].lstrip('=').strip())

'>': if LHS not in xLHS and LHS 'not in' xRHS: LHS = max(RHS + e, LHS)
     else: LHS = max(RHS + e, LHS + e)
'<': if LHS not in xLHS and LHS 'not in' xRHS: LHS = min(RHS - e, LHS)
     else: LHS = min(RHS - e, LHS - e)
'=': if LHS not in xLHS and LHS 'not in' xRHS:  LHS = RHS
     else: ValueError('conflicting constraints yield no solution')
'!': if LHS not in xLHS and LHS 'not in' xRHS:  LHS = RHS + equal(LHS,RHS)*e*i
     else: i += 1; ...then REPEAT tHE ABOVE

