// write discriminator
TypeCodeImpl disc = (TypeCodeImpl) tc.discriminator_type();
write(eout, disc, map);
int index = tc.default_index();
eout.write_long(index);
eout.write_ulong(tc.member_count());
for (int i = 0; i < tc.member_count(); i++) {
if (i == index) {