add string events to test, new tests in testsuite
fix and update traversing algorithm