public BigDecimal getTotalAmountSavedFromBundle(MyCart myCart) {
		
		List<BundleDiscount> bundleRules = getBundleDiscountList();
		
		if ( myCart == null || myCart.getOrderList().isEmpty() || bundleRules == null || bundleRules.isEmpty() ) return DEFAULT_TOTAL;
		
		Date today = new Date();
		BigDecimal result = new BigDecimal("0.00");
		
		BigDecimal amountDuductionForItem;
		
		for( WebShopItem item : myCart.getOrderList() ) {
			for(BundleDiscount bundleDiscount: bundleRules) {
				
				// verify bundle is matched and still available
				if ( MyCart.itemIDsMatch(item.getItemID(), bundleDiscount.getItemIDForBundle()) 
						&& today.before(bundleDiscount.getExpiredDate())) {
					
					int setOfBundle = item.getQuantity() / bundleDiscount.getQuanityPerBundle();
					if ( setOfBundle > 0 ) {
						amountDuductionForItem = bundleDiscount.getTotalDeductionPerBundle().multiply(new BigDecimal(setOfBundle));
						result = result.add(amountDuductionForItem);
					}
				}
			}
		} 
		
		return result;
		
	} // end getTotalDeductionByBundle