refactor to use sliding tabs