} else if (fieldValue instanceof Set<?>) {
iCloned._fieldValues.put(iEntry.getKey(), new HashSet<Object>((Set<Object>) fieldValue));
// MAPS
} else if (fieldValue instanceof ORecordLazyMap) {
final ORecordLazyMap newMap = new ORecordLazyMap(iCloned, ((ORecordLazyMap) fieldValue).getRecordType());
newMap.putAll((ORecordLazyMap) fieldValue);
iCloned._fieldValues.put(iEntry.getKey(), newMap);
} else if (fieldValue instanceof OTrackedMap) {
final OTrackedMap<Object> newMap = new OTrackedMap<Object>(iCloned);
newMap.putAll((OTrackedMap<Object>) fieldValue);
iCloned._fieldValues.put(iEntry.getKey(), newMap);
} else if (fieldValue instanceof Map<?, ?>) {
iCloned._fieldValues.put(iEntry.getKey(), new LinkedHashMap<String, Object>((Map<String, Object>) fieldValue));
} else