initial commit for refactor