make walker api a bit more consistent