public void serialize(LittleEndianOutput out) {out.writeShort(field_1_xf_index);if (isBuiltin()) {out.writeByte(field_2_builtin_style);out.writeByte(field_3_outline_style_level);} else {out.writeShort(field_4_name.length());out.writeByte(field_3_stringHasMultibyte ? 0x01 : 0x00);if (field_3_stringHasMultibyte) {StringUtil.putUnicodeLE(getName(), out);} else {StringUtil.putCompressedUnicode(getName(), out);}}}

public override void Serialize(ILittleEndianOutput o){o.WriteShort(field_1_xf_index);if (IsBuiltin){o.WriteByte(field_2_builtin_style);o.WriteByte(field_3_outline_style_level);}else{o.WriteShort(field_4_name.Length);o.WriteByte(field_3_stringHasMultibyte ? 0x01 : 0x00);if (field_3_stringHasMultibyte){StringUtil.PutUnicodeLE(Name, o);}else{StringUtil.PutCompressedUnicode(Name, o);}}}
