throwing NotEnoughGoodsException in the correct location