Rebound bottom wall; internal refactor; fix bug wall zero