vendor updates

This commit is contained in:
Serguei Bezverkhi
2018-03-06 17:33:18 -05:00
parent 4b3ebc171b
commit e9033989a0
5854 changed files with 248382 additions and 119809 deletions

View File

@ -1,11 +1,11 @@
// Code generated by protoc-gen-go. DO NOT EDIT.
// source: google/cloud/speech/v1_1beta1/cloud_speech.proto
// source: google/cloud/speech/v1p1beta1/cloud_speech.proto
/*
Package speech is a generated protocol buffer package.
It is generated from these files:
google/cloud/speech/v1_1beta1/cloud_speech.proto
google/cloud/speech/v1p1beta1/cloud_speech.proto
It has these top-level messages:
RecognizeRequest
@ -13,7 +13,6 @@ It has these top-level messages:
StreamingRecognizeRequest
StreamingRecognitionConfig
RecognitionConfig
RecognitionMetadata
SpeechContext
RecognitionAudio
RecognizeResponse
@ -32,6 +31,7 @@ import fmt "fmt"
import math "math"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_longrunning "google.golang.org/genproto/googleapis/longrunning"
import _ "github.com/golang/protobuf/ptypes/any"
import google_protobuf3 "github.com/golang/protobuf/ptypes/duration"
import google_protobuf4 "github.com/golang/protobuf/ptypes/timestamp"
import google_rpc "google.golang.org/genproto/googleapis/rpc/status"
@ -52,20 +52,29 @@ var _ = math.Inf
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package
// Audio encoding of the data sent in the audio message. All encodings support
// only 1 channel (mono) audio. Only `FLAC` includes a header that describes
// the bytes of audio that follow the header. The other encodings are raw
// audio bytes with no header.
// The encoding of the audio data sent in the request.
//
// All encodings support only 1 channel (mono) audio.
//
// If you send a `FLAC` or `WAV` audio file format in the request,
// then if you specify an encoding in `AudioEncoding`, it must match the
// encoding described in the audio header. If it does not match, then the
// request returns an
// [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT] error code. You can request
// recognition for `WAV` files that contain either `LINEAR16` or `MULAW`
// encoded audio.
// For audio file formats other than `FLAC` or `WAV`, you must
// specify the audio encoding in your `RecognitionConfig`.
//
// For best results, the audio source should be captured and transmitted using
// a lossless encoding (`FLAC` or `LINEAR16`). Recognition accuracy may be
// reduced if lossy codecs, which include the other codecs listed in
// this section, are used to capture or transmit the audio, particularly if
// background noise is present.
// a lossless encoding (`FLAC` or `LINEAR16`). The accuracy of the speech
// recognition can be reduced if lossy codecs, which include the other codecs
// listed in this section, are used to capture or transmit the audio,
// particularly if background noise is present.
type RecognitionConfig_AudioEncoding int32
const (
// Not specified. Will return result [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT].
// Not specified.
RecognitionConfig_ENCODING_UNSPECIFIED RecognitionConfig_AudioEncoding = 0
// Uncompressed 16-bit signed little-endian samples (Linear PCM).
RecognitionConfig_LINEAR16 RecognitionConfig_AudioEncoding = 1
@ -84,7 +93,7 @@ const (
RecognitionConfig_AMR_WB RecognitionConfig_AudioEncoding = 5
// Opus encoded audio frames in Ogg container
// ([OggOpus](https://wiki.xiph.org/OggOpus)).
// `sample_rate_hertz` must be 16000.
// `sample_rate_hertz` must be one of 8000, 12000, 16000, 24000, or 48000.
RecognitionConfig_OGG_OPUS RecognitionConfig_AudioEncoding = 6
// Although the use of lossy encodings is not recommended, if a very low
// bitrate encoding is required, `OGG_OPUS` is highly preferred over
@ -130,215 +139,6 @@ func (RecognitionConfig_AudioEncoding) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{4, 0}
}
// Use case categories that the audio recognition request can be described
// by.
type RecognitionMetadata_InteractionType int32
const (
// Use case is either unknown or is something other than one of the other
// values below.
RecognitionMetadata_INTERACTION_TYPE_UNSPECIFIED RecognitionMetadata_InteractionType = 0
// Multiple people in a conversation or discussion. For example in a
// meeting with two or more people actively participating. Typically
// all the primary people speaking would be in the same room (if not,
// see PHONE_CALL)
RecognitionMetadata_DISCUSSION RecognitionMetadata_InteractionType = 1
// One or more persons lecturing or presenting to others, mostly
// uninterrupted.
RecognitionMetadata_PRESENTATION RecognitionMetadata_InteractionType = 2
// A phone-call or video-conference in which two or more people, who are
// not in the same room, are actively participating.
RecognitionMetadata_PHONE_CALL RecognitionMetadata_InteractionType = 3
// A recorded message intended for another person to listen to.
RecognitionMetadata_VOICEMAIL RecognitionMetadata_InteractionType = 4
// Professionally produced audio (eg. TV Show, Podcast).
RecognitionMetadata_PROFESSIONALLY_PRODUCED RecognitionMetadata_InteractionType = 5
// Transcribe spoken questions and queries into text.
RecognitionMetadata_VOICE_SEARCH RecognitionMetadata_InteractionType = 6
// Transcribe voice commands, such as for controlling a device.
RecognitionMetadata_VOICE_COMMAND RecognitionMetadata_InteractionType = 7
// Transcribe speech to text to create a written document, such as a
// text-message, email or report.
RecognitionMetadata_DICTATION RecognitionMetadata_InteractionType = 8
)
var RecognitionMetadata_InteractionType_name = map[int32]string{
0: "INTERACTION_TYPE_UNSPECIFIED",
1: "DISCUSSION",
2: "PRESENTATION",
3: "PHONE_CALL",
4: "VOICEMAIL",
5: "PROFESSIONALLY_PRODUCED",
6: "VOICE_SEARCH",
7: "VOICE_COMMAND",
8: "DICTATION",
}
var RecognitionMetadata_InteractionType_value = map[string]int32{
"INTERACTION_TYPE_UNSPECIFIED": 0,
"DISCUSSION": 1,
"PRESENTATION": 2,
"PHONE_CALL": 3,
"VOICEMAIL": 4,
"PROFESSIONALLY_PRODUCED": 5,
"VOICE_SEARCH": 6,
"VOICE_COMMAND": 7,
"DICTATION": 8,
}
func (x RecognitionMetadata_InteractionType) String() string {
return proto.EnumName(RecognitionMetadata_InteractionType_name, int32(x))
}
func (RecognitionMetadata_InteractionType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{5, 0}
}
// Enumerates the types of capture settings describing an audio file.
type RecognitionMetadata_MicrophoneDistance int32
const (
// Audio type is not known.
RecognitionMetadata_MICROPHONE_DISTANCE_UNSPECIFIED RecognitionMetadata_MicrophoneDistance = 0
// The audio was captured from a closely placed microphone. Eg. phone,
// dictaphone, or handheld microphone. Generally if there speaker is within
// 1 meter of the microphone.
RecognitionMetadata_NEARFIELD RecognitionMetadata_MicrophoneDistance = 1
// The speaker if within 3 meters of the microphone.
RecognitionMetadata_MIDFIELD RecognitionMetadata_MicrophoneDistance = 2
// The speaker is more than 3 meters away from the microphone.
RecognitionMetadata_FARFIELD RecognitionMetadata_MicrophoneDistance = 3
)
var RecognitionMetadata_MicrophoneDistance_name = map[int32]string{
0: "MICROPHONE_DISTANCE_UNSPECIFIED",
1: "NEARFIELD",
2: "MIDFIELD",
3: "FARFIELD",
}
var RecognitionMetadata_MicrophoneDistance_value = map[string]int32{
"MICROPHONE_DISTANCE_UNSPECIFIED": 0,
"NEARFIELD": 1,
"MIDFIELD": 2,
"FARFIELD": 3,
}
func (x RecognitionMetadata_MicrophoneDistance) String() string {
return proto.EnumName(RecognitionMetadata_MicrophoneDistance_name, int32(x))
}
func (RecognitionMetadata_MicrophoneDistance) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{5, 1}
}
// The original media the speech was recorded on.
type RecognitionMetadata_OriginalMediaType int32
const (
// Unknown original media type.
RecognitionMetadata_ORIGINAL_MEDIA_TYPE_UNSPECIFIED RecognitionMetadata_OriginalMediaType = 0
// The speech data is an audio recording.
RecognitionMetadata_AUDIO RecognitionMetadata_OriginalMediaType = 1
// The speech data originally recorded on a video.
RecognitionMetadata_VIDEO RecognitionMetadata_OriginalMediaType = 2
)
var RecognitionMetadata_OriginalMediaType_name = map[int32]string{
0: "ORIGINAL_MEDIA_TYPE_UNSPECIFIED",
1: "AUDIO",
2: "VIDEO",
}
var RecognitionMetadata_OriginalMediaType_value = map[string]int32{
"ORIGINAL_MEDIA_TYPE_UNSPECIFIED": 0,
"AUDIO": 1,
"VIDEO": 2,
}
func (x RecognitionMetadata_OriginalMediaType) String() string {
return proto.EnumName(RecognitionMetadata_OriginalMediaType_name, int32(x))
}
func (RecognitionMetadata_OriginalMediaType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{5, 2}
}
// How many speakers expected in the speech to be recognized.
type RecognitionMetadata_NumberOfSpeakers int32
const (
// Unknown number of persons speaking.
RecognitionMetadata_NUMBER_OF_SPEAKERS_UNSPECIFIED RecognitionMetadata_NumberOfSpeakers = 0
// Only one person is the prominent speaker (ignore background voices).
RecognitionMetadata_ONE_SPEAKER RecognitionMetadata_NumberOfSpeakers = 1
// Two people are the prominent speakers (transcript should focus
// on the two most prominent speakers).
RecognitionMetadata_TWO_SPEAKERS RecognitionMetadata_NumberOfSpeakers = 2
// Transcribe all voices.
RecognitionMetadata_MULTIPLE_SPEAKERS RecognitionMetadata_NumberOfSpeakers = 3
)
var RecognitionMetadata_NumberOfSpeakers_name = map[int32]string{
0: "NUMBER_OF_SPEAKERS_UNSPECIFIED",
1: "ONE_SPEAKER",
2: "TWO_SPEAKERS",
3: "MULTIPLE_SPEAKERS",
}
var RecognitionMetadata_NumberOfSpeakers_value = map[string]int32{
"NUMBER_OF_SPEAKERS_UNSPECIFIED": 0,
"ONE_SPEAKER": 1,
"TWO_SPEAKERS": 2,
"MULTIPLE_SPEAKERS": 3,
}
func (x RecognitionMetadata_NumberOfSpeakers) String() string {
return proto.EnumName(RecognitionMetadata_NumberOfSpeakers_name, int32(x))
}
func (RecognitionMetadata_NumberOfSpeakers) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{5, 3}
}
// The type of device the speech was recorded with.
type RecognitionMetadata_RecordingDeviceType int32
const (
// The recording device is unknown.
RecognitionMetadata_RECORDING_DEVICE_TYPE_UNSPECIFIED RecognitionMetadata_RecordingDeviceType = 0
// Speech was recorded on a smartphone.
RecognitionMetadata_SMARTPHONE RecognitionMetadata_RecordingDeviceType = 1
// Speech was recorded using a personal computer or tablet.
RecognitionMetadata_PC RecognitionMetadata_RecordingDeviceType = 2
// Speech was recorded over a phone line.
RecognitionMetadata_PHONE_LINE RecognitionMetadata_RecordingDeviceType = 3
// Speech was recorded in a vehicle.
RecognitionMetadata_VEHICLE RecognitionMetadata_RecordingDeviceType = 4
// Speech was recorded outdoors.
RecognitionMetadata_OTHER_OUTDOOR_DEVICE RecognitionMetadata_RecordingDeviceType = 5
// Speech was recorded indoors.
RecognitionMetadata_OTHER_INDOOR_DEVICE RecognitionMetadata_RecordingDeviceType = 6
)
var RecognitionMetadata_RecordingDeviceType_name = map[int32]string{
0: "RECORDING_DEVICE_TYPE_UNSPECIFIED",
1: "SMARTPHONE",
2: "PC",
3: "PHONE_LINE",
4: "VEHICLE",
5: "OTHER_OUTDOOR_DEVICE",
6: "OTHER_INDOOR_DEVICE",
}
var RecognitionMetadata_RecordingDeviceType_value = map[string]int32{
"RECORDING_DEVICE_TYPE_UNSPECIFIED": 0,
"SMARTPHONE": 1,
"PC": 2,
"PHONE_LINE": 3,
"VEHICLE": 4,
"OTHER_OUTDOOR_DEVICE": 5,
"OTHER_INDOOR_DEVICE": 6,
}
func (x RecognitionMetadata_RecordingDeviceType) String() string {
return proto.EnumName(RecognitionMetadata_RecordingDeviceType_name, int32(x))
}
func (RecognitionMetadata_RecordingDeviceType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{5, 4}
}
// Indicates the type of speech event.
type StreamingRecognizeResponse_SpeechEventType int32
@ -368,7 +168,7 @@ func (x StreamingRecognizeResponse_SpeechEventType) String() string {
return proto.EnumName(StreamingRecognizeResponse_SpeechEventType_name, int32(x))
}
func (StreamingRecognizeResponse_SpeechEventType) EnumDescriptor() ([]byte, []int) {
return fileDescriptor0, []int{11, 0}
return fileDescriptor0, []int{10, 0}
}
// The top-level message sent by the client for the `Recognize` method.
@ -639,16 +439,11 @@ type RecognitionConfig struct {
// `false`, no word-level time offset information is returned. The default is
// `false`.
EnableWordTimeOffsets bool `protobuf:"varint,8,opt,name=enable_word_time_offsets,json=enableWordTimeOffsets" json:"enable_word_time_offsets,omitempty"`
// *Optional* If 'true', adds punctuation to recognition result hypotheses.
// This feature is only available in select languages. Setting this for
// requests in other languages has no effect at all.
// The default 'false' value does not add punctuation to result hypotheses.
// NOTE: "This is currently offered as an experimental service, complimentary
// to all users. In the future this may be exclusively available as a
// premium feature."
EnableAutomaticPunctuation bool `protobuf:"varint,11,opt,name=enable_automatic_punctuation,json=enableAutomaticPunctuation" json:"enable_automatic_punctuation,omitempty"`
// *Optional* Metadata regarding this request.
Metadata *RecognitionMetadata `protobuf:"bytes,9,opt,name=metadata" json:"metadata,omitempty"`
// *Optional* Which model to select for the given request. Select the model
// best suited to your domain to get best results. If a model is not
// explicitly specified, then we auto-select a model based on the parameters
// in the RecognitionConfig.
Model string `protobuf:"bytes,13,opt,name=model" json:"model,omitempty"`
}
func (m *RecognitionConfig) Reset() { *m = RecognitionConfig{} }
@ -705,126 +500,9 @@ func (m *RecognitionConfig) GetEnableWordTimeOffsets() bool {
return false
}
func (m *RecognitionConfig) GetEnableAutomaticPunctuation() bool {
func (m *RecognitionConfig) GetModel() string {
if m != nil {
return m.EnableAutomaticPunctuation
}
return false
}
func (m *RecognitionConfig) GetMetadata() *RecognitionMetadata {
if m != nil {
return m.Metadata
}
return nil
}
// Description of audio data to be recognized.
type RecognitionMetadata struct {
// The use case most closely describing the audio content to be recognized.
InteractionType RecognitionMetadata_InteractionType `protobuf:"varint,1,opt,name=interaction_type,json=interactionType,enum=google.cloud.speech.v1p1beta1.RecognitionMetadata_InteractionType" json:"interaction_type,omitempty"`
// The industry vertical to which this speech recognition request most
// closely applies. This is most indicative of the topics contained
// in the audio. Use the 6-digit NAICS code to identify the industry
// vertical - see https://www.naics.com/search/.
IndustryNaicsCodeOfAudio uint32 `protobuf:"varint,3,opt,name=industry_naics_code_of_audio,json=industryNaicsCodeOfAudio" json:"industry_naics_code_of_audio,omitempty"`
// The audio type that most closely describes the audio being recognized.
MicrophoneDistance RecognitionMetadata_MicrophoneDistance `protobuf:"varint,4,opt,name=microphone_distance,json=microphoneDistance,enum=google.cloud.speech.v1p1beta1.RecognitionMetadata_MicrophoneDistance" json:"microphone_distance,omitempty"`
// The original media the speech was recorded on.
OriginalMediaType RecognitionMetadata_OriginalMediaType `protobuf:"varint,5,opt,name=original_media_type,json=originalMediaType,enum=google.cloud.speech.v1p1beta1.RecognitionMetadata_OriginalMediaType" json:"original_media_type,omitempty"`
// How many people are speaking prominently in the audio and expected to be
// recognized.
NumberOfSpeakers RecognitionMetadata_NumberOfSpeakers `protobuf:"varint,6,opt,name=number_of_speakers,json=numberOfSpeakers,enum=google.cloud.speech.v1p1beta1.RecognitionMetadata_NumberOfSpeakers" json:"number_of_speakers,omitempty"`
// The type of device the speech was recorded with.
RecordingDeviceType RecognitionMetadata_RecordingDeviceType `protobuf:"varint,7,opt,name=recording_device_type,json=recordingDeviceType,enum=google.cloud.speech.v1p1beta1.RecognitionMetadata_RecordingDeviceType" json:"recording_device_type,omitempty"`
// The device used to make the recording. Examples 'Nexus 5X' or
// 'Polycom SoundStation IP 6000' or 'POTS' or 'VoIP' or
// 'Cardioid Microphone'.
RecordingDeviceName string `protobuf:"bytes,8,opt,name=recording_device_name,json=recordingDeviceName" json:"recording_device_name,omitempty"`
// Mime type of the original audio file. For example `audio/m4a`,
// `audio/x-alaw-basic`, `audio/mp3`, `audio/3gpp`.
// A list of possible audio mime types is maintained at
// http://www.iana.org/assignments/media-types/media-types.xhtml#audio
OriginalMimeType string `protobuf:"bytes,9,opt,name=original_mime_type,json=originalMimeType" json:"original_mime_type,omitempty"`
// Obfuscated (privacy-protected) ID of the user, to identify number of
// unique users using the service.
ObfuscatedId int64 `protobuf:"varint,10,opt,name=obfuscated_id,json=obfuscatedId" json:"obfuscated_id,omitempty"`
// Description of the content. Eg. "Recordings of federal supreme court
// hearings from 2012".
AudioTopic string `protobuf:"bytes,11,opt,name=audio_topic,json=audioTopic" json:"audio_topic,omitempty"`
}
func (m *RecognitionMetadata) Reset() { *m = RecognitionMetadata{} }
func (m *RecognitionMetadata) String() string { return proto.CompactTextString(m) }
func (*RecognitionMetadata) ProtoMessage() {}
func (*RecognitionMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
func (m *RecognitionMetadata) GetInteractionType() RecognitionMetadata_InteractionType {
if m != nil {
return m.InteractionType
}
return RecognitionMetadata_INTERACTION_TYPE_UNSPECIFIED
}
func (m *RecognitionMetadata) GetIndustryNaicsCodeOfAudio() uint32 {
if m != nil {
return m.IndustryNaicsCodeOfAudio
}
return 0
}
func (m *RecognitionMetadata) GetMicrophoneDistance() RecognitionMetadata_MicrophoneDistance {
if m != nil {
return m.MicrophoneDistance
}
return RecognitionMetadata_MICROPHONE_DISTANCE_UNSPECIFIED
}
func (m *RecognitionMetadata) GetOriginalMediaType() RecognitionMetadata_OriginalMediaType {
if m != nil {
return m.OriginalMediaType
}
return RecognitionMetadata_ORIGINAL_MEDIA_TYPE_UNSPECIFIED
}
func (m *RecognitionMetadata) GetNumberOfSpeakers() RecognitionMetadata_NumberOfSpeakers {
if m != nil {
return m.NumberOfSpeakers
}
return RecognitionMetadata_NUMBER_OF_SPEAKERS_UNSPECIFIED
}
func (m *RecognitionMetadata) GetRecordingDeviceType() RecognitionMetadata_RecordingDeviceType {
if m != nil {
return m.RecordingDeviceType
}
return RecognitionMetadata_RECORDING_DEVICE_TYPE_UNSPECIFIED
}
func (m *RecognitionMetadata) GetRecordingDeviceName() string {
if m != nil {
return m.RecordingDeviceName
}
return ""
}
func (m *RecognitionMetadata) GetOriginalMimeType() string {
if m != nil {
return m.OriginalMimeType
}
return ""
}
func (m *RecognitionMetadata) GetObfuscatedId() int64 {
if m != nil {
return m.ObfuscatedId
}
return 0
}
func (m *RecognitionMetadata) GetAudioTopic() string {
if m != nil {
return m.AudioTopic
return m.Model
}
return ""
}
@ -844,7 +522,7 @@ type SpeechContext struct {
func (m *SpeechContext) Reset() { *m = SpeechContext{} }
func (m *SpeechContext) String() string { return proto.CompactTextString(m) }
func (*SpeechContext) ProtoMessage() {}
func (*SpeechContext) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
func (*SpeechContext) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{5} }
func (m *SpeechContext) GetPhrases() []string {
if m != nil {
@ -858,7 +536,8 @@ func (m *SpeechContext) GetPhrases() []string {
// returns [google.rpc.Code.INVALID_ARGUMENT][google.rpc.Code.INVALID_ARGUMENT]. See
// [audio limits](https://cloud.google.com/speech/limits#content).
type RecognitionAudio struct {
// The audio source, which is either inline content or a GCS uri.
// The audio source, which is either inline content or a Google Cloud
// Storage uri.
//
// Types that are valid to be assigned to AudioSource:
// *RecognitionAudio_Content
@ -869,7 +548,7 @@ type RecognitionAudio struct {
func (m *RecognitionAudio) Reset() { *m = RecognitionAudio{} }
func (m *RecognitionAudio) String() string { return proto.CompactTextString(m) }
func (*RecognitionAudio) ProtoMessage() {}
func (*RecognitionAudio) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
func (*RecognitionAudio) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{6} }
type isRecognitionAudio_AudioSource interface {
isRecognitionAudio_AudioSource()
@ -984,7 +663,7 @@ type RecognizeResponse struct {
func (m *RecognizeResponse) Reset() { *m = RecognizeResponse{} }
func (m *RecognizeResponse) String() string { return proto.CompactTextString(m) }
func (*RecognizeResponse) ProtoMessage() {}
func (*RecognizeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
func (*RecognizeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{7} }
func (m *RecognizeResponse) GetResults() []*SpeechRecognitionResult {
if m != nil {
@ -1007,7 +686,7 @@ type LongRunningRecognizeResponse struct {
func (m *LongRunningRecognizeResponse) Reset() { *m = LongRunningRecognizeResponse{} }
func (m *LongRunningRecognizeResponse) String() string { return proto.CompactTextString(m) }
func (*LongRunningRecognizeResponse) ProtoMessage() {}
func (*LongRunningRecognizeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
func (*LongRunningRecognizeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{8} }
func (m *LongRunningRecognizeResponse) GetResults() []*SpeechRecognitionResult {
if m != nil {
@ -1032,7 +711,7 @@ type LongRunningRecognizeMetadata struct {
func (m *LongRunningRecognizeMetadata) Reset() { *m = LongRunningRecognizeMetadata{} }
func (m *LongRunningRecognizeMetadata) String() string { return proto.CompactTextString(m) }
func (*LongRunningRecognizeMetadata) ProtoMessage() {}
func (*LongRunningRecognizeMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
func (*LongRunningRecognizeMetadata) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{9} }
func (m *LongRunningRecognizeMetadata) GetProgressPercent() int32 {
if m != nil {
@ -1110,8 +789,8 @@ type StreamingRecognizeResponse struct {
Error *google_rpc.Status `protobuf:"bytes,1,opt,name=error" json:"error,omitempty"`
// *Output-only* This repeated list contains zero or more results that
// correspond to consecutive portions of the audio currently being processed.
// It contains zero or more `is_final=false` results followed by zero or one
// `is_final=true` result (the newly settled portion).
// It contains zero or one `is_final=true` result (the newly settled portion),
// followed by zero or more `is_final=false` results (the interim results).
Results []*StreamingRecognitionResult `protobuf:"bytes,2,rep,name=results" json:"results,omitempty"`
// *Output-only* Indicates the type of speech event.
SpeechEventType StreamingRecognizeResponse_SpeechEventType `protobuf:"varint,4,opt,name=speech_event_type,json=speechEventType,enum=google.cloud.speech.v1p1beta1.StreamingRecognizeResponse_SpeechEventType" json:"speech_event_type,omitempty"`
@ -1120,7 +799,7 @@ type StreamingRecognizeResponse struct {
func (m *StreamingRecognizeResponse) Reset() { *m = StreamingRecognizeResponse{} }
func (m *StreamingRecognizeResponse) String() string { return proto.CompactTextString(m) }
func (*StreamingRecognizeResponse) ProtoMessage() {}
func (*StreamingRecognizeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
func (*StreamingRecognizeResponse) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{10} }
func (m *StreamingRecognizeResponse) GetError() *google_rpc.Status {
if m != nil {
@ -1148,6 +827,8 @@ func (m *StreamingRecognizeResponse) GetSpeechEventType() StreamingRecognizeResp
type StreamingRecognitionResult struct {
// *Output-only* May contain one or more recognition hypotheses (up to the
// maximum specified in `max_alternatives`).
// These alternatives are ordered in terms of accuracy, with the top (first)
// alternative being the most probable, as ranked by the recognizer.
Alternatives []*SpeechRecognitionAlternative `protobuf:"bytes,1,rep,name=alternatives" json:"alternatives,omitempty"`
// *Output-only* If `false`, this `StreamingRecognitionResult` represents an
// interim result that may change. If `true`, this is the final time the
@ -1166,7 +847,7 @@ type StreamingRecognitionResult struct {
func (m *StreamingRecognitionResult) Reset() { *m = StreamingRecognitionResult{} }
func (m *StreamingRecognitionResult) String() string { return proto.CompactTextString(m) }
func (*StreamingRecognitionResult) ProtoMessage() {}
func (*StreamingRecognitionResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
func (*StreamingRecognitionResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{11} }
func (m *StreamingRecognitionResult) GetAlternatives() []*SpeechRecognitionAlternative {
if m != nil {
@ -1201,7 +882,7 @@ type SpeechRecognitionResult struct {
func (m *SpeechRecognitionResult) Reset() { *m = SpeechRecognitionResult{} }
func (m *SpeechRecognitionResult) String() string { return proto.CompactTextString(m) }
func (*SpeechRecognitionResult) ProtoMessage() {}
func (*SpeechRecognitionResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
func (*SpeechRecognitionResult) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{12} }
func (m *SpeechRecognitionResult) GetAlternatives() []*SpeechRecognitionAlternative {
if m != nil {
@ -1216,10 +897,10 @@ type SpeechRecognitionAlternative struct {
Transcript string `protobuf:"bytes,1,opt,name=transcript" json:"transcript,omitempty"`
// *Output-only* The confidence estimate between 0.0 and 1.0. A higher number
// indicates an estimated greater likelihood that the recognized words are
// correct. This field is typically provided only for the top hypothesis, and
// only for `is_final=true` results. Clients should not rely on the
// `confidence` field as it is not guaranteed to be accurate, or even set, in
// any of the results.
// correct. This field is set only for the top alternative of a non-streaming
// result or, of a streaming result where `is_final=true`.
// This field is not guaranteed to be accurate and users should not rely on it
// to be always provided.
// The default of 0.0 is a sentinel value indicating `confidence` was not set.
Confidence float32 `protobuf:"fixed32,2,opt,name=confidence" json:"confidence,omitempty"`
// *Output-only* A list of word-specific information for each recognized word.
@ -1229,7 +910,7 @@ type SpeechRecognitionAlternative struct {
func (m *SpeechRecognitionAlternative) Reset() { *m = SpeechRecognitionAlternative{} }
func (m *SpeechRecognitionAlternative) String() string { return proto.CompactTextString(m) }
func (*SpeechRecognitionAlternative) ProtoMessage() {}
func (*SpeechRecognitionAlternative) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
func (*SpeechRecognitionAlternative) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{13} }
func (m *SpeechRecognitionAlternative) GetTranscript() string {
if m != nil {
@ -1252,9 +933,7 @@ func (m *SpeechRecognitionAlternative) GetWords() []*WordInfo {
return nil
}
// Word-specific information for recognized words. Word information is only
// included in the response when certain request parameters are set, such
// as `enable_word_time_offsets`.
// Word-specific information for recognized words.
type WordInfo struct {
// *Output-only* Time offset relative to the beginning of the audio,
// and corresponding to the start of the spoken word.
@ -1277,7 +956,7 @@ type WordInfo struct {
func (m *WordInfo) Reset() { *m = WordInfo{} }
func (m *WordInfo) String() string { return proto.CompactTextString(m) }
func (*WordInfo) ProtoMessage() {}
func (*WordInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{15} }
func (*WordInfo) Descriptor() ([]byte, []int) { return fileDescriptor0, []int{14} }
func (m *WordInfo) GetStartTime() *google_protobuf3.Duration {
if m != nil {
@ -1306,7 +985,6 @@ func init() {
proto.RegisterType((*StreamingRecognizeRequest)(nil), "google.cloud.speech.v1p1beta1.StreamingRecognizeRequest")
proto.RegisterType((*StreamingRecognitionConfig)(nil), "google.cloud.speech.v1p1beta1.StreamingRecognitionConfig")
proto.RegisterType((*RecognitionConfig)(nil), "google.cloud.speech.v1p1beta1.RecognitionConfig")
proto.RegisterType((*RecognitionMetadata)(nil), "google.cloud.speech.v1p1beta1.RecognitionMetadata")
proto.RegisterType((*SpeechContext)(nil), "google.cloud.speech.v1p1beta1.SpeechContext")
proto.RegisterType((*RecognitionAudio)(nil), "google.cloud.speech.v1p1beta1.RecognitionAudio")
proto.RegisterType((*RecognizeResponse)(nil), "google.cloud.speech.v1p1beta1.RecognizeResponse")
@ -1318,11 +996,6 @@ func init() {
proto.RegisterType((*SpeechRecognitionAlternative)(nil), "google.cloud.speech.v1p1beta1.SpeechRecognitionAlternative")
proto.RegisterType((*WordInfo)(nil), "google.cloud.speech.v1p1beta1.WordInfo")
proto.RegisterEnum("google.cloud.speech.v1p1beta1.RecognitionConfig_AudioEncoding", RecognitionConfig_AudioEncoding_name, RecognitionConfig_AudioEncoding_value)
proto.RegisterEnum("google.cloud.speech.v1p1beta1.RecognitionMetadata_InteractionType", RecognitionMetadata_InteractionType_name, RecognitionMetadata_InteractionType_value)
proto.RegisterEnum("google.cloud.speech.v1p1beta1.RecognitionMetadata_MicrophoneDistance", RecognitionMetadata_MicrophoneDistance_name, RecognitionMetadata_MicrophoneDistance_value)
proto.RegisterEnum("google.cloud.speech.v1p1beta1.RecognitionMetadata_OriginalMediaType", RecognitionMetadata_OriginalMediaType_name, RecognitionMetadata_OriginalMediaType_value)
proto.RegisterEnum("google.cloud.speech.v1p1beta1.RecognitionMetadata_NumberOfSpeakers", RecognitionMetadata_NumberOfSpeakers_name, RecognitionMetadata_NumberOfSpeakers_value)
proto.RegisterEnum("google.cloud.speech.v1p1beta1.RecognitionMetadata_RecordingDeviceType", RecognitionMetadata_RecordingDeviceType_name, RecognitionMetadata_RecordingDeviceType_value)
proto.RegisterEnum("google.cloud.speech.v1p1beta1.StreamingRecognizeResponse_SpeechEventType", StreamingRecognizeResponse_SpeechEventType_name, StreamingRecognizeResponse_SpeechEventType_value)
}
@ -1510,137 +1183,95 @@ var _Speech_serviceDesc = grpc.ServiceDesc{
ClientStreams: true,
},
},
Metadata: "google/cloud/speech/v1_1beta1/cloud_speech.proto",
Metadata: "google/cloud/speech/v1p1beta1/cloud_speech.proto",
}
func init() { proto.RegisterFile("google/cloud/speech/v1_1beta1/cloud_speech.proto", fileDescriptor0) }
func init() { proto.RegisterFile("google/cloud/speech/v1p1beta1/cloud_speech.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 2005 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x58, 0xbf, 0x73, 0xdb, 0xc8,
0xf5, 0x37, 0x48, 0x51, 0x12, 0x9f, 0x7e, 0x41, 0xab, 0xf3, 0xd7, 0xb4, 0xac, 0xb3, 0x75, 0xf0,
0xdc, 0x9d, 0xee, 0xbe, 0x37, 0xa4, 0xa5, 0x64, 0x2e, 0x67, 0xdf, 0xe4, 0x26, 0x10, 0x00, 0x99,
0x98, 0x90, 0x00, 0x67, 0x49, 0xda, 0xf1, 0x35, 0x3b, 0x10, 0xb8, 0xa4, 0x31, 0x21, 0x01, 0x1c,
0xb0, 0x50, 0x6c, 0x97, 0x69, 0x33, 0x49, 0x93, 0x99, 0x74, 0xa9, 0x72, 0x75, 0xca, 0x14, 0x69,
0x52, 0x25, 0x45, 0xda, 0x34, 0x29, 0xaf, 0xc8, 0x1f, 0x91, 0x32, 0xb3, 0xbb, 0x00, 0x45, 0x91,
0xb2, 0x2d, 0x6b, 0x72, 0x33, 0xe9, 0x88, 0xcf, 0xbe, 0xf7, 0x79, 0x6f, 0xdf, 0xbe, 0x7d, 0x7c,
0x6f, 0xe1, 0xc1, 0x28, 0x8a, 0x46, 0x63, 0xda, 0xf0, 0xc7, 0x51, 0x36, 0x68, 0xa4, 0x31, 0xa5,
0xfe, 0xf3, 0xc6, 0xd9, 0x21, 0x39, 0x3c, 0xa5, 0xcc, 0x3b, 0x94, 0x30, 0x91, 0x70, 0x3d, 0x4e,
0x22, 0x16, 0xa1, 0xf7, 0xa5, 0x46, 0x5d, 0x2c, 0xd5, 0xf3, 0xa5, 0xb3, 0xc3, 0x58, 0x6a, 0xec,
0xee, 0xe5, 0x84, 0x5e, 0x1c, 0x34, 0xbc, 0x30, 0x8c, 0x98, 0xc7, 0x82, 0x28, 0x4c, 0xa5, 0xf2,
0xee, 0xfd, 0x7c, 0x75, 0x1c, 0x85, 0xa3, 0x24, 0x0b, 0xc3, 0x20, 0x1c, 0x35, 0xa2, 0x98, 0x26,
0x17, 0x84, 0xee, 0xe6, 0x42, 0xe2, 0xeb, 0x34, 0x1b, 0x36, 0x06, 0x99, 0x14, 0xc8, 0xd7, 0xef,
0xcd, 0xaf, 0xb3, 0x60, 0x42, 0x53, 0xe6, 0x4d, 0xe2, 0x5c, 0xe0, 0x56, 0x2e, 0x90, 0xc4, 0x7e,
0x23, 0x65, 0x1e, 0xcb, 0x72, 0x66, 0xed, 0x0f, 0x0a, 0xa8, 0x98, 0xfa, 0xd1, 0x28, 0x0c, 0x5e,
0x51, 0x4c, 0xbf, 0xc9, 0x68, 0xca, 0x50, 0x13, 0x96, 0xfd, 0x28, 0x1c, 0x06, 0xa3, 0x9a, 0xb2,
0xaf, 0x1c, 0xac, 0x1d, 0x3d, 0xa8, 0xbf, 0x71, 0x87, 0xf5, 0x9c, 0x80, 0x3b, 0x64, 0x08, 0x3d,
0x9c, 0xeb, 0x23, 0x0b, 0x2a, 0x5e, 0x36, 0x08, 0xa2, 0x5a, 0x49, 0x10, 0x35, 0xae, 0x4e, 0xa4,
0x73, 0x35, 0x2c, 0xb5, 0xb5, 0x3f, 0x2a, 0x70, 0xa7, 0x15, 0x85, 0x23, 0x2c, 0x03, 0xf4, 0xbf,
0xef, 0xf0, 0x5f, 0x14, 0xb8, 0xdd, 0x65, 0x09, 0xf5, 0x26, 0x97, 0xb9, 0x3b, 0x04, 0x35, 0x2d,
0x16, 0xc9, 0x05, 0xc7, 0x1f, 0xbe, 0xc5, 0xde, 0x3c, 0xe7, 0xf9, 0x0e, 0x9a, 0x37, 0xf0, 0xd6,
0x94, 0x54, 0x42, 0xe8, 0x43, 0xd8, 0x10, 0xee, 0x70, 0x1b, 0x8c, 0x86, 0x4c, 0x6c, 0x6a, 0xbd,
0x79, 0x03, 0xaf, 0x0b, 0xd8, 0x90, 0xe8, 0xf1, 0x0e, 0x6c, 0x9f, 0xbb, 0x93, 0x48, 0x1f, 0xb5,
0x3f, 0x2b, 0xb0, 0xfb, 0x7a, 0x6b, 0xff, 0xc5, 0x88, 0x7f, 0x02, 0x6a, 0x1a, 0x84, 0xa3, 0x31,
0x25, 0x19, 0x63, 0x34, 0xf1, 0x42, 0x9f, 0x0a, 0x3f, 0x57, 0xf1, 0x96, 0xc4, 0xfb, 0x05, 0x8c,
0x3e, 0x86, 0xad, 0x20, 0x64, 0x34, 0x09, 0x26, 0x24, 0xa1, 0x69, 0x36, 0x66, 0x69, 0xad, 0x2c,
0x24, 0x37, 0x73, 0x18, 0x4b, 0x54, 0xfb, 0x5b, 0x05, 0xb6, 0x17, 0x7d, 0xfe, 0x1a, 0x56, 0x69,
0xe8, 0x47, 0x83, 0x20, 0x94, 0x5e, 0x6f, 0x1e, 0x7d, 0xf5, 0xae, 0x5e, 0xd7, 0xc5, 0x29, 0x5b,
0x39, 0x0b, 0x9e, 0xf2, 0xa1, 0x4f, 0x61, 0x3b, 0xf5, 0x26, 0xf1, 0x98, 0x92, 0xc4, 0x63, 0x94,
0x3c, 0xa7, 0x09, 0x7b, 0x25, 0xb6, 0x51, 0xc1, 0x5b, 0x72, 0x01, 0x7b, 0x8c, 0x36, 0x39, 0x8c,
0xee, 0xc3, 0xc6, 0xd8, 0x0b, 0x47, 0x99, 0x37, 0xa2, 0xc4, 0x8f, 0x06, 0x54, 0x6c, 0xa2, 0x8a,
0xd7, 0x0b, 0xd0, 0x88, 0x06, 0x94, 0x87, 0x65, 0xe2, 0xbd, 0x20, 0xde, 0x98, 0xd1, 0x24, 0xf4,
0x58, 0x70, 0x46, 0xd3, 0xda, 0x92, 0xe4, 0x9b, 0x78, 0x2f, 0xf4, 0x19, 0x98, 0x8b, 0xc6, 0x49,
0x34, 0xf4, 0xc2, 0x80, 0xbd, 0x24, 0xc3, 0x80, 0x2f, 0xd5, 0x2a, 0x32, 0x82, 0x53, 0xfc, 0x44,
0xc0, 0xa8, 0x0f, 0x5b, 0x72, 0x93, 0x32, 0x25, 0x5e, 0xb0, 0xb4, 0xb6, 0xbc, 0x5f, 0x3e, 0x58,
0x3b, 0xfa, 0xec, 0x6d, 0x89, 0x27, 0x00, 0x43, 0x2a, 0xe1, 0xcd, 0x74, 0xf6, 0x33, 0x45, 0x3f,
0x82, 0x1a, 0x0d, 0xbd, 0xd3, 0x31, 0x25, 0xbf, 0x88, 0x92, 0x01, 0xe1, 0xd5, 0x87, 0x44, 0xc3,
0x61, 0x4a, 0x59, 0x5a, 0x5b, 0x15, 0x9e, 0xdc, 0x94, 0xeb, 0x4f, 0xa3, 0x64, 0xd0, 0x0b, 0x26,
0xd4, 0x95, 0x8b, 0xe8, 0x27, 0xb0, 0x97, 0x2b, 0x7a, 0x19, 0x8b, 0x26, 0x1e, 0x0b, 0x7c, 0x12,
0x67, 0xa1, 0xcf, 0x32, 0x51, 0xde, 0x6a, 0x6b, 0x42, 0x79, 0x57, 0xca, 0xe8, 0x85, 0x48, 0xe7,
0x5c, 0x02, 0x39, 0xb0, 0x3a, 0xa1, 0xcc, 0x1b, 0x78, 0xcc, 0xab, 0x55, 0x45, 0x2a, 0x1e, 0x5d,
0xfd, 0x50, 0xdb, 0xb9, 0x26, 0x9e, 0x72, 0x68, 0xbf, 0x52, 0x60, 0xe3, 0xc2, 0x21, 0xa3, 0x1a,
0xbc, 0x67, 0x39, 0x86, 0x6b, 0xda, 0xce, 0x63, 0xd2, 0x77, 0xba, 0x1d, 0xcb, 0xb0, 0x4f, 0x6c,
0xcb, 0x54, 0x6f, 0xa0, 0x75, 0x58, 0x6d, 0xd9, 0x8e, 0xa5, 0xe3, 0xc3, 0xcf, 0x55, 0x05, 0xad,
0xc2, 0xd2, 0x49, 0x4b, 0x37, 0xd4, 0x12, 0xaa, 0x42, 0xa5, 0xdd, 0x6f, 0xe9, 0x4f, 0xd5, 0x32,
0x5a, 0x81, 0xb2, 0xde, 0xc6, 0xea, 0x12, 0x02, 0x58, 0xd6, 0xdb, 0x98, 0x3c, 0x3d, 0x56, 0x2b,
0x5c, 0xcf, 0x7d, 0xfc, 0x98, 0xb8, 0x9d, 0x7e, 0x57, 0x5d, 0x46, 0xbb, 0xf0, 0x7f, 0xdd, 0x8e,
0x65, 0xfd, 0x8c, 0x3c, 0xb5, 0x7b, 0x4d, 0xd2, 0xb4, 0x74, 0xd3, 0xc2, 0xe4, 0xf8, 0x59, 0xcf,
0x52, 0x57, 0xb4, 0xef, 0xd6, 0x60, 0xe7, 0x12, 0x7f, 0xd1, 0x04, 0x54, 0x91, 0xf2, 0x9e, 0xcf,
0x61, 0xc2, 0x5e, 0xc6, 0x34, 0x4f, 0xe9, 0xe3, 0x77, 0xdf, 0x7d, 0xdd, 0x3e, 0xa7, 0xea, 0xbd,
0x8c, 0x29, 0xde, 0x0a, 0x2e, 0x02, 0xe8, 0x2b, 0xd8, 0x0b, 0xc2, 0x41, 0x96, 0xb2, 0xe4, 0x25,
0x09, 0xbd, 0xc0, 0x4f, 0x45, 0xde, 0x92, 0x68, 0x48, 0x64, 0xb1, 0xe4, 0x09, 0xbc, 0x81, 0x6b,
0x85, 0x8c, 0xc3, 0x45, 0x78, 0x16, 0xbb, 0x43, 0x11, 0x4a, 0x74, 0x06, 0x3b, 0x93, 0xc0, 0x4f,
0xa2, 0xf8, 0x79, 0x14, 0x52, 0x32, 0x08, 0x52, 0x26, 0xae, 0xf9, 0x92, 0xf0, 0xd8, 0xba, 0x86,
0xc7, 0xed, 0x29, 0x9b, 0x99, 0x93, 0x61, 0x34, 0x59, 0xc0, 0x10, 0x83, 0x9d, 0x28, 0x09, 0x46,
0x41, 0xe8, 0x8d, 0xc9, 0x84, 0x0e, 0x02, 0x4f, 0x46, 0xaa, 0x22, 0xec, 0x9a, 0xd7, 0xb0, 0xeb,
0xe6, 0x6c, 0x6d, 0x4e, 0x26, 0x62, 0xb5, 0x1d, 0xcd, 0x43, 0xe8, 0x1b, 0x40, 0x61, 0x36, 0x39,
0xa5, 0x09, 0x0f, 0x50, 0x1a, 0x53, 0xef, 0xe7, 0x34, 0xe1, 0xf7, 0x8c, 0x1b, 0x35, 0xae, 0x61,
0xd4, 0x11, 0x64, 0xee, 0xb0, 0x9b, 0x53, 0x61, 0x35, 0x9c, 0x43, 0xd0, 0x2b, 0xb8, 0x99, 0x50,
0x3f, 0x4a, 0x78, 0xc2, 0x92, 0x01, 0x3d, 0x0b, 0x7c, 0x2a, 0xb7, 0xba, 0x22, 0xac, 0x9e, 0x5c,
0xc3, 0x2a, 0x2e, 0xf8, 0x4c, 0x41, 0x27, 0x36, 0xbb, 0x93, 0x2c, 0x82, 0xe8, 0xe8, 0x12, 0xdb,
0xa1, 0x37, 0xa1, 0xe2, 0xe6, 0x57, 0x17, 0x74, 0x1c, 0x6f, 0x42, 0xd1, 0x67, 0x80, 0xce, 0x0f,
0x86, 0x57, 0x0b, 0xe1, 0x6c, 0x55, 0x28, 0xa8, 0xd3, 0x88, 0x06, 0x13, 0x69, 0xe1, 0x3e, 0x6c,
0x44, 0xa7, 0xc3, 0x2c, 0xf5, 0x3d, 0x46, 0x07, 0x24, 0x18, 0xd4, 0x60, 0x5f, 0x39, 0x28, 0xe3,
0xf5, 0x73, 0xd0, 0x1e, 0xa0, 0x7b, 0xb0, 0x26, 0xff, 0xec, 0x58, 0x14, 0x07, 0xbe, 0xa8, 0x1c,
0x55, 0x0c, 0x02, 0xea, 0x71, 0x44, 0xfb, 0xab, 0x02, 0x5b, 0x73, 0x99, 0x8e, 0xf6, 0x61, 0xcf,
0x76, 0x7a, 0x16, 0xd6, 0x8d, 0x9e, 0xed, 0x3a, 0xa4, 0xf7, 0xac, 0x63, 0xcd, 0xdd, 0xf1, 0x4d,
0x00, 0xd3, 0xee, 0x1a, 0xfd, 0x6e, 0xd7, 0x76, 0x1d, 0x55, 0x41, 0x2a, 0xac, 0x77, 0xb0, 0xd5,
0xb5, 0x9c, 0x9e, 0xce, 0x55, 0xd4, 0x12, 0x97, 0xe8, 0x34, 0x5d, 0xc7, 0x22, 0x86, 0xde, 0x6a,
0xa9, 0x65, 0xb4, 0x01, 0xd5, 0x27, 0xae, 0x6d, 0x58, 0x6d, 0xdd, 0x6e, 0xa9, 0x4b, 0xe8, 0x0e,
0xdc, 0xea, 0x60, 0xf7, 0xc4, 0x12, 0x04, 0x7a, 0xab, 0xf5, 0x8c, 0x74, 0xb0, 0x6b, 0xf6, 0x0d,
0xcb, 0x54, 0x2b, 0x9c, 0x4d, 0xc8, 0x92, 0xae, 0xa5, 0x63, 0xa3, 0xa9, 0x2e, 0xa3, 0x6d, 0xd8,
0x90, 0x88, 0xe1, 0xb6, 0xdb, 0xba, 0x63, 0xaa, 0x2b, 0x9c, 0xd0, 0xb4, 0x8d, 0xdc, 0xde, 0xaa,
0x36, 0x00, 0xb4, 0x98, 0xfe, 0xe8, 0x3e, 0xdc, 0x6b, 0xdb, 0x06, 0x76, 0xa5, 0x2b, 0xa6, 0xdd,
0xed, 0xe9, 0x8e, 0x31, 0xbf, 0x99, 0x0d, 0xa8, 0xf2, 0x72, 0x75, 0x62, 0x5b, 0x2d, 0x53, 0x55,
0x78, 0x1d, 0x6a, 0xdb, 0xa6, 0xfc, 0x2a, 0xf1, 0xaf, 0x93, 0x62, 0xad, 0xac, 0x39, 0xb0, 0xbd,
0x90, 0xec, 0xdc, 0x88, 0x8b, 0xed, 0xc7, 0xb6, 0xa3, 0xb7, 0x48, 0xdb, 0x32, 0x6d, 0xfd, 0xb2,
0x88, 0x55, 0xa1, 0xa2, 0xf7, 0x4d, 0xdb, 0x55, 0x15, 0xfe, 0xf3, 0x89, 0x6d, 0x5a, 0xae, 0x5a,
0xd2, 0x62, 0x50, 0xe7, 0xf3, 0x18, 0x69, 0x70, 0xd7, 0xe9, 0xb7, 0x8f, 0x2d, 0x4c, 0xdc, 0x13,
0xd2, 0xed, 0x58, 0xfa, 0x4f, 0x2d, 0xdc, 0x9d, 0x63, 0xdb, 0x82, 0x35, 0xbe, 0xa1, 0x7c, 0x55,
0x1e, 0x40, 0xef, 0xa9, 0x3b, 0x15, 0x57, 0x4b, 0xe8, 0x26, 0x6c, 0xb7, 0xfb, 0xad, 0x9e, 0xdd,
0x69, 0x59, 0xe7, 0x70, 0x59, 0xfb, 0x56, 0x91, 0xb5, 0x73, 0x3e, 0x5f, 0x3f, 0x84, 0x0f, 0xb0,
0x65, 0xb8, 0x58, 0x14, 0x74, 0xd3, 0x7a, 0xc2, 0x83, 0x7d, 0xf9, 0xc1, 0x77, 0xdb, 0x3a, 0xee,
0x89, 0x80, 0xaa, 0x0a, 0x5a, 0x86, 0x52, 0xc7, 0x98, 0x3d, 0x6e, 0x5e, 0xfa, 0xd5, 0x32, 0x5a,
0x83, 0x95, 0x27, 0x56, 0xd3, 0x36, 0x5a, 0x96, 0xba, 0xc4, 0xff, 0x2b, 0xdc, 0x5e, 0x93, 0x6f,
0xa8, 0xdf, 0x33, 0x5d, 0x17, 0xe7, 0xfc, 0x6a, 0x05, 0xdd, 0x82, 0x1d, 0xb9, 0x62, 0x3b, 0xb3,
0x0b, 0xcb, 0xda, 0x27, 0xb0, 0x71, 0xe1, 0xcf, 0x15, 0xd5, 0x60, 0x25, 0x7e, 0x9e, 0x78, 0x29,
0x4d, 0x6b, 0xca, 0x7e, 0xf9, 0xa0, 0x8a, 0x8b, 0x4f, 0x0d, 0x4f, 0x7b, 0xf5, 0x69, 0xc3, 0x89,
0x76, 0x61, 0xa5, 0xe8, 0xee, 0x94, 0xbc, 0xbb, 0x2b, 0x00, 0x84, 0xa0, 0x9c, 0x25, 0x81, 0x68,
0x43, 0xaa, 0xcd, 0x1b, 0x98, 0x7f, 0x1c, 0x6f, 0x82, 0x6c, 0xfe, 0x48, 0x1a, 0x65, 0x89, 0x4f,
0x35, 0x3a, 0xed, 0x94, 0x78, 0x7f, 0x9a, 0xc6, 0x51, 0x98, 0x52, 0xd4, 0x81, 0x95, 0xa2, 0xc1,
0x2a, 0x89, 0xf6, 0xe0, 0xf3, 0x2b, 0xb5, 0x07, 0x33, 0xce, 0xc9, 0x4e, 0x0c, 0x17, 0x34, 0x5a,
0x0c, 0x7b, 0x97, 0x37, 0xf0, 0xdf, 0x9b, 0xc5, 0xbf, 0x2b, 0x97, 0x9b, 0x9c, 0xfe, 0x87, 0xca,
0xb6, 0x69, 0x94, 0xd0, 0x34, 0x25, 0x31, 0x4d, 0xfc, 0x22, 0x84, 0x15, 0xd1, 0x36, 0x09, 0xbc,
0x23, 0x61, 0xf4, 0x10, 0x20, 0x65, 0x5e, 0xc2, 0x44, 0x67, 0x93, 0x8f, 0x06, 0xbb, 0x85, 0x83,
0xc5, 0xd0, 0x55, 0xef, 0x15, 0x43, 0x17, 0xae, 0x0a, 0x69, 0xfe, 0x8d, 0x4c, 0x50, 0xc7, 0x5e,
0xca, 0x48, 0x16, 0x0f, 0x78, 0x63, 0x28, 0x08, 0xca, 0x6f, 0x25, 0xd8, 0xe4, 0x3a, 0x7d, 0xa1,
0xc2, 0x41, 0xed, 0xbb, 0xd2, 0x62, 0x37, 0x3e, 0x13, 0xbd, 0x03, 0xa8, 0xd0, 0x24, 0x89, 0x92,
0xbc, 0x19, 0x47, 0x05, 0x73, 0x12, 0xfb, 0xf5, 0xae, 0x18, 0xf7, 0xb0, 0x14, 0x40, 0xdd, 0xf9,
0x38, 0x5f, 0x67, 0xe2, 0x98, 0x0b, 0x35, 0xca, 0x60, 0x3b, 0xef, 0x2a, 0xe9, 0x19, 0x0d, 0x99,
0x2c, 0xe6, 0xf2, 0xcf, 0xdd, 0x7e, 0x47, 0xfa, 0xf3, 0x4d, 0xe5, 0x27, 0x6c, 0x71, 0x46, 0xd9,
0x95, 0xa4, 0x17, 0x01, 0xad, 0x05, 0x5b, 0x73, 0x32, 0x68, 0x0f, 0x6a, 0xbc, 0x97, 0x32, 0x9a,
0xc4, 0x7a, 0x62, 0x39, 0xbd, 0xb9, 0x2b, 0x7d, 0x07, 0x6e, 0x59, 0x8e, 0x29, 0x8a, 0x8d, 0xed,
0x3c, 0x6e, 0x59, 0xa4, 0xdf, 0xe3, 0xb5, 0xdf, 0x31, 0x2c, 0x55, 0xd1, 0xfe, 0xf4, 0x9a, 0x81,
0x47, 0x6e, 0x16, 0x11, 0x58, 0xbf, 0xd0, 0x8b, 0x2b, 0x22, 0x7a, 0x5f, 0xbe, 0x6b, 0x96, 0xce,
0x34, 0xee, 0xf8, 0x02, 0x21, 0xba, 0x0d, 0xab, 0x41, 0x4a, 0x86, 0xbc, 0xe0, 0xe6, 0xf3, 0xcf,
0x4a, 0x90, 0x9e, 0xf0, 0x4f, 0xb4, 0x07, 0x3c, 0xa1, 0x4e, 0x83, 0x71, 0xc0, 0x5e, 0x8a, 0xe4,
0x29, 0xe1, 0x73, 0x40, 0x7b, 0x05, 0xb7, 0x5e, 0x73, 0x19, 0xbe, 0x77, 0xa7, 0xb5, 0xdf, 0x2b,
0xb0, 0xf7, 0x26, 0x71, 0x74, 0x17, 0x80, 0x25, 0x5e, 0x98, 0xfa, 0x49, 0x10, 0xcb, 0xeb, 0x55,
0xc5, 0x33, 0x08, 0x5f, 0x17, 0x73, 0xe0, 0x80, 0x16, 0x73, 0x5f, 0x09, 0xcf, 0x20, 0xe8, 0xc7,
0x50, 0xe1, 0x23, 0x05, 0x1f, 0xf4, 0xb8, 0xeb, 0x1f, 0xbf, 0xc5, 0x75, 0x3e, 0x5f, 0xd8, 0xe1,
0x30, 0xc2, 0x52, 0x4b, 0xfb, 0x8d, 0x02, 0xab, 0x05, 0x86, 0xbe, 0xb8, 0x70, 0x8b, 0xe5, 0x55,
0xb9, 0xbd, 0x70, 0x09, 0xcd, 0xfc, 0x69, 0x65, 0xf6, 0x12, 0xff, 0x90, 0x4f, 0x8e, 0x83, 0xd9,
0xdb, 0xff, 0x06, 0xbd, 0x15, 0x1a, 0x8a, 0x19, 0x07, 0x21, 0x58, 0xe2, 0x5e, 0xe4, 0xe3, 0x9d,
0xf8, 0x7d, 0xf4, 0xcf, 0x32, 0x2c, 0xcb, 0x80, 0xa1, 0xdf, 0x29, 0x50, 0x9d, 0x66, 0x3d, 0xba,
0xe2, 0x4b, 0xc3, 0xf4, 0x11, 0x61, 0xf7, 0xc1, 0xd5, 0x15, 0xe4, 0x85, 0xd2, 0x3e, 0xfa, 0xe5,
0x3f, 0xfe, 0xf5, 0xdb, 0xd2, 0xbe, 0x76, 0xa7, 0x31, 0x95, 0xca, 0xdf, 0xb7, 0x1e, 0x25, 0x85,
0xf0, 0x23, 0xe5, 0x53, 0xf4, 0xad, 0x02, 0xef, 0x5d, 0x56, 0x39, 0xd1, 0xa3, 0xb7, 0x98, 0x7c,
0xc3, 0x13, 0xcd, 0xee, 0xfb, 0x85, 0xee, 0xcc, 0x43, 0x57, 0xdd, 0x2d, 0x1e, 0xba, 0xb4, 0x43,
0xe1, 0xdb, 0xff, 0x6b, 0x1f, 0x2d, 0xfa, 0x36, 0xa3, 0x70, 0xc1, 0xcd, 0x5f, 0x2b, 0x80, 0x16,
0xcb, 0x07, 0xfa, 0xe2, 0x1a, 0x15, 0x47, 0xba, 0xf8, 0xf0, 0xda, 0xb5, 0xea, 0x40, 0x79, 0xa0,
0x1c, 0xbf, 0x82, 0x0f, 0xfc, 0x68, 0xf2, 0x66, 0x8e, 0xe3, 0x35, 0x79, 0xf8, 0x1d, 0x9e, 0x35,
0x1d, 0xe5, 0x6b, 0x23, 0x97, 0x1e, 0x45, 0x7c, 0xf8, 0xaf, 0x47, 0xc9, 0xa8, 0x31, 0xa2, 0xa1,
0xc8, 0xa9, 0x86, 0x5c, 0xf2, 0xe2, 0x20, 0x9d, 0x7f, 0x8b, 0xcc, 0xc9, 0xbe, 0x94, 0xc0, 0xbf,
0x15, 0xe5, 0x74, 0x59, 0xa8, 0xfc, 0xe0, 0x3f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xdf, 0x32, 0x25,
0x1e, 0xbd, 0x14, 0x00, 0x00,
// 1343 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x57, 0xbb, 0x6f, 0x5b, 0xb7,
0x1a, 0xf7, 0xb1, 0x2c, 0x3f, 0xbe, 0xf8, 0x21, 0xf3, 0xe6, 0xde, 0xc8, 0x8a, 0x93, 0xeb, 0x7b,
0x82, 0x9b, 0x38, 0x69, 0x21, 0xd9, 0x6e, 0x91, 0xe6, 0x81, 0x16, 0x90, 0xe5, 0x63, 0x4b, 0x80,
0x2d, 0x1b, 0xb4, 0x5c, 0xb7, 0x59, 0x08, 0x5a, 0xa2, 0x94, 0x03, 0x48, 0xe4, 0x29, 0x49, 0xa5,
0xb1, 0xc7, 0xae, 0x45, 0xbb, 0x14, 0xe8, 0xd6, 0xa9, 0x9d, 0x3b, 0x76, 0xe8, 0xd2, 0x3d, 0x6b,
0x97, 0x8e, 0x1d, 0xfa, 0x47, 0x74, 0x2c, 0x48, 0x9e, 0x23, 0x4b, 0x7e, 0x27, 0x68, 0x80, 0x6e,
0x87, 0xbf, 0xef, 0xc1, 0x1f, 0x3f, 0x7e, 0x0f, 0x1e, 0x58, 0x6a, 0x09, 0xd1, 0x6a, 0xb3, 0x42,
0xbd, 0x2d, 0xba, 0x8d, 0x82, 0x8a, 0x18, 0xab, 0x3f, 0x2f, 0xbc, 0x58, 0x8e, 0x96, 0x0f, 0x98,
0xa6, 0xcb, 0x0e, 0x26, 0x0e, 0xce, 0x47, 0x52, 0x68, 0x81, 0x6e, 0x39, 0x8b, 0xbc, 0x15, 0xe5,
0x63, 0x51, 0xcf, 0x22, 0x37, 0x1f, 0x3b, 0xa4, 0x51, 0x58, 0xa0, 0x9c, 0x0b, 0x4d, 0x75, 0x28,
0xb8, 0x72, 0xc6, 0xb9, 0x3b, 0xb1, 0xb4, 0x2d, 0x78, 0x4b, 0x76, 0x39, 0x0f, 0x79, 0xab, 0x20,
0x22, 0x26, 0x07, 0x94, 0xe6, 0x62, 0x25, 0xbb, 0x3a, 0xe8, 0x36, 0x0b, 0x94, 0x1f, 0xc6, 0xa2,
0xdb, 0x27, 0x45, 0x8d, 0xae, 0xb3, 0x8d, 0xe5, 0xff, 0x3d, 0x29, 0xd7, 0x61, 0x87, 0x29, 0x4d,
0x3b, 0x51, 0xac, 0x70, 0x23, 0x56, 0x90, 0x51, 0xbd, 0xa0, 0x34, 0xd5, 0xdd, 0x78, 0x53, 0xff,
0x7b, 0x0f, 0x32, 0x98, 0xd5, 0x45, 0x8b, 0x87, 0x47, 0x0c, 0xb3, 0xcf, 0xba, 0x4c, 0x69, 0x54,
0x86, 0xd1, 0xba, 0xe0, 0xcd, 0xb0, 0x95, 0xf5, 0x16, 0xbc, 0xc5, 0x6b, 0x2b, 0x4b, 0xf9, 0x0b,
0x0f, 0x9f, 0x8f, 0x1d, 0x18, 0x42, 0x25, 0x6b, 0x87, 0x63, 0x7b, 0x14, 0x40, 0x9a, 0x76, 0x1b,
0xa1, 0xc8, 0x0e, 0x5b, 0x47, 0x85, 0xab, 0x3b, 0x2a, 0x1a, 0x33, 0xec, 0xac, 0xfd, 0x1f, 0x3d,
0xb8, 0xb9, 0x29, 0x78, 0x0b, 0xbb, 0xd8, 0xfd, 0xf3, 0x09, 0xff, 0xe2, 0xc1, 0xdc, 0xae, 0x96,
0x8c, 0x76, 0xce, 0xa2, 0xdb, 0x84, 0x8c, 0x4a, 0x84, 0x64, 0x80, 0xf8, 0xe3, 0x4b, 0xf6, 0x3b,
0xe9, 0xf3, 0xf8, 0x04, 0xe5, 0x21, 0x3c, 0xd3, 0x73, 0xea, 0x20, 0xf4, 0x7f, 0x98, 0xb2, 0x74,
0xcc, 0x1e, 0x9a, 0x71, 0x6d, 0x0f, 0x35, 0x59, 0x1e, 0xc2, 0x93, 0x16, 0x2e, 0x39, 0x74, 0xf5,
0x5f, 0x30, 0x7b, 0x4c, 0x47, 0x3a, 0x8e, 0xfe, 0xcf, 0x1e, 0xe4, 0xce, 0xdf, 0xed, 0x6f, 0x8c,
0xf8, 0x7d, 0xc8, 0xa8, 0x90, 0xb7, 0xda, 0x8c, 0x74, 0xb5, 0x66, 0x92, 0xf2, 0x3a, 0xb3, 0x3c,
0xc7, 0xf1, 0x8c, 0xc3, 0xf7, 0x12, 0x18, 0xdd, 0x83, 0x99, 0x90, 0x6b, 0x26, 0xc3, 0x0e, 0x91,
0x4c, 0x75, 0xdb, 0x5a, 0x65, 0x53, 0x56, 0x73, 0x3a, 0x86, 0xb1, 0x43, 0xfd, 0x57, 0x23, 0x30,
0x7b, 0x9a, 0xf3, 0x33, 0x18, 0x67, 0xbc, 0x2e, 0x1a, 0x21, 0x77, 0xac, 0xa7, 0x57, 0x3e, 0x7a,
0x5d, 0xd6, 0x79, 0x7b, 0xcb, 0x41, 0xec, 0x05, 0xf7, 0xfc, 0xa1, 0x07, 0x30, 0xab, 0x68, 0x27,
0x6a, 0x33, 0x22, 0xa9, 0x66, 0xe4, 0x39, 0x93, 0xfa, 0xc8, 0x1e, 0x23, 0x8d, 0x67, 0x9c, 0x00,
0x53, 0xcd, 0xca, 0x06, 0x46, 0x77, 0x60, 0xaa, 0x4d, 0x79, 0xab, 0x4b, 0x5b, 0x8c, 0xd4, 0x45,
0x83, 0xd9, 0x43, 0x4c, 0xe0, 0xc9, 0x04, 0x2c, 0x89, 0x06, 0x33, 0x61, 0xe9, 0xd0, 0x97, 0x84,
0xb6, 0x35, 0x93, 0x9c, 0xea, 0xf0, 0x05, 0x53, 0xd9, 0x11, 0xe7, 0xaf, 0x43, 0x5f, 0x16, 0xfb,
0x60, 0xa3, 0x1a, 0x49, 0xd1, 0xa4, 0x3c, 0xd4, 0x87, 0xa4, 0x19, 0x1a, 0x51, 0x36, 0xed, 0x22,
0xd8, 0xc3, 0xd7, 0x2d, 0x8c, 0xf6, 0x60, 0xc6, 0x1d, 0xd2, 0xa5, 0xc4, 0x4b, 0xad, 0xb2, 0xa3,
0x0b, 0xa9, 0xc5, 0x6b, 0x2b, 0xef, 0x5e, 0x96, 0x78, 0x16, 0x28, 0x39, 0x23, 0x3c, 0xad, 0xfa,
0x97, 0x0a, 0x7d, 0x00, 0x59, 0xc6, 0xe9, 0x41, 0x9b, 0x91, 0xcf, 0x85, 0x6c, 0x10, 0xd3, 0x7d,
0x88, 0x68, 0x36, 0x15, 0xd3, 0x2a, 0x3b, 0x6e, 0x99, 0xfc, 0xdb, 0xc9, 0xf7, 0x85, 0x6c, 0xd4,
0xc2, 0x0e, 0xdb, 0x76, 0x42, 0x74, 0x1d, 0xd2, 0x1d, 0xd1, 0x60, 0xed, 0xec, 0x94, 0x0d, 0x81,
0x5b, 0xf8, 0x5f, 0x7a, 0x30, 0x35, 0x10, 0x68, 0x94, 0x85, 0xeb, 0x41, 0xb5, 0xb4, 0xbd, 0x56,
0xa9, 0x6e, 0x90, 0xbd, 0xea, 0xee, 0x4e, 0x50, 0xaa, 0xac, 0x57, 0x82, 0xb5, 0xcc, 0x10, 0x9a,
0x84, 0xf1, 0xcd, 0x4a, 0x35, 0x28, 0xe2, 0xe5, 0x87, 0x19, 0x0f, 0x8d, 0xc3, 0xc8, 0xfa, 0x66,
0xb1, 0x94, 0x19, 0x46, 0x13, 0x90, 0xde, 0xda, 0xdb, 0x2c, 0xee, 0x67, 0x52, 0x68, 0x0c, 0x52,
0xc5, 0x2d, 0x9c, 0x19, 0x41, 0x00, 0xa3, 0xc5, 0x2d, 0x4c, 0xf6, 0x57, 0x33, 0x69, 0x63, 0xb7,
0xbd, 0xb1, 0x41, 0xb6, 0x77, 0xf6, 0x76, 0x33, 0xa3, 0x28, 0x07, 0xff, 0xd9, 0xdd, 0x09, 0x82,
0x4f, 0xc8, 0x7e, 0xa5, 0x56, 0x26, 0xe5, 0xa0, 0xb8, 0x16, 0x60, 0xb2, 0xfa, 0x69, 0x2d, 0xc8,
0x8c, 0xf9, 0xf7, 0x61, 0x6a, 0xe0, 0xf4, 0x28, 0x0b, 0x63, 0xd1, 0x73, 0x49, 0x15, 0x53, 0x59,
0x6f, 0x21, 0xb5, 0x38, 0x81, 0x93, 0xa5, 0x8f, 0x7b, 0xcd, 0xb4, 0xd7, 0x11, 0x50, 0x0e, 0xc6,
0x92, 0xf2, 0xf3, 0xe2, 0xf2, 0x4b, 0x00, 0x84, 0x20, 0xd5, 0x95, 0xa1, 0xcd, 0x93, 0x89, 0xf2,
0x10, 0x36, 0x8b, 0xd5, 0x69, 0x70, 0xd5, 0x49, 0x94, 0xe8, 0xca, 0x3a, 0xf3, 0x59, 0x2f, 0x95,
0x4d, 0x03, 0x51, 0x91, 0xe0, 0x8a, 0xa1, 0x1d, 0x18, 0x4b, 0x2a, 0x60, 0xd8, 0xde, 0xdf, 0xc3,
0x2b, 0xdd, 0x5f, 0x1f, 0x39, 0x57, 0x2a, 0x38, 0x71, 0xe3, 0x47, 0x30, 0x7f, 0x76, 0x87, 0x7d,
0x6b, 0x3b, 0xbe, 0xf2, 0xce, 0xde, 0x72, 0x8b, 0x69, 0xda, 0xa0, 0x9a, 0xc6, 0x79, 0xdd, 0x92,
0x4c, 0x29, 0x12, 0x31, 0x59, 0x4f, 0x42, 0x98, 0xb6, 0x79, 0x6d, 0xf1, 0x1d, 0x07, 0xa3, 0xc7,
0x00, 0x4a, 0x53, 0xa9, 0x6d, 0xea, 0xc5, 0xbd, 0x3b, 0x97, 0x10, 0x4c, 0xa6, 0x62, 0xbe, 0x96,
0x4c, 0x45, 0x3c, 0x61, 0xb5, 0xcd, 0x1a, 0xad, 0x41, 0xa6, 0x4d, 0x95, 0x26, 0xdd, 0xa8, 0x61,
0x2a, 0xd7, 0x3a, 0x48, 0x5d, 0xea, 0x60, 0xda, 0xd8, 0xec, 0x59, 0x13, 0x03, 0xfa, 0xbf, 0x0f,
0x9f, 0x6e, 0x97, 0x7d, 0xd1, 0x5b, 0x84, 0x34, 0x93, 0x52, 0xc8, 0xb8, 0x5b, 0xa2, 0xc4, 0xb3,
0x8c, 0xea, 0xf9, 0x5d, 0x3b, 0x8f, 0xb1, 0x53, 0x40, 0xbb, 0x27, 0xe3, 0xfc, 0x26, 0x23, 0xe1,
0x44, 0xa8, 0x51, 0x17, 0x66, 0xe3, 0xb2, 0x67, 0x2f, 0x18, 0xd7, 0x44, 0x1f, 0x46, 0xcc, 0x76,
0x93, 0xe9, 0x95, 0xca, 0x6b, 0xba, 0x3f, 0x3e, 0x54, 0x7c, 0xc3, 0x81, 0xf1, 0x58, 0x3b, 0x8c,
0x18, 0x8e, 0x5b, 0x4b, 0x0f, 0xf0, 0x37, 0x61, 0xe6, 0x84, 0x0e, 0x9a, 0x87, 0xac, 0x29, 0xb4,
0x52, 0x99, 0x04, 0x1f, 0x07, 0xd5, 0xda, 0x89, 0x62, 0xbe, 0x09, 0x37, 0x82, 0xea, 0x1a, 0xd9,
0x5e, 0x27, 0xbb, 0x95, 0xea, 0xc6, 0x66, 0x40, 0xf6, 0x6a, 0xb5, 0x00, 0x17, 0xab, 0xa5, 0x20,
0xe3, 0xf9, 0x3f, 0x9d, 0x33, 0x91, 0xdc, 0x61, 0x11, 0x81, 0xc9, 0x81, 0x66, 0xe9, 0xd9, 0xe8,
0x3d, 0x7d, 0xdd, 0x2c, 0xed, 0xeb, 0xac, 0x78, 0xc0, 0x21, 0x9a, 0x83, 0xf1, 0x50, 0x91, 0x66,
0xc8, 0x69, 0x3b, 0x1e, 0x50, 0x63, 0xa1, 0x5a, 0x37, 0x4b, 0x34, 0x0f, 0x26, 0xa1, 0x0e, 0xc2,
0x76, 0xa8, 0x0f, 0x6d, 0xf2, 0x0c, 0xe3, 0x63, 0xc0, 0x3f, 0x82, 0x1b, 0xe7, 0x14, 0xc3, 0x5b,
0x27, 0xed, 0x7f, 0xe7, 0xc1, 0xfc, 0x45, 0xea, 0xe8, 0x36, 0x80, 0x96, 0x94, 0xab, 0xba, 0x0c,
0x23, 0x57, 0x5e, 0x13, 0xb8, 0x0f, 0x31, 0x72, 0x3b, 0xa8, 0x1b, 0x2c, 0x19, 0xcc, 0xc3, 0xb8,
0x0f, 0x41, 0x1f, 0x42, 0xda, 0xf4, 0x7c, 0x33, 0x89, 0x0d, 0xf5, 0x7b, 0x97, 0x50, 0x37, 0x03,
0xa0, 0xc2, 0x9b, 0x02, 0x3b, 0x2b, 0xff, 0x6b, 0x0f, 0xc6, 0x13, 0x0c, 0x3d, 0x1a, 0xa8, 0x62,
0x57, 0x2a, 0x73, 0xa7, 0x8a, 0x70, 0x2d, 0x7e, 0xfb, 0xf6, 0x17, 0xf1, 0xfb, 0x66, 0xb4, 0x37,
0xfa, 0xab, 0xff, 0x02, 0xbb, 0x31, 0xc6, 0xed, 0x10, 0x42, 0x08, 0x46, 0x0c, 0x8b, 0x78, 0xfe,
0xda, 0xef, 0x95, 0xdf, 0x52, 0x30, 0xea, 0x02, 0x86, 0xbe, 0xf5, 0x60, 0xa2, 0x97, 0xf5, 0xe8,
0x8a, 0x4f, 0xc1, 0xde, 0x2b, 0x2f, 0xb7, 0x74, 0x75, 0x03, 0x57, 0x50, 0xfe, 0xdd, 0x2f, 0x7e,
0xfd, 0xe3, 0x9b, 0xe1, 0x05, 0xff, 0x66, 0xdf, 0xaf, 0x88, 0x33, 0x7b, 0x22, 0x13, 0xe5, 0x27,
0xde, 0x03, 0xf4, 0x83, 0x07, 0xd7, 0xcf, 0xea, 0x9c, 0xe8, 0xc9, 0x25, 0x5b, 0x5e, 0xf0, 0x86,
0xce, 0xdd, 0x4a, 0x6c, 0xfb, 0x7e, 0x52, 0xf2, 0xdb, 0xc9, 0x4f, 0x8a, 0xbf, 0x6c, 0xb9, 0xbd,
0xe3, 0xdf, 0x3d, 0xcd, 0xad, 0xcf, 0x60, 0x80, 0xe6, 0x57, 0x1e, 0xa0, 0xd3, 0xed, 0x03, 0x3d,
0x7a, 0x83, 0x8e, 0xe3, 0x28, 0x3e, 0x7e, 0xe3, 0x5e, 0xb5, 0xe8, 0x2d, 0x79, 0xab, 0x47, 0xf0,
0xbf, 0xba, 0xe8, 0x5c, 0xec, 0x63, 0xf5, 0x9a, 0xbb, 0xfc, 0x1d, 0x93, 0x35, 0x3b, 0xde, 0xb3,
0x52, 0xac, 0xdd, 0x12, 0xe6, 0x75, 0x96, 0x17, 0xb2, 0x55, 0x68, 0x31, 0x6e, 0x73, 0xaa, 0xe0,
0x44, 0x34, 0x0a, 0xd5, 0x39, 0xff, 0x91, 0x4f, 0x1d, 0xf0, 0xa7, 0xe7, 0x1d, 0x8c, 0x5a, 0x93,
0xf7, 0xfe, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x2f, 0x7b, 0x24, 0x37, 0x79, 0x0e, 0x00, 0x00,
}