def test_difference(a, b):
    aorb = fsm(alphabet={'a', 'b'}, states={0, 1, None}, initial=0, finals={1}, map={0: {'a': 1, 'b': 1}, 1: {'a': None, 'b': None}, None: {'a': None, 'b': None}})
    assert (list((a ^ a).strings()) == [])
    assert (list((b ^ b).strings()) == [])
    assert (list((a ^ b).strings()) == [['a'], ['b']])
    assert (list((aorb ^ a).strings()) == [['b']])
def test_difference(a, b):
    aorb = fsm(alphabet={'a', 'b'}, states={0, 1, None}, initial=0, finals={1}, map={0: {'a': 1, 'b': 1}, 1: {'a': None, 'b': None}, None: {'a': None, 'b': None}})
    assert (list((a ^ a).strings()) == [])
    assert (list((b ^ b).strings()) == [])
    assert (list((a ^ b).strings()) == [['a'], ['b']])
    assert (list((aorb ^ a).strings()) == [['b']])