refactor button ns