@SuppressWarnings("unchecked") static Map<String, Object> addBranches( final Map<String, Object> dst, final Map<String, Object> src ) { src.forEach( (k, v) -> { if(v instanceof Map) { final Object dstNode = dst.get(k); if(dstNode instanceof Map) { addBranches((Map<String, Object>) dstNode, (Map<String, Object>) v); } else { dst.put(k, v); } } else { dst.put(k, v); } } ); return dst; }