clean code, also reduce stack frame by 1