code: @SuppressWarnings("unchecked")
  	private void mergeMap (Map<String, Object> dest, Object source) throws YamlReaderException {
  		if (source instanceof Collection) {
  			for (Object item : ((Collection<Object>)source))
  				mergeMap(dest, item);
  		} else if (source instanceof Map) {
  			Map<String, Object> map = (Map<String, Object>)source;
  			for (Map.Entry<String, Object> entry : map.entrySet()) {
  				if (!dest.containsKey(entry.getKey())) dest.put(entry.getKey(), entry.getValue());
  
  			}
  		} else
  			throw new YamlReaderException("Expected a mapping or a sequence of mappings for a '<<' merge field but found: "
  				+ source.getClass().getSimpleName());
  
  	}
docs: see http://yaml.org/type/merge.html