static void ccopyFields(Concept x, Concept y, S... fields) { if (empty(fields)) { // assume we should copy all fields for (S field : conceptFields(x)) cset(y, field, x.cget(field)); } else for (S field : fields) { O o = cset(x, field); if (o != null) cset(y, field, o); } }