refactor basket
refactoring user