better do handling in walk