refactring resut