code: func NewV4EventParserMap() V4EventParserMap {
  	m := &v4EventParserMap{
  		extraHeadersSize: nonFDEExtraHeadersSize,
  		checksumSize:     0,
  		parsers:          make(map[mysql_proto.LogEventType_Type]V4EventParser),
  	}
  
  	// TODO(patrick): implement parsers
  	m.set(&FormatDescriptionEventParser{})
  	m.set(&QueryEventParser{})
  	m.set(&RotateEventParser{})
  	m.set(&TableMapEventParser{})
  	m.set(&XidEventParser{})
  	m.set(&RowsQueryEventParser{})
  	m.set(&GtidLogEventParser{})
  	m.set(&PreviousGtidsLogEventParser{})
  
  	m.set(newWriteRowsEventV1Parser())
  	m.set(newWriteRowsEventV2Parser())
  	m.set(newUpdateRowsEventV1Parser())
  	m.set(newUpdateRowsEventV2Parser())
  	m.set(newDeleteRowsEventV1Parser())
  	m.set(newDeleteRowsEventV2Parser())
  	m.set(newStopEventParser())
  
  	m.numSupportedEventTypes = len(mysql_proto.LogEventType_Type_name)
  	return m
  }
docs: // NewV4EventParserMap returns an initialize V4EventParserMap with all handled
  // event types' parsers registered.