refactor pricing