def cart_get(self, CartId=None, HMAC=None, **kwargs):
        """CartGet fetches existing cart
        :param CartId: see CartCreate
        :param HMAC: see CartCreate
        :return: An :class:`~.AmazonCart`.
        """
        if not CartId or not HMAC:
            raise CartException('CartId required for CartGet call')
        response = self.api.CartGet(CartId=CartId, HMAC=HMAC, **kwargs)
        root = objectify.fromstring(response)

        cart = AmazonCart(root)
        self._check_for_cart_error(cart)

        return cart