code: public void addDict(int cp, int label, int count) {
  	Element elem = (Element)dict.get(new Integer(cp));
  	
  	if (elem == null) {
  	    // if the context predicate is not found
  	    elem = new Element();
  	    elem.count = count;
  	    
  	    CountFIdx cntFIdx = new CountFIdx(count, -1);
  	    elem.lbCntFidxes.put(new Integer(label), cntFIdx);
  	    
  	    // insert the new element to the dict
  	    dict.put(new Integer(cp), elem);
  	    
  	} else {
  	    // update the total count
  	    elem.count += count;
  	    
  	    CountFIdx cntFIdx = (CountFIdx)elem.lbCntFidxes.get(new Integer(label));
  	    if (cntFIdx == null) {
  		// the label not found
  		cntFIdx = new CountFIdx(count, -1);
  		elem.lbCntFidxes.put(new Integer(label), cntFIdx);
  		
  	    } else {
  		// if label found, update the count only
  		cntFIdx.count += count;
  	    }
  	}
      }
docs: Adds the dict.
  
  @param cp the cp
  @param label the label
  @param count the count