refactor Quote model