refining Apply()