refactors and updates