do the same thing.. so refactor