|  | # == operator | 
|  | assert_eq(1 == 1, True) | 
|  | assert_eq(1 == 2, False) | 
|  | assert_eq('hello' == 'hel' + 'lo', True) | 
|  | assert_eq('hello' == 'bye', False) | 
|  | assert_eq(None == None, True) | 
|  | assert_eq([1, 2] == [1, 2], True) | 
|  | assert_eq([1, 2] == [2, 1], False) | 
|  | assert_eq({'a': 1, 'b': 2} == {'b': 2, 'a': 1}, True) | 
|  | assert_eq({'a': 1, 'b': 2} == {'a': 1}, False) | 
|  | assert_eq({'a': 1, 'b': 2} == {'a': 1, 'b': 2, 'c': 3}, False) | 
|  | assert_eq({'a': 1, 'b': 2} == {'a': 1, 'b': 3}, False) | 
|  |  | 
|  | # != operator | 
|  | assert_eq(1 != 1, False) | 
|  | assert_eq(1 != 2, True) | 
|  | assert_eq('hello' != 'hel' + 'lo', False) | 
|  | assert_eq('hello' != 'bye', True) | 
|  | assert_eq([1, 2] != [1, 2], False) | 
|  | assert_eq([1, 2] != [2, 1], True) | 
|  | assert_eq({'a': 1, 'b': 2} != {'b': 2, 'a': 1}, False) | 
|  | assert_eq({'a': 1, 'b': 2} != {'a': 1}, True) | 
|  | assert_eq({'a': 1, 'b': 2} != {'a': 1, 'b': 2, 'c': 3}, True) | 
|  | assert_eq({'a': 1, 'b': 2} != {'a': 1, 'b': 3}, True); | 
|  |  | 
|  | # equality precedence | 
|  | assert_eq(1 + 3 == 2 + 2, True) | 
|  | assert_eq(not 1 == 2, True) | 
|  | assert_eq(not 1 != 2, False) | 
|  | assert_eq(2 and 3 == 3 or 1, True) | 
|  | assert_eq(2 or 3 == 3 and 1, 2); | 
|  |  | 
|  | # < operator | 
|  | assert_eq(1 <= 1, True) | 
|  | assert_eq(1 < 1, False) | 
|  | assert_eq('a' <= 'b', True) | 
|  | assert_eq('c' < 'a', False); | 
|  |  | 
|  | # <= and < operators | 
|  | assert_eq(1 <= 1, True) | 
|  | assert_eq(1 < 1, False) | 
|  | assert_eq('a' <= 'b', True) | 
|  | assert_eq('c' < 'a', False); | 
|  |  | 
|  | # >= and > operators | 
|  | assert_eq(1 >= 1, True) | 
|  | assert_eq(1 > 1, False) | 
|  | assert_eq('a' >= 'b', False) | 
|  | assert_eq('c' > 'a', True); | 
|  |  | 
|  | # list/tuple comparison | 
|  | assert_eq([] < [1], True) | 
|  | assert_eq([1] < [1, 1], True) | 
|  | assert_eq([1, 1] < [1, 2], True) | 
|  | assert_eq([1, 2] < [1, 2, 3], True) | 
|  | assert_eq([1, 2, 3] <= [1, 2, 3], True) | 
|  |  | 
|  | assert_eq(['a', 'b'] > ['a'], True) | 
|  | assert_eq(['a', 'b'] >= ['a'], True) | 
|  | assert_eq(['a', 'b'] < ['a'], False) | 
|  | assert_eq(['a', 'b'] <= ['a'], False) | 
|  |  | 
|  | assert_eq(('a', 'b') > ('a', 'b'), False) | 
|  | assert_eq(('a', 'b') >= ('a', 'b'), True) | 
|  | assert_eq(('a', 'b') < ('a', 'b'), False) | 
|  | assert_eq(('a', 'b') <= ('a', 'b'), True) | 
|  |  | 
|  | assert_eq([[1, 1]] > [[1, 1], []], False) | 
|  | assert_eq([[1, 1]] < [[1, 1], []], True) |