button refinement