f.set(clone, f.get(obj)); else f.set(clone, deepClone(identityIdxs, clones, f.get(obj), honorCloneable));
Array.set(clone, i, deepClone(identityIdxs, clones, Array.get(obj, i), honorCloneable));
return !deep ? shallowClone(obj) : (T)deepClone(new GridLeanMap<Integer, Integer>(), new ArrayList<>(), obj, honorCloneable);