improved cart with quantity