public void setFormData(cape.DynamicMap data, bool preserveUnknownValues = false) { if (cape.Map.count(fieldsById) < 1) { queueData = data; } else { System.Collections.Generic.List <string> keys = cape.Map.getKeys(fieldsById); if (keys != null) { var n = 0; var m = keys.Count; for (n = 0; n < m; n++) { var key = keys[n]; if (key != null) { object value = null; if (data != null) { value = data.get(key); } setFieldData(key, value); } } } if (preserveUnknownValues && data != null) { preservedFormData = data.duplicateMap(); } } }