refactor source to package