* @throws SWFParserException Thrown if parsing the tag failed.
*/
public static DefineMorphShape2Tag parse(final RecordHeader header, final SWFBinaryParser parser) throws SWFParserException {
final UINT16 characterId = parseUINT16(parser, 0x00006, "DefineMorphShape2::CharacterId");
final Rect startBounds = RectParser.parse(parser, "DefineMorphShape2::StartBounds");
final Rect endBounds = RectParser.parse(parser, "DefineMorphShape2::EndBounds");
final Rect startEdgeBounds = RectParser.parse(parser, "DefineMorphShape2::StartEdgeBounds");
final Rect endEdgeBounds = RectParser.parse(parser, "DefineMorphShape2::EndEdgeBounds");
final UBits reserved = parseUBits(parser, 6, 0x00006, "DefineMorphShape::Reserved");
final Flag useNonScalingStrokes = parseFlag(parser, 0x00006, "DefineMorphShape2::UseNonScalingStrokes");
final Flag useScalingStrokes = parseFlag(parser, 0x00006, "DefineMorphShape2::UseScalingStrokes");
final UINT32 offset = parseUINT32(parser, 0x00006, "DefineMorphShape2::Offset");
final MorphFillStyleArray morphFillStyles = MorphFillStyleArrayParser.parse(parser, "DefineMorphShape::MorphFillStyleArray");