begin refactor for php