for (int count = 0; count < children.length; ++count) {
final Struct child = structsMap.get(children[count]);
if (struct == null) {
throw new IllegalArgumentException("Child struct [" + children[count] + "]" +
" not defined for copy to owner struct [" + owner.name + "].");
<BUG>}
try {
owner.clazz.asSubclass(child.clazz);
} catch (final ClassCastException exception) {</BUG>
throw new ClassCastException("Child struct [" + child.name + "]" +

for (int count = 0; count < children.length; ++count) {
final Struct child = structsMap.get(children[count]);
if (struct == null) {
throw new IllegalArgumentException("Child struct [" + children[count] + "]" +
" not defined for copy to owner struct [" + owner.name + "].");
}
if (!child.clazz.isAssignableFrom(owner.clazz)) {
throw new ClassCastException("Child struct [" + child.name + "]" +
