refactored v1 and working