code: public static void deepCopy(Collection<?> c, Arr tarr) {
  		for (Object v : c) {
  			if (v == null) {
  				tarr.add(null);
  			} else if (v instanceof Map<?, ?>) {
  				Obj tobj = tarr.addObj();
  				deepCopy((Map<?, ?>) v, tobj);
  			} else if (v instanceof Collection<?>) {
  				Arr a = tarr.addArr();
  				deepCopy((Collection<?>) v, a);
  			} else {
  				tarr.add(v);
  			}
  		}
  	}
docs: private