svoid dynamicObject_setRawFieldValue(DynamicObject o, O key, O value) { if (o == null) ret; // double sync, but should be OK here because of locking order o > o.fieldValues synchronized(o) { o.fieldValues = syncMapPut2_createLinkedHashMap((LinkedHashMap) o.fieldValues, key, value); } }