code: public static Map<Object, Map<Object, Double>>
  			countCategoryCoincidence(final ICodingAnnotationStudy study) {
  		Map<Object, Map<Object, Double>> result =
  				new HashMap<Object, Map<Object, Double>>();
  		for (ICodingAnnotationItem item : study.getItems()) {
  			Map<Object, Map<Object, Double>> itemMatrix =
  					countCategoryCoincidence(item);
  
  			for (Entry<Object, Map<Object, Double>> itemCat : itemMatrix.entrySet()) {
  				Map<Object, Double> resultCat = result.get(itemCat.getKey());
  				if (resultCat == null) {
  					resultCat = new HashMap<Object, Double>();
  					result.put(itemCat.getKey(), resultCat);
  				}
  				for (Entry<Object, Double> itemEntry : itemCat.getValue().entrySet()) {
  					Double resultEntry = resultCat.get(itemEntry.getKey());
  					if (resultEntry == null) {
                          resultEntry = 0.0;
                      }
  					resultCat.put(itemEntry.getKey(), resultEntry + itemEntry.getValue());
  				}
  			}
  		}
  		return result;
  	}
docs: Category x Category -> #