add discount logic