class DayImpression implements Serializable {

    public long countImpressions(double price, TargetingChannel.PriceModel priceModel)
    {
        long result = 0;
        if (price == BookingService.HIGH_PRICE)
        {
            for (Impression h : hours)
            {
                result += h.getTotal();
            }
        }
        else
        {
            int priceCategory = CommonUtil.determinePriceCat(price, priceModel);
            for (Impression h : hours)
            {
                long t = h.getCountByPriceCategory(priceCategory);
                result += t;
            }
        }
        LOGGER.debug("impressions={}", result);
        return result;
    }

    public  DayImpression(String date, List<Impression> hours);
    public  DayImpression();
    public  DayImpression(Double[] dayCounts);
    public  DayImpression(Object hoursMap);

}