walker size is no more static --> supporting dynamic walker sizes
code refactoring