diff --git a/Cargo.lock b/Cargo.lock index 877ec1a1..e69de29b 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1,1961 +0,0 @@ -[[package]] -name = "aes" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "aes-soft 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "aesni 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "block-cipher-trait 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "aes-ctr" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "aes-soft 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "aesni 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", - "ctr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "stream-cipher 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "aes-soft" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-cipher-trait 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "aesni" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-cipher-trait 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "stream-cipher 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "aho-corasick" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "alsa" -version = "0.0.1" -source = "git+https://github.com/plietar/rust-alsa#8c63543fa0ccd971cf15f5675293d19febd6f79e" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "arrayvec" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "base64" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "base64" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "bit-set" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bit-vec 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "bit-vec" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "bitflags" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "bitflags" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "bitflags" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "block-buffer" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-padding 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "byte-tools 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "block-cipher-trait" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "block-modes" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-cipher-trait 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "block-padding 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "block-padding" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byte-tools 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "byte-tools" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "byteorder" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "byteorder" -version = "1.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "bytes" -version = "0.4.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "c_linked_list" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "cc" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "cfg-if" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "cloudabi" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-deque" -version = "0.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-epoch 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "crossbeam-utils" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "crypto-mac" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "ctr" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-cipher-trait 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "stream-cipher 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "digest" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "dns-parser" -version = "0.3.2" -source = "git+https://github.com/plietar/dns-parser#1d3e5a5591bc72eb061c23bd426c4a25f2f73791" -dependencies = [ - "byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "dns-sd" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "dtoa" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "env_logger" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "error-chain" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "extprim" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "fake-simd" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "fuchsia-zircon" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "fuchsia-zircon-sys" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "futures" -version = "0.1.25" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "futures-cpupool" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "gcc" -version = "0.3.55" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "generic-array" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "get_if_addrs" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "c_linked_list 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "get_if_addrs-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "get_if_addrs-sys" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "getopts" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "hex" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "hmac" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "httparse" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "hyper" -version = "0.11.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "mime 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", - "relay 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-proto 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "want 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "hyper-proxy" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "idna" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "iovec" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "itoa" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "jack" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "jack-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "jack-sys" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "kernel32-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "language-tags" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazy_static" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lazy_static" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "lazycell" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lewton" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "libc" -version = "0.2.43" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "libloading" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "libpulse-sys" -version = "0.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot" -version = "0.1.0" -dependencies = [ - "base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)", - "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)", - "librespot-audio 0.1.0", - "librespot-connect 0.1.0", - "librespot-core 0.1.0", - "librespot-metadata 0.1.0", - "librespot-playback 0.1.0", - "librespot-protocol 0.1.0", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf 1.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "rpassword 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", - "sha-1 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-signal 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "vergen 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot-audio" -version = "0.1.0" -dependencies = [ - "aes-ctr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "bit-set 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "lewton 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "librespot-core 0.1.0", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "tempfile 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tremor 0.1.0 (git+https://github.com/plietar/rust-tremor)", - "vorbis 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot-connect" -version = "0.1.0" -dependencies = [ - "aes-ctr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "block-modes 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "dns-sd 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)", - "librespot-core 0.1.0", - "librespot-playback 0.1.0", - "librespot-protocol 0.1.0", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "mdns 0.2.0 (git+https://github.com/plietar/rust-mdns)", - "num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf 1.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", - "sha-1 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot-core" -version = "0.1.0" -dependencies = [ - "aes 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "block-modes 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "extprim 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)", - "hyper-proxy 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", - "librespot-protocol 0.1.0", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)", - "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf 1.7.4 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "rpassword 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_derive 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)", - "sha-1 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "shannon 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "uuid 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "vergen 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot-metadata" -version = "0.1.0" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "librespot-core 0.1.0", - "librespot-protocol 0.1.0", - "linear-map 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "protobuf 1.7.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot-playback" -version = "0.1.0" -dependencies = [ - "alsa 0.0.1 (git+https://github.com/plietar/rust-alsa)", - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "jack 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "libpulse-sys 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "librespot-audio 0.1.0", - "librespot-core 0.1.0", - "librespot-metadata 0.1.0", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "portaudio-rs 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "librespot-protocol" -version = "0.1.0" -dependencies = [ - "protobuf 1.7.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "linear-map" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "lock_api" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "log" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "log" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "matches" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "mdns" -version = "0.2.0" -source = "git+https://github.com/plietar/rust-mdns#0974ab4ff7874437e11a89037c8258362a0061f8" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "dns-parser 0.3.2 (git+https://github.com/plietar/dns-parser)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "get_if_addrs 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)", - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "multimap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "socket2 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "memchr" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "memoffset" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "mime" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "mio" -version = "0.6.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazycell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "mio-uds" -version = "0.6.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "miow" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "multimap" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "net2" -version = "0.2.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "nix" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", - "cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "nodrop" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "num-bigint" -version = "0.1.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "num-integer" -version = "0.1.39" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "num-traits" -version = "0.1.43" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "num-traits" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "num_cpus" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "ogg" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "ogg-sys" -version = "0.0.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "opaque-debug" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "owning_ref" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "parking_lot" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lock_api 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "parking_lot_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "pbkdf2" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)", - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", - "crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "percent-encoding" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "pkg-config" -version = "0.3.14" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "portaudio-rs" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "portaudio-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "portaudio-sys" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "proc-macro2" -version = "0.4.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "protobuf" -version = "1.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "quick-error" -version = "1.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "quote" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "quote" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand" -version = "0.3.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)", - "fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_core" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rand_core" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "redox_syscall" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "regex" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "aho-corasick 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)", - "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", - "utf8-ranges 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "regex-syntax" -version = "0.5.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "relay" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rpassword" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "termios 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "rustc-serialize" -version = "0.3.24" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "rustc_version" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "safemem" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "scoped-tls" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "scopeguard" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "semver" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "semver-parser" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "serde" -version = "0.9.15" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "serde" -version = "1.0.80" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "serde_codegen_internals" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "serde_derive" -version = "0.9.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_codegen_internals 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "serde_derive" -version = "1.0.80" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", - "syn 0.15.11 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "serde_json" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)", - "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "sha-1" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "sha2" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "opaque-debug 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "shannon" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "slab" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "slab" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "smallvec" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "smallvec" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "socket2" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "stable_deref_trait" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "stream-cipher" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "subtle" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "syn" -version = "0.11.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", - "synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "syn" -version = "0.15.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)", - "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)", - "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "synom" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "take" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "tempfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "termios" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "thread_local" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "time" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-current-thread 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-fs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-udp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-uds 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-codec" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-core" -version = "0.1.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-current-thread" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-executor" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-fs" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-io" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-proto" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", - "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "smallvec 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)", - "take 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-reactor" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-service" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-signal" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-tcp" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-threadpool" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-deque 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)", - "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-timer" -version = "0.2.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-udp" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tokio-uds" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)", - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)", - "mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", - "tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "tremor" -version = "0.1.0" -source = "git+https://github.com/plietar/rust-tremor#5958cc302e78f535dad90e9665da981ddff4000a" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "tremor-sys 0.1.0 (git+https://github.com/plietar/rust-tremor)", -] - -[[package]] -name = "tremor-sys" -version = "0.1.0" -source = "git+https://github.com/plietar/rust-tremor#5958cc302e78f535dad90e9665da981ddff4000a" -dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "try-lock" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "typenum" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "ucd-util" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "unicase" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "unicode-bidi" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "unicode-normalization" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "unicode-width" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "unicode-xid" -version = "0.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "unicode-xid" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "unreachable" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "url" -version = "1.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", - "matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", - "percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "utf8-ranges" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "uuid" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "vergen" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", - "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "version_check" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "void" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "vorbis" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)", - "rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", - "vorbis-encoder 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", - "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)", - "vorbisfile-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "vorbis-encoder" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", - "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "vorbis-sys" -version = "0.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "vorbisfile-sys" -version = "0.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)", - "ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)", - "vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "want" -version = "0.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "try-lock 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "winapi" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "winapi-build" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" - -[[package]] -name = "ws2_32-sys" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[metadata] -"checksum aes 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "efc57804fcd4ac04dae62b2f6d7f33bbbb8fd400efed3e5ad6adef0dd667a9f0" -"checksum aes-ctr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c1423b3db67ca4d7691404b6643c01a8d40569e00eb77f24f7278223fbb1a107" -"checksum aes-soft 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "acdc19c789666840bb86d1df8ee1f458418f74a6b9c8f10538fb700de5829cb8" -"checksum aesni 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ea93ee7c249d885b395fca6181fd6416f0249b1a0a7c7a2e8bfd6b74cebd2f82" -"checksum aho-corasick 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "68f56c7353e5a9547cbd76ed90f7bb5ffc3ba09d4ea9bd1d8c06c8b1142eeb5a" -"checksum alsa 0.0.1 (git+https://github.com/plietar/rust-alsa)" = "" -"checksum arrayvec 0.4.7 (registry+https://github.com/rust-lang/crates.io-index)" = "a1e964f9e24d588183fcb43503abda40d288c8657dfc27311516ce2f05675aef" -"checksum base64 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30e93c03064e7590d0466209155251b90c22e37fab1daf2771582598b5827557" -"checksum base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)" = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" -"checksum bit-set 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d9bf6104718e80d7b26a68fdbacff3481cfc05df670821affc7e9cbc1884400c" -"checksum bit-vec 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "02b4ff8b16e6076c3e14220b39fbc1fabb6737522281a388998046859400895f" -"checksum bitflags 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "32866f4d103c4e438b1db1158aa1b1a80ee078e5d77a59a2f906fd62a577389c" -"checksum bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "aad18937a628ec6abcd26d1489012cc0e18c21798210f491af69ded9b881106d" -"checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12" -"checksum block-buffer 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "49665c62e0e700857531fa5d3763e91b539ff1abeebd56808d378b495870d60d" -"checksum block-cipher-trait 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "30668a4dc25ca695ad6f4c4734b96b0a4414a87158eefeec04155bcef580a3de" -"checksum block-modes 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "283fa06a14026feac8912bf35328fc074f5d68907fd4b9cccad5658a3fc62a30" -"checksum block-padding 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4fc4358306e344bf9775d0197fd00d2603e5afb0771bb353538630f022068ea3" -"checksum byte-tools 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "980479e6fde23246dfb54d47580d66b4e99202e7579c5eaa9fe10ecb5ebd2182" -"checksum byteorder 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0fc10e8cc6b2580fda3f36eb6dc5316657f812a3df879a44a66fc9f0fdbc4855" -"checksum byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "90492c5858dd7d2e78691cfb89f90d273a2800fc11d98f60786e5d87e2f83781" -"checksum bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0ce55bd354b095246fc34caf4e9e242f5297a7fd938b090cadfea6eee614aa62" -"checksum c_linked_list 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4964518bd3b4a8190e832886cdc0da9794f12e8e6c1613a9e90ff331c4c8724b" -"checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16" -"checksum cfg-if 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "0c4e7bb64a8ebb0d856483e1e682ea3422f883c5f5615a90d51a2c82fe87fdd3" -"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" -"checksum crossbeam-deque 0.6.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3486aefc4c0487b9cb52372c97df0a48b8c249514af1ee99703bf70d2f2ceda1" -"checksum crossbeam-epoch 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "30fecfcac6abfef8771151f8be4abc9e4edc112c2bcb233314cafde2680536e9" -"checksum crossbeam-utils 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "677d453a17e8bd2b913fa38e8b9cf04bcdbb5be790aa294f2389661d72036015" -"checksum crypto-mac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4434400df11d95d556bac068ddfedd482915eb18fe8bea89bc80b6e4b1c179e5" -"checksum ctr 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "28912c12ae9ba20d6971168379d1482a4ce17f4855f23218ffb53ddc91fbe69b" -"checksum digest 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "05f47366984d3ad862010e22c7ce81a7dbcaebbdfb37241a620f8b6596ee135c" -"checksum dns-parser 0.3.2 (git+https://github.com/plietar/dns-parser)" = "" -"checksum dns-sd 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "d748509dea20228f63ba519bf142ce2593396386125b01f5b0d6412dab972087" -"checksum dtoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6d301140eb411af13d3115f9a562c85cc6b541ade9dfa314132244aaee7489dd" -"checksum env_logger 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3ddf21e73e016298f5cb37d6ef8e8da8e39f91f9ec8b0df44b7deb16a9f8cd5b" -"checksum error-chain 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ff511d5dc435d703f4971bc399647c9bc38e20cb41452e3b9feb4765419ed3f3" -"checksum extprim 1.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "054bc2552b3f66fa8097e29e47255bfff583c08e737a67cbbb54b817ddaa5206" -"checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" -"checksum fuchsia-zircon 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" -"checksum fuchsia-zircon-sys 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" -"checksum futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)" = "49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b" -"checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" -"checksum gcc 0.3.55 (registry+https://github.com/rust-lang/crates.io-index)" = "8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2" -"checksum generic-array 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c0f28c2f5bfb5960175af447a2da7c18900693738343dc896ffbcabd9839592" -"checksum get_if_addrs 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "abddb55a898d32925f3148bd281174a68eeb68bbfd9a5938a57b18f506ee4ef7" -"checksum get_if_addrs-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0d04f9fb746cf36b191c00f3ede8bde9c8e64f9f4b05ae2694a9ccf5e3f5ab48" -"checksum getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797" -"checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77" -"checksum hmac 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f127a908633569f208325f86f71255d3363c79721d7f9fe31cd5569908819771" -"checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83" -"checksum hyper 0.11.27 (registry+https://github.com/rust-lang/crates.io-index)" = "34a590ca09d341e94cddf8e5af0bbccde205d5fbc2fa3c09dd67c7f85cea59d7" -"checksum hyper-proxy 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44f0925de2747e481e6e477dd212c25e8f745567f02f6182e04d27b97c3fbece" -"checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" -"checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" -"checksum itoa 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8324a32baf01e2ae060e9de58ed0bc2320c9a2833491ee36cd3b4c414de4db8c" -"checksum jack 0.5.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1e15fc592e2e5a74a105ff507083c04db1aa20ba1b90d425362ba000e57422df" -"checksum jack-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c0d4ca501477fd3cd93a36df581046e5d6338ed826cf7e9b8d302603521e6cc3" -"checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" -"checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" -"checksum lazy_static 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "76f033c7ad61445c5b347c7382dd1237847eb1bce590fe50365dcb33d546be73" -"checksum lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca488b89a5657b0a2ecd45b95609b3e848cf1755da332a0da46e2b2b1cb371a7" -"checksum lazycell 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ddba4c30a78328befecec92fc94970e53b3ae385827d28620f0f5bb2493081e0" -"checksum lewton 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3d170da25c0b3541e3260f84aa8f9d323468083bd1ed6c4c15aec7ff33e2a1c4" -"checksum libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)" = "76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d" -"checksum libloading 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fd38073de8f7965d0c17d30546d4bb6da311ab428d1c7a3fc71dff7f9d4979b9" -"checksum libpulse-sys 0.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9bb11b06faf883500c1b625cf4453e6c7737e9df9c7ba01df3f84b22b083e4ac" -"checksum linear-map 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bfae20f6b19ad527b550c223fddc3077a547fc70cda94b9b566575423fd303ee" -"checksum lock_api 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "775751a3e69bde4df9b38dd00a1b5d6ac13791e4223d4a0506577f0dd27cfb7a" -"checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" -"checksum log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fcce5fa49cc693c312001daf1d13411c4a5283796bac1084299ea3e567113f" -"checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" -"checksum mdns 0.2.0 (git+https://github.com/plietar/rust-mdns)" = "" -"checksum memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4b3629fe9fdbff6daa6c33b90f7c08355c1aca05a3d01fa8063b822fcf185f3b" -"checksum memoffset 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0f9dc261e2b62d7a622bf416ea3c5245cdd5d9a7fcc428c0d06804dfce1775b3" -"checksum mime 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "4b082692d3f6cf41b453af73839ce3dfc212c4411cbb2441dff80a716e38bd79" -"checksum mio 0.6.16 (registry+https://github.com/rust-lang/crates.io-index)" = "71646331f2619b1026cc302f87a2b8b648d5c6dd6937846a16cc8ce0f347f432" -"checksum mio-uds 0.6.7 (registry+https://github.com/rust-lang/crates.io-index)" = "966257a94e196b11bb43aca423754d87429960a768de9414f3691d6957abf125" -"checksum miow 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f2f3b1cf331de6896aabf6e9d55dca90356cc9960cca7eaaf408a355ae919" -"checksum multimap 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb04b9f127583ed176e163fb9ec6f3e793b87e21deedd5734a69386a18a0151" -"checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88" -"checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17" -"checksum nodrop 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "9a2228dca57108069a5262f2ed8bd2e82496d2e074a06d1ccc7ce1687b6ae0a2" -"checksum num-bigint 0.1.44 (registry+https://github.com/rust-lang/crates.io-index)" = "e63899ad0da84ce718c14936262a41cee2c79c981fc0a0e7c7beb47d5a07e8c1" -"checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea" -"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" -"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1" -"checksum num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "c51a3322e4bca9d212ad9a158a02abc6934d005490c054a2778df73a70aa0a30" -"checksum ogg 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3f8de5433300a8a0ba60a3207766a3ce9efdede6aaab23311b5a8cf1664fe2e9" -"checksum ogg-sys 0.0.9 (registry+https://github.com/rust-lang/crates.io-index)" = "a95b8c172e17df1a41bf8d666301d3b2c4efeb90d9d0415e2a4dc0668b35fdb2" -"checksum opaque-debug 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "51ecbcb821e1bd256d456fe858aaa7f380b63863eab2eb86eee1bd9f33dd6682" -"checksum owning_ref 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "cdf84f41639e037b484f93433aa3897863b561ed65c6e59c7073d7c561710f37" -"checksum parking_lot 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "f0802bff09003b291ba756dc7e79313e51cc31667e94afbe847def490424cde5" -"checksum parking_lot_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ad7f7e6ebdc79edff6fdcb87a55b620174f7a989e3eb31b65231f4af57f00b8c" -"checksum pbkdf2 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "006c038a43a45995a9670da19e67600114740e8511d4333bf97a56e66a7542d9" -"checksum percent-encoding 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" -"checksum pkg-config 0.3.14 (registry+https://github.com/rust-lang/crates.io-index)" = "676e8eb2b1b4c9043511a9b7bea0915320d7e502b0a079fb03f9635a5252b18c" -"checksum portaudio-rs 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "029e0ab393b44b2d825efbc755cae51c36be7a99d91356b2052be0ed05836636" -"checksum portaudio-sys 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5194a4fa953b4ffd851c320ef6f0484cd7278cb7169ea9d6c433e49b23f7b7f5" -"checksum proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)" = "3d7b7eaaa90b4a90a932a9ea6666c95a389e424eff347f0f793979289429feee" -"checksum protobuf 1.7.4 (registry+https://github.com/rust-lang/crates.io-index)" = "52fbc45bf6709565e44ef31847eb7407b3c3c80af811ee884a04da071dcca12b" -"checksum quick-error 1.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9274b940887ce9addde99c4eee6b5c44cc494b182b97e73dc8ffdcb3397fd3f0" -"checksum quote 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6e920b65c65f10b2ae65c831a81a073a89edd28c7cce89475bff467ab4167a" -"checksum quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "dd636425967c33af890042c483632d33fa7a18f19ad1d7ea72e8998c6ef8dea5" -"checksum rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)" = "15a732abf9d20f0ad8eeb6f909bf6868722d9a06e1e50802b6a70351f40b4eb1" -"checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd" -"checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c" -"checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372" -"checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db" -"checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1" -"checksum regex 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)" = "9329abc99e39129fcceabd24cf5d85b4671ef7c29c50e972bc5afe32438ec384" -"checksum regex-syntax 0.5.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7d707a4fa2637f2dca2ef9fd02225ec7661fe01a53623c1e6515b6916511f7a7" -"checksum relay 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1576e382688d7e9deecea24417e350d3062d97e32e45d70b1cde65994ff1489a" -"checksum rpassword 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ec4bdede957362ec6fdd550f7e79c6d14cad2bc26b2d062786234c6ee0cb27bb" -"checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda" -"checksum rustc_version 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -"checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9" -"checksum scoped-tls 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "332ffa32bf586782a3efaeb58f127980944bbc8c4d6913a86107ac2a5ab24b28" -"checksum scopeguard 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "94258f53601af11e6a49f722422f6e3425c52b06245a5cf9bc09908b174f5e27" -"checksum semver 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" -"checksum semver-parser 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" -"checksum serde 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)" = "34b623917345a631dc9608d5194cc206b3fe6c3554cd1c75b937e55e285254af" -"checksum serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "15c141fc7027dd265a47c090bf864cf62b42c4d228bbcf4e51a0c9e2b0d3f7ef" -"checksum serde_codegen_internals 0.14.2 (registry+https://github.com/rust-lang/crates.io-index)" = "bc888bd283bd2420b16ad0d860e35ad8acb21941180a83a189bb2046f9d00400" -"checksum serde_derive 0.9.15 (registry+https://github.com/rust-lang/crates.io-index)" = "978fd866f4d4872084a81ccc35e275158351d3b9fe620074e7d7504b816b74ba" -"checksum serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "225de307c6302bec3898c51ca302fc94a7a1697ef0845fcee6448f33c032249c" -"checksum serde_json 0.9.10 (registry+https://github.com/rust-lang/crates.io-index)" = "ad8bcf487be7d2e15d3d543f04312de991d631cfe1b43ea0ade69e6a8a5b16a1" -"checksum sha-1 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2cfd94fe9ed1245c2a1459f99373217b131a1b32b6d0922988b1e45b35249249" -"checksum sha2 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4d8bfd0e469f417657573d8451fb33d16cfe0989359b93baf3a1ffc639543d" -"checksum shannon 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7ea5b41c9427b56caa7b808cb548a04fb50bb5b9e98590b53f28064ff4174561" -"checksum slab 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "17b4fcaed89ab08ef143da37bc52adbcc04d4a69014f4c1208d6b51f0c47bc23" -"checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d" -"checksum smallvec 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "4c8cbcd6df1e117c2210e13ab5109635ad68a929fcbb8964dc965b76cb5ee013" -"checksum smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "153ffa32fd170e9944f7e0838edf824a754ec4c1fc64746fcc9fe1f8fa602e5d" -"checksum socket2 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "36b4896961171cd3317c7e9603d88f379f8c6e45342212235d356496680c68fd" -"checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8" -"checksum stream-cipher 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5ef46e595d86556257889b73134905e6ca23a8c8911cb05875f6f1823e7912ca" -"checksum subtle 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2d67a5a62ba6e01cb2192ff309324cb4875d0c451d55fe2319433abe7a05a8ee" -"checksum syn 0.11.11 (registry+https://github.com/rust-lang/crates.io-index)" = "d3b891b9015c88c576343b9b3e41c2c11a51c219ef067b264bd9c8aa9b441dad" -"checksum syn 0.15.11 (registry+https://github.com/rust-lang/crates.io-index)" = "b036b7b35e846707c0e55c2c9441fa47867c0f87fca416921db3261b1d8c741a" -"checksum synom 0.11.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a393066ed9010ebaed60b9eafa373d4b1baac186dd7e008555b0f702b51945b6" -"checksum take 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "b157868d8ac1f56b64604539990685fa7611d8fa9e5476cf0c02cf34d32917c5" -"checksum tempfile 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "11ce2fe9db64b842314052e2421ac61a73ce41b898dc8e3750398b219c5fc1e0" -"checksum termios 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "d5d9cf598a6d7ce700a4e6a9199da127e6819a61e64b68609683cc9a01b5683a" -"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b" -"checksum time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "d825be0eb33fda1a7e68012d51e9c7f451dc1a69391e7fdc197060bb8c56667b" -"checksum tokio 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)" = "6e93c78d23cc61aa245a8acd2c4a79c4d7fa7fb5c3ca90d5737029f043a84895" -"checksum tokio-codec 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5c501eceaf96f0e1793cf26beb63da3d11c738c4a943fdf3746d81d64684c39f" -"checksum tokio-core 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "aeeffbbb94209023feaef3c196a41cbcdafa06b4a6f893f68779bb5e53796f71" -"checksum tokio-current-thread 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "f90fcd90952f0a496d438a976afba8e5c205fb12123f813d8ab3aa1c8436638c" -"checksum tokio-executor 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "c117b6cf86bb730aab4834f10df96e4dd586eff2c3c27d3781348da49e255bde" -"checksum tokio-fs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "b5cbe4ca6e71cb0b62a66e4e6f53a8c06a6eefe46cc5f665ad6f274c9906f135" -"checksum tokio-io 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "8b8a85fffbec3c5ab1ab62324570230dcd37ee5996a7859da5caf7b9d45e3e8c" -"checksum tokio-proto 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8fbb47ae81353c63c487030659494b295f6cb6576242f907f203473b191b0389" -"checksum tokio-reactor 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "4b26fd37f1125738b2170c80b551f69ff6fecb277e6e5ca885e53eec2b005018" -"checksum tokio-service 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "24da22d077e0f15f55162bdbdc661228c1581892f52074fb242678d015b45162" -"checksum tokio-signal 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e8f46863230f9a05cf52d173721ec391b9c5782a2465f593029922b8782b9ffe" -"checksum tokio-tcp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7ad235e9dadd126b2d47f6736f65aa1fdcd6420e66ca63f44177bc78df89f912" -"checksum tokio-threadpool 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "bbd8a8b911301c60cbfaa2a6588fb210e5c1038375b8bdecc47aa09a94c3c05f" -"checksum tokio-timer 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "3a52f00c97fedb6d535d27f65cccb7181c8dd4c6edc3eda9ea93f6d45d05168e" -"checksum tokio-udp 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "da941144b816d0dcda4db3a1ba87596e4df5e860a72b70783fe435891f80601c" -"checksum tokio-uds 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "22e3aa6d1fcc19e635418dc0a30ab5bd65d347973d6f43f1a37bf8d9d1335fc9" -"checksum tremor 0.1.0 (git+https://github.com/plietar/rust-tremor)" = "" -"checksum tremor-sys 0.1.0 (git+https://github.com/plietar/rust-tremor)" = "" -"checksum try-lock 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee2aa4715743892880f70885373966c83d73ef1b0838a664ef0c76fffd35e7c2" -"checksum typenum 1.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "612d636f949607bdf9b123b4a6f6d966dedf3ff669f7f045890d3a4a73948169" -"checksum ucd-util 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd2be2d6639d0f8fe6cdda291ad456e23629558d466e2789d2c3e9892bda285d" -"checksum unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d3218ea14b4edcaccfa0df0a64a3792a2c32cc706f1b336e48867f9d3147f90" -"checksum unicode-bidi 0.3.4 (registry+https://github.com/rust-lang/crates.io-index)" = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" -"checksum unicode-normalization 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "6a0180bc61fc5a987082bfa111f4cc95c4caff7f9799f3e46df09163a937aa25" -"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526" -"checksum unicode-xid 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8c1f860d7d29cf02cb2f3f359fd35991af3d30bac52c57d265a3c461074cb4dc" -"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc" -"checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56" -"checksum url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2a321979c09843d272956e73700d12c4e7d3d92b2ee112b31548aef0d4efc5a6" -"checksum utf8-ranges 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "fd70f467df6810094968e2fce0ee1bd0e87157aceb026a8c083bcf5e25b9efe4" -"checksum uuid 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7cfec50b0842181ba6e713151b72f4ec84a6a7e2c9c8a8a3ffc37bb1cd16b231" -"checksum vergen 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8c3365f36c57e5df714a34be40902b27a992eeddb9996eca52d0584611cf885d" -"checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" -"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" -"checksum vorbis 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "760993e54524128b88d4d7aff09c773c2f16a9f18db3c8ae1ccca5afd1287656" -"checksum vorbis-encoder 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3fb66bcdde056dd230991bb86669a1269778fe8ad1f6cee403428ac7985391bc" -"checksum vorbis-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "729e1f15395850b4e6d19ca0cd1d42ef44707503a53b69d40ff49182b3c5589d" -"checksum vorbisfile-sys 0.0.8 (registry+https://github.com/rust-lang/crates.io-index)" = "4f4306d7e1ac4699b55e20de9483750b90c250913188efd7484db6bfbe9042d1" -"checksum want 0.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a05d9d966753fa4b5c8db73fcab5eed4549cfe0e1e4e66911e5564a0085c35d1" -"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" -"checksum winapi 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "92c1eb33641e276cfa214a0522acad57be5c56b10cb348b3c5117db75f3ac4b0" -"checksum winapi-build 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" -"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" -"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -"checksum ws2_32-sys 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" diff --git a/Cargo.toml b/Cargo.toml index 98c7cc6e..54d0b2cb 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -48,6 +48,7 @@ serde_derive = "0.9.6" serde_json = "0.9.5" tokio-core = "0.1.2" tokio-io = "0.1" +tokio-process = "0.2.2" tokio-signal = "0.1.2" url = "1.7.0" sha-1 = "0.8.0" diff --git a/README.md b/README.md index 4ea5b520..440a528e 100644 --- a/README.md +++ b/README.md @@ -13,11 +13,11 @@ Note: librespot only works with Spotify Premium As the origin by [plietar](https://github.com/plietar/) is no longer actively maintained, this organisation and repository have been set up so that the project may be maintained and upgraded in the future. # Documentation -Documentation is currently a work in progress. +Documentation is currently a work in progress. -There is some brief documentation on how the protocol works in the [docs](https://github.com/librespot-org/librespot/tree/master/docs) folder, and more general usage and compilation information is available on the [wiki](https://github.com/librespot-org/librespot/wiki). +There is some brief documentation on how the protocol works in the [docs](https://github.com/librespot-org/librespot/tree/master/docs) folder, and more general usage and compilation information is available on the [wiki](https://github.com/librespot-org/librespot/wiki). -[CONTRIBUTING.md](https://github.com/librespot-org/librespot/blob/master/CONTRIBUTING.md) also contains detailed instructions on setting up a development environment, compilation, and contributing guidelines. +[CONTRIBUTING.md](https://github.com/librespot-org/librespot/blob/master/CONTRIBUTING.md) also contains detailed instructions on setting up a development environment, compilation, and contributing guidelines. If you wish to learn more about how librespot works overall, the best way is to simply read the code, and ask any questions you have in the Gitter chat linked above. @@ -26,7 +26,7 @@ If you wish to learn more about how librespot works overall, the best way is to If you run into a bug when using librespot, please search the existing issues before opening a new one. Chances are, we've encountered it before, and have provided a resolution. If not, please open a new one, and where possible, include the backtrace librespot generates on crashing, along with anything we can use to reproduce the issue, eg. the Spotify URI of the song that caused the crash. # Building -Rust 1.21.0 or later is required to build librespot. +Rust 1.23.0 or later is required to build librespot. **If you are building librespot on macOS, the homebrew provided rust may fail due to the way in which homebrew installs rust. In this case, uninstall the homebrew version of rust and use [rustup](https://www.rustup.rs/), and librespot should then build. This should have been fixed in more recent versions of Homebrew, but we're leaving this notice here as a warning.** @@ -58,7 +58,7 @@ cargo build --release A sample program implementing a headless Spotify Connect receiver is provided. Once you've built *librespot*, run it using : ```shell -target/release/librespot --name DEVICENAME +target/release/librespot --name DEVICENAME ``` The above is a minimal example. Here is a more fully fledged one: @@ -87,5 +87,6 @@ This is a non exhaustive list of projects that either use or have modified libre - [plugin.audio.spotify](https://github.com/marcelveldt/plugin.audio.spotify) - A Kodi plugin for Spotify. - [raspotify](https://github.com/dtcooper/raspotify) - Spotify Connect client for the Raspberry Pi that Just Works™ - [Spotifyd](https://github.com/Spotifyd/spotifyd) - A stripped down librespot UNIX daemon. -- [Spotcontrol](https://github.com/badfortrains/spotcontrol) - A golang implementation of a Spotify Connect controller. No playback functionality. - +- [Spotcontrol](https://github.com/badfortrains/spotcontrol) - A golang implementation of a Spotify Connect controller. No playback +functionality. +- [librespot-java](https://github.com/devgianlu/librespot-java) - A Java port of librespot. diff --git a/audio/Cargo.toml b/audio/Cargo.toml index 5d83473f..80fda80e 100644 --- a/audio/Cargo.toml +++ b/audio/Cargo.toml @@ -10,7 +10,7 @@ path = "../core" bit-set = "0.4.0" byteorder = "1.0" futures = "0.1.8" -lewton = "0.8.0" +lewton = "0.9.3" log = "0.3.5" num-bigint = "0.1.35" num-traits = "0.1.36" diff --git a/audio/src/fetch.rs b/audio/src/fetch.rs index e5e461a4..1aa0c0c0 100644 --- a/audio/src/fetch.rs +++ b/audio/src/fetch.rs @@ -348,11 +348,16 @@ impl Read for AudioFileStreaming { impl Seek for AudioFileStreaming { fn seek(&mut self, pos: SeekFrom) -> io::Result { self.position = try!(self.read_file.seek(pos)); + // Do not seek past EOF + if (self.position as usize % CHUNK_SIZE) != 0 { + // Notify the fetch thread to get the correct block + // This can fail if fetch thread has completed, in which case the + // block is ready. Just ignore the error. + let _ = self.seek.unbounded_send(self.position); + } else { + warn!("Trying to seek past EOF"); + } - // Notify the fetch thread to get the correct block - // This can fail if fetch thread has completed, in which case the - // block is ready. Just ignore the error. - let _ = self.seek.unbounded_send(self.position); Ok(self.position) } } diff --git a/connect/Cargo.toml b/connect/Cargo.toml index d7ffb981..d638d1b8 100644 --- a/connect/Cargo.toml +++ b/connect/Cargo.toml @@ -16,7 +16,7 @@ futures = "0.1.8" hyper = "0.11.2" log = "0.3.5" num-bigint = "0.1.35" -protobuf = "1.1" +protobuf = "2.0.5" rand = "0.3.13" serde = "0.9.6" serde_derive = "0.9.6" diff --git a/contrib/Dockerfile.Rpi b/contrib/Dockerfile.Rpi new file mode 100644 index 00000000..7c2c12c9 --- /dev/null +++ b/contrib/Dockerfile.Rpi @@ -0,0 +1,54 @@ +# Create a docker image for the RPI +# Build the docker image from the root of the project with the following command : +# $ docker build -t librespot-rpi -f .\contrib\Dockerfile.Rpi . +# +# This builds a docker image which is usable when running docker on the rpi. +# +# This Dockerfile builds in windows without any requirements, for linux based systems you might need to run the following line: +# docker run --rm --privileged multiarch/qemu-user-static:register --reset +# (see here for more info: https://gist.github.com/PieterScheffers/d50f609d9628383e4c9d8d7d269b7643 ) +# +# Save the docker image to a file: +# $ docker save -o contrib/librespot-rpi librespot-rpi +# +# Move it to the rpi and import it with: +# docker load -i librespot-rpi +# +# Run it with: +# docker run -d --restart unless-stopped $(for DEV in $(find /dev/snd -type c); do echo --device=$DEV:$DEV; done) --net=host --name librespot-rpi librespot-rpi --name {devicename} + +FROM debian:stretch + +RUN dpkg --add-architecture armhf +RUN apt-get update + +RUN apt-get install -y curl git build-essential crossbuild-essential-armhf +RUN apt-get install -y libasound2-dev libasound2-dev:armhf + +RUN curl https://sh.rustup.rs -sSf | sh -s -- -y +ENV PATH="/root/.cargo/bin/:${PATH}" +RUN rustup target add arm-unknown-linux-gnueabihf + +RUN mkdir /.cargo && \ + echo '[target.arm-unknown-linux-gnueabihf]\nlinker = "arm-linux-gnueabihf-gcc"' >> /.cargo/config + +RUN mkdir /build +ENV CARGO_TARGET_DIR /build +ENV CARGO_HOME /build/cache + +ADD . /src +WORKDIR /src +RUN cargo build --release --target arm-unknown-linux-gnueabihf --no-default-features --features "alsa-backend" + + +FROM resin/rpi-raspbian +RUN apt-get update && \ + apt-get install libasound2 && \ + rm -rf /var/lib/apt/lists/* + +RUN mkdir /librespot +WORKDIR /librespot + +COPY --from=0 /build/arm-unknown-linux-gnueabihf/release/librespot . +RUN chmod +x librespot +ENTRYPOINT ["./librespot"] \ No newline at end of file diff --git a/core/Cargo.toml b/core/Cargo.toml index e1976e50..5583ff90 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -22,7 +22,7 @@ log = "0.3.5" num-bigint = "0.1.35" num-integer = "0.1.32" num-traits = "0.1.36" -protobuf = "1.1" +protobuf = "2.0.5" rand = "0.3.13" rpassword = "0.3.0" serde = "0.9.6" diff --git a/core/src/apresolve.rs b/core/src/apresolve.rs index 9ff23cf3..bcb7bfe1 100644 --- a/core/src/apresolve.rs +++ b/core/src/apresolve.rs @@ -17,7 +17,11 @@ pub struct APResolveData { ap_list: Vec, } -fn apresolve(handle: &Handle, proxy: &Option) -> Box> { +fn apresolve( + handle: &Handle, + proxy: &Option, + ap_port: &Option, +) -> Box> { let url = Uri::from_str(APRESOLVE_ENDPOINT).expect("invalid AP resolve URL"); let use_proxy = proxy.is_some(); @@ -53,9 +57,15 @@ fn apresolve(handle: &Handle, proxy: &Option) -> Box(&body).chain_err(|| "invalid JSON")); + let p = ap_port.clone(); + let ap = data.and_then(move |data| { let mut aps = data.ap_list.iter().filter(|ap| { - if use_proxy { + if p.is_some() { + Uri::from_str(ap) + .ok() + .map_or(false, |uri| uri.port().map_or(false, |port| port == p.unwrap())) + } else if use_proxy { // It is unlikely that the proxy will accept CONNECT on anything other than 443. Uri::from_str(ap) .ok() @@ -75,11 +85,12 @@ fn apresolve(handle: &Handle, proxy: &Option) -> Box( handle: &Handle, proxy: &Option, + ap_port: &Option, ) -> Box> where E: 'static, { - let ap = apresolve(handle, proxy).or_else(|e| { + let ap = apresolve(handle, proxy, ap_port).or_else(|e| { warn!("Failed to resolve Access Point: {}", e.description()); warn!("Using fallback \"{}\"", AP_FALLBACK); Ok(AP_FALLBACK.into()) diff --git a/core/src/config.rs b/core/src/config.rs index 7baff40b..283b7c83 100644 --- a/core/src/config.rs +++ b/core/src/config.rs @@ -10,6 +10,7 @@ pub struct SessionConfig { pub user_agent: String, pub device_id: String, pub proxy: Option, + pub ap_port: Option, } impl Default for SessionConfig { @@ -19,6 +20,7 @@ impl Default for SessionConfig { user_agent: version::version_string(), device_id: device_id, proxy: None, + ap_port: None, } } } diff --git a/core/src/connection/handshake.rs b/core/src/connection/handshake.rs index 52e9af25..19b2c857 100644 --- a/core/src/connection/handshake.rs +++ b/core/src/connection/handshake.rs @@ -2,7 +2,7 @@ use byteorder::{BigEndian, ByteOrder, WriteBytesExt}; use hmac::{Hmac, Mac}; use sha1::Sha1; use futures::{Async, Future, Poll}; -use protobuf::{self, Message, MessageStatic}; +use protobuf::{self, Message}; use rand::thread_rng; use std::io::{self, Read}; use std::marker::PhantomData; @@ -125,7 +125,7 @@ fn client_response(connection: T, challenge: Vec) -> WriteAll write_all(connection, buffer) } -enum RecvPacket { +enum RecvPacket { Header(ReadExact>>, PhantomData), Body(ReadExact>>, PhantomData), } @@ -133,7 +133,7 @@ enum RecvPacket { fn recv_packet(connection: T, acc: Vec) -> RecvPacket where T: Read, - M: MessageStatic, + M: Message, { RecvPacket::Header(read_into_accumulator(connection, 4, acc), PhantomData) } @@ -141,7 +141,7 @@ where impl Future for RecvPacket where T: Read, - M: MessageStatic, + M: Message, { type Item = (T, M, Vec); type Error = io::Error; diff --git a/core/src/session.rs b/core/src/session.rs index 335cf0e3..931b60c7 100644 --- a/core/src/session.rs +++ b/core/src/session.rs @@ -51,7 +51,7 @@ impl Session { cache: Option, handle: Handle, ) -> Box> { - let access_point = apresolve_or_fallback::(&handle, &config.proxy); + let access_point = apresolve_or_fallback::(&handle, &config.proxy, &config.ap_port); let handle_ = handle.clone(); let proxy = config.proxy.clone(); diff --git a/docs/connection.md b/docs/connection.md index 8bc8b480..e64fac7f 100644 --- a/docs/connection.md +++ b/docs/connection.md @@ -6,7 +6,7 @@ An AP is randomly picked from that list to connect to. The connection is done using a bare TCP socket. Despite many APs using ports 80 and 443, neither HTTP nor TLS are used to connect. -If `http://apresolve.spotify.com` is unresponsive, `ap.spotify.com:80` is used as a fallback. +If `http://apresolve.spotify.com` is unresponsive, `ap.spotify.com:443` is used as a fallback. ## Connection Hello The first 3 packets exchanged are unencrypted, and have the following format : diff --git a/examples/play.rs b/examples/play.rs index ac261978..87f68825 100644 --- a/examples/play.rs +++ b/examples/play.rs @@ -33,7 +33,8 @@ fn main() { let backend = audio_backend::find(None).unwrap(); println!("Connecting .."); - let session = core.run(Session::connect(session_config, credentials, None, handle)) + let session = core + .run(Session::connect(session_config, credentials, None, handle)) .unwrap(); let (player, _) = Player::new(player_config, session.clone(), None, move || (backend)(None)); diff --git a/metadata/Cargo.toml b/metadata/Cargo.toml index 40b23fce..ac84faf7 100644 --- a/metadata/Cargo.toml +++ b/metadata/Cargo.toml @@ -7,7 +7,7 @@ authors = ["Paul Lietar "] byteorder = "1.0" futures = "0.1.8" linear-map = "1.0" -protobuf = "1.1" +protobuf = "2.0.5" [dependencies.librespot-core] path = "../core" diff --git a/metadata/src/lib.rs b/metadata/src/lib.rs index a18a6940..2d62c03c 100644 --- a/metadata/src/lib.rs +++ b/metadata/src/lib.rs @@ -53,7 +53,7 @@ where } pub trait Metadata: Send + Sized + 'static { - type Message: protobuf::MessageStatic; + type Message: protobuf::Message; fn base_url() -> &'static str; fn parse(msg: &Self::Message, session: &Session) -> Self; @@ -110,13 +110,15 @@ impl Metadata for Track { fn parse(msg: &Self::Message, session: &Session) -> Self { let country = session.country(); - let artists = msg.get_artist() + let artists = msg + .get_artist() .iter() .filter(|artist| artist.has_gid()) .map(|artist| SpotifyId::from_raw(artist.get_gid()).unwrap()) .collect::>(); - let files = msg.get_file() + let files = msg + .get_file() .iter() .filter(|file| file.has_file_id()) .map(|file| { @@ -133,7 +135,8 @@ impl Metadata for Track { album: SpotifyId::from_raw(msg.get_album().get_gid()).unwrap(), artists: artists, files: files, - alternatives: msg.get_alternative() + alternatives: msg + .get_alternative() .iter() .map(|alt| SpotifyId::from_raw(alt.get_gid()).unwrap()) .collect(), @@ -150,20 +153,23 @@ impl Metadata for Album { } fn parse(msg: &Self::Message, _: &Session) -> Self { - let artists = msg.get_artist() + let artists = msg + .get_artist() .iter() .filter(|artist| artist.has_gid()) .map(|artist| SpotifyId::from_raw(artist.get_gid()).unwrap()) .collect::>(); - let tracks = msg.get_disc() + let tracks = msg + .get_disc() .iter() .flat_map(|disc| disc.get_track()) .filter(|track| track.has_gid()) .map(|track| SpotifyId::from_raw(track.get_gid()).unwrap()) .collect::>(); - let covers = msg.get_cover_group() + let covers = msg + .get_cover_group() .get_image() .iter() .filter(|image| image.has_file_id()) @@ -194,7 +200,8 @@ impl Metadata for Artist { fn parse(msg: &Self::Message, session: &Session) -> Self { let country = session.country(); - let top_tracks: Vec = match msg.get_top_track() + let top_tracks: Vec = match msg + .get_top_track() .iter() .find(|tt| !tt.has_country() || countrylist_contains(tt.get_country(), &country)) { diff --git a/playback/src/player.rs b/playback/src/player.rs index dd994235..ab1a8abe 100644 --- a/playback/src/player.rs +++ b/playback/src/player.rs @@ -557,7 +557,8 @@ impl PlayerInternal { } }; - let key = self.session + let key = self + .session .audio_key() .request(track.id, file_id) .wait() @@ -599,7 +600,8 @@ impl Drop for PlayerInternal { impl ::std::fmt::Debug for PlayerCommand { fn fmt(&self, f: &mut ::std::fmt::Formatter) -> ::std::fmt::Result { match *self { - PlayerCommand::Load(track, play, position, _) => f.debug_tuple("Load") + PlayerCommand::Load(track, play, position, _) => f + .debug_tuple("Load") .field(&track) .field(&play) .field(&position) diff --git a/protocol/Cargo.toml b/protocol/Cargo.toml index 3a8f5857..b2dd6419 100644 --- a/protocol/Cargo.toml +++ b/protocol/Cargo.toml @@ -5,4 +5,7 @@ authors = ["Paul Liétar "] build = "build.rs" [dependencies] -protobuf = "1.0.10" +protobuf = "2.0.5" + +[build-dependencies] +protoc-rust = "2.0.5" diff --git a/protocol/build.rs b/protocol/build.rs index 3a042733..e7b05fb7 100644 --- a/protocol/build.rs +++ b/protocol/build.rs @@ -1,15 +1,36 @@ +extern crate protoc_rust; +use protoc_rust::Customize; use std::fs::File; use std::io::prelude::*; mod files; fn main() { + let mut changed = false; + let mut file = File::open("files.rs").unwrap(); + let mut f_str = String::new(); + file.read_to_string(&mut f_str).unwrap(); + drop(file); for &(path, expected_checksum) in files::FILES { let actual = cksum_file(path).unwrap(); if expected_checksum != actual { - panic!("Checksum for {:?} does not match. Try running build.sh", path); + protoc_rust::run(protoc_rust::Args { + out_dir: "src", + input: &[path], + includes: &["proto"], + customize: Customize { ..Default::default() }, + }).expect("protoc"); + let new_checksum = cksum_file(path).unwrap(); + f_str = f_str.replace(&expected_checksum.to_string(), &new_checksum.to_string()); + changed = true; } } + if changed { + // Write new checksums to file + let mut file = File::create("files.rs").unwrap(); + println!("f_str: {:?}",f_str); + file.write_all(f_str.as_bytes()).unwrap(); + } } fn cksum_file>(path: T) -> std::io::Result { diff --git a/protocol/files.rs b/protocol/files.rs index fe1c8fec..25529ce8 100644 --- a/protocol/files.rs +++ b/protocol/files.rs @@ -1,10 +1,10 @@ -// Autogenerated by build.sh +// Autogenerated by build.rs -pub const FILES : &'static [(&'static str, u32)] = &[ +pub const FILES: &'static [(&'static str, u32)] = &[ ("proto/authentication.proto", 2098196376), ("proto/keyexchange.proto", 451735664), ("proto/mercury.proto", 709993906), ("proto/metadata.proto", 2474472423), ("proto/pubsub.proto", 2686584829), - ("proto/spirc.proto", 2406852191), + ("proto/spirc.proto", 1587493382), ]; diff --git a/protocol/proto/spirc.proto b/protocol/proto/spirc.proto index 4b0523e4..acaeae1f 100644 --- a/protocol/proto/spirc.proto +++ b/protocol/proto/spirc.proto @@ -76,7 +76,7 @@ enum CapabilityType { kSupportsRename = 0xb; kHidden = 0xc; kSupportsPlaylistV2 = 0xd; - kUnknown = 0xe; + kSupportsExternalEpisodes = 0xe; } message Goodbye { diff --git a/protocol/src/authentication.rs b/protocol/src/authentication.rs index e560756b..d6db1c30 100644 --- a/protocol/src/authentication.rs +++ b/protocol/src/authentication.rs @@ -1,4 +1,4 @@ -// This file is generated. Do not edit +// This file is generated by rust-protobuf 2.0.5. Do not edit // @generated // https://github.com/Manishearth/rust-clippy/issues/702 @@ -38,24 +38,11 @@ pub struct ClientResponseEncrypted { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ClientResponseEncrypted {} - impl ClientResponseEncrypted { pub fn new() -> ClientResponseEncrypted { ::std::default::Default::default() } - pub fn default_instance() -> &'static ClientResponseEncrypted { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ClientResponseEncrypted, - }; - unsafe { - instance.get(ClientResponseEncrypted::new) - } - } - // required .LoginCredentials login_credentials = 10; pub fn clear_login_credentials(&mut self) { @@ -76,7 +63,7 @@ impl ClientResponseEncrypted { pub fn mut_login_credentials(&mut self) -> &mut LoginCredentials { if self.login_credentials.is_none() { self.login_credentials.set_default(); - }; + } self.login_credentials.as_mut().unwrap() } @@ -89,14 +76,6 @@ impl ClientResponseEncrypted { self.login_credentials.as_ref().unwrap_or_else(|| LoginCredentials::default_instance()) } - fn get_login_credentials_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.login_credentials - } - - fn mut_login_credentials_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.login_credentials - } - // optional .AccountCreation account_creation = 20; pub fn clear_account_creation(&mut self) { @@ -116,14 +95,6 @@ impl ClientResponseEncrypted { self.account_creation.unwrap_or(AccountCreation::ACCOUNT_CREATION_ALWAYS_PROMPT) } - fn get_account_creation_for_reflect(&self) -> &::std::option::Option { - &self.account_creation - } - - fn mut_account_creation_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.account_creation - } - // optional .FingerprintResponseUnion fingerprint_response = 30; pub fn clear_fingerprint_response(&mut self) { @@ -144,7 +115,7 @@ impl ClientResponseEncrypted { pub fn mut_fingerprint_response(&mut self) -> &mut FingerprintResponseUnion { if self.fingerprint_response.is_none() { self.fingerprint_response.set_default(); - }; + } self.fingerprint_response.as_mut().unwrap() } @@ -157,14 +128,6 @@ impl ClientResponseEncrypted { self.fingerprint_response.as_ref().unwrap_or_else(|| FingerprintResponseUnion::default_instance()) } - fn get_fingerprint_response_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.fingerprint_response - } - - fn mut_fingerprint_response_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.fingerprint_response - } - // optional .PeerTicketUnion peer_ticket = 40; pub fn clear_peer_ticket(&mut self) { @@ -185,7 +148,7 @@ impl ClientResponseEncrypted { pub fn mut_peer_ticket(&mut self) -> &mut PeerTicketUnion { if self.peer_ticket.is_none() { self.peer_ticket.set_default(); - }; + } self.peer_ticket.as_mut().unwrap() } @@ -198,14 +161,6 @@ impl ClientResponseEncrypted { self.peer_ticket.as_ref().unwrap_or_else(|| PeerTicketUnion::default_instance()) } - fn get_peer_ticket_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.peer_ticket - } - - fn mut_peer_ticket_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.peer_ticket - } - // required .SystemInfo system_info = 50; pub fn clear_system_info(&mut self) { @@ -226,7 +181,7 @@ impl ClientResponseEncrypted { pub fn mut_system_info(&mut self) -> &mut SystemInfo { if self.system_info.is_none() { self.system_info.set_default(); - }; + } self.system_info.as_mut().unwrap() } @@ -239,14 +194,6 @@ impl ClientResponseEncrypted { self.system_info.as_ref().unwrap_or_else(|| SystemInfo::default_instance()) } - fn get_system_info_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.system_info - } - - fn mut_system_info_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.system_info - } - // optional string platform_model = 60; pub fn clear_platform_model(&mut self) { @@ -267,7 +214,7 @@ impl ClientResponseEncrypted { pub fn mut_platform_model(&mut self) -> &mut ::std::string::String { if self.platform_model.is_none() { self.platform_model.set_default(); - }; + } self.platform_model.as_mut().unwrap() } @@ -283,14 +230,6 @@ impl ClientResponseEncrypted { } } - fn get_platform_model_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.platform_model - } - - fn mut_platform_model_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.platform_model - } - // optional string version_string = 70; pub fn clear_version_string(&mut self) { @@ -311,7 +250,7 @@ impl ClientResponseEncrypted { pub fn mut_version_string(&mut self) -> &mut ::std::string::String { if self.version_string.is_none() { self.version_string.set_default(); - }; + } self.version_string.as_mut().unwrap() } @@ -327,14 +266,6 @@ impl ClientResponseEncrypted { } } - fn get_version_string_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.version_string - } - - fn mut_version_string_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.version_string - } - // optional .LibspotifyAppKey appkey = 80; pub fn clear_appkey(&mut self) { @@ -355,7 +286,7 @@ impl ClientResponseEncrypted { pub fn mut_appkey(&mut self) -> &mut LibspotifyAppKey { if self.appkey.is_none() { self.appkey.set_default(); - }; + } self.appkey.as_mut().unwrap() } @@ -368,14 +299,6 @@ impl ClientResponseEncrypted { self.appkey.as_ref().unwrap_or_else(|| LibspotifyAppKey::default_instance()) } - fn get_appkey_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.appkey - } - - fn mut_appkey_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.appkey - } - // optional .ClientInfo client_info = 90; pub fn clear_client_info(&mut self) { @@ -396,7 +319,7 @@ impl ClientResponseEncrypted { pub fn mut_client_info(&mut self) -> &mut ClientInfo { if self.client_info.is_none() { self.client_info.set_default(); - }; + } self.client_info.as_mut().unwrap() } @@ -408,23 +331,45 @@ impl ClientResponseEncrypted { pub fn get_client_info(&self) -> &ClientInfo { self.client_info.as_ref().unwrap_or_else(|| ClientInfo::default_instance()) } - - fn get_client_info_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.client_info - } - - fn mut_client_info_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.client_info - } } impl ::protobuf::Message for ClientResponseEncrypted { fn is_initialized(&self) -> bool { if self.login_credentials.is_none() { return false; - }; + } if self.system_info.is_none() { return false; + } + for v in &self.login_credentials { + if !v.is_initialized() { + return false; + } + }; + for v in &self.fingerprint_response { + if !v.is_initialized() { + return false; + } + }; + for v in &self.peer_ticket { + if !v.is_initialized() { + return false; + } + }; + for v in &self.system_info { + if !v.is_initialized() { + return false; + } + }; + for v in &self.appkey { + if !v.is_initialized() { + return false; + } + }; + for v in &self.client_info { + if !v.is_initialized() { + return false; + } }; true } @@ -437,11 +382,7 @@ impl ::protobuf::Message for ClientResponseEncrypted { ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.login_credentials)?; }, 20 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.account_creation = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.account_creation, 20, &mut self.unknown_fields)? }, 30 => { ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.fingerprint_response)?; @@ -476,84 +417,84 @@ impl ::protobuf::Message for ClientResponseEncrypted { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.login_credentials.as_ref() { + if let Some(ref v) = self.login_credentials.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } if let Some(v) = self.account_creation { my_size += ::protobuf::rt::enum_size(20, v); - }; - if let Some(v) = self.fingerprint_response.as_ref() { + } + if let Some(ref v) = self.fingerprint_response.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.peer_ticket.as_ref() { + } + if let Some(ref v) = self.peer_ticket.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.system_info.as_ref() { + } + if let Some(ref v) = self.system_info.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.platform_model.as_ref() { + } + if let Some(ref v) = self.platform_model.as_ref() { my_size += ::protobuf::rt::string_size(60, &v); - }; - if let Some(v) = self.version_string.as_ref() { + } + if let Some(ref v) = self.version_string.as_ref() { my_size += ::protobuf::rt::string_size(70, &v); - }; - if let Some(v) = self.appkey.as_ref() { + } + if let Some(ref v) = self.appkey.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.client_info.as_ref() { + } + if let Some(ref v) = self.client_info.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.login_credentials.as_ref() { + if let Some(ref v) = self.login_credentials.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } if let Some(v) = self.account_creation { os.write_enum(20, v.value())?; - }; - if let Some(v) = self.fingerprint_response.as_ref() { + } + if let Some(ref v) = self.fingerprint_response.as_ref() { os.write_tag(30, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.peer_ticket.as_ref() { + } + if let Some(ref v) = self.peer_ticket.as_ref() { os.write_tag(40, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.system_info.as_ref() { + } + if let Some(ref v) = self.system_info.as_ref() { os.write_tag(50, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.platform_model.as_ref() { + } + if let Some(ref v) = self.platform_model.as_ref() { os.write_string(60, &v)?; - }; - if let Some(v) = self.version_string.as_ref() { + } + if let Some(ref v) = self.version_string.as_ref() { os.write_string(70, &v)?; - }; - if let Some(v) = self.appkey.as_ref() { + } + if let Some(ref v) = self.appkey.as_ref() { os.write_tag(80, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.client_info.as_ref() { + } + if let Some(ref v) = self.client_info.as_ref() { os.write_tag(90, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -581,16 +522,14 @@ impl ::protobuf::Message for ClientResponseEncrypted { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ClientResponseEncrypted { fn new() -> ClientResponseEncrypted { ClientResponseEncrypted::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -600,48 +539,48 @@ impl ::protobuf::MessageStatic for ClientResponseEncrypted { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "login_credentials", - ClientResponseEncrypted::get_login_credentials_for_reflect, - ClientResponseEncrypted::mut_login_credentials_for_reflect, + |m: &ClientResponseEncrypted| { &m.login_credentials }, + |m: &mut ClientResponseEncrypted| { &mut m.login_credentials }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "account_creation", - ClientResponseEncrypted::get_account_creation_for_reflect, - ClientResponseEncrypted::mut_account_creation_for_reflect, + |m: &ClientResponseEncrypted| { &m.account_creation }, + |m: &mut ClientResponseEncrypted| { &mut m.account_creation }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "fingerprint_response", - ClientResponseEncrypted::get_fingerprint_response_for_reflect, - ClientResponseEncrypted::mut_fingerprint_response_for_reflect, + |m: &ClientResponseEncrypted| { &m.fingerprint_response }, + |m: &mut ClientResponseEncrypted| { &mut m.fingerprint_response }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "peer_ticket", - ClientResponseEncrypted::get_peer_ticket_for_reflect, - ClientResponseEncrypted::mut_peer_ticket_for_reflect, + |m: &ClientResponseEncrypted| { &m.peer_ticket }, + |m: &mut ClientResponseEncrypted| { &mut m.peer_ticket }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "system_info", - ClientResponseEncrypted::get_system_info_for_reflect, - ClientResponseEncrypted::mut_system_info_for_reflect, + |m: &ClientResponseEncrypted| { &m.system_info }, + |m: &mut ClientResponseEncrypted| { &mut m.system_info }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "platform_model", - ClientResponseEncrypted::get_platform_model_for_reflect, - ClientResponseEncrypted::mut_platform_model_for_reflect, + |m: &ClientResponseEncrypted| { &m.platform_model }, + |m: &mut ClientResponseEncrypted| { &mut m.platform_model }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "version_string", - ClientResponseEncrypted::get_version_string_for_reflect, - ClientResponseEncrypted::mut_version_string_for_reflect, + |m: &ClientResponseEncrypted| { &m.version_string }, + |m: &mut ClientResponseEncrypted| { &mut m.version_string }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "appkey", - ClientResponseEncrypted::get_appkey_for_reflect, - ClientResponseEncrypted::mut_appkey_for_reflect, + |m: &ClientResponseEncrypted| { &m.appkey }, + |m: &mut ClientResponseEncrypted| { &mut m.appkey }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "client_info", - ClientResponseEncrypted::get_client_info_for_reflect, - ClientResponseEncrypted::mut_client_info_for_reflect, + |m: &ClientResponseEncrypted| { &m.client_info }, + |m: &mut ClientResponseEncrypted| { &mut m.client_info }, )); ::protobuf::reflect::MessageDescriptor::new::( "ClientResponseEncrypted", @@ -651,6 +590,16 @@ impl ::protobuf::MessageStatic for ClientResponseEncrypted { }) } } + + fn default_instance() -> &'static ClientResponseEncrypted { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ClientResponseEncrypted, + }; + unsafe { + instance.get(ClientResponseEncrypted::new) + } + } } impl ::protobuf::Clear for ClientResponseEncrypted { @@ -691,24 +640,11 @@ pub struct LoginCredentials { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCredentials {} - impl LoginCredentials { pub fn new() -> LoginCredentials { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCredentials { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCredentials, - }; - unsafe { - instance.get(LoginCredentials::new) - } - } - // optional string username = 10; pub fn clear_username(&mut self) { @@ -729,7 +665,7 @@ impl LoginCredentials { pub fn mut_username(&mut self) -> &mut ::std::string::String { if self.username.is_none() { self.username.set_default(); - }; + } self.username.as_mut().unwrap() } @@ -745,14 +681,6 @@ impl LoginCredentials { } } - fn get_username_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.username - } - - fn mut_username_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.username - } - // required .AuthenticationType typ = 20; pub fn clear_typ(&mut self) { @@ -772,14 +700,6 @@ impl LoginCredentials { self.typ.unwrap_or(AuthenticationType::AUTHENTICATION_USER_PASS) } - fn get_typ_for_reflect(&self) -> &::std::option::Option { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.typ - } - // optional bytes auth_data = 30; pub fn clear_auth_data(&mut self) { @@ -800,7 +720,7 @@ impl LoginCredentials { pub fn mut_auth_data(&mut self) -> &mut ::std::vec::Vec { if self.auth_data.is_none() { self.auth_data.set_default(); - }; + } self.auth_data.as_mut().unwrap() } @@ -815,21 +735,13 @@ impl LoginCredentials { None => &[], } } - - fn get_auth_data_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.auth_data - } - - fn mut_auth_data_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.auth_data - } } impl ::protobuf::Message for LoginCredentials { fn is_initialized(&self) -> bool { if self.typ.is_none() { return false; - }; + } true } @@ -841,11 +753,7 @@ impl ::protobuf::Message for LoginCredentials { ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.username)?; }, 20 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.typ = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.typ, 20, &mut self.unknown_fields)? }, 30 => { ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.auth_data)?; @@ -862,30 +770,30 @@ impl ::protobuf::Message for LoginCredentials { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.username.as_ref() { + if let Some(ref v) = self.username.as_ref() { my_size += ::protobuf::rt::string_size(10, &v); - }; + } if let Some(v) = self.typ { my_size += ::protobuf::rt::enum_size(20, v); - }; - if let Some(v) = self.auth_data.as_ref() { + } + if let Some(ref v) = self.auth_data.as_ref() { my_size += ::protobuf::rt::bytes_size(30, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.username.as_ref() { + if let Some(ref v) = self.username.as_ref() { os.write_string(10, &v)?; - }; + } if let Some(v) = self.typ { os.write_enum(20, v.value())?; - }; - if let Some(v) = self.auth_data.as_ref() { + } + if let Some(ref v) = self.auth_data.as_ref() { os.write_bytes(30, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -913,16 +821,14 @@ impl ::protobuf::Message for LoginCredentials { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCredentials { fn new() -> LoginCredentials { LoginCredentials::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -932,18 +838,18 @@ impl ::protobuf::MessageStatic for LoginCredentials { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "username", - LoginCredentials::get_username_for_reflect, - LoginCredentials::mut_username_for_reflect, + |m: &LoginCredentials| { &m.username }, + |m: &mut LoginCredentials| { &mut m.username }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "typ", - LoginCredentials::get_typ_for_reflect, - LoginCredentials::mut_typ_for_reflect, + |m: &LoginCredentials| { &m.typ }, + |m: &mut LoginCredentials| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "auth_data", - LoginCredentials::get_auth_data_for_reflect, - LoginCredentials::mut_auth_data_for_reflect, + |m: &LoginCredentials| { &m.auth_data }, + |m: &mut LoginCredentials| { &mut m.auth_data }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCredentials", @@ -953,6 +859,16 @@ impl ::protobuf::MessageStatic for LoginCredentials { }) } } + + fn default_instance() -> &'static LoginCredentials { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCredentials, + }; + unsafe { + instance.get(LoginCredentials::new) + } + } } impl ::protobuf::Clear for LoginCredentials { @@ -986,24 +902,11 @@ pub struct FingerprintResponseUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FingerprintResponseUnion {} - impl FingerprintResponseUnion { pub fn new() -> FingerprintResponseUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static FingerprintResponseUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FingerprintResponseUnion, - }; - unsafe { - instance.get(FingerprintResponseUnion::new) - } - } - // optional .FingerprintGrainResponse grain = 10; pub fn clear_grain(&mut self) { @@ -1024,7 +927,7 @@ impl FingerprintResponseUnion { pub fn mut_grain(&mut self) -> &mut FingerprintGrainResponse { if self.grain.is_none() { self.grain.set_default(); - }; + } self.grain.as_mut().unwrap() } @@ -1037,14 +940,6 @@ impl FingerprintResponseUnion { self.grain.as_ref().unwrap_or_else(|| FingerprintGrainResponse::default_instance()) } - fn get_grain_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.grain - } - - fn mut_grain_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.grain - } - // optional .FingerprintHmacRipemdResponse hmac_ripemd = 20; pub fn clear_hmac_ripemd(&mut self) { @@ -1065,7 +960,7 @@ impl FingerprintResponseUnion { pub fn mut_hmac_ripemd(&mut self) -> &mut FingerprintHmacRipemdResponse { if self.hmac_ripemd.is_none() { self.hmac_ripemd.set_default(); - }; + } self.hmac_ripemd.as_mut().unwrap() } @@ -1077,18 +972,20 @@ impl FingerprintResponseUnion { pub fn get_hmac_ripemd(&self) -> &FingerprintHmacRipemdResponse { self.hmac_ripemd.as_ref().unwrap_or_else(|| FingerprintHmacRipemdResponse::default_instance()) } - - fn get_hmac_ripemd_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.hmac_ripemd - } - - fn mut_hmac_ripemd_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.hmac_ripemd - } } impl ::protobuf::Message for FingerprintResponseUnion { fn is_initialized(&self) -> bool { + for v in &self.grain { + if !v.is_initialized() { + return false; + } + }; + for v in &self.hmac_ripemd { + if !v.is_initialized() { + return false; + } + }; true } @@ -1114,30 +1011,30 @@ impl ::protobuf::Message for FingerprintResponseUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.grain.as_ref() { + if let Some(ref v) = self.grain.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.hmac_ripemd.as_ref() { + } + if let Some(ref v) = self.hmac_ripemd.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.grain.as_ref() { + if let Some(ref v) = self.grain.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.hmac_ripemd.as_ref() { + } + if let Some(ref v) = self.hmac_ripemd.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1165,16 +1062,14 @@ impl ::protobuf::Message for FingerprintResponseUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FingerprintResponseUnion { fn new() -> FingerprintResponseUnion { FingerprintResponseUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1184,13 +1079,13 @@ impl ::protobuf::MessageStatic for FingerprintResponseUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "grain", - FingerprintResponseUnion::get_grain_for_reflect, - FingerprintResponseUnion::mut_grain_for_reflect, + |m: &FingerprintResponseUnion| { &m.grain }, + |m: &mut FingerprintResponseUnion| { &mut m.grain }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "hmac_ripemd", - FingerprintResponseUnion::get_hmac_ripemd_for_reflect, - FingerprintResponseUnion::mut_hmac_ripemd_for_reflect, + |m: &FingerprintResponseUnion| { &m.hmac_ripemd }, + |m: &mut FingerprintResponseUnion| { &mut m.hmac_ripemd }, )); ::protobuf::reflect::MessageDescriptor::new::( "FingerprintResponseUnion", @@ -1200,6 +1095,16 @@ impl ::protobuf::MessageStatic for FingerprintResponseUnion { }) } } + + fn default_instance() -> &'static FingerprintResponseUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FingerprintResponseUnion, + }; + unsafe { + instance.get(FingerprintResponseUnion::new) + } + } } impl ::protobuf::Clear for FingerprintResponseUnion { @@ -1231,24 +1136,11 @@ pub struct FingerprintGrainResponse { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FingerprintGrainResponse {} - impl FingerprintGrainResponse { pub fn new() -> FingerprintGrainResponse { ::std::default::Default::default() } - pub fn default_instance() -> &'static FingerprintGrainResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FingerprintGrainResponse, - }; - unsafe { - instance.get(FingerprintGrainResponse::new) - } - } - // required bytes encrypted_key = 10; pub fn clear_encrypted_key(&mut self) { @@ -1269,7 +1161,7 @@ impl FingerprintGrainResponse { pub fn mut_encrypted_key(&mut self) -> &mut ::std::vec::Vec { if self.encrypted_key.is_none() { self.encrypted_key.set_default(); - }; + } self.encrypted_key.as_mut().unwrap() } @@ -1284,21 +1176,13 @@ impl FingerprintGrainResponse { None => &[], } } - - fn get_encrypted_key_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.encrypted_key - } - - fn mut_encrypted_key_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.encrypted_key - } } impl ::protobuf::Message for FingerprintGrainResponse { fn is_initialized(&self) -> bool { if self.encrypted_key.is_none() { return false; - }; + } true } @@ -1321,18 +1205,18 @@ impl ::protobuf::Message for FingerprintGrainResponse { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.encrypted_key.as_ref() { + if let Some(ref v) = self.encrypted_key.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.encrypted_key.as_ref() { + if let Some(ref v) = self.encrypted_key.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1360,16 +1244,14 @@ impl ::protobuf::Message for FingerprintGrainResponse { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FingerprintGrainResponse { fn new() -> FingerprintGrainResponse { FingerprintGrainResponse::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1379,8 +1261,8 @@ impl ::protobuf::MessageStatic for FingerprintGrainResponse { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "encrypted_key", - FingerprintGrainResponse::get_encrypted_key_for_reflect, - FingerprintGrainResponse::mut_encrypted_key_for_reflect, + |m: &FingerprintGrainResponse| { &m.encrypted_key }, + |m: &mut FingerprintGrainResponse| { &mut m.encrypted_key }, )); ::protobuf::reflect::MessageDescriptor::new::( "FingerprintGrainResponse", @@ -1390,6 +1272,16 @@ impl ::protobuf::MessageStatic for FingerprintGrainResponse { }) } } + + fn default_instance() -> &'static FingerprintGrainResponse { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FingerprintGrainResponse, + }; + unsafe { + instance.get(FingerprintGrainResponse::new) + } + } } impl ::protobuf::Clear for FingerprintGrainResponse { @@ -1420,24 +1312,11 @@ pub struct FingerprintHmacRipemdResponse { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FingerprintHmacRipemdResponse {} - impl FingerprintHmacRipemdResponse { pub fn new() -> FingerprintHmacRipemdResponse { ::std::default::Default::default() } - pub fn default_instance() -> &'static FingerprintHmacRipemdResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FingerprintHmacRipemdResponse, - }; - unsafe { - instance.get(FingerprintHmacRipemdResponse::new) - } - } - // required bytes hmac = 10; pub fn clear_hmac(&mut self) { @@ -1458,7 +1337,7 @@ impl FingerprintHmacRipemdResponse { pub fn mut_hmac(&mut self) -> &mut ::std::vec::Vec { if self.hmac.is_none() { self.hmac.set_default(); - }; + } self.hmac.as_mut().unwrap() } @@ -1473,21 +1352,13 @@ impl FingerprintHmacRipemdResponse { None => &[], } } - - fn get_hmac_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.hmac - } - - fn mut_hmac_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.hmac - } } impl ::protobuf::Message for FingerprintHmacRipemdResponse { fn is_initialized(&self) -> bool { if self.hmac.is_none() { return false; - }; + } true } @@ -1510,18 +1381,18 @@ impl ::protobuf::Message for FingerprintHmacRipemdResponse { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.hmac.as_ref() { + if let Some(ref v) = self.hmac.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.hmac.as_ref() { + if let Some(ref v) = self.hmac.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1549,16 +1420,14 @@ impl ::protobuf::Message for FingerprintHmacRipemdResponse { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FingerprintHmacRipemdResponse { fn new() -> FingerprintHmacRipemdResponse { FingerprintHmacRipemdResponse::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1568,8 +1437,8 @@ impl ::protobuf::MessageStatic for FingerprintHmacRipemdResponse { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "hmac", - FingerprintHmacRipemdResponse::get_hmac_for_reflect, - FingerprintHmacRipemdResponse::mut_hmac_for_reflect, + |m: &FingerprintHmacRipemdResponse| { &m.hmac }, + |m: &mut FingerprintHmacRipemdResponse| { &mut m.hmac }, )); ::protobuf::reflect::MessageDescriptor::new::( "FingerprintHmacRipemdResponse", @@ -1579,6 +1448,16 @@ impl ::protobuf::MessageStatic for FingerprintHmacRipemdResponse { }) } } + + fn default_instance() -> &'static FingerprintHmacRipemdResponse { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FingerprintHmacRipemdResponse, + }; + unsafe { + instance.get(FingerprintHmacRipemdResponse::new) + } + } } impl ::protobuf::Clear for FingerprintHmacRipemdResponse { @@ -1610,24 +1489,11 @@ pub struct PeerTicketUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PeerTicketUnion {} - impl PeerTicketUnion { pub fn new() -> PeerTicketUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static PeerTicketUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PeerTicketUnion, - }; - unsafe { - instance.get(PeerTicketUnion::new) - } - } - // optional .PeerTicketPublicKey public_key = 10; pub fn clear_public_key(&mut self) { @@ -1648,7 +1514,7 @@ impl PeerTicketUnion { pub fn mut_public_key(&mut self) -> &mut PeerTicketPublicKey { if self.public_key.is_none() { self.public_key.set_default(); - }; + } self.public_key.as_mut().unwrap() } @@ -1661,14 +1527,6 @@ impl PeerTicketUnion { self.public_key.as_ref().unwrap_or_else(|| PeerTicketPublicKey::default_instance()) } - fn get_public_key_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.public_key - } - - fn mut_public_key_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.public_key - } - // optional .PeerTicketOld old_ticket = 20; pub fn clear_old_ticket(&mut self) { @@ -1689,7 +1547,7 @@ impl PeerTicketUnion { pub fn mut_old_ticket(&mut self) -> &mut PeerTicketOld { if self.old_ticket.is_none() { self.old_ticket.set_default(); - }; + } self.old_ticket.as_mut().unwrap() } @@ -1701,18 +1559,20 @@ impl PeerTicketUnion { pub fn get_old_ticket(&self) -> &PeerTicketOld { self.old_ticket.as_ref().unwrap_or_else(|| PeerTicketOld::default_instance()) } - - fn get_old_ticket_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.old_ticket - } - - fn mut_old_ticket_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.old_ticket - } } impl ::protobuf::Message for PeerTicketUnion { fn is_initialized(&self) -> bool { + for v in &self.public_key { + if !v.is_initialized() { + return false; + } + }; + for v in &self.old_ticket { + if !v.is_initialized() { + return false; + } + }; true } @@ -1738,30 +1598,30 @@ impl ::protobuf::Message for PeerTicketUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.public_key.as_ref() { + if let Some(ref v) = self.public_key.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.old_ticket.as_ref() { + } + if let Some(ref v) = self.old_ticket.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.public_key.as_ref() { + if let Some(ref v) = self.public_key.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.old_ticket.as_ref() { + } + if let Some(ref v) = self.old_ticket.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1789,16 +1649,14 @@ impl ::protobuf::Message for PeerTicketUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PeerTicketUnion { fn new() -> PeerTicketUnion { PeerTicketUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1808,13 +1666,13 @@ impl ::protobuf::MessageStatic for PeerTicketUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "public_key", - PeerTicketUnion::get_public_key_for_reflect, - PeerTicketUnion::mut_public_key_for_reflect, + |m: &PeerTicketUnion| { &m.public_key }, + |m: &mut PeerTicketUnion| { &mut m.public_key }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "old_ticket", - PeerTicketUnion::get_old_ticket_for_reflect, - PeerTicketUnion::mut_old_ticket_for_reflect, + |m: &PeerTicketUnion| { &m.old_ticket }, + |m: &mut PeerTicketUnion| { &mut m.old_ticket }, )); ::protobuf::reflect::MessageDescriptor::new::( "PeerTicketUnion", @@ -1824,6 +1682,16 @@ impl ::protobuf::MessageStatic for PeerTicketUnion { }) } } + + fn default_instance() -> &'static PeerTicketUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PeerTicketUnion, + }; + unsafe { + instance.get(PeerTicketUnion::new) + } + } } impl ::protobuf::Clear for PeerTicketUnion { @@ -1855,24 +1723,11 @@ pub struct PeerTicketPublicKey { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PeerTicketPublicKey {} - impl PeerTicketPublicKey { pub fn new() -> PeerTicketPublicKey { ::std::default::Default::default() } - pub fn default_instance() -> &'static PeerTicketPublicKey { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PeerTicketPublicKey, - }; - unsafe { - instance.get(PeerTicketPublicKey::new) - } - } - // required bytes public_key = 10; pub fn clear_public_key(&mut self) { @@ -1893,7 +1748,7 @@ impl PeerTicketPublicKey { pub fn mut_public_key(&mut self) -> &mut ::std::vec::Vec { if self.public_key.is_none() { self.public_key.set_default(); - }; + } self.public_key.as_mut().unwrap() } @@ -1908,21 +1763,13 @@ impl PeerTicketPublicKey { None => &[], } } - - fn get_public_key_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.public_key - } - - fn mut_public_key_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.public_key - } } impl ::protobuf::Message for PeerTicketPublicKey { fn is_initialized(&self) -> bool { if self.public_key.is_none() { return false; - }; + } true } @@ -1945,18 +1792,18 @@ impl ::protobuf::Message for PeerTicketPublicKey { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.public_key.as_ref() { + if let Some(ref v) = self.public_key.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.public_key.as_ref() { + if let Some(ref v) = self.public_key.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1984,16 +1831,14 @@ impl ::protobuf::Message for PeerTicketPublicKey { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PeerTicketPublicKey { fn new() -> PeerTicketPublicKey { PeerTicketPublicKey::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2003,8 +1848,8 @@ impl ::protobuf::MessageStatic for PeerTicketPublicKey { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "public_key", - PeerTicketPublicKey::get_public_key_for_reflect, - PeerTicketPublicKey::mut_public_key_for_reflect, + |m: &PeerTicketPublicKey| { &m.public_key }, + |m: &mut PeerTicketPublicKey| { &mut m.public_key }, )); ::protobuf::reflect::MessageDescriptor::new::( "PeerTicketPublicKey", @@ -2014,6 +1859,16 @@ impl ::protobuf::MessageStatic for PeerTicketPublicKey { }) } } + + fn default_instance() -> &'static PeerTicketPublicKey { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PeerTicketPublicKey, + }; + unsafe { + instance.get(PeerTicketPublicKey::new) + } + } } impl ::protobuf::Clear for PeerTicketPublicKey { @@ -2045,24 +1900,11 @@ pub struct PeerTicketOld { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PeerTicketOld {} - impl PeerTicketOld { pub fn new() -> PeerTicketOld { ::std::default::Default::default() } - pub fn default_instance() -> &'static PeerTicketOld { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PeerTicketOld, - }; - unsafe { - instance.get(PeerTicketOld::new) - } - } - // required bytes peer_ticket = 10; pub fn clear_peer_ticket(&mut self) { @@ -2083,7 +1925,7 @@ impl PeerTicketOld { pub fn mut_peer_ticket(&mut self) -> &mut ::std::vec::Vec { if self.peer_ticket.is_none() { self.peer_ticket.set_default(); - }; + } self.peer_ticket.as_mut().unwrap() } @@ -2099,14 +1941,6 @@ impl PeerTicketOld { } } - fn get_peer_ticket_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.peer_ticket - } - - fn mut_peer_ticket_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.peer_ticket - } - // required bytes peer_ticket_signature = 20; pub fn clear_peer_ticket_signature(&mut self) { @@ -2127,7 +1961,7 @@ impl PeerTicketOld { pub fn mut_peer_ticket_signature(&mut self) -> &mut ::std::vec::Vec { if self.peer_ticket_signature.is_none() { self.peer_ticket_signature.set_default(); - }; + } self.peer_ticket_signature.as_mut().unwrap() } @@ -2142,24 +1976,16 @@ impl PeerTicketOld { None => &[], } } - - fn get_peer_ticket_signature_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.peer_ticket_signature - } - - fn mut_peer_ticket_signature_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.peer_ticket_signature - } } impl ::protobuf::Message for PeerTicketOld { fn is_initialized(&self) -> bool { if self.peer_ticket.is_none() { return false; - }; + } if self.peer_ticket_signature.is_none() { return false; - }; + } true } @@ -2185,24 +2011,24 @@ impl ::protobuf::Message for PeerTicketOld { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.peer_ticket.as_ref() { + if let Some(ref v) = self.peer_ticket.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; - if let Some(v) = self.peer_ticket_signature.as_ref() { + } + if let Some(ref v) = self.peer_ticket_signature.as_ref() { my_size += ::protobuf::rt::bytes_size(20, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.peer_ticket.as_ref() { + if let Some(ref v) = self.peer_ticket.as_ref() { os.write_bytes(10, &v)?; - }; - if let Some(v) = self.peer_ticket_signature.as_ref() { + } + if let Some(ref v) = self.peer_ticket_signature.as_ref() { os.write_bytes(20, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2230,16 +2056,14 @@ impl ::protobuf::Message for PeerTicketOld { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PeerTicketOld { fn new() -> PeerTicketOld { PeerTicketOld::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2249,13 +2073,13 @@ impl ::protobuf::MessageStatic for PeerTicketOld { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "peer_ticket", - PeerTicketOld::get_peer_ticket_for_reflect, - PeerTicketOld::mut_peer_ticket_for_reflect, + |m: &PeerTicketOld| { &m.peer_ticket }, + |m: &mut PeerTicketOld| { &mut m.peer_ticket }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "peer_ticket_signature", - PeerTicketOld::get_peer_ticket_signature_for_reflect, - PeerTicketOld::mut_peer_ticket_signature_for_reflect, + |m: &PeerTicketOld| { &m.peer_ticket_signature }, + |m: &mut PeerTicketOld| { &mut m.peer_ticket_signature }, )); ::protobuf::reflect::MessageDescriptor::new::( "PeerTicketOld", @@ -2265,6 +2089,16 @@ impl ::protobuf::MessageStatic for PeerTicketOld { }) } } + + fn default_instance() -> &'static PeerTicketOld { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PeerTicketOld, + }; + unsafe { + instance.get(PeerTicketOld::new) + } + } } impl ::protobuf::Clear for PeerTicketOld { @@ -2305,24 +2139,11 @@ pub struct SystemInfo { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for SystemInfo {} - impl SystemInfo { pub fn new() -> SystemInfo { ::std::default::Default::default() } - pub fn default_instance() -> &'static SystemInfo { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const SystemInfo, - }; - unsafe { - instance.get(SystemInfo::new) - } - } - // required .CpuFamily cpu_family = 10; pub fn clear_cpu_family(&mut self) { @@ -2342,14 +2163,6 @@ impl SystemInfo { self.cpu_family.unwrap_or(CpuFamily::CPU_UNKNOWN) } - fn get_cpu_family_for_reflect(&self) -> &::std::option::Option { - &self.cpu_family - } - - fn mut_cpu_family_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.cpu_family - } - // optional uint32 cpu_subtype = 20; pub fn clear_cpu_subtype(&mut self) { @@ -2369,14 +2182,6 @@ impl SystemInfo { self.cpu_subtype.unwrap_or(0) } - fn get_cpu_subtype_for_reflect(&self) -> &::std::option::Option { - &self.cpu_subtype - } - - fn mut_cpu_subtype_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.cpu_subtype - } - // optional uint32 cpu_ext = 30; pub fn clear_cpu_ext(&mut self) { @@ -2396,14 +2201,6 @@ impl SystemInfo { self.cpu_ext.unwrap_or(0) } - fn get_cpu_ext_for_reflect(&self) -> &::std::option::Option { - &self.cpu_ext - } - - fn mut_cpu_ext_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.cpu_ext - } - // optional .Brand brand = 40; pub fn clear_brand(&mut self) { @@ -2423,14 +2220,6 @@ impl SystemInfo { self.brand.unwrap_or(Brand::BRAND_UNBRANDED) } - fn get_brand_for_reflect(&self) -> &::std::option::Option { - &self.brand - } - - fn mut_brand_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.brand - } - // optional uint32 brand_flags = 50; pub fn clear_brand_flags(&mut self) { @@ -2450,14 +2239,6 @@ impl SystemInfo { self.brand_flags.unwrap_or(0) } - fn get_brand_flags_for_reflect(&self) -> &::std::option::Option { - &self.brand_flags - } - - fn mut_brand_flags_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.brand_flags - } - // required .Os os = 60; pub fn clear_os(&mut self) { @@ -2477,14 +2258,6 @@ impl SystemInfo { self.os.unwrap_or(Os::OS_UNKNOWN) } - fn get_os_for_reflect(&self) -> &::std::option::Option { - &self.os - } - - fn mut_os_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.os - } - // optional uint32 os_version = 70; pub fn clear_os_version(&mut self) { @@ -2504,14 +2277,6 @@ impl SystemInfo { self.os_version.unwrap_or(0) } - fn get_os_version_for_reflect(&self) -> &::std::option::Option { - &self.os_version - } - - fn mut_os_version_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.os_version - } - // optional uint32 os_ext = 80; pub fn clear_os_ext(&mut self) { @@ -2531,14 +2296,6 @@ impl SystemInfo { self.os_ext.unwrap_or(0) } - fn get_os_ext_for_reflect(&self) -> &::std::option::Option { - &self.os_ext - } - - fn mut_os_ext_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.os_ext - } - // optional string system_information_string = 90; pub fn clear_system_information_string(&mut self) { @@ -2559,7 +2316,7 @@ impl SystemInfo { pub fn mut_system_information_string(&mut self) -> &mut ::std::string::String { if self.system_information_string.is_none() { self.system_information_string.set_default(); - }; + } self.system_information_string.as_mut().unwrap() } @@ -2575,14 +2332,6 @@ impl SystemInfo { } } - fn get_system_information_string_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.system_information_string - } - - fn mut_system_information_string_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.system_information_string - } - // optional string device_id = 100; pub fn clear_device_id(&mut self) { @@ -2603,7 +2352,7 @@ impl SystemInfo { pub fn mut_device_id(&mut self) -> &mut ::std::string::String { if self.device_id.is_none() { self.device_id.set_default(); - }; + } self.device_id.as_mut().unwrap() } @@ -2618,24 +2367,16 @@ impl SystemInfo { None => "", } } - - fn get_device_id_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.device_id - } - - fn mut_device_id_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.device_id - } } impl ::protobuf::Message for SystemInfo { fn is_initialized(&self) -> bool { if self.cpu_family.is_none() { return false; - }; + } if self.os.is_none() { return false; - }; + } true } @@ -2644,58 +2385,46 @@ impl ::protobuf::Message for SystemInfo { let (field_number, wire_type) = is.read_tag_unpack()?; match field_number { 10 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.cpu_family = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.cpu_family, 10, &mut self.unknown_fields)? }, 20 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.cpu_subtype = ::std::option::Option::Some(tmp); }, 30 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.cpu_ext = ::std::option::Option::Some(tmp); }, 40 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.brand = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.brand, 40, &mut self.unknown_fields)? }, 50 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.brand_flags = ::std::option::Option::Some(tmp); }, 60 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.os = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.os, 60, &mut self.unknown_fields)? }, 70 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.os_version = ::std::option::Option::Some(tmp); }, 80 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.os_ext = ::std::option::Option::Some(tmp); }, @@ -2719,34 +2448,34 @@ impl ::protobuf::Message for SystemInfo { let mut my_size = 0; if let Some(v) = self.cpu_family { my_size += ::protobuf::rt::enum_size(10, v); - }; + } if let Some(v) = self.cpu_subtype { my_size += ::protobuf::rt::value_size(20, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.cpu_ext { my_size += ::protobuf::rt::value_size(30, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.brand { my_size += ::protobuf::rt::enum_size(40, v); - }; + } if let Some(v) = self.brand_flags { my_size += ::protobuf::rt::value_size(50, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.os { my_size += ::protobuf::rt::enum_size(60, v); - }; + } if let Some(v) = self.os_version { my_size += ::protobuf::rt::value_size(70, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.os_ext { my_size += ::protobuf::rt::value_size(80, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.system_information_string.as_ref() { + } + if let Some(ref v) = self.system_information_string.as_ref() { my_size += ::protobuf::rt::string_size(90, &v); - }; - if let Some(v) = self.device_id.as_ref() { + } + if let Some(ref v) = self.device_id.as_ref() { my_size += ::protobuf::rt::string_size(100, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -2755,34 +2484,34 @@ impl ::protobuf::Message for SystemInfo { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.cpu_family { os.write_enum(10, v.value())?; - }; + } if let Some(v) = self.cpu_subtype { os.write_uint32(20, v)?; - }; + } if let Some(v) = self.cpu_ext { os.write_uint32(30, v)?; - }; + } if let Some(v) = self.brand { os.write_enum(40, v.value())?; - }; + } if let Some(v) = self.brand_flags { os.write_uint32(50, v)?; - }; + } if let Some(v) = self.os { os.write_enum(60, v.value())?; - }; + } if let Some(v) = self.os_version { os.write_uint32(70, v)?; - }; + } if let Some(v) = self.os_ext { os.write_uint32(80, v)?; - }; - if let Some(v) = self.system_information_string.as_ref() { + } + if let Some(ref v) = self.system_information_string.as_ref() { os.write_string(90, &v)?; - }; - if let Some(v) = self.device_id.as_ref() { + } + if let Some(ref v) = self.device_id.as_ref() { os.write_string(100, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2810,16 +2539,14 @@ impl ::protobuf::Message for SystemInfo { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for SystemInfo { fn new() -> SystemInfo { SystemInfo::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2829,53 +2556,53 @@ impl ::protobuf::MessageStatic for SystemInfo { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "cpu_family", - SystemInfo::get_cpu_family_for_reflect, - SystemInfo::mut_cpu_family_for_reflect, + |m: &SystemInfo| { &m.cpu_family }, + |m: &mut SystemInfo| { &mut m.cpu_family }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "cpu_subtype", - SystemInfo::get_cpu_subtype_for_reflect, - SystemInfo::mut_cpu_subtype_for_reflect, + |m: &SystemInfo| { &m.cpu_subtype }, + |m: &mut SystemInfo| { &mut m.cpu_subtype }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "cpu_ext", - SystemInfo::get_cpu_ext_for_reflect, - SystemInfo::mut_cpu_ext_for_reflect, + |m: &SystemInfo| { &m.cpu_ext }, + |m: &mut SystemInfo| { &mut m.cpu_ext }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "brand", - SystemInfo::get_brand_for_reflect, - SystemInfo::mut_brand_for_reflect, + |m: &SystemInfo| { &m.brand }, + |m: &mut SystemInfo| { &mut m.brand }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "brand_flags", - SystemInfo::get_brand_flags_for_reflect, - SystemInfo::mut_brand_flags_for_reflect, + |m: &SystemInfo| { &m.brand_flags }, + |m: &mut SystemInfo| { &mut m.brand_flags }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "os", - SystemInfo::get_os_for_reflect, - SystemInfo::mut_os_for_reflect, + |m: &SystemInfo| { &m.os }, + |m: &mut SystemInfo| { &mut m.os }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "os_version", - SystemInfo::get_os_version_for_reflect, - SystemInfo::mut_os_version_for_reflect, + |m: &SystemInfo| { &m.os_version }, + |m: &mut SystemInfo| { &mut m.os_version }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "os_ext", - SystemInfo::get_os_ext_for_reflect, - SystemInfo::mut_os_ext_for_reflect, + |m: &SystemInfo| { &m.os_ext }, + |m: &mut SystemInfo| { &mut m.os_ext }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "system_information_string", - SystemInfo::get_system_information_string_for_reflect, - SystemInfo::mut_system_information_string_for_reflect, + |m: &SystemInfo| { &m.system_information_string }, + |m: &mut SystemInfo| { &mut m.system_information_string }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "device_id", - SystemInfo::get_device_id_for_reflect, - SystemInfo::mut_device_id_for_reflect, + |m: &SystemInfo| { &m.device_id }, + |m: &mut SystemInfo| { &mut m.device_id }, )); ::protobuf::reflect::MessageDescriptor::new::( "SystemInfo", @@ -2885,6 +2612,16 @@ impl ::protobuf::MessageStatic for SystemInfo { }) } } + + fn default_instance() -> &'static SystemInfo { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const SystemInfo, + }; + unsafe { + instance.get(SystemInfo::new) + } + } } impl ::protobuf::Clear for SystemInfo { @@ -2928,24 +2665,11 @@ pub struct LibspotifyAppKey { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LibspotifyAppKey {} - impl LibspotifyAppKey { pub fn new() -> LibspotifyAppKey { ::std::default::Default::default() } - pub fn default_instance() -> &'static LibspotifyAppKey { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LibspotifyAppKey, - }; - unsafe { - instance.get(LibspotifyAppKey::new) - } - } - // required uint32 version = 1; pub fn clear_version(&mut self) { @@ -2965,14 +2689,6 @@ impl LibspotifyAppKey { self.version.unwrap_or(0) } - fn get_version_for_reflect(&self) -> &::std::option::Option { - &self.version - } - - fn mut_version_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.version - } - // required bytes devkey = 2; pub fn clear_devkey(&mut self) { @@ -2993,7 +2709,7 @@ impl LibspotifyAppKey { pub fn mut_devkey(&mut self) -> &mut ::std::vec::Vec { if self.devkey.is_none() { self.devkey.set_default(); - }; + } self.devkey.as_mut().unwrap() } @@ -3009,14 +2725,6 @@ impl LibspotifyAppKey { } } - fn get_devkey_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.devkey - } - - fn mut_devkey_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.devkey - } - // required bytes signature = 3; pub fn clear_signature(&mut self) { @@ -3037,7 +2745,7 @@ impl LibspotifyAppKey { pub fn mut_signature(&mut self) -> &mut ::std::vec::Vec { if self.signature.is_none() { self.signature.set_default(); - }; + } self.signature.as_mut().unwrap() } @@ -3053,14 +2761,6 @@ impl LibspotifyAppKey { } } - fn get_signature_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.signature - } - - fn mut_signature_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.signature - } - // required string useragent = 4; pub fn clear_useragent(&mut self) { @@ -3081,7 +2781,7 @@ impl LibspotifyAppKey { pub fn mut_useragent(&mut self) -> &mut ::std::string::String { if self.useragent.is_none() { self.useragent.set_default(); - }; + } self.useragent.as_mut().unwrap() } @@ -3097,14 +2797,6 @@ impl LibspotifyAppKey { } } - fn get_useragent_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.useragent - } - - fn mut_useragent_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.useragent - } - // required bytes callback_hash = 5; pub fn clear_callback_hash(&mut self) { @@ -3125,7 +2817,7 @@ impl LibspotifyAppKey { pub fn mut_callback_hash(&mut self) -> &mut ::std::vec::Vec { if self.callback_hash.is_none() { self.callback_hash.set_default(); - }; + } self.callback_hash.as_mut().unwrap() } @@ -3140,33 +2832,25 @@ impl LibspotifyAppKey { None => &[], } } - - fn get_callback_hash_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.callback_hash - } - - fn mut_callback_hash_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.callback_hash - } } impl ::protobuf::Message for LibspotifyAppKey { fn is_initialized(&self) -> bool { if self.version.is_none() { return false; - }; + } if self.devkey.is_none() { return false; - }; + } if self.signature.is_none() { return false; - }; + } if self.useragent.is_none() { return false; - }; + } if self.callback_hash.is_none() { return false; - }; + } true } @@ -3177,7 +2861,7 @@ impl ::protobuf::Message for LibspotifyAppKey { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.version = ::std::option::Option::Some(tmp); }, @@ -3207,19 +2891,19 @@ impl ::protobuf::Message for LibspotifyAppKey { let mut my_size = 0; if let Some(v) = self.version { my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.devkey.as_ref() { + } + if let Some(ref v) = self.devkey.as_ref() { my_size += ::protobuf::rt::bytes_size(2, &v); - }; - if let Some(v) = self.signature.as_ref() { + } + if let Some(ref v) = self.signature.as_ref() { my_size += ::protobuf::rt::bytes_size(3, &v); - }; - if let Some(v) = self.useragent.as_ref() { + } + if let Some(ref v) = self.useragent.as_ref() { my_size += ::protobuf::rt::string_size(4, &v); - }; - if let Some(v) = self.callback_hash.as_ref() { + } + if let Some(ref v) = self.callback_hash.as_ref() { my_size += ::protobuf::rt::bytes_size(5, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -3228,19 +2912,19 @@ impl ::protobuf::Message for LibspotifyAppKey { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.version { os.write_uint32(1, v)?; - }; - if let Some(v) = self.devkey.as_ref() { + } + if let Some(ref v) = self.devkey.as_ref() { os.write_bytes(2, &v)?; - }; - if let Some(v) = self.signature.as_ref() { + } + if let Some(ref v) = self.signature.as_ref() { os.write_bytes(3, &v)?; - }; - if let Some(v) = self.useragent.as_ref() { + } + if let Some(ref v) = self.useragent.as_ref() { os.write_string(4, &v)?; - }; - if let Some(v) = self.callback_hash.as_ref() { + } + if let Some(ref v) = self.callback_hash.as_ref() { os.write_bytes(5, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3268,16 +2952,14 @@ impl ::protobuf::Message for LibspotifyAppKey { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LibspotifyAppKey { fn new() -> LibspotifyAppKey { LibspotifyAppKey::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3287,28 +2969,28 @@ impl ::protobuf::MessageStatic for LibspotifyAppKey { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "version", - LibspotifyAppKey::get_version_for_reflect, - LibspotifyAppKey::mut_version_for_reflect, + |m: &LibspotifyAppKey| { &m.version }, + |m: &mut LibspotifyAppKey| { &mut m.version }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "devkey", - LibspotifyAppKey::get_devkey_for_reflect, - LibspotifyAppKey::mut_devkey_for_reflect, + |m: &LibspotifyAppKey| { &m.devkey }, + |m: &mut LibspotifyAppKey| { &mut m.devkey }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "signature", - LibspotifyAppKey::get_signature_for_reflect, - LibspotifyAppKey::mut_signature_for_reflect, + |m: &LibspotifyAppKey| { &m.signature }, + |m: &mut LibspotifyAppKey| { &mut m.signature }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "useragent", - LibspotifyAppKey::get_useragent_for_reflect, - LibspotifyAppKey::mut_useragent_for_reflect, + |m: &LibspotifyAppKey| { &m.useragent }, + |m: &mut LibspotifyAppKey| { &mut m.useragent }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "callback_hash", - LibspotifyAppKey::get_callback_hash_for_reflect, - LibspotifyAppKey::mut_callback_hash_for_reflect, + |m: &LibspotifyAppKey| { &m.callback_hash }, + |m: &mut LibspotifyAppKey| { &mut m.callback_hash }, )); ::protobuf::reflect::MessageDescriptor::new::( "LibspotifyAppKey", @@ -3318,6 +3000,16 @@ impl ::protobuf::MessageStatic for LibspotifyAppKey { }) } } + + fn default_instance() -> &'static LibspotifyAppKey { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LibspotifyAppKey, + }; + unsafe { + instance.get(LibspotifyAppKey::new) + } + } } impl ::protobuf::Clear for LibspotifyAppKey { @@ -3354,24 +3046,11 @@ pub struct ClientInfo { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ClientInfo {} - impl ClientInfo { pub fn new() -> ClientInfo { ::std::default::Default::default() } - pub fn default_instance() -> &'static ClientInfo { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ClientInfo, - }; - unsafe { - instance.get(ClientInfo::new) - } - } - // optional bool limited = 1; pub fn clear_limited(&mut self) { @@ -3391,14 +3070,6 @@ impl ClientInfo { self.limited.unwrap_or(false) } - fn get_limited_for_reflect(&self) -> &::std::option::Option { - &self.limited - } - - fn mut_limited_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.limited - } - // optional .ClientInfoFacebook fb = 2; pub fn clear_fb(&mut self) { @@ -3419,7 +3090,7 @@ impl ClientInfo { pub fn mut_fb(&mut self) -> &mut ClientInfoFacebook { if self.fb.is_none() { self.fb.set_default(); - }; + } self.fb.as_mut().unwrap() } @@ -3432,14 +3103,6 @@ impl ClientInfo { self.fb.as_ref().unwrap_or_else(|| ClientInfoFacebook::default_instance()) } - fn get_fb_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.fb - } - - fn mut_fb_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.fb - } - // optional string language = 3; pub fn clear_language(&mut self) { @@ -3460,7 +3123,7 @@ impl ClientInfo { pub fn mut_language(&mut self) -> &mut ::std::string::String { if self.language.is_none() { self.language.set_default(); - }; + } self.language.as_mut().unwrap() } @@ -3475,18 +3138,15 @@ impl ClientInfo { None => "", } } - - fn get_language_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.language - } - - fn mut_language_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.language - } } impl ::protobuf::Message for ClientInfo { fn is_initialized(&self) -> bool { + for v in &self.fb { + if !v.is_initialized() { + return false; + } + }; true } @@ -3497,7 +3157,7 @@ impl ::protobuf::Message for ClientInfo { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.limited = ::std::option::Option::Some(tmp); }, @@ -3521,14 +3181,14 @@ impl ::protobuf::Message for ClientInfo { let mut my_size = 0; if let Some(v) = self.limited { my_size += 2; - }; - if let Some(v) = self.fb.as_ref() { + } + if let Some(ref v) = self.fb.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.language.as_ref() { + } + if let Some(ref v) = self.language.as_ref() { my_size += ::protobuf::rt::string_size(3, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -3537,15 +3197,15 @@ impl ::protobuf::Message for ClientInfo { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.limited { os.write_bool(1, v)?; - }; - if let Some(v) = self.fb.as_ref() { + } + if let Some(ref v) = self.fb.as_ref() { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.language.as_ref() { + } + if let Some(ref v) = self.language.as_ref() { os.write_string(3, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3573,16 +3233,14 @@ impl ::protobuf::Message for ClientInfo { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ClientInfo { fn new() -> ClientInfo { ClientInfo::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3592,18 +3250,18 @@ impl ::protobuf::MessageStatic for ClientInfo { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "limited", - ClientInfo::get_limited_for_reflect, - ClientInfo::mut_limited_for_reflect, + |m: &ClientInfo| { &m.limited }, + |m: &mut ClientInfo| { &mut m.limited }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "fb", - ClientInfo::get_fb_for_reflect, - ClientInfo::mut_fb_for_reflect, + |m: &ClientInfo| { &m.fb }, + |m: &mut ClientInfo| { &mut m.fb }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "language", - ClientInfo::get_language_for_reflect, - ClientInfo::mut_language_for_reflect, + |m: &ClientInfo| { &m.language }, + |m: &mut ClientInfo| { &mut m.language }, )); ::protobuf::reflect::MessageDescriptor::new::( "ClientInfo", @@ -3613,6 +3271,16 @@ impl ::protobuf::MessageStatic for ClientInfo { }) } } + + fn default_instance() -> &'static ClientInfo { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ClientInfo, + }; + unsafe { + instance.get(ClientInfo::new) + } + } } impl ::protobuf::Clear for ClientInfo { @@ -3645,24 +3313,11 @@ pub struct ClientInfoFacebook { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ClientInfoFacebook {} - impl ClientInfoFacebook { pub fn new() -> ClientInfoFacebook { ::std::default::Default::default() } - pub fn default_instance() -> &'static ClientInfoFacebook { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ClientInfoFacebook, - }; - unsafe { - instance.get(ClientInfoFacebook::new) - } - } - // optional string machine_id = 1; pub fn clear_machine_id(&mut self) { @@ -3683,7 +3338,7 @@ impl ClientInfoFacebook { pub fn mut_machine_id(&mut self) -> &mut ::std::string::String { if self.machine_id.is_none() { self.machine_id.set_default(); - }; + } self.machine_id.as_mut().unwrap() } @@ -3698,14 +3353,6 @@ impl ClientInfoFacebook { None => "", } } - - fn get_machine_id_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.machine_id - } - - fn mut_machine_id_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.machine_id - } } impl ::protobuf::Message for ClientInfoFacebook { @@ -3732,18 +3379,18 @@ impl ::protobuf::Message for ClientInfoFacebook { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.machine_id.as_ref() { + if let Some(ref v) = self.machine_id.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.machine_id.as_ref() { + if let Some(ref v) = self.machine_id.as_ref() { os.write_string(1, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3771,16 +3418,14 @@ impl ::protobuf::Message for ClientInfoFacebook { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ClientInfoFacebook { fn new() -> ClientInfoFacebook { ClientInfoFacebook::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3790,8 +3435,8 @@ impl ::protobuf::MessageStatic for ClientInfoFacebook { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "machine_id", - ClientInfoFacebook::get_machine_id_for_reflect, - ClientInfoFacebook::mut_machine_id_for_reflect, + |m: &ClientInfoFacebook| { &m.machine_id }, + |m: &mut ClientInfoFacebook| { &mut m.machine_id }, )); ::protobuf::reflect::MessageDescriptor::new::( "ClientInfoFacebook", @@ -3801,6 +3446,16 @@ impl ::protobuf::MessageStatic for ClientInfoFacebook { }) } } + + fn default_instance() -> &'static ClientInfoFacebook { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ClientInfoFacebook, + }; + unsafe { + instance.get(ClientInfoFacebook::new) + } + } } impl ::protobuf::Clear for ClientInfoFacebook { @@ -3838,24 +3493,11 @@ pub struct APWelcome { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for APWelcome {} - impl APWelcome { pub fn new() -> APWelcome { ::std::default::Default::default() } - pub fn default_instance() -> &'static APWelcome { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const APWelcome, - }; - unsafe { - instance.get(APWelcome::new) - } - } - // required string canonical_username = 10; pub fn clear_canonical_username(&mut self) { @@ -3876,7 +3518,7 @@ impl APWelcome { pub fn mut_canonical_username(&mut self) -> &mut ::std::string::String { if self.canonical_username.is_none() { self.canonical_username.set_default(); - }; + } self.canonical_username.as_mut().unwrap() } @@ -3892,14 +3534,6 @@ impl APWelcome { } } - fn get_canonical_username_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.canonical_username - } - - fn mut_canonical_username_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.canonical_username - } - // required .AccountType account_type_logged_in = 20; pub fn clear_account_type_logged_in(&mut self) { @@ -3919,14 +3553,6 @@ impl APWelcome { self.account_type_logged_in.unwrap_or(AccountType::Spotify) } - fn get_account_type_logged_in_for_reflect(&self) -> &::std::option::Option { - &self.account_type_logged_in - } - - fn mut_account_type_logged_in_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.account_type_logged_in - } - // required .AccountType credentials_type_logged_in = 25; pub fn clear_credentials_type_logged_in(&mut self) { @@ -3946,14 +3572,6 @@ impl APWelcome { self.credentials_type_logged_in.unwrap_or(AccountType::Spotify) } - fn get_credentials_type_logged_in_for_reflect(&self) -> &::std::option::Option { - &self.credentials_type_logged_in - } - - fn mut_credentials_type_logged_in_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.credentials_type_logged_in - } - // required .AuthenticationType reusable_auth_credentials_type = 30; pub fn clear_reusable_auth_credentials_type(&mut self) { @@ -3973,14 +3591,6 @@ impl APWelcome { self.reusable_auth_credentials_type.unwrap_or(AuthenticationType::AUTHENTICATION_USER_PASS) } - fn get_reusable_auth_credentials_type_for_reflect(&self) -> &::std::option::Option { - &self.reusable_auth_credentials_type - } - - fn mut_reusable_auth_credentials_type_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.reusable_auth_credentials_type - } - // required bytes reusable_auth_credentials = 40; pub fn clear_reusable_auth_credentials(&mut self) { @@ -4001,7 +3611,7 @@ impl APWelcome { pub fn mut_reusable_auth_credentials(&mut self) -> &mut ::std::vec::Vec { if self.reusable_auth_credentials.is_none() { self.reusable_auth_credentials.set_default(); - }; + } self.reusable_auth_credentials.as_mut().unwrap() } @@ -4017,14 +3627,6 @@ impl APWelcome { } } - fn get_reusable_auth_credentials_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.reusable_auth_credentials - } - - fn mut_reusable_auth_credentials_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.reusable_auth_credentials - } - // optional bytes lfs_secret = 50; pub fn clear_lfs_secret(&mut self) { @@ -4045,7 +3647,7 @@ impl APWelcome { pub fn mut_lfs_secret(&mut self) -> &mut ::std::vec::Vec { if self.lfs_secret.is_none() { self.lfs_secret.set_default(); - }; + } self.lfs_secret.as_mut().unwrap() } @@ -4061,14 +3663,6 @@ impl APWelcome { } } - fn get_lfs_secret_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.lfs_secret - } - - fn mut_lfs_secret_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.lfs_secret - } - // optional .AccountInfo account_info = 60; pub fn clear_account_info(&mut self) { @@ -4089,7 +3683,7 @@ impl APWelcome { pub fn mut_account_info(&mut self) -> &mut AccountInfo { if self.account_info.is_none() { self.account_info.set_default(); - }; + } self.account_info.as_mut().unwrap() } @@ -4102,14 +3696,6 @@ impl APWelcome { self.account_info.as_ref().unwrap_or_else(|| AccountInfo::default_instance()) } - fn get_account_info_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.account_info - } - - fn mut_account_info_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.account_info - } - // optional .AccountInfoFacebook fb = 70; pub fn clear_fb(&mut self) { @@ -4130,7 +3716,7 @@ impl APWelcome { pub fn mut_fb(&mut self) -> &mut AccountInfoFacebook { if self.fb.is_none() { self.fb.set_default(); - }; + } self.fb.as_mut().unwrap() } @@ -4142,32 +3728,34 @@ impl APWelcome { pub fn get_fb(&self) -> &AccountInfoFacebook { self.fb.as_ref().unwrap_or_else(|| AccountInfoFacebook::default_instance()) } - - fn get_fb_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.fb - } - - fn mut_fb_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.fb - } } impl ::protobuf::Message for APWelcome { fn is_initialized(&self) -> bool { if self.canonical_username.is_none() { return false; - }; + } if self.account_type_logged_in.is_none() { return false; - }; + } if self.credentials_type_logged_in.is_none() { return false; - }; + } if self.reusable_auth_credentials_type.is_none() { return false; - }; + } if self.reusable_auth_credentials.is_none() { return false; + } + for v in &self.account_info { + if !v.is_initialized() { + return false; + } + }; + for v in &self.fb { + if !v.is_initialized() { + return false; + } }; true } @@ -4180,25 +3768,13 @@ impl ::protobuf::Message for APWelcome { ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.canonical_username)?; }, 20 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.account_type_logged_in = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.account_type_logged_in, 20, &mut self.unknown_fields)? }, 25 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.credentials_type_logged_in = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.credentials_type_logged_in, 25, &mut self.unknown_fields)? }, 30 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.reusable_auth_credentials_type = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.reusable_auth_credentials_type, 30, &mut self.unknown_fields)? }, 40 => { ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.reusable_auth_credentials)?; @@ -4224,66 +3800,66 @@ impl ::protobuf::Message for APWelcome { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.canonical_username.as_ref() { + if let Some(ref v) = self.canonical_username.as_ref() { my_size += ::protobuf::rt::string_size(10, &v); - }; + } if let Some(v) = self.account_type_logged_in { my_size += ::protobuf::rt::enum_size(20, v); - }; + } if let Some(v) = self.credentials_type_logged_in { my_size += ::protobuf::rt::enum_size(25, v); - }; + } if let Some(v) = self.reusable_auth_credentials_type { my_size += ::protobuf::rt::enum_size(30, v); - }; - if let Some(v) = self.reusable_auth_credentials.as_ref() { + } + if let Some(ref v) = self.reusable_auth_credentials.as_ref() { my_size += ::protobuf::rt::bytes_size(40, &v); - }; - if let Some(v) = self.lfs_secret.as_ref() { + } + if let Some(ref v) = self.lfs_secret.as_ref() { my_size += ::protobuf::rt::bytes_size(50, &v); - }; - if let Some(v) = self.account_info.as_ref() { + } + if let Some(ref v) = self.account_info.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.fb.as_ref() { + } + if let Some(ref v) = self.fb.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.canonical_username.as_ref() { + if let Some(ref v) = self.canonical_username.as_ref() { os.write_string(10, &v)?; - }; + } if let Some(v) = self.account_type_logged_in { os.write_enum(20, v.value())?; - }; + } if let Some(v) = self.credentials_type_logged_in { os.write_enum(25, v.value())?; - }; + } if let Some(v) = self.reusable_auth_credentials_type { os.write_enum(30, v.value())?; - }; - if let Some(v) = self.reusable_auth_credentials.as_ref() { + } + if let Some(ref v) = self.reusable_auth_credentials.as_ref() { os.write_bytes(40, &v)?; - }; - if let Some(v) = self.lfs_secret.as_ref() { + } + if let Some(ref v) = self.lfs_secret.as_ref() { os.write_bytes(50, &v)?; - }; - if let Some(v) = self.account_info.as_ref() { + } + if let Some(ref v) = self.account_info.as_ref() { os.write_tag(60, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.fb.as_ref() { + } + if let Some(ref v) = self.fb.as_ref() { os.write_tag(70, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4311,16 +3887,14 @@ impl ::protobuf::Message for APWelcome { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for APWelcome { fn new() -> APWelcome { APWelcome::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4330,43 +3904,43 @@ impl ::protobuf::MessageStatic for APWelcome { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "canonical_username", - APWelcome::get_canonical_username_for_reflect, - APWelcome::mut_canonical_username_for_reflect, + |m: &APWelcome| { &m.canonical_username }, + |m: &mut APWelcome| { &mut m.canonical_username }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "account_type_logged_in", - APWelcome::get_account_type_logged_in_for_reflect, - APWelcome::mut_account_type_logged_in_for_reflect, + |m: &APWelcome| { &m.account_type_logged_in }, + |m: &mut APWelcome| { &mut m.account_type_logged_in }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "credentials_type_logged_in", - APWelcome::get_credentials_type_logged_in_for_reflect, - APWelcome::mut_credentials_type_logged_in_for_reflect, + |m: &APWelcome| { &m.credentials_type_logged_in }, + |m: &mut APWelcome| { &mut m.credentials_type_logged_in }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "reusable_auth_credentials_type", - APWelcome::get_reusable_auth_credentials_type_for_reflect, - APWelcome::mut_reusable_auth_credentials_type_for_reflect, + |m: &APWelcome| { &m.reusable_auth_credentials_type }, + |m: &mut APWelcome| { &mut m.reusable_auth_credentials_type }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "reusable_auth_credentials", - APWelcome::get_reusable_auth_credentials_for_reflect, - APWelcome::mut_reusable_auth_credentials_for_reflect, + |m: &APWelcome| { &m.reusable_auth_credentials }, + |m: &mut APWelcome| { &mut m.reusable_auth_credentials }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "lfs_secret", - APWelcome::get_lfs_secret_for_reflect, - APWelcome::mut_lfs_secret_for_reflect, + |m: &APWelcome| { &m.lfs_secret }, + |m: &mut APWelcome| { &mut m.lfs_secret }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "account_info", - APWelcome::get_account_info_for_reflect, - APWelcome::mut_account_info_for_reflect, + |m: &APWelcome| { &m.account_info }, + |m: &mut APWelcome| { &mut m.account_info }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "fb", - APWelcome::get_fb_for_reflect, - APWelcome::mut_fb_for_reflect, + |m: &APWelcome| { &m.fb }, + |m: &mut APWelcome| { &mut m.fb }, )); ::protobuf::reflect::MessageDescriptor::new::( "APWelcome", @@ -4376,6 +3950,16 @@ impl ::protobuf::MessageStatic for APWelcome { }) } } + + fn default_instance() -> &'static APWelcome { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const APWelcome, + }; + unsafe { + instance.get(APWelcome::new) + } + } } impl ::protobuf::Clear for APWelcome { @@ -4414,24 +3998,11 @@ pub struct AccountInfo { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for AccountInfo {} - impl AccountInfo { pub fn new() -> AccountInfo { ::std::default::Default::default() } - pub fn default_instance() -> &'static AccountInfo { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const AccountInfo, - }; - unsafe { - instance.get(AccountInfo::new) - } - } - // optional .AccountInfoSpotify spotify = 1; pub fn clear_spotify(&mut self) { @@ -4452,7 +4023,7 @@ impl AccountInfo { pub fn mut_spotify(&mut self) -> &mut AccountInfoSpotify { if self.spotify.is_none() { self.spotify.set_default(); - }; + } self.spotify.as_mut().unwrap() } @@ -4465,14 +4036,6 @@ impl AccountInfo { self.spotify.as_ref().unwrap_or_else(|| AccountInfoSpotify::default_instance()) } - fn get_spotify_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.spotify - } - - fn mut_spotify_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.spotify - } - // optional .AccountInfoFacebook facebook = 2; pub fn clear_facebook(&mut self) { @@ -4493,7 +4056,7 @@ impl AccountInfo { pub fn mut_facebook(&mut self) -> &mut AccountInfoFacebook { if self.facebook.is_none() { self.facebook.set_default(); - }; + } self.facebook.as_mut().unwrap() } @@ -4505,18 +4068,20 @@ impl AccountInfo { pub fn get_facebook(&self) -> &AccountInfoFacebook { self.facebook.as_ref().unwrap_or_else(|| AccountInfoFacebook::default_instance()) } - - fn get_facebook_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.facebook - } - - fn mut_facebook_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.facebook - } } impl ::protobuf::Message for AccountInfo { fn is_initialized(&self) -> bool { + for v in &self.spotify { + if !v.is_initialized() { + return false; + } + }; + for v in &self.facebook { + if !v.is_initialized() { + return false; + } + }; true } @@ -4542,30 +4107,30 @@ impl ::protobuf::Message for AccountInfo { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.spotify.as_ref() { + if let Some(ref v) = self.spotify.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.facebook.as_ref() { + } + if let Some(ref v) = self.facebook.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.spotify.as_ref() { + if let Some(ref v) = self.spotify.as_ref() { os.write_tag(1, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.facebook.as_ref() { + } + if let Some(ref v) = self.facebook.as_ref() { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4593,16 +4158,14 @@ impl ::protobuf::Message for AccountInfo { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for AccountInfo { fn new() -> AccountInfo { AccountInfo::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4612,13 +4175,13 @@ impl ::protobuf::MessageStatic for AccountInfo { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "spotify", - AccountInfo::get_spotify_for_reflect, - AccountInfo::mut_spotify_for_reflect, + |m: &AccountInfo| { &m.spotify }, + |m: &mut AccountInfo| { &mut m.spotify }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "facebook", - AccountInfo::get_facebook_for_reflect, - AccountInfo::mut_facebook_for_reflect, + |m: &AccountInfo| { &m.facebook }, + |m: &mut AccountInfo| { &mut m.facebook }, )); ::protobuf::reflect::MessageDescriptor::new::( "AccountInfo", @@ -4628,6 +4191,16 @@ impl ::protobuf::MessageStatic for AccountInfo { }) } } + + fn default_instance() -> &'static AccountInfo { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const AccountInfo, + }; + unsafe { + instance.get(AccountInfo::new) + } + } } impl ::protobuf::Clear for AccountInfo { @@ -4657,23 +4230,10 @@ pub struct AccountInfoSpotify { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for AccountInfoSpotify {} - impl AccountInfoSpotify { pub fn new() -> AccountInfoSpotify { ::std::default::Default::default() } - - pub fn default_instance() -> &'static AccountInfoSpotify { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const AccountInfoSpotify, - }; - unsafe { - instance.get(AccountInfoSpotify::new) - } - } } impl ::protobuf::Message for AccountInfoSpotify { @@ -4730,16 +4290,14 @@ impl ::protobuf::Message for AccountInfoSpotify { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for AccountInfoSpotify { fn new() -> AccountInfoSpotify { AccountInfoSpotify::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4755,6 +4313,16 @@ impl ::protobuf::MessageStatic for AccountInfoSpotify { }) } } + + fn default_instance() -> &'static AccountInfoSpotify { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const AccountInfoSpotify, + }; + unsafe { + instance.get(AccountInfoSpotify::new) + } + } } impl ::protobuf::Clear for AccountInfoSpotify { @@ -4785,24 +4353,11 @@ pub struct AccountInfoFacebook { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for AccountInfoFacebook {} - impl AccountInfoFacebook { pub fn new() -> AccountInfoFacebook { ::std::default::Default::default() } - pub fn default_instance() -> &'static AccountInfoFacebook { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const AccountInfoFacebook, - }; - unsafe { - instance.get(AccountInfoFacebook::new) - } - } - // optional string access_token = 1; pub fn clear_access_token(&mut self) { @@ -4823,7 +4378,7 @@ impl AccountInfoFacebook { pub fn mut_access_token(&mut self) -> &mut ::std::string::String { if self.access_token.is_none() { self.access_token.set_default(); - }; + } self.access_token.as_mut().unwrap() } @@ -4839,14 +4394,6 @@ impl AccountInfoFacebook { } } - fn get_access_token_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.access_token - } - - fn mut_access_token_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.access_token - } - // optional string machine_id = 2; pub fn clear_machine_id(&mut self) { @@ -4867,7 +4414,7 @@ impl AccountInfoFacebook { pub fn mut_machine_id(&mut self) -> &mut ::std::string::String { if self.machine_id.is_none() { self.machine_id.set_default(); - }; + } self.machine_id.as_mut().unwrap() } @@ -4882,14 +4429,6 @@ impl AccountInfoFacebook { None => "", } } - - fn get_machine_id_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.machine_id - } - - fn mut_machine_id_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.machine_id - } } impl ::protobuf::Message for AccountInfoFacebook { @@ -4919,24 +4458,24 @@ impl ::protobuf::Message for AccountInfoFacebook { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.access_token.as_ref() { + if let Some(ref v) = self.access_token.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; - if let Some(v) = self.machine_id.as_ref() { + } + if let Some(ref v) = self.machine_id.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.access_token.as_ref() { + if let Some(ref v) = self.access_token.as_ref() { os.write_string(1, &v)?; - }; - if let Some(v) = self.machine_id.as_ref() { + } + if let Some(ref v) = self.machine_id.as_ref() { os.write_string(2, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4964,16 +4503,14 @@ impl ::protobuf::Message for AccountInfoFacebook { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for AccountInfoFacebook { fn new() -> AccountInfoFacebook { AccountInfoFacebook::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4983,13 +4520,13 @@ impl ::protobuf::MessageStatic for AccountInfoFacebook { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "access_token", - AccountInfoFacebook::get_access_token_for_reflect, - AccountInfoFacebook::mut_access_token_for_reflect, + |m: &AccountInfoFacebook| { &m.access_token }, + |m: &mut AccountInfoFacebook| { &mut m.access_token }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "machine_id", - AccountInfoFacebook::get_machine_id_for_reflect, - AccountInfoFacebook::mut_machine_id_for_reflect, + |m: &AccountInfoFacebook| { &m.machine_id }, + |m: &mut AccountInfoFacebook| { &mut m.machine_id }, )); ::protobuf::reflect::MessageDescriptor::new::( "AccountInfoFacebook", @@ -4999,6 +4536,16 @@ impl ::protobuf::MessageStatic for AccountInfoFacebook { }) } } + + fn default_instance() -> &'static AccountInfoFacebook { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const AccountInfoFacebook, + }; + unsafe { + instance.get(AccountInfoFacebook::new) + } + } } impl ::protobuf::Clear for AccountInfoFacebook { @@ -5057,7 +4604,7 @@ impl ::protobuf::ProtobufEnum for AuthenticationType { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5106,7 +4653,7 @@ impl ::protobuf::ProtobufEnum for AccountCreation { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5179,7 +4726,7 @@ impl ::protobuf::ProtobufEnum for CpuFamily { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5234,7 +4781,7 @@ impl ::protobuf::ProtobufEnum for Brand { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5346,7 +4893,7 @@ impl ::protobuf::ProtobufEnum for Os { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5395,7 +4942,7 @@ impl ::protobuf::ProtobufEnum for AccountType { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5417,608 +4964,86 @@ impl ::protobuf::reflect::ProtobufValue for AccountType { } } -static file_descriptor_proto_data: &'static [u8] = &[ - 0x0a, 0x14, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xec, 0x03, 0x0a, 0x17, 0x43, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, - 0x65, 0x64, 0x12, 0x3e, 0x0a, 0x11, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x63, 0x72, 0x65, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x11, 0x2e, - 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, - 0x52, 0x10, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, - 0x6c, 0x73, 0x12, 0x3b, 0x0a, 0x10, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, - 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, - 0x4c, 0x0a, 0x14, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x5f, 0x72, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, - 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x13, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, - 0x70, 0x72, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, - 0x0b, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x28, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x55, - 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, - 0x12, 0x2c, 0x0a, 0x0b, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x32, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0a, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, - 0x0a, 0x0e, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, - 0x18, 0x3c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, - 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x46, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x76, - 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x06, - 0x61, 0x70, 0x70, 0x6b, 0x65, 0x79, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x4c, - 0x69, 0x62, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x41, 0x70, 0x70, 0x4b, 0x65, 0x79, 0x52, - 0x06, 0x61, 0x70, 0x70, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x5a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x43, - 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x22, 0x72, 0x0a, 0x10, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, - 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x03, 0x74, 0x79, 0x70, 0x18, 0x14, 0x20, 0x02, - 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x1b, 0x0a, 0x09, - 0x61, 0x75, 0x74, 0x68, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x08, 0x61, 0x75, 0x74, 0x68, 0x44, 0x61, 0x74, 0x61, 0x22, 0x8c, 0x01, 0x0a, 0x18, 0x46, 0x69, - 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x0a, 0x05, 0x67, 0x72, 0x61, 0x69, 0x6e, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, - 0x69, 0x6e, 0x74, 0x47, 0x72, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x05, 0x67, 0x72, 0x61, 0x69, 0x6e, 0x12, 0x3f, 0x0a, 0x0b, 0x68, 0x6d, 0x61, 0x63, 0x5f, - 0x72, 0x69, 0x70, 0x65, 0x6d, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x46, - 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x52, 0x69, - 0x70, 0x65, 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0a, 0x68, 0x6d, - 0x61, 0x63, 0x52, 0x69, 0x70, 0x65, 0x6d, 0x64, 0x22, 0x3f, 0x0a, 0x18, 0x46, 0x69, 0x6e, 0x67, - 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x47, 0x72, 0x61, 0x69, 0x6e, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x65, - 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x0c, 0x65, 0x6e, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x65, 0x64, 0x4b, 0x65, 0x79, 0x22, 0x33, 0x0a, 0x1d, 0x46, 0x69, 0x6e, - 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x48, 0x6d, 0x61, 0x63, 0x52, 0x69, 0x70, 0x65, - 0x6d, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6d, - 0x61, 0x63, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x04, 0x68, 0x6d, 0x61, 0x63, 0x22, 0x75, - 0x0a, 0x0f, 0x50, 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x55, 0x6e, 0x69, 0x6f, - 0x6e, 0x12, 0x33, 0x0a, 0x0a, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x50, 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, - 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x52, 0x09, 0x70, 0x75, 0x62, - 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x2d, 0x0a, 0x0a, 0x6f, 0x6c, 0x64, 0x5f, 0x74, 0x69, - 0x63, 0x6b, 0x65, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x50, 0x65, 0x65, - 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x6c, 0x64, 0x52, 0x09, 0x6f, 0x6c, 0x64, 0x54, - 0x69, 0x63, 0x6b, 0x65, 0x74, 0x22, 0x34, 0x0a, 0x13, 0x50, 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, - 0x6b, 0x65, 0x74, 0x50, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x12, 0x1d, 0x0a, 0x0a, - 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0c, - 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x63, 0x4b, 0x65, 0x79, 0x22, 0x64, 0x0a, 0x0d, 0x50, - 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x4f, 0x6c, 0x64, 0x12, 0x1f, 0x0a, 0x0b, - 0x70, 0x65, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x18, 0x0a, 0x20, 0x02, 0x28, - 0x0c, 0x52, 0x0a, 0x70, 0x65, 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x12, 0x32, 0x0a, - 0x15, 0x70, 0x65, 0x65, 0x72, 0x5f, 0x74, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x5f, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x14, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x13, 0x70, 0x65, - 0x65, 0x72, 0x54, 0x69, 0x63, 0x6b, 0x65, 0x74, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, - 0x65, 0x22, 0xd4, 0x02, 0x0a, 0x0a, 0x53, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x29, 0x0a, 0x0a, 0x63, 0x70, 0x75, 0x5f, 0x66, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x18, 0x0a, - 0x20, 0x02, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x43, 0x70, 0x75, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, - 0x52, 0x09, 0x63, 0x70, 0x75, 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x63, - 0x70, 0x75, 0x5f, 0x73, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x0a, 0x63, 0x70, 0x75, 0x53, 0x75, 0x62, 0x74, 0x79, 0x70, 0x65, 0x12, 0x17, 0x0a, 0x07, - 0x63, 0x70, 0x75, 0x5f, 0x65, 0x78, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x63, - 0x70, 0x75, 0x45, 0x78, 0x74, 0x12, 0x1c, 0x0a, 0x05, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x18, 0x28, - 0x20, 0x01, 0x28, 0x0e, 0x32, 0x06, 0x2e, 0x42, 0x72, 0x61, 0x6e, 0x64, 0x52, 0x05, 0x62, 0x72, - 0x61, 0x6e, 0x64, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x5f, 0x66, 0x6c, 0x61, - 0x67, 0x73, 0x18, 0x32, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x62, 0x72, 0x61, 0x6e, 0x64, 0x46, - 0x6c, 0x61, 0x67, 0x73, 0x12, 0x13, 0x0a, 0x02, 0x6f, 0x73, 0x18, 0x3c, 0x20, 0x02, 0x28, 0x0e, - 0x32, 0x03, 0x2e, 0x4f, 0x73, 0x52, 0x02, 0x6f, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6f, 0x73, 0x5f, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x09, 0x6f, - 0x73, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6f, 0x73, 0x5f, 0x65, - 0x78, 0x74, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6f, 0x73, 0x45, 0x78, 0x74, 0x12, - 0x3a, 0x0a, 0x19, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x5a, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x17, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x72, 0x6d, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x1b, 0x0a, 0x09, 0x64, - 0x65, 0x76, 0x69, 0x63, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x64, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x49, 0x64, 0x22, 0xa5, 0x01, 0x0a, 0x10, 0x4c, 0x69, 0x62, - 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x41, 0x70, 0x70, 0x4b, 0x65, 0x79, 0x12, 0x18, 0x0a, - 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x07, - 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x76, 0x6b, 0x65, - 0x79, 0x18, 0x02, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x06, 0x64, 0x65, 0x76, 0x6b, 0x65, 0x79, 0x12, - 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x03, 0x20, 0x02, - 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1c, 0x0a, - 0x09, 0x75, 0x73, 0x65, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x02, 0x28, 0x09, - 0x52, 0x09, 0x75, 0x73, 0x65, 0x72, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x05, 0x20, 0x02, - 0x28, 0x0c, 0x52, 0x0c, 0x63, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x48, 0x61, 0x73, 0x68, - 0x22, 0x67, 0x0a, 0x0a, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x18, - 0x0a, 0x07, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x07, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x65, 0x64, 0x12, 0x23, 0x0a, 0x02, 0x66, 0x62, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, - 0x6f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x02, 0x66, 0x62, 0x12, 0x1a, 0x0a, - 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x22, 0x33, 0x0a, 0x12, 0x43, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x12, - 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, 0x49, 0x64, 0x22, 0xd4, - 0x03, 0x0a, 0x09, 0x41, 0x50, 0x57, 0x65, 0x6c, 0x63, 0x6f, 0x6d, 0x65, 0x12, 0x2d, 0x0a, 0x12, - 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x69, 0x63, 0x61, 0x6c, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x09, 0x52, 0x11, 0x63, 0x61, 0x6e, 0x6f, 0x6e, 0x69, - 0x63, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x41, 0x0a, 0x16, 0x61, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x67, - 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x18, 0x14, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x13, 0x61, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x49, - 0x0a, 0x1a, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x74, 0x79, - 0x70, 0x65, 0x5f, 0x6c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x5f, 0x69, 0x6e, 0x18, 0x19, 0x20, 0x02, - 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x52, 0x17, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x54, 0x79, 0x70, - 0x65, 0x4c, 0x6f, 0x67, 0x67, 0x65, 0x64, 0x49, 0x6e, 0x12, 0x58, 0x0a, 0x1e, 0x72, 0x65, 0x75, - 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, - 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x1e, 0x20, 0x02, 0x28, - 0x0e, 0x32, 0x13, 0x2e, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x1b, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x41, 0x75, 0x74, 0x68, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x3a, 0x0a, 0x19, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, - 0x61, 0x75, 0x74, 0x68, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, - 0x18, 0x28, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x17, 0x72, 0x65, 0x75, 0x73, 0x61, 0x62, 0x6c, 0x65, - 0x41, 0x75, 0x74, 0x68, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x12, - 0x1d, 0x0a, 0x0a, 0x6c, 0x66, 0x73, 0x5f, 0x73, 0x65, 0x63, 0x72, 0x65, 0x74, 0x18, 0x32, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x09, 0x6c, 0x66, 0x73, 0x53, 0x65, 0x63, 0x72, 0x65, 0x74, 0x12, 0x2f, - 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x3c, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, - 0x24, 0x0a, 0x02, 0x66, 0x62, 0x18, 0x46, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x63, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, - 0x6b, 0x52, 0x02, 0x66, 0x62, 0x22, 0x6e, 0x0a, 0x0b, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2d, 0x0a, 0x07, 0x73, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x6e, 0x66, 0x6f, 0x53, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x52, 0x07, 0x73, 0x70, 0x6f, 0x74, - 0x69, 0x66, 0x79, 0x12, 0x30, 0x0a, 0x08, 0x66, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, - 0x6e, 0x66, 0x6f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x52, 0x08, 0x66, 0x61, 0x63, - 0x65, 0x62, 0x6f, 0x6f, 0x6b, 0x22, 0x14, 0x0a, 0x12, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, - 0x49, 0x6e, 0x66, 0x6f, 0x53, 0x70, 0x6f, 0x74, 0x69, 0x66, 0x79, 0x22, 0x57, 0x0a, 0x13, 0x41, - 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, - 0x6f, 0x6b, 0x12, 0x21, 0x0a, 0x0c, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x74, 0x6f, 0x6b, - 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, - 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x6d, 0x61, 0x63, 0x68, 0x69, 0x6e, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6d, 0x61, 0x63, 0x68, 0x69, - 0x6e, 0x65, 0x49, 0x64, 0x2a, 0xd6, 0x01, 0x0a, 0x12, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x41, - 0x55, 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x53, - 0x45, 0x52, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x41, 0x55, 0x54, - 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x4f, 0x52, - 0x45, 0x44, 0x5f, 0x53, 0x50, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x43, 0x52, 0x45, 0x44, 0x45, - 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x53, 0x10, 0x01, 0x12, 0x2e, 0x0a, 0x2a, 0x41, 0x55, 0x54, 0x48, - 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x4f, 0x52, 0x45, - 0x44, 0x5f, 0x46, 0x41, 0x43, 0x45, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x43, 0x52, 0x45, 0x44, 0x45, - 0x4e, 0x54, 0x49, 0x41, 0x4c, 0x53, 0x10, 0x02, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x55, 0x54, 0x48, - 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x50, 0x4f, 0x54, 0x49, - 0x46, 0x59, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x03, 0x12, 0x21, 0x0a, 0x1d, 0x41, 0x55, - 0x54, 0x48, 0x45, 0x4e, 0x54, 0x49, 0x43, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x41, 0x43, - 0x45, 0x42, 0x4f, 0x4f, 0x4b, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x04, 0x2a, 0x59, 0x0a, - 0x0f, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x43, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x22, 0x0a, 0x1e, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, - 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x5f, 0x50, 0x52, 0x4f, 0x4d, - 0x50, 0x54, 0x10, 0x01, 0x12, 0x22, 0x0a, 0x1e, 0x41, 0x43, 0x43, 0x4f, 0x55, 0x4e, 0x54, 0x5f, - 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x41, 0x4c, 0x57, 0x41, 0x59, 0x53, 0x5f, - 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x10, 0x03, 0x2a, 0x9d, 0x01, 0x0a, 0x09, 0x43, 0x70, 0x75, - 0x46, 0x61, 0x6d, 0x69, 0x6c, 0x79, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x50, 0x55, 0x5f, 0x55, 0x4e, - 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x50, 0x55, 0x5f, 0x58, - 0x38, 0x36, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x50, 0x55, 0x5f, 0x58, 0x38, 0x36, 0x5f, - 0x36, 0x34, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x50, 0x55, 0x5f, 0x50, 0x50, 0x43, 0x10, - 0x03, 0x12, 0x0e, 0x0a, 0x0a, 0x43, 0x50, 0x55, 0x5f, 0x50, 0x50, 0x43, 0x5f, 0x36, 0x34, 0x10, - 0x04, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x50, 0x55, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x05, 0x12, 0x0c, - 0x0a, 0x08, 0x43, 0x50, 0x55, 0x5f, 0x49, 0x41, 0x36, 0x34, 0x10, 0x06, 0x12, 0x0a, 0x0a, 0x06, - 0x43, 0x50, 0x55, 0x5f, 0x53, 0x48, 0x10, 0x07, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x50, 0x55, 0x5f, - 0x4d, 0x49, 0x50, 0x53, 0x10, 0x08, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x50, 0x55, 0x5f, 0x42, 0x4c, - 0x41, 0x43, 0x4b, 0x46, 0x49, 0x4e, 0x10, 0x09, 0x2a, 0x4b, 0x0a, 0x05, 0x42, 0x72, 0x61, 0x6e, - 0x64, 0x12, 0x13, 0x0a, 0x0f, 0x42, 0x52, 0x41, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x42, 0x52, 0x41, - 0x4e, 0x44, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x52, 0x41, 0x4e, 0x44, 0x5f, - 0x49, 0x4e, 0x51, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x42, 0x52, 0x41, 0x4e, 0x44, 0x5f, 0x48, - 0x54, 0x43, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x42, 0x52, 0x41, 0x4e, 0x44, 0x5f, 0x4e, 0x4f, - 0x4b, 0x49, 0x41, 0x10, 0x03, 0x2a, 0xd1, 0x02, 0x0a, 0x02, 0x4f, 0x73, 0x12, 0x0e, 0x0a, 0x0a, - 0x4f, 0x53, 0x5f, 0x55, 0x4e, 0x4b, 0x4e, 0x4f, 0x57, 0x4e, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, - 0x4f, 0x53, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, - 0x4f, 0x53, 0x5f, 0x4f, 0x53, 0x58, 0x10, 0x02, 0x12, 0x0d, 0x0a, 0x09, 0x4f, 0x53, 0x5f, 0x49, - 0x50, 0x48, 0x4f, 0x4e, 0x45, 0x10, 0x03, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x53, 0x5f, 0x53, 0x36, - 0x30, 0x10, 0x04, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x53, 0x5f, 0x4c, 0x49, 0x4e, 0x55, 0x58, 0x10, - 0x05, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x53, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x5f, - 0x43, 0x45, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x53, 0x5f, 0x41, 0x4e, 0x44, 0x52, 0x4f, - 0x49, 0x44, 0x10, 0x07, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x53, 0x5f, 0x50, 0x41, 0x4c, 0x4d, 0x10, - 0x08, 0x12, 0x0e, 0x0a, 0x0a, 0x4f, 0x53, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x42, 0x53, 0x44, 0x10, - 0x09, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x53, 0x5f, 0x42, 0x4c, 0x41, 0x43, 0x4b, 0x42, 0x45, 0x52, - 0x52, 0x59, 0x10, 0x0a, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x53, 0x5f, 0x53, 0x4f, 0x4e, 0x4f, 0x53, - 0x10, 0x0b, 0x12, 0x0f, 0x0a, 0x0b, 0x4f, 0x53, 0x5f, 0x4c, 0x4f, 0x47, 0x49, 0x54, 0x45, 0x43, - 0x48, 0x10, 0x0c, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x53, 0x5f, 0x57, 0x50, 0x37, 0x10, 0x0d, 0x12, - 0x0c, 0x0a, 0x08, 0x4f, 0x53, 0x5f, 0x4f, 0x4e, 0x4b, 0x59, 0x4f, 0x10, 0x0e, 0x12, 0x0e, 0x0a, - 0x0a, 0x4f, 0x53, 0x5f, 0x50, 0x48, 0x49, 0x4c, 0x49, 0x50, 0x53, 0x10, 0x0f, 0x12, 0x09, 0x0a, - 0x05, 0x4f, 0x53, 0x5f, 0x57, 0x44, 0x10, 0x10, 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x53, 0x5f, 0x56, - 0x4f, 0x4c, 0x56, 0x4f, 0x10, 0x11, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x53, 0x5f, 0x54, 0x49, 0x56, - 0x4f, 0x10, 0x12, 0x12, 0x0b, 0x0a, 0x07, 0x4f, 0x53, 0x5f, 0x41, 0x57, 0x4f, 0x58, 0x10, 0x13, - 0x12, 0x0c, 0x0a, 0x08, 0x4f, 0x53, 0x5f, 0x4d, 0x45, 0x45, 0x47, 0x4f, 0x10, 0x14, 0x12, 0x0d, - 0x0a, 0x09, 0x4f, 0x53, 0x5f, 0x51, 0x4e, 0x58, 0x4e, 0x54, 0x4f, 0x10, 0x15, 0x12, 0x0a, 0x0a, - 0x06, 0x4f, 0x53, 0x5f, 0x42, 0x43, 0x4f, 0x10, 0x16, 0x2a, 0x28, 0x0a, 0x0b, 0x41, 0x63, 0x63, - 0x6f, 0x75, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x70, 0x6f, 0x74, - 0x69, 0x66, 0x79, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x61, 0x63, 0x65, 0x62, 0x6f, 0x6f, - 0x6b, 0x10, 0x01, 0x4a, 0xee, 0x2f, 0x0a, 0x07, 0x12, 0x05, 0x00, 0x00, 0xa4, 0x01, 0x01, 0x0a, - 0x08, 0x0a, 0x01, 0x0c, 0x12, 0x03, 0x00, 0x00, 0x12, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x00, 0x12, - 0x04, 0x02, 0x00, 0x0c, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x02, 0x08, - 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x03, 0x04, 0x36, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x04, 0x12, 0x03, 0x03, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x00, 0x06, 0x12, 0x03, 0x03, 0x0d, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x00, 0x01, 0x12, 0x03, 0x03, 0x1e, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, - 0x03, 0x12, 0x03, 0x03, 0x32, 0x35, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, - 0x04, 0x04, 0x35, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x04, 0x12, 0x03, 0x04, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x06, 0x12, 0x03, 0x04, 0x0d, 0x1c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x04, 0x1d, 0x2d, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x01, 0x03, 0x12, 0x03, 0x04, 0x30, 0x34, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x00, 0x02, 0x02, 0x12, 0x03, 0x05, 0x04, 0x42, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, - 0x04, 0x12, 0x03, 0x05, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x06, 0x12, - 0x03, 0x05, 0x0d, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, 0x03, 0x05, - 0x26, 0x3a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x03, 0x12, 0x03, 0x05, 0x3d, 0x41, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x03, 0x12, 0x03, 0x06, 0x04, 0x30, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x03, 0x04, 0x12, 0x03, 0x06, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x03, 0x06, 0x12, 0x03, 0x06, 0x0d, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x03, 0x01, 0x12, 0x03, 0x06, 0x1d, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x03, - 0x12, 0x03, 0x06, 0x2b, 0x2f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x04, 0x12, 0x03, 0x07, - 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x04, 0x04, 0x12, 0x03, 0x07, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x04, 0x06, 0x12, 0x03, 0x07, 0x0d, 0x17, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x04, 0x01, 0x12, 0x03, 0x07, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x04, 0x03, 0x12, 0x03, 0x07, 0x26, 0x2a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, - 0x02, 0x05, 0x12, 0x03, 0x08, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x04, - 0x12, 0x03, 0x08, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x05, 0x12, 0x03, - 0x08, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x01, 0x12, 0x03, 0x08, 0x14, - 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x03, 0x12, 0x03, 0x08, 0x25, 0x29, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x06, 0x12, 0x03, 0x09, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x06, 0x04, 0x12, 0x03, 0x09, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x06, 0x05, 0x12, 0x03, 0x09, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, - 0x01, 0x12, 0x03, 0x09, 0x14, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x03, 0x12, - 0x03, 0x09, 0x25, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x07, 0x12, 0x03, 0x0a, 0x04, - 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x07, 0x04, 0x12, 0x03, 0x0a, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x07, 0x06, 0x12, 0x03, 0x0a, 0x0d, 0x1d, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x07, 0x01, 0x12, 0x03, 0x0a, 0x1e, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x07, 0x03, 0x12, 0x03, 0x0a, 0x27, 0x2b, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, - 0x08, 0x12, 0x03, 0x0b, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x04, 0x12, - 0x03, 0x0b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x06, 0x12, 0x03, 0x0b, - 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x01, 0x12, 0x03, 0x0b, 0x18, 0x23, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x03, 0x12, 0x03, 0x0b, 0x26, 0x2a, 0x0a, 0x0a, - 0x0a, 0x02, 0x04, 0x01, 0x12, 0x04, 0x0e, 0x00, 0x12, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x01, - 0x01, 0x12, 0x03, 0x0e, 0x08, 0x18, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x00, 0x12, 0x03, - 0x0f, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x04, 0x12, 0x03, 0x0f, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x05, 0x12, 0x03, 0x0f, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x0f, 0x14, 0x1c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x00, 0x03, 0x12, 0x03, 0x0f, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x01, 0x02, 0x01, 0x12, 0x03, 0x10, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, - 0x04, 0x12, 0x03, 0x10, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x06, 0x12, - 0x03, 0x10, 0x0d, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x01, 0x12, 0x03, 0x10, - 0x20, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x03, 0x12, 0x03, 0x10, 0x26, 0x2a, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x02, 0x12, 0x03, 0x11, 0x04, 0x24, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x02, 0x04, 0x12, 0x03, 0x11, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x01, 0x02, 0x02, 0x05, 0x12, 0x03, 0x11, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, - 0x02, 0x01, 0x12, 0x03, 0x11, 0x13, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x03, - 0x12, 0x03, 0x11, 0x1f, 0x23, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x00, 0x12, 0x04, 0x14, 0x00, 0x1a, - 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x00, 0x01, 0x12, 0x03, 0x14, 0x05, 0x17, 0x0a, 0x0b, 0x0a, - 0x04, 0x05, 0x00, 0x02, 0x00, 0x12, 0x03, 0x15, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, - 0x02, 0x00, 0x01, 0x12, 0x03, 0x15, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x00, - 0x02, 0x12, 0x03, 0x15, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x01, 0x12, 0x03, - 0x16, 0x04, 0x34, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x16, 0x04, - 0x2d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x01, 0x02, 0x12, 0x03, 0x16, 0x30, 0x33, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x02, 0x12, 0x03, 0x17, 0x04, 0x35, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x00, 0x02, 0x02, 0x01, 0x12, 0x03, 0x17, 0x04, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, - 0x02, 0x02, 0x02, 0x12, 0x03, 0x17, 0x31, 0x34, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x03, - 0x12, 0x03, 0x18, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x03, 0x01, 0x12, 0x03, - 0x18, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x03, 0x02, 0x12, 0x03, 0x18, 0x23, - 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x04, 0x12, 0x03, 0x19, 0x04, 0x28, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x00, 0x02, 0x04, 0x01, 0x12, 0x03, 0x19, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x00, 0x02, 0x04, 0x02, 0x12, 0x03, 0x19, 0x24, 0x27, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x01, - 0x12, 0x04, 0x1c, 0x00, 0x1f, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x01, 0x01, 0x12, 0x03, 0x1c, - 0x05, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x00, 0x12, 0x03, 0x1d, 0x04, 0x29, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x1d, 0x04, 0x22, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x01, 0x02, 0x00, 0x02, 0x12, 0x03, 0x1d, 0x25, 0x28, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x01, 0x02, 0x01, 0x12, 0x03, 0x1e, 0x04, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x01, - 0x01, 0x12, 0x03, 0x1e, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x01, 0x02, 0x12, - 0x03, 0x1e, 0x25, 0x28, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x02, 0x12, 0x04, 0x21, 0x00, 0x24, 0x01, - 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x02, 0x01, 0x12, 0x03, 0x21, 0x08, 0x20, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x02, 0x02, 0x00, 0x12, 0x03, 0x22, 0x04, 0x32, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, - 0x00, 0x04, 0x12, 0x03, 0x22, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x06, - 0x12, 0x03, 0x22, 0x0d, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, - 0x22, 0x26, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x22, 0x2e, - 0x31, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x23, 0x04, 0x3e, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x04, 0x12, 0x03, 0x23, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x01, 0x06, 0x12, 0x03, 0x23, 0x0d, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x01, 0x01, 0x12, 0x03, 0x23, 0x2b, 0x36, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, - 0x03, 0x12, 0x03, 0x23, 0x39, 0x3d, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x03, 0x12, 0x04, 0x26, 0x00, - 0x28, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x03, 0x01, 0x12, 0x03, 0x26, 0x08, 0x20, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x03, 0x02, 0x00, 0x12, 0x03, 0x27, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x03, 0x02, 0x00, 0x04, 0x12, 0x03, 0x27, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, - 0x00, 0x05, 0x12, 0x03, 0x27, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x01, - 0x12, 0x03, 0x27, 0x13, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x03, 0x12, 0x03, - 0x27, 0x23, 0x26, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x04, 0x12, 0x04, 0x2a, 0x00, 0x2c, 0x01, 0x0a, - 0x0a, 0x0a, 0x03, 0x04, 0x04, 0x01, 0x12, 0x03, 0x2a, 0x08, 0x25, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x04, 0x02, 0x00, 0x12, 0x03, 0x2b, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, - 0x04, 0x12, 0x03, 0x2b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x05, 0x12, - 0x03, 0x2b, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x01, 0x12, 0x03, 0x2b, - 0x13, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x03, 0x12, 0x03, 0x2b, 0x1a, 0x1d, - 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x05, 0x12, 0x04, 0x2e, 0x00, 0x31, 0x01, 0x0a, 0x0a, 0x0a, 0x03, - 0x04, 0x05, 0x01, 0x12, 0x03, 0x2e, 0x08, 0x17, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x00, - 0x12, 0x03, 0x2f, 0x04, 0x32, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x04, 0x12, 0x03, - 0x2f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x06, 0x12, 0x03, 0x2f, 0x0d, - 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x01, 0x12, 0x03, 0x2f, 0x21, 0x2b, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x03, 0x12, 0x03, 0x2f, 0x2e, 0x31, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 0x03, 0x30, 0x04, 0x2d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x01, 0x04, 0x12, 0x03, 0x30, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, - 0x06, 0x12, 0x03, 0x30, 0x0d, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x30, 0x1b, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x03, 0x12, 0x03, 0x30, - 0x28, 0x2c, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x06, 0x12, 0x04, 0x33, 0x00, 0x35, 0x01, 0x0a, 0x0a, - 0x0a, 0x03, 0x04, 0x06, 0x01, 0x12, 0x03, 0x33, 0x08, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, - 0x02, 0x00, 0x12, 0x03, 0x34, 0x04, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x04, - 0x12, 0x03, 0x34, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x05, 0x12, 0x03, - 0x34, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x01, 0x12, 0x03, 0x34, 0x13, - 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x03, 0x12, 0x03, 0x34, 0x20, 0x23, 0x0a, - 0x0a, 0x0a, 0x02, 0x04, 0x07, 0x12, 0x04, 0x37, 0x00, 0x3a, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, - 0x07, 0x01, 0x12, 0x03, 0x37, 0x08, 0x15, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x00, 0x12, - 0x03, 0x38, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x04, 0x12, 0x03, 0x38, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x05, 0x12, 0x03, 0x38, 0x0d, 0x12, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x01, 0x12, 0x03, 0x38, 0x13, 0x1e, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x03, 0x12, 0x03, 0x38, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x07, 0x02, 0x01, 0x12, 0x03, 0x39, 0x04, 0x30, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, - 0x01, 0x04, 0x12, 0x03, 0x39, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x05, - 0x12, 0x03, 0x39, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x01, 0x12, 0x03, - 0x39, 0x13, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x03, 0x12, 0x03, 0x39, 0x2b, - 0x2f, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x08, 0x12, 0x04, 0x3c, 0x00, 0x47, 0x01, 0x0a, 0x0a, 0x0a, - 0x03, 0x04, 0x08, 0x01, 0x12, 0x03, 0x3c, 0x08, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, - 0x00, 0x12, 0x03, 0x3d, 0x04, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x04, 0x12, - 0x03, 0x3d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x06, 0x12, 0x03, 0x3d, - 0x0d, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x01, 0x12, 0x03, 0x3d, 0x17, 0x21, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x03, 0x12, 0x03, 0x3d, 0x24, 0x27, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x08, 0x02, 0x01, 0x12, 0x03, 0x3e, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x08, 0x02, 0x01, 0x04, 0x12, 0x03, 0x3e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, - 0x01, 0x05, 0x12, 0x03, 0x3e, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x3e, 0x14, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x01, 0x03, 0x12, 0x03, - 0x3e, 0x22, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x02, 0x12, 0x03, 0x3f, 0x04, 0x23, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x04, 0x12, 0x03, 0x3f, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x05, 0x12, 0x03, 0x3f, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x08, 0x02, 0x02, 0x01, 0x12, 0x03, 0x3f, 0x14, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, - 0x02, 0x02, 0x03, 0x12, 0x03, 0x3f, 0x1e, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x03, - 0x12, 0x03, 0x40, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x04, 0x12, 0x03, - 0x40, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x06, 0x12, 0x03, 0x40, 0x0d, - 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x01, 0x12, 0x03, 0x40, 0x13, 0x18, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x03, 0x03, 0x12, 0x03, 0x40, 0x1b, 0x1f, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x08, 0x02, 0x04, 0x12, 0x03, 0x41, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, - 0x02, 0x04, 0x04, 0x12, 0x03, 0x41, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x04, - 0x05, 0x12, 0x03, 0x41, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x04, 0x01, 0x12, - 0x03, 0x41, 0x14, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x04, 0x03, 0x12, 0x03, 0x41, - 0x22, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x05, 0x12, 0x03, 0x42, 0x04, 0x1a, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x05, 0x04, 0x12, 0x03, 0x42, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x08, 0x02, 0x05, 0x06, 0x12, 0x03, 0x42, 0x0d, 0x0f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x08, 0x02, 0x05, 0x01, 0x12, 0x03, 0x42, 0x10, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, - 0x05, 0x03, 0x12, 0x03, 0x42, 0x15, 0x19, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x06, 0x12, - 0x03, 0x43, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x06, 0x04, 0x12, 0x03, 0x43, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x06, 0x05, 0x12, 0x03, 0x43, 0x0d, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x06, 0x01, 0x12, 0x03, 0x43, 0x14, 0x1e, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x08, 0x02, 0x06, 0x03, 0x12, 0x03, 0x43, 0x21, 0x25, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x08, 0x02, 0x07, 0x12, 0x03, 0x44, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, - 0x07, 0x04, 0x12, 0x03, 0x44, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x07, 0x05, - 0x12, 0x03, 0x44, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x07, 0x01, 0x12, 0x03, - 0x44, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x07, 0x03, 0x12, 0x03, 0x44, 0x1d, - 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x08, 0x12, 0x03, 0x45, 0x04, 0x35, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x08, 0x02, 0x08, 0x04, 0x12, 0x03, 0x45, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x08, 0x02, 0x08, 0x05, 0x12, 0x03, 0x45, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, - 0x02, 0x08, 0x01, 0x12, 0x03, 0x45, 0x14, 0x2d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x08, - 0x03, 0x12, 0x03, 0x45, 0x30, 0x34, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x09, 0x12, 0x03, - 0x46, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x09, 0x04, 0x12, 0x03, 0x46, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x09, 0x05, 0x12, 0x03, 0x46, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x09, 0x01, 0x12, 0x03, 0x46, 0x14, 0x1d, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x08, 0x02, 0x09, 0x03, 0x12, 0x03, 0x46, 0x20, 0x24, 0x0a, 0x0a, 0x0a, 0x02, 0x05, - 0x02, 0x12, 0x04, 0x49, 0x00, 0x54, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x02, 0x01, 0x12, 0x03, - 0x49, 0x05, 0x0e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x00, 0x12, 0x03, 0x4a, 0x04, 0x16, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x4a, 0x04, 0x0f, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x02, 0x02, 0x00, 0x02, 0x12, 0x03, 0x4a, 0x12, 0x15, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x02, 0x02, 0x01, 0x12, 0x03, 0x4b, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, - 0x01, 0x01, 0x12, 0x03, 0x4b, 0x04, 0x0b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x01, 0x02, - 0x12, 0x03, 0x4b, 0x0e, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x02, 0x12, 0x03, 0x4c, - 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, 0x4c, 0x04, 0x0e, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x02, 0x02, 0x12, 0x03, 0x4c, 0x11, 0x14, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x02, 0x02, 0x03, 0x12, 0x03, 0x4d, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x02, 0x02, 0x03, 0x01, 0x12, 0x03, 0x4d, 0x04, 0x0b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, - 0x03, 0x02, 0x12, 0x03, 0x4d, 0x0e, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x04, 0x12, - 0x03, 0x4e, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x04, 0x01, 0x12, 0x03, 0x4e, - 0x04, 0x0e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x04, 0x02, 0x12, 0x03, 0x4e, 0x11, 0x14, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x05, 0x12, 0x03, 0x4f, 0x04, 0x12, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x02, 0x02, 0x05, 0x01, 0x12, 0x03, 0x4f, 0x04, 0x0b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x02, 0x02, 0x05, 0x02, 0x12, 0x03, 0x4f, 0x0e, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, - 0x06, 0x12, 0x03, 0x50, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x06, 0x01, 0x12, - 0x03, 0x50, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x06, 0x02, 0x12, 0x03, 0x50, - 0x0f, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x07, 0x12, 0x03, 0x51, 0x04, 0x11, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x07, 0x01, 0x12, 0x03, 0x51, 0x04, 0x0a, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x02, 0x02, 0x07, 0x02, 0x12, 0x03, 0x51, 0x0d, 0x10, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x02, 0x02, 0x08, 0x12, 0x03, 0x52, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x08, - 0x01, 0x12, 0x03, 0x52, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x08, 0x02, 0x12, - 0x03, 0x52, 0x0f, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x09, 0x12, 0x03, 0x53, 0x04, - 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x09, 0x01, 0x12, 0x03, 0x53, 0x04, 0x10, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x09, 0x02, 0x12, 0x03, 0x53, 0x13, 0x16, 0x0a, 0x0a, 0x0a, - 0x02, 0x05, 0x03, 0x12, 0x04, 0x56, 0x00, 0x5b, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x03, 0x01, - 0x12, 0x03, 0x56, 0x05, 0x0a, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x03, 0x02, 0x00, 0x12, 0x03, 0x57, - 0x04, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, 0x00, 0x01, 0x12, 0x03, 0x57, 0x04, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, 0x00, 0x02, 0x12, 0x03, 0x57, 0x16, 0x19, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x03, 0x02, 0x01, 0x12, 0x03, 0x58, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x03, 0x02, 0x01, 0x01, 0x12, 0x03, 0x58, 0x04, 0x0d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, - 0x01, 0x02, 0x12, 0x03, 0x58, 0x10, 0x13, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x03, 0x02, 0x02, 0x12, - 0x03, 0x59, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, 0x02, 0x01, 0x12, 0x03, 0x59, - 0x04, 0x0d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, 0x02, 0x02, 0x12, 0x03, 0x59, 0x10, 0x13, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x03, 0x02, 0x03, 0x12, 0x03, 0x5a, 0x04, 0x16, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x03, 0x02, 0x03, 0x01, 0x12, 0x03, 0x5a, 0x04, 0x0f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x03, 0x02, 0x03, 0x02, 0x12, 0x03, 0x5a, 0x12, 0x15, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x04, 0x12, - 0x04, 0x5d, 0x00, 0x75, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x04, 0x01, 0x12, 0x03, 0x5d, 0x05, - 0x07, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x00, 0x12, 0x03, 0x5e, 0x04, 0x15, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x04, 0x02, 0x00, 0x01, 0x12, 0x03, 0x5e, 0x04, 0x0e, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x04, 0x02, 0x00, 0x02, 0x12, 0x03, 0x5e, 0x11, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, - 0x02, 0x01, 0x12, 0x03, 0x5f, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x5f, 0x04, 0x0e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x01, 0x02, 0x12, 0x03, - 0x5f, 0x11, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x02, 0x12, 0x03, 0x60, 0x04, 0x11, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x60, 0x04, 0x0a, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x04, 0x02, 0x02, 0x02, 0x12, 0x03, 0x60, 0x0d, 0x10, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x04, 0x02, 0x03, 0x12, 0x03, 0x61, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, - 0x03, 0x01, 0x12, 0x03, 0x61, 0x04, 0x0d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x03, 0x02, - 0x12, 0x03, 0x61, 0x10, 0x13, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x04, 0x12, 0x03, 0x62, - 0x04, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x04, 0x01, 0x12, 0x03, 0x62, 0x04, 0x0a, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x04, 0x02, 0x12, 0x03, 0x62, 0x0d, 0x10, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x04, 0x02, 0x05, 0x12, 0x03, 0x63, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x04, 0x02, 0x05, 0x01, 0x12, 0x03, 0x63, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, - 0x05, 0x02, 0x12, 0x03, 0x63, 0x0f, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x06, 0x12, - 0x03, 0x64, 0x04, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x06, 0x01, 0x12, 0x03, 0x64, - 0x04, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x06, 0x02, 0x12, 0x03, 0x64, 0x14, 0x17, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x07, 0x12, 0x03, 0x65, 0x04, 0x15, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x04, 0x02, 0x07, 0x01, 0x12, 0x03, 0x65, 0x04, 0x0e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x04, 0x02, 0x07, 0x02, 0x12, 0x03, 0x65, 0x11, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, - 0x08, 0x12, 0x03, 0x66, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x08, 0x01, 0x12, - 0x03, 0x66, 0x04, 0x0b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x08, 0x02, 0x12, 0x03, 0x66, - 0x0e, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x09, 0x12, 0x03, 0x67, 0x04, 0x15, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x09, 0x01, 0x12, 0x03, 0x67, 0x04, 0x0e, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x04, 0x02, 0x09, 0x02, 0x12, 0x03, 0x67, 0x11, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x04, 0x02, 0x0a, 0x12, 0x03, 0x68, 0x04, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0a, - 0x01, 0x12, 0x03, 0x68, 0x04, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0a, 0x02, 0x12, - 0x03, 0x68, 0x14, 0x17, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x0b, 0x12, 0x03, 0x69, 0x04, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x69, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0b, 0x02, 0x12, 0x03, 0x69, 0x0f, 0x12, 0x0a, 0x0b, 0x0a, - 0x04, 0x05, 0x04, 0x02, 0x0c, 0x12, 0x03, 0x6a, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, - 0x02, 0x0c, 0x01, 0x12, 0x03, 0x6a, 0x04, 0x0f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0c, - 0x02, 0x12, 0x03, 0x6a, 0x12, 0x15, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x0d, 0x12, 0x03, - 0x6b, 0x04, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0d, 0x01, 0x12, 0x03, 0x6b, 0x04, - 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0d, 0x02, 0x12, 0x03, 0x6b, 0x0d, 0x10, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x0e, 0x12, 0x03, 0x6c, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x04, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x6c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, - 0x02, 0x0e, 0x02, 0x12, 0x03, 0x6c, 0x0f, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x0f, - 0x12, 0x03, 0x6d, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0f, 0x01, 0x12, 0x03, - 0x6d, 0x04, 0x0e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x0f, 0x02, 0x12, 0x03, 0x6d, 0x11, - 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x10, 0x12, 0x03, 0x6e, 0x04, 0x11, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x04, 0x02, 0x10, 0x01, 0x12, 0x03, 0x6e, 0x04, 0x09, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x04, 0x02, 0x10, 0x02, 0x12, 0x03, 0x6e, 0x0c, 0x10, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, - 0x02, 0x11, 0x12, 0x03, 0x6f, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x11, 0x01, - 0x12, 0x03, 0x6f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x11, 0x02, 0x12, 0x03, - 0x6f, 0x0f, 0x13, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x12, 0x12, 0x03, 0x70, 0x04, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x12, 0x01, 0x12, 0x03, 0x70, 0x04, 0x0b, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x04, 0x02, 0x12, 0x02, 0x12, 0x03, 0x70, 0x0e, 0x12, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x04, 0x02, 0x13, 0x12, 0x03, 0x71, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, - 0x13, 0x01, 0x12, 0x03, 0x71, 0x04, 0x0b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x13, 0x02, - 0x12, 0x03, 0x71, 0x0e, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x14, 0x12, 0x03, 0x72, - 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x14, 0x01, 0x12, 0x03, 0x72, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x14, 0x02, 0x12, 0x03, 0x72, 0x0f, 0x13, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x04, 0x02, 0x15, 0x12, 0x03, 0x73, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x04, 0x02, 0x15, 0x01, 0x12, 0x03, 0x73, 0x04, 0x0d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, - 0x15, 0x02, 0x12, 0x03, 0x73, 0x10, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x16, 0x12, - 0x03, 0x74, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x16, 0x01, 0x12, 0x03, 0x74, - 0x04, 0x0a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x16, 0x02, 0x12, 0x03, 0x74, 0x0d, 0x11, - 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x09, 0x12, 0x04, 0x77, 0x00, 0x7d, 0x01, 0x0a, 0x0a, 0x0a, 0x03, - 0x04, 0x09, 0x01, 0x12, 0x03, 0x77, 0x08, 0x18, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x00, - 0x12, 0x03, 0x78, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x04, 0x12, 0x03, - 0x78, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x05, 0x12, 0x03, 0x78, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x01, 0x12, 0x03, 0x78, 0x14, 0x1b, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x03, 0x12, 0x03, 0x78, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x09, 0x02, 0x01, 0x12, 0x03, 0x79, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, - 0x02, 0x01, 0x04, 0x12, 0x03, 0x79, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, - 0x05, 0x12, 0x03, 0x79, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x79, 0x13, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x03, 0x12, 0x03, 0x79, - 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x02, 0x12, 0x03, 0x7a, 0x04, 0x23, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x02, 0x04, 0x12, 0x03, 0x7a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x09, 0x02, 0x02, 0x05, 0x12, 0x03, 0x7a, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x09, 0x02, 0x02, 0x01, 0x12, 0x03, 0x7a, 0x13, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, - 0x02, 0x03, 0x12, 0x03, 0x7a, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x03, 0x12, - 0x03, 0x7b, 0x04, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x04, 0x12, 0x03, 0x7b, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x05, 0x12, 0x03, 0x7b, 0x0d, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x01, 0x12, 0x03, 0x7b, 0x14, 0x1d, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x09, 0x02, 0x03, 0x03, 0x12, 0x03, 0x7b, 0x20, 0x23, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x09, 0x02, 0x04, 0x12, 0x03, 0x7c, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, - 0x04, 0x04, 0x12, 0x03, 0x7c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x04, 0x05, - 0x12, 0x03, 0x7c, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x04, 0x01, 0x12, 0x03, - 0x7c, 0x13, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x04, 0x03, 0x12, 0x03, 0x7c, 0x23, - 0x26, 0x0a, 0x0b, 0x0a, 0x02, 0x04, 0x0a, 0x12, 0x05, 0x7f, 0x00, 0x83, 0x01, 0x01, 0x0a, 0x0a, - 0x0a, 0x03, 0x04, 0x0a, 0x01, 0x12, 0x03, 0x7f, 0x08, 0x12, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0a, - 0x02, 0x00, 0x12, 0x04, 0x80, 0x01, 0x04, 0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, - 0x04, 0x12, 0x04, 0x80, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x05, - 0x12, 0x04, 0x80, 0x01, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x01, 0x12, - 0x04, 0x80, 0x01, 0x12, 0x19, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x03, 0x12, 0x04, - 0x80, 0x01, 0x1c, 0x1f, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x01, 0x12, 0x04, 0x81, 0x01, - 0x04, 0x29, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x04, 0x12, 0x04, 0x81, 0x01, 0x04, - 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x06, 0x12, 0x04, 0x81, 0x01, 0x0d, 0x1f, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x01, 0x12, 0x04, 0x81, 0x01, 0x20, 0x22, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x03, 0x12, 0x04, 0x81, 0x01, 0x25, 0x28, 0x0a, 0x0c, - 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x02, 0x12, 0x04, 0x82, 0x01, 0x04, 0x23, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0a, 0x02, 0x02, 0x04, 0x12, 0x04, 0x82, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0a, 0x02, 0x02, 0x05, 0x12, 0x04, 0x82, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, - 0x02, 0x02, 0x01, 0x12, 0x04, 0x82, 0x01, 0x14, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0a, 0x02, - 0x02, 0x03, 0x12, 0x04, 0x82, 0x01, 0x1f, 0x22, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0b, 0x12, 0x06, - 0x85, 0x01, 0x00, 0x87, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0b, 0x01, 0x12, 0x04, 0x85, - 0x01, 0x08, 0x1a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x00, 0x12, 0x04, 0x86, 0x01, 0x04, - 0x25, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x04, 0x12, 0x04, 0x86, 0x01, 0x04, 0x0c, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x05, 0x12, 0x04, 0x86, 0x01, 0x0d, 0x13, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x01, 0x12, 0x04, 0x86, 0x01, 0x14, 0x1e, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x03, 0x12, 0x04, 0x86, 0x01, 0x21, 0x24, 0x0a, 0x0c, 0x0a, - 0x02, 0x04, 0x0c, 0x12, 0x06, 0x89, 0x01, 0x00, 0x92, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, - 0x0c, 0x01, 0x12, 0x04, 0x89, 0x01, 0x08, 0x11, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x00, - 0x12, 0x04, 0x8a, 0x01, 0x04, 0x2d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x04, 0x12, - 0x04, 0x8a, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x05, 0x12, 0x04, - 0x8a, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x01, 0x12, 0x04, 0x8a, - 0x01, 0x14, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x03, 0x12, 0x04, 0x8a, 0x01, - 0x29, 0x2c, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x01, 0x12, 0x04, 0x8b, 0x01, 0x04, 0x37, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x04, 0x12, 0x04, 0x8b, 0x01, 0x04, 0x0c, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x06, 0x12, 0x04, 0x8b, 0x01, 0x0d, 0x18, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x01, 0x12, 0x04, 0x8b, 0x01, 0x19, 0x2f, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0c, 0x02, 0x01, 0x03, 0x12, 0x04, 0x8b, 0x01, 0x32, 0x36, 0x0a, 0x0c, 0x0a, 0x04, - 0x04, 0x0c, 0x02, 0x02, 0x12, 0x04, 0x8c, 0x01, 0x04, 0x3b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, - 0x02, 0x02, 0x04, 0x12, 0x04, 0x8c, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, - 0x02, 0x06, 0x12, 0x04, 0x8c, 0x01, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, - 0x01, 0x12, 0x04, 0x8c, 0x01, 0x19, 0x33, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, 0x03, - 0x12, 0x04, 0x8c, 0x01, 0x36, 0x3a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x03, 0x12, 0x04, - 0x8d, 0x01, 0x04, 0x46, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x04, 0x12, 0x04, 0x8d, - 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x06, 0x12, 0x04, 0x8d, 0x01, - 0x0d, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x01, 0x12, 0x04, 0x8d, 0x01, 0x20, - 0x3e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x03, 0x12, 0x04, 0x8d, 0x01, 0x41, 0x45, - 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x04, 0x12, 0x04, 0x8e, 0x01, 0x04, 0x34, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x04, 0x04, 0x12, 0x04, 0x8e, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0c, 0x02, 0x04, 0x05, 0x12, 0x04, 0x8e, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0c, 0x02, 0x04, 0x01, 0x12, 0x04, 0x8e, 0x01, 0x13, 0x2c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0c, 0x02, 0x04, 0x03, 0x12, 0x04, 0x8e, 0x01, 0x2f, 0x33, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, - 0x02, 0x05, 0x12, 0x04, 0x8f, 0x01, 0x04, 0x25, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x05, - 0x04, 0x12, 0x04, 0x8f, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x05, 0x05, - 0x12, 0x04, 0x8f, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x05, 0x01, 0x12, - 0x04, 0x8f, 0x01, 0x13, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x05, 0x03, 0x12, 0x04, - 0x8f, 0x01, 0x20, 0x24, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x06, 0x12, 0x04, 0x90, 0x01, - 0x04, 0x2d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x06, 0x04, 0x12, 0x04, 0x90, 0x01, 0x04, - 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x06, 0x06, 0x12, 0x04, 0x90, 0x01, 0x0d, 0x18, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x06, 0x01, 0x12, 0x04, 0x90, 0x01, 0x19, 0x25, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x06, 0x03, 0x12, 0x04, 0x90, 0x01, 0x28, 0x2c, 0x0a, 0x0c, - 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x07, 0x12, 0x04, 0x91, 0x01, 0x04, 0x2b, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0c, 0x02, 0x07, 0x04, 0x12, 0x04, 0x91, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0c, 0x02, 0x07, 0x06, 0x12, 0x04, 0x91, 0x01, 0x0d, 0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, - 0x02, 0x07, 0x01, 0x12, 0x04, 0x91, 0x01, 0x21, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, - 0x07, 0x03, 0x12, 0x04, 0x91, 0x01, 0x26, 0x2a, 0x0a, 0x0c, 0x0a, 0x02, 0x05, 0x05, 0x12, 0x06, - 0x94, 0x01, 0x00, 0x97, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x05, 0x05, 0x01, 0x12, 0x04, 0x94, - 0x01, 0x05, 0x10, 0x0a, 0x0c, 0x0a, 0x04, 0x05, 0x05, 0x02, 0x00, 0x12, 0x04, 0x95, 0x01, 0x04, - 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x05, 0x02, 0x00, 0x01, 0x12, 0x04, 0x95, 0x01, 0x04, 0x0b, - 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x05, 0x02, 0x00, 0x02, 0x12, 0x04, 0x95, 0x01, 0x0e, 0x11, 0x0a, - 0x0c, 0x0a, 0x04, 0x05, 0x05, 0x02, 0x01, 0x12, 0x04, 0x96, 0x01, 0x04, 0x13, 0x0a, 0x0d, 0x0a, - 0x05, 0x05, 0x05, 0x02, 0x01, 0x01, 0x12, 0x04, 0x96, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, - 0x05, 0x05, 0x02, 0x01, 0x02, 0x12, 0x04, 0x96, 0x01, 0x0f, 0x12, 0x0a, 0x0c, 0x0a, 0x02, 0x04, - 0x0d, 0x12, 0x06, 0x99, 0x01, 0x00, 0x9c, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0d, 0x01, - 0x12, 0x04, 0x99, 0x01, 0x08, 0x13, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d, 0x02, 0x00, 0x12, 0x04, - 0x9a, 0x01, 0x04, 0x2e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x04, 0x12, 0x04, 0x9a, - 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x06, 0x12, 0x04, 0x9a, 0x01, - 0x0d, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x01, 0x12, 0x04, 0x9a, 0x01, 0x20, - 0x27, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x03, 0x12, 0x04, 0x9a, 0x01, 0x2a, 0x2d, - 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d, 0x02, 0x01, 0x12, 0x04, 0x9b, 0x01, 0x04, 0x30, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x04, 0x12, 0x04, 0x9b, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0d, 0x02, 0x01, 0x06, 0x12, 0x04, 0x9b, 0x01, 0x0d, 0x20, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0d, 0x02, 0x01, 0x01, 0x12, 0x04, 0x9b, 0x01, 0x21, 0x29, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0d, 0x02, 0x01, 0x03, 0x12, 0x04, 0x9b, 0x01, 0x2c, 0x2f, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0e, - 0x12, 0x06, 0x9e, 0x01, 0x00, 0x9f, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0e, 0x01, 0x12, - 0x04, 0x9e, 0x01, 0x08, 0x1a, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0f, 0x12, 0x06, 0xa1, 0x01, 0x00, - 0xa4, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0f, 0x01, 0x12, 0x04, 0xa1, 0x01, 0x08, 0x1b, - 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0f, 0x02, 0x00, 0x12, 0x04, 0xa2, 0x01, 0x04, 0x27, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x00, 0x04, 0x12, 0x04, 0xa2, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0f, 0x02, 0x00, 0x05, 0x12, 0x04, 0xa2, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0f, 0x02, 0x00, 0x01, 0x12, 0x04, 0xa2, 0x01, 0x14, 0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0f, 0x02, 0x00, 0x03, 0x12, 0x04, 0xa2, 0x01, 0x23, 0x26, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0f, - 0x02, 0x01, 0x12, 0x04, 0xa3, 0x01, 0x04, 0x25, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, - 0x04, 0x12, 0x04, 0xa3, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x05, - 0x12, 0x04, 0xa3, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x01, 0x12, - 0x04, 0xa3, 0x01, 0x14, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x03, 0x12, 0x04, - 0xa3, 0x01, 0x21, 0x24, -]; +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x14authentication.proto\"\xec\x03\n\x17ClientResponseEncrypted\x12>\n\ + \x11login_credentials\x18\n\x20\x02(\x0b2\x11.LoginCredentialsR\x10login\ + Credentials\x12;\n\x10account_creation\x18\x14\x20\x01(\x0e2\x10.Account\ + CreationR\x0faccountCreation\x12L\n\x14fingerprint_response\x18\x1e\x20\ + \x01(\x0b2\x19.FingerprintResponseUnionR\x13fingerprintResponse\x121\n\ + \x0bpeer_ticket\x18(\x20\x01(\x0b2\x10.PeerTicketUnionR\npeerTicket\x12,\ + \n\x0bsystem_info\x182\x20\x02(\x0b2\x0b.SystemInfoR\nsystemInfo\x12%\n\ + \x0eplatform_model\x18<\x20\x01(\tR\rplatformModel\x12%\n\x0eversion_str\ + ing\x18F\x20\x01(\tR\rversionString\x12)\n\x06appkey\x18P\x20\x01(\x0b2\ + \x11.LibspotifyAppKeyR\x06appkey\x12,\n\x0bclient_info\x18Z\x20\x01(\x0b\ + 2\x0b.ClientInfoR\nclientInfo\"r\n\x10LoginCredentials\x12\x1a\n\x08user\ + name\x18\n\x20\x01(\tR\x08username\x12%\n\x03typ\x18\x14\x20\x02(\x0e2\ + \x13.AuthenticationTypeR\x03typ\x12\x1b\n\tauth_data\x18\x1e\x20\x01(\ + \x0cR\x08authData\"\x8c\x01\n\x18FingerprintResponseUnion\x12/\n\x05grai\ + n\x18\n\x20\x01(\x0b2\x19.FingerprintGrainResponseR\x05grain\x12?\n\x0bh\ + mac_ripemd\x18\x14\x20\x01(\x0b2\x1e.FingerprintHmacRipemdResponseR\nhma\ + cRipemd\"?\n\x18FingerprintGrainResponse\x12#\n\rencrypted_key\x18\n\x20\ + \x02(\x0cR\x0cencryptedKey\"3\n\x1dFingerprintHmacRipemdResponse\x12\x12\ + \n\x04hmac\x18\n\x20\x02(\x0cR\x04hmac\"u\n\x0fPeerTicketUnion\x123\n\np\ + ublic_key\x18\n\x20\x01(\x0b2\x14.PeerTicketPublicKeyR\tpublicKey\x12-\n\ + \nold_ticket\x18\x14\x20\x01(\x0b2\x0e.PeerTicketOldR\toldTicket\"4\n\ + \x13PeerTicketPublicKey\x12\x1d\n\npublic_key\x18\n\x20\x02(\x0cR\tpubli\ + cKey\"d\n\rPeerTicketOld\x12\x1f\n\x0bpeer_ticket\x18\n\x20\x02(\x0cR\np\ + eerTicket\x122\n\x15peer_ticket_signature\x18\x14\x20\x02(\x0cR\x13peerT\ + icketSignature\"\xd4\x02\n\nSystemInfo\x12)\n\ncpu_family\x18\n\x20\x02(\ + \x0e2\n.CpuFamilyR\tcpuFamily\x12\x1f\n\x0bcpu_subtype\x18\x14\x20\x01(\ + \rR\ncpuSubtype\x12\x17\n\x07cpu_ext\x18\x1e\x20\x01(\rR\x06cpuExt\x12\ + \x1c\n\x05brand\x18(\x20\x01(\x0e2\x06.BrandR\x05brand\x12\x1f\n\x0bbran\ + d_flags\x182\x20\x01(\rR\nbrandFlags\x12\x13\n\x02os\x18<\x20\x02(\x0e2\ + \x03.OsR\x02os\x12\x1d\n\nos_version\x18F\x20\x01(\rR\tosVersion\x12\x15\ + \n\x06os_ext\x18P\x20\x01(\rR\x05osExt\x12:\n\x19system_information_stri\ + ng\x18Z\x20\x01(\tR\x17systemInformationString\x12\x1b\n\tdevice_id\x18d\ + \x20\x01(\tR\x08deviceId\"\xa5\x01\n\x10LibspotifyAppKey\x12\x18\n\x07ve\ + rsion\x18\x01\x20\x02(\rR\x07version\x12\x16\n\x06devkey\x18\x02\x20\x02\ + (\x0cR\x06devkey\x12\x1c\n\tsignature\x18\x03\x20\x02(\x0cR\tsignature\ + \x12\x1c\n\tuseragent\x18\x04\x20\x02(\tR\tuseragent\x12#\n\rcallback_ha\ + sh\x18\x05\x20\x02(\x0cR\x0ccallbackHash\"g\n\nClientInfo\x12\x18\n\x07l\ + imited\x18\x01\x20\x01(\x08R\x07limited\x12#\n\x02fb\x18\x02\x20\x01(\ + \x0b2\x13.ClientInfoFacebookR\x02fb\x12\x1a\n\x08language\x18\x03\x20\ + \x01(\tR\x08language\"3\n\x12ClientInfoFacebook\x12\x1d\n\nmachine_id\ + \x18\x01\x20\x01(\tR\tmachineId\"\xd4\x03\n\tAPWelcome\x12-\n\x12canonic\ + al_username\x18\n\x20\x02(\tR\x11canonicalUsername\x12A\n\x16account_typ\ + e_logged_in\x18\x14\x20\x02(\x0e2\x0c.AccountTypeR\x13accountTypeLoggedI\ + n\x12I\n\x1acredentials_type_logged_in\x18\x19\x20\x02(\x0e2\x0c.Account\ + TypeR\x17credentialsTypeLoggedIn\x12X\n\x1ereusable_auth_credentials_typ\ + e\x18\x1e\x20\x02(\x0e2\x13.AuthenticationTypeR\x1breusableAuthCredentia\ + lsType\x12:\n\x19reusable_auth_credentials\x18(\x20\x02(\x0cR\x17reusabl\ + eAuthCredentials\x12\x1d\n\nlfs_secret\x182\x20\x01(\x0cR\tlfsSecret\x12\ + /\n\x0caccount_info\x18<\x20\x01(\x0b2\x0c.AccountInfoR\x0baccountInfo\ + \x12$\n\x02fb\x18F\x20\x01(\x0b2\x14.AccountInfoFacebookR\x02fb\"n\n\x0b\ + AccountInfo\x12-\n\x07spotify\x18\x01\x20\x01(\x0b2\x13.AccountInfoSpoti\ + fyR\x07spotify\x120\n\x08facebook\x18\x02\x20\x01(\x0b2\x14.AccountInfoF\ + acebookR\x08facebook\"\x14\n\x12AccountInfoSpotify\"W\n\x13AccountInfoFa\ + cebook\x12!\n\x0caccess_token\x18\x01\x20\x01(\tR\x0baccessToken\x12\x1d\ + \n\nmachine_id\x18\x02\x20\x01(\tR\tmachineId*\xd6\x01\n\x12Authenticati\ + onType\x12\x1c\n\x18AUTHENTICATION_USER_PASS\x10\0\x12-\n)AUTHENTICATION\ + _STORED_SPOTIFY_CREDENTIALS\x10\x01\x12.\n*AUTHENTICATION_STORED_FACEBOO\ + K_CREDENTIALS\x10\x02\x12\x20\n\x1cAUTHENTICATION_SPOTIFY_TOKEN\x10\x03\ + \x12!\n\x1dAUTHENTICATION_FACEBOOK_TOKEN\x10\x04*Y\n\x0fAccountCreation\ + \x12\"\n\x1eACCOUNT_CREATION_ALWAYS_PROMPT\x10\x01\x12\"\n\x1eACCOUNT_CR\ + EATION_ALWAYS_CREATE\x10\x03*\x9d\x01\n\tCpuFamily\x12\x0f\n\x0bCPU_UNKN\ + OWN\x10\0\x12\x0b\n\x07CPU_X86\x10\x01\x12\x0e\n\nCPU_X86_64\x10\x02\x12\ + \x0b\n\x07CPU_PPC\x10\x03\x12\x0e\n\nCPU_PPC_64\x10\x04\x12\x0b\n\x07CPU\ + _ARM\x10\x05\x12\x0c\n\x08CPU_IA64\x10\x06\x12\n\n\x06CPU_SH\x10\x07\x12\ + \x0c\n\x08CPU_MIPS\x10\x08\x12\x10\n\x0cCPU_BLACKFIN\x10\t*K\n\x05Brand\ + \x12\x13\n\x0fBRAND_UNBRANDED\x10\0\x12\r\n\tBRAND_INQ\x10\x01\x12\r\n\t\ + BRAND_HTC\x10\x02\x12\x0f\n\x0bBRAND_NOKIA\x10\x03*\xd1\x02\n\x02Os\x12\ + \x0e\n\nOS_UNKNOWN\x10\0\x12\x0e\n\nOS_WINDOWS\x10\x01\x12\n\n\x06OS_OSX\ + \x10\x02\x12\r\n\tOS_IPHONE\x10\x03\x12\n\n\x06OS_S60\x10\x04\x12\x0c\n\ + \x08OS_LINUX\x10\x05\x12\x11\n\rOS_WINDOWS_CE\x10\x06\x12\x0e\n\nOS_ANDR\ + OID\x10\x07\x12\x0b\n\x07OS_PALM\x10\x08\x12\x0e\n\nOS_FREEBSD\x10\t\x12\ + \x11\n\rOS_BLACKBERRY\x10\n\x12\x0c\n\x08OS_SONOS\x10\x0b\x12\x0f\n\x0bO\ + S_LOGITECH\x10\x0c\x12\n\n\x06OS_WP7\x10\r\x12\x0c\n\x08OS_ONKYO\x10\x0e\ + \x12\x0e\n\nOS_PHILIPS\x10\x0f\x12\t\n\x05OS_WD\x10\x10\x12\x0c\n\x08OS_\ + VOLVO\x10\x11\x12\x0b\n\x07OS_TIVO\x10\x12\x12\x0b\n\x07OS_AWOX\x10\x13\ + \x12\x0c\n\x08OS_MEEGO\x10\x14\x12\r\n\tOS_QNXNTO\x10\x15\x12\n\n\x06OS_\ + BCO\x10\x16*(\n\x0bAccountType\x12\x0b\n\x07Spotify\x10\0\x12\x0c\n\x08F\ + acebook\x10\x01\ +"; static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, diff --git a/protocol/src/keyexchange.rs b/protocol/src/keyexchange.rs index 336a40d0..a1ac13a5 100644 --- a/protocol/src/keyexchange.rs +++ b/protocol/src/keyexchange.rs @@ -1,4 +1,4 @@ -// This file is generated. Do not edit +// This file is generated by rust-protobuf 2.0.5. Do not edit // @generated // https://github.com/Manishearth/rust-clippy/issues/702 @@ -37,24 +37,11 @@ pub struct ClientHello { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ClientHello {} - impl ClientHello { pub fn new() -> ClientHello { ::std::default::Default::default() } - pub fn default_instance() -> &'static ClientHello { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ClientHello, - }; - unsafe { - instance.get(ClientHello::new) - } - } - // required .BuildInfo build_info = 10; pub fn clear_build_info(&mut self) { @@ -75,7 +62,7 @@ impl ClientHello { pub fn mut_build_info(&mut self) -> &mut BuildInfo { if self.build_info.is_none() { self.build_info.set_default(); - }; + } self.build_info.as_mut().unwrap() } @@ -88,14 +75,6 @@ impl ClientHello { self.build_info.as_ref().unwrap_or_else(|| BuildInfo::default_instance()) } - fn get_build_info_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.build_info - } - - fn mut_build_info_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.build_info - } - // repeated .Fingerprint fingerprints_supported = 20; pub fn clear_fingerprints_supported(&mut self) { @@ -121,14 +100,6 @@ impl ClientHello { &self.fingerprints_supported } - fn get_fingerprints_supported_for_reflect(&self) -> &::std::vec::Vec { - &self.fingerprints_supported - } - - fn mut_fingerprints_supported_for_reflect(&mut self) -> &mut ::std::vec::Vec { - &mut self.fingerprints_supported - } - // repeated .Cryptosuite cryptosuites_supported = 30; pub fn clear_cryptosuites_supported(&mut self) { @@ -154,14 +125,6 @@ impl ClientHello { &self.cryptosuites_supported } - fn get_cryptosuites_supported_for_reflect(&self) -> &::std::vec::Vec { - &self.cryptosuites_supported - } - - fn mut_cryptosuites_supported_for_reflect(&mut self) -> &mut ::std::vec::Vec { - &mut self.cryptosuites_supported - } - // repeated .Powscheme powschemes_supported = 40; pub fn clear_powschemes_supported(&mut self) { @@ -187,14 +150,6 @@ impl ClientHello { &self.powschemes_supported } - fn get_powschemes_supported_for_reflect(&self) -> &::std::vec::Vec { - &self.powschemes_supported - } - - fn mut_powschemes_supported_for_reflect(&mut self) -> &mut ::std::vec::Vec { - &mut self.powschemes_supported - } - // required .LoginCryptoHelloUnion login_crypto_hello = 50; pub fn clear_login_crypto_hello(&mut self) { @@ -215,7 +170,7 @@ impl ClientHello { pub fn mut_login_crypto_hello(&mut self) -> &mut LoginCryptoHelloUnion { if self.login_crypto_hello.is_none() { self.login_crypto_hello.set_default(); - }; + } self.login_crypto_hello.as_mut().unwrap() } @@ -228,14 +183,6 @@ impl ClientHello { self.login_crypto_hello.as_ref().unwrap_or_else(|| LoginCryptoHelloUnion::default_instance()) } - fn get_login_crypto_hello_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.login_crypto_hello - } - - fn mut_login_crypto_hello_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.login_crypto_hello - } - // required bytes client_nonce = 60; pub fn clear_client_nonce(&mut self) { @@ -256,7 +203,7 @@ impl ClientHello { pub fn mut_client_nonce(&mut self) -> &mut ::std::vec::Vec { if self.client_nonce.is_none() { self.client_nonce.set_default(); - }; + } self.client_nonce.as_mut().unwrap() } @@ -272,14 +219,6 @@ impl ClientHello { } } - fn get_client_nonce_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.client_nonce - } - - fn mut_client_nonce_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.client_nonce - } - // optional bytes padding = 70; pub fn clear_padding(&mut self) { @@ -300,7 +239,7 @@ impl ClientHello { pub fn mut_padding(&mut self) -> &mut ::std::vec::Vec { if self.padding.is_none() { self.padding.set_default(); - }; + } self.padding.as_mut().unwrap() } @@ -316,14 +255,6 @@ impl ClientHello { } } - fn get_padding_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.padding - } - - fn mut_padding_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.padding - } - // optional .FeatureSet feature_set = 80; pub fn clear_feature_set(&mut self) { @@ -344,7 +275,7 @@ impl ClientHello { pub fn mut_feature_set(&mut self) -> &mut FeatureSet { if self.feature_set.is_none() { self.feature_set.set_default(); - }; + } self.feature_set.as_mut().unwrap() } @@ -356,26 +287,33 @@ impl ClientHello { pub fn get_feature_set(&self) -> &FeatureSet { self.feature_set.as_ref().unwrap_or_else(|| FeatureSet::default_instance()) } - - fn get_feature_set_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.feature_set - } - - fn mut_feature_set_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.feature_set - } } impl ::protobuf::Message for ClientHello { fn is_initialized(&self) -> bool { if self.build_info.is_none() { return false; - }; + } if self.login_crypto_hello.is_none() { return false; - }; + } if self.client_nonce.is_none() { return false; + } + for v in &self.build_info { + if !v.is_initialized() { + return false; + } + }; + for v in &self.login_crypto_hello { + if !v.is_initialized() { + return false; + } + }; + for v in &self.feature_set { + if !v.is_initialized() { + return false; + } }; true } @@ -388,13 +326,13 @@ impl ::protobuf::Message for ClientHello { ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.build_info)?; }, 20 => { - ::protobuf::rt::read_repeated_enum_into(wire_type, is, &mut self.fingerprints_supported)?; + ::protobuf::rt::read_repeated_enum_with_unknown_fields_into(wire_type, is, &mut self.fingerprints_supported, 20, &mut self.unknown_fields)? }, 30 => { - ::protobuf::rt::read_repeated_enum_into(wire_type, is, &mut self.cryptosuites_supported)?; + ::protobuf::rt::read_repeated_enum_with_unknown_fields_into(wire_type, is, &mut self.cryptosuites_supported, 30, &mut self.unknown_fields)? }, 40 => { - ::protobuf::rt::read_repeated_enum_into(wire_type, is, &mut self.powschemes_supported)?; + ::protobuf::rt::read_repeated_enum_with_unknown_fields_into(wire_type, is, &mut self.powschemes_supported, 40, &mut self.unknown_fields)? }, 50 => { ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.login_crypto_hello)?; @@ -420,10 +358,10 @@ impl ::protobuf::Message for ClientHello { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.build_info.as_ref() { + if let Some(ref v) = self.build_info.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } for value in &self.fingerprints_supported { my_size += ::protobuf::rt::enum_size(20, *value); }; @@ -433,31 +371,31 @@ impl ::protobuf::Message for ClientHello { for value in &self.powschemes_supported { my_size += ::protobuf::rt::enum_size(40, *value); }; - if let Some(v) = self.login_crypto_hello.as_ref() { + if let Some(ref v) = self.login_crypto_hello.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.client_nonce.as_ref() { + } + if let Some(ref v) = self.client_nonce.as_ref() { my_size += ::protobuf::rt::bytes_size(60, &v); - }; - if let Some(v) = self.padding.as_ref() { + } + if let Some(ref v) = self.padding.as_ref() { my_size += ::protobuf::rt::bytes_size(70, &v); - }; - if let Some(v) = self.feature_set.as_ref() { + } + if let Some(ref v) = self.feature_set.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.build_info.as_ref() { + if let Some(ref v) = self.build_info.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } for v in &self.fingerprints_supported { os.write_enum(20, v.value())?; }; @@ -467,22 +405,22 @@ impl ::protobuf::Message for ClientHello { for v in &self.powschemes_supported { os.write_enum(40, v.value())?; }; - if let Some(v) = self.login_crypto_hello.as_ref() { + if let Some(ref v) = self.login_crypto_hello.as_ref() { os.write_tag(50, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.client_nonce.as_ref() { + } + if let Some(ref v) = self.client_nonce.as_ref() { os.write_bytes(60, &v)?; - }; - if let Some(v) = self.padding.as_ref() { + } + if let Some(ref v) = self.padding.as_ref() { os.write_bytes(70, &v)?; - }; - if let Some(v) = self.feature_set.as_ref() { + } + if let Some(ref v) = self.feature_set.as_ref() { os.write_tag(80, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -510,16 +448,14 @@ impl ::protobuf::Message for ClientHello { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ClientHello { fn new() -> ClientHello { ClientHello::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -529,43 +465,43 @@ impl ::protobuf::MessageStatic for ClientHello { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "build_info", - ClientHello::get_build_info_for_reflect, - ClientHello::mut_build_info_for_reflect, + |m: &ClientHello| { &m.build_info }, + |m: &mut ClientHello| { &mut m.build_info }, )); fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "fingerprints_supported", - ClientHello::get_fingerprints_supported_for_reflect, - ClientHello::mut_fingerprints_supported_for_reflect, + |m: &ClientHello| { &m.fingerprints_supported }, + |m: &mut ClientHello| { &mut m.fingerprints_supported }, )); fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "cryptosuites_supported", - ClientHello::get_cryptosuites_supported_for_reflect, - ClientHello::mut_cryptosuites_supported_for_reflect, + |m: &ClientHello| { &m.cryptosuites_supported }, + |m: &mut ClientHello| { &mut m.cryptosuites_supported }, )); fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "powschemes_supported", - ClientHello::get_powschemes_supported_for_reflect, - ClientHello::mut_powschemes_supported_for_reflect, + |m: &ClientHello| { &m.powschemes_supported }, + |m: &mut ClientHello| { &mut m.powschemes_supported }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "login_crypto_hello", - ClientHello::get_login_crypto_hello_for_reflect, - ClientHello::mut_login_crypto_hello_for_reflect, + |m: &ClientHello| { &m.login_crypto_hello }, + |m: &mut ClientHello| { &mut m.login_crypto_hello }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "client_nonce", - ClientHello::get_client_nonce_for_reflect, - ClientHello::mut_client_nonce_for_reflect, + |m: &ClientHello| { &m.client_nonce }, + |m: &mut ClientHello| { &mut m.client_nonce }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "padding", - ClientHello::get_padding_for_reflect, - ClientHello::mut_padding_for_reflect, + |m: &ClientHello| { &m.padding }, + |m: &mut ClientHello| { &mut m.padding }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "feature_set", - ClientHello::get_feature_set_for_reflect, - ClientHello::mut_feature_set_for_reflect, + |m: &ClientHello| { &m.feature_set }, + |m: &mut ClientHello| { &mut m.feature_set }, )); ::protobuf::reflect::MessageDescriptor::new::( "ClientHello", @@ -575,6 +511,16 @@ impl ::protobuf::MessageStatic for ClientHello { }) } } + + fn default_instance() -> &'static ClientHello { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ClientHello, + }; + unsafe { + instance.get(ClientHello::new) + } + } } impl ::protobuf::Clear for ClientHello { @@ -615,24 +561,11 @@ pub struct BuildInfo { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for BuildInfo {} - impl BuildInfo { pub fn new() -> BuildInfo { ::std::default::Default::default() } - pub fn default_instance() -> &'static BuildInfo { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const BuildInfo, - }; - unsafe { - instance.get(BuildInfo::new) - } - } - // required .Product product = 10; pub fn clear_product(&mut self) { @@ -652,14 +585,6 @@ impl BuildInfo { self.product.unwrap_or(Product::PRODUCT_CLIENT) } - fn get_product_for_reflect(&self) -> &::std::option::Option { - &self.product - } - - fn mut_product_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.product - } - // repeated .ProductFlags product_flags = 20; pub fn clear_product_flags(&mut self) { @@ -685,14 +610,6 @@ impl BuildInfo { &self.product_flags } - fn get_product_flags_for_reflect(&self) -> &::std::vec::Vec { - &self.product_flags - } - - fn mut_product_flags_for_reflect(&mut self) -> &mut ::std::vec::Vec { - &mut self.product_flags - } - // required .Platform platform = 30; pub fn clear_platform(&mut self) { @@ -712,14 +629,6 @@ impl BuildInfo { self.platform.unwrap_or(Platform::PLATFORM_WIN32_X86) } - fn get_platform_for_reflect(&self) -> &::std::option::Option { - &self.platform - } - - fn mut_platform_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.platform - } - // required uint64 version = 40; pub fn clear_version(&mut self) { @@ -738,27 +647,19 @@ impl BuildInfo { pub fn get_version(&self) -> u64 { self.version.unwrap_or(0) } - - fn get_version_for_reflect(&self) -> &::std::option::Option { - &self.version - } - - fn mut_version_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.version - } } impl ::protobuf::Message for BuildInfo { fn is_initialized(&self) -> bool { if self.product.is_none() { return false; - }; + } if self.platform.is_none() { return false; - }; + } if self.version.is_none() { return false; - }; + } true } @@ -767,26 +668,18 @@ impl ::protobuf::Message for BuildInfo { let (field_number, wire_type) = is.read_tag_unpack()?; match field_number { 10 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.product = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.product, 10, &mut self.unknown_fields)? }, 20 => { - ::protobuf::rt::read_repeated_enum_into(wire_type, is, &mut self.product_flags)?; + ::protobuf::rt::read_repeated_enum_with_unknown_fields_into(wire_type, is, &mut self.product_flags, 20, &mut self.unknown_fields)? }, 30 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.platform = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.platform, 30, &mut self.unknown_fields)? }, 40 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint64()?; self.version = ::std::option::Option::Some(tmp); }, @@ -804,16 +697,16 @@ impl ::protobuf::Message for BuildInfo { let mut my_size = 0; if let Some(v) = self.product { my_size += ::protobuf::rt::enum_size(10, v); - }; + } for value in &self.product_flags { my_size += ::protobuf::rt::enum_size(20, *value); }; if let Some(v) = self.platform { my_size += ::protobuf::rt::enum_size(30, v); - }; + } if let Some(v) = self.version { my_size += ::protobuf::rt::value_size(40, v, ::protobuf::wire_format::WireTypeVarint); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -822,16 +715,16 @@ impl ::protobuf::Message for BuildInfo { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.product { os.write_enum(10, v.value())?; - }; + } for v in &self.product_flags { os.write_enum(20, v.value())?; }; if let Some(v) = self.platform { os.write_enum(30, v.value())?; - }; + } if let Some(v) = self.version { os.write_uint64(40, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -859,16 +752,14 @@ impl ::protobuf::Message for BuildInfo { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for BuildInfo { fn new() -> BuildInfo { BuildInfo::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -878,23 +769,23 @@ impl ::protobuf::MessageStatic for BuildInfo { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "product", - BuildInfo::get_product_for_reflect, - BuildInfo::mut_product_for_reflect, + |m: &BuildInfo| { &m.product }, + |m: &mut BuildInfo| { &mut m.product }, )); fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "product_flags", - BuildInfo::get_product_flags_for_reflect, - BuildInfo::mut_product_flags_for_reflect, + |m: &BuildInfo| { &m.product_flags }, + |m: &mut BuildInfo| { &mut m.product_flags }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "platform", - BuildInfo::get_platform_for_reflect, - BuildInfo::mut_platform_for_reflect, + |m: &BuildInfo| { &m.platform }, + |m: &mut BuildInfo| { &mut m.platform }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( "version", - BuildInfo::get_version_for_reflect, - BuildInfo::mut_version_for_reflect, + |m: &BuildInfo| { &m.version }, + |m: &mut BuildInfo| { &mut m.version }, )); ::protobuf::reflect::MessageDescriptor::new::( "BuildInfo", @@ -904,6 +795,16 @@ impl ::protobuf::MessageStatic for BuildInfo { }) } } + + fn default_instance() -> &'static BuildInfo { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const BuildInfo, + }; + unsafe { + instance.get(BuildInfo::new) + } + } } impl ::protobuf::Clear for BuildInfo { @@ -937,24 +838,11 @@ pub struct LoginCryptoHelloUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCryptoHelloUnion {} - impl LoginCryptoHelloUnion { pub fn new() -> LoginCryptoHelloUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCryptoHelloUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCryptoHelloUnion, - }; - unsafe { - instance.get(LoginCryptoHelloUnion::new) - } - } - // optional .LoginCryptoDiffieHellmanHello diffie_hellman = 10; pub fn clear_diffie_hellman(&mut self) { @@ -975,7 +863,7 @@ impl LoginCryptoHelloUnion { pub fn mut_diffie_hellman(&mut self) -> &mut LoginCryptoDiffieHellmanHello { if self.diffie_hellman.is_none() { self.diffie_hellman.set_default(); - }; + } self.diffie_hellman.as_mut().unwrap() } @@ -987,18 +875,15 @@ impl LoginCryptoHelloUnion { pub fn get_diffie_hellman(&self) -> &LoginCryptoDiffieHellmanHello { self.diffie_hellman.as_ref().unwrap_or_else(|| LoginCryptoDiffieHellmanHello::default_instance()) } - - fn get_diffie_hellman_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.diffie_hellman - } - - fn mut_diffie_hellman_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.diffie_hellman - } } impl ::protobuf::Message for LoginCryptoHelloUnion { fn is_initialized(&self) -> bool { + for v in &self.diffie_hellman { + if !v.is_initialized() { + return false; + } + }; true } @@ -1021,21 +906,21 @@ impl ::protobuf::Message for LoginCryptoHelloUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.diffie_hellman.as_ref() { + if let Some(ref v) = self.diffie_hellman.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.diffie_hellman.as_ref() { + if let Some(ref v) = self.diffie_hellman.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1063,16 +948,14 @@ impl ::protobuf::Message for LoginCryptoHelloUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCryptoHelloUnion { fn new() -> LoginCryptoHelloUnion { LoginCryptoHelloUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1082,8 +965,8 @@ impl ::protobuf::MessageStatic for LoginCryptoHelloUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "diffie_hellman", - LoginCryptoHelloUnion::get_diffie_hellman_for_reflect, - LoginCryptoHelloUnion::mut_diffie_hellman_for_reflect, + |m: &LoginCryptoHelloUnion| { &m.diffie_hellman }, + |m: &mut LoginCryptoHelloUnion| { &mut m.diffie_hellman }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCryptoHelloUnion", @@ -1093,6 +976,16 @@ impl ::protobuf::MessageStatic for LoginCryptoHelloUnion { }) } } + + fn default_instance() -> &'static LoginCryptoHelloUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCryptoHelloUnion, + }; + unsafe { + instance.get(LoginCryptoHelloUnion::new) + } + } } impl ::protobuf::Clear for LoginCryptoHelloUnion { @@ -1124,24 +1017,11 @@ pub struct LoginCryptoDiffieHellmanHello { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCryptoDiffieHellmanHello {} - impl LoginCryptoDiffieHellmanHello { pub fn new() -> LoginCryptoDiffieHellmanHello { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCryptoDiffieHellmanHello { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCryptoDiffieHellmanHello, - }; - unsafe { - instance.get(LoginCryptoDiffieHellmanHello::new) - } - } - // required bytes gc = 10; pub fn clear_gc(&mut self) { @@ -1162,7 +1042,7 @@ impl LoginCryptoDiffieHellmanHello { pub fn mut_gc(&mut self) -> &mut ::std::vec::Vec { if self.gc.is_none() { self.gc.set_default(); - }; + } self.gc.as_mut().unwrap() } @@ -1178,14 +1058,6 @@ impl LoginCryptoDiffieHellmanHello { } } - fn get_gc_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gc - } - - fn mut_gc_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gc - } - // required uint32 server_keys_known = 20; pub fn clear_server_keys_known(&mut self) { @@ -1204,24 +1076,16 @@ impl LoginCryptoDiffieHellmanHello { pub fn get_server_keys_known(&self) -> u32 { self.server_keys_known.unwrap_or(0) } - - fn get_server_keys_known_for_reflect(&self) -> &::std::option::Option { - &self.server_keys_known - } - - fn mut_server_keys_known_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.server_keys_known - } } impl ::protobuf::Message for LoginCryptoDiffieHellmanHello { fn is_initialized(&self) -> bool { if self.gc.is_none() { return false; - }; + } if self.server_keys_known.is_none() { return false; - }; + } true } @@ -1235,7 +1099,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanHello { 20 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.server_keys_known = ::std::option::Option::Some(tmp); }, @@ -1251,24 +1115,24 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanHello { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.gc.as_ref() { + if let Some(ref v) = self.gc.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } if let Some(v) = self.server_keys_known { my_size += ::protobuf::rt::value_size(20, v, ::protobuf::wire_format::WireTypeVarint); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.gc.as_ref() { + if let Some(ref v) = self.gc.as_ref() { os.write_bytes(10, &v)?; - }; + } if let Some(v) = self.server_keys_known { os.write_uint32(20, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1296,16 +1160,14 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanHello { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanHello { fn new() -> LoginCryptoDiffieHellmanHello { LoginCryptoDiffieHellmanHello::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1315,13 +1177,13 @@ impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanHello { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gc", - LoginCryptoDiffieHellmanHello::get_gc_for_reflect, - LoginCryptoDiffieHellmanHello::mut_gc_for_reflect, + |m: &LoginCryptoDiffieHellmanHello| { &m.gc }, + |m: &mut LoginCryptoDiffieHellmanHello| { &mut m.gc }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "server_keys_known", - LoginCryptoDiffieHellmanHello::get_server_keys_known_for_reflect, - LoginCryptoDiffieHellmanHello::mut_server_keys_known_for_reflect, + |m: &LoginCryptoDiffieHellmanHello| { &m.server_keys_known }, + |m: &mut LoginCryptoDiffieHellmanHello| { &mut m.server_keys_known }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCryptoDiffieHellmanHello", @@ -1331,6 +1193,16 @@ impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanHello { }) } } + + fn default_instance() -> &'static LoginCryptoDiffieHellmanHello { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCryptoDiffieHellmanHello, + }; + unsafe { + instance.get(LoginCryptoDiffieHellmanHello::new) + } + } } impl ::protobuf::Clear for LoginCryptoDiffieHellmanHello { @@ -1363,24 +1235,11 @@ pub struct FeatureSet { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FeatureSet {} - impl FeatureSet { pub fn new() -> FeatureSet { ::std::default::Default::default() } - pub fn default_instance() -> &'static FeatureSet { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FeatureSet, - }; - unsafe { - instance.get(FeatureSet::new) - } - } - // optional bool autoupdate2 = 1; pub fn clear_autoupdate2(&mut self) { @@ -1400,14 +1259,6 @@ impl FeatureSet { self.autoupdate2.unwrap_or(false) } - fn get_autoupdate2_for_reflect(&self) -> &::std::option::Option { - &self.autoupdate2 - } - - fn mut_autoupdate2_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.autoupdate2 - } - // optional bool current_location = 2; pub fn clear_current_location(&mut self) { @@ -1426,14 +1277,6 @@ impl FeatureSet { pub fn get_current_location(&self) -> bool { self.current_location.unwrap_or(false) } - - fn get_current_location_for_reflect(&self) -> &::std::option::Option { - &self.current_location - } - - fn mut_current_location_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.current_location - } } impl ::protobuf::Message for FeatureSet { @@ -1448,14 +1291,14 @@ impl ::protobuf::Message for FeatureSet { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.autoupdate2 = ::std::option::Option::Some(tmp); }, 2 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.current_location = ::std::option::Option::Some(tmp); }, @@ -1473,10 +1316,10 @@ impl ::protobuf::Message for FeatureSet { let mut my_size = 0; if let Some(v) = self.autoupdate2 { my_size += 2; - }; + } if let Some(v) = self.current_location { my_size += 2; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -1485,10 +1328,10 @@ impl ::protobuf::Message for FeatureSet { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.autoupdate2 { os.write_bool(1, v)?; - }; + } if let Some(v) = self.current_location { os.write_bool(2, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1516,16 +1359,14 @@ impl ::protobuf::Message for FeatureSet { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FeatureSet { fn new() -> FeatureSet { FeatureSet::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1535,13 +1376,13 @@ impl ::protobuf::MessageStatic for FeatureSet { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "autoupdate2", - FeatureSet::get_autoupdate2_for_reflect, - FeatureSet::mut_autoupdate2_for_reflect, + |m: &FeatureSet| { &m.autoupdate2 }, + |m: &mut FeatureSet| { &mut m.autoupdate2 }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "current_location", - FeatureSet::get_current_location_for_reflect, - FeatureSet::mut_current_location_for_reflect, + |m: &FeatureSet| { &m.current_location }, + |m: &mut FeatureSet| { &mut m.current_location }, )); ::protobuf::reflect::MessageDescriptor::new::( "FeatureSet", @@ -1551,6 +1392,16 @@ impl ::protobuf::MessageStatic for FeatureSet { }) } } + + fn default_instance() -> &'static FeatureSet { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FeatureSet, + }; + unsafe { + instance.get(FeatureSet::new) + } + } } impl ::protobuf::Clear for FeatureSet { @@ -1584,24 +1435,11 @@ pub struct APResponseMessage { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for APResponseMessage {} - impl APResponseMessage { pub fn new() -> APResponseMessage { ::std::default::Default::default() } - pub fn default_instance() -> &'static APResponseMessage { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const APResponseMessage, - }; - unsafe { - instance.get(APResponseMessage::new) - } - } - // optional .APChallenge challenge = 10; pub fn clear_challenge(&mut self) { @@ -1622,7 +1460,7 @@ impl APResponseMessage { pub fn mut_challenge(&mut self) -> &mut APChallenge { if self.challenge.is_none() { self.challenge.set_default(); - }; + } self.challenge.as_mut().unwrap() } @@ -1635,14 +1473,6 @@ impl APResponseMessage { self.challenge.as_ref().unwrap_or_else(|| APChallenge::default_instance()) } - fn get_challenge_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.challenge - } - - fn mut_challenge_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.challenge - } - // optional .UpgradeRequiredMessage upgrade = 20; pub fn clear_upgrade(&mut self) { @@ -1663,7 +1493,7 @@ impl APResponseMessage { pub fn mut_upgrade(&mut self) -> &mut UpgradeRequiredMessage { if self.upgrade.is_none() { self.upgrade.set_default(); - }; + } self.upgrade.as_mut().unwrap() } @@ -1676,14 +1506,6 @@ impl APResponseMessage { self.upgrade.as_ref().unwrap_or_else(|| UpgradeRequiredMessage::default_instance()) } - fn get_upgrade_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.upgrade - } - - fn mut_upgrade_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.upgrade - } - // optional .APLoginFailed login_failed = 30; pub fn clear_login_failed(&mut self) { @@ -1704,7 +1526,7 @@ impl APResponseMessage { pub fn mut_login_failed(&mut self) -> &mut APLoginFailed { if self.login_failed.is_none() { self.login_failed.set_default(); - }; + } self.login_failed.as_mut().unwrap() } @@ -1716,18 +1538,25 @@ impl APResponseMessage { pub fn get_login_failed(&self) -> &APLoginFailed { self.login_failed.as_ref().unwrap_or_else(|| APLoginFailed::default_instance()) } - - fn get_login_failed_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.login_failed - } - - fn mut_login_failed_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.login_failed - } } impl ::protobuf::Message for APResponseMessage { fn is_initialized(&self) -> bool { + for v in &self.challenge { + if !v.is_initialized() { + return false; + } + }; + for v in &self.upgrade { + if !v.is_initialized() { + return false; + } + }; + for v in &self.login_failed { + if !v.is_initialized() { + return false; + } + }; true } @@ -1756,39 +1585,39 @@ impl ::protobuf::Message for APResponseMessage { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.challenge.as_ref() { + if let Some(ref v) = self.challenge.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.upgrade.as_ref() { + } + if let Some(ref v) = self.upgrade.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.login_failed.as_ref() { + } + if let Some(ref v) = self.login_failed.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.challenge.as_ref() { + if let Some(ref v) = self.challenge.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.upgrade.as_ref() { + } + if let Some(ref v) = self.upgrade.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.login_failed.as_ref() { + } + if let Some(ref v) = self.login_failed.as_ref() { os.write_tag(30, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1816,16 +1645,14 @@ impl ::protobuf::Message for APResponseMessage { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for APResponseMessage { fn new() -> APResponseMessage { APResponseMessage::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1835,18 +1662,18 @@ impl ::protobuf::MessageStatic for APResponseMessage { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "challenge", - APResponseMessage::get_challenge_for_reflect, - APResponseMessage::mut_challenge_for_reflect, + |m: &APResponseMessage| { &m.challenge }, + |m: &mut APResponseMessage| { &mut m.challenge }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "upgrade", - APResponseMessage::get_upgrade_for_reflect, - APResponseMessage::mut_upgrade_for_reflect, + |m: &APResponseMessage| { &m.upgrade }, + |m: &mut APResponseMessage| { &mut m.upgrade }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "login_failed", - APResponseMessage::get_login_failed_for_reflect, - APResponseMessage::mut_login_failed_for_reflect, + |m: &APResponseMessage| { &m.login_failed }, + |m: &mut APResponseMessage| { &mut m.login_failed }, )); ::protobuf::reflect::MessageDescriptor::new::( "APResponseMessage", @@ -1856,6 +1683,16 @@ impl ::protobuf::MessageStatic for APResponseMessage { }) } } + + fn default_instance() -> &'static APResponseMessage { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const APResponseMessage, + }; + unsafe { + instance.get(APResponseMessage::new) + } + } } impl ::protobuf::Clear for APResponseMessage { @@ -1893,24 +1730,11 @@ pub struct APChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for APChallenge {} - impl APChallenge { pub fn new() -> APChallenge { ::std::default::Default::default() } - pub fn default_instance() -> &'static APChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const APChallenge, - }; - unsafe { - instance.get(APChallenge::new) - } - } - // required .LoginCryptoChallengeUnion login_crypto_challenge = 10; pub fn clear_login_crypto_challenge(&mut self) { @@ -1931,7 +1755,7 @@ impl APChallenge { pub fn mut_login_crypto_challenge(&mut self) -> &mut LoginCryptoChallengeUnion { if self.login_crypto_challenge.is_none() { self.login_crypto_challenge.set_default(); - }; + } self.login_crypto_challenge.as_mut().unwrap() } @@ -1944,14 +1768,6 @@ impl APChallenge { self.login_crypto_challenge.as_ref().unwrap_or_else(|| LoginCryptoChallengeUnion::default_instance()) } - fn get_login_crypto_challenge_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.login_crypto_challenge - } - - fn mut_login_crypto_challenge_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.login_crypto_challenge - } - // required .FingerprintChallengeUnion fingerprint_challenge = 20; pub fn clear_fingerprint_challenge(&mut self) { @@ -1972,7 +1788,7 @@ impl APChallenge { pub fn mut_fingerprint_challenge(&mut self) -> &mut FingerprintChallengeUnion { if self.fingerprint_challenge.is_none() { self.fingerprint_challenge.set_default(); - }; + } self.fingerprint_challenge.as_mut().unwrap() } @@ -1985,14 +1801,6 @@ impl APChallenge { self.fingerprint_challenge.as_ref().unwrap_or_else(|| FingerprintChallengeUnion::default_instance()) } - fn get_fingerprint_challenge_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.fingerprint_challenge - } - - fn mut_fingerprint_challenge_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.fingerprint_challenge - } - // required .PoWChallengeUnion pow_challenge = 30; pub fn clear_pow_challenge(&mut self) { @@ -2013,7 +1821,7 @@ impl APChallenge { pub fn mut_pow_challenge(&mut self) -> &mut PoWChallengeUnion { if self.pow_challenge.is_none() { self.pow_challenge.set_default(); - }; + } self.pow_challenge.as_mut().unwrap() } @@ -2026,14 +1834,6 @@ impl APChallenge { self.pow_challenge.as_ref().unwrap_or_else(|| PoWChallengeUnion::default_instance()) } - fn get_pow_challenge_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.pow_challenge - } - - fn mut_pow_challenge_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.pow_challenge - } - // required .CryptoChallengeUnion crypto_challenge = 40; pub fn clear_crypto_challenge(&mut self) { @@ -2054,7 +1854,7 @@ impl APChallenge { pub fn mut_crypto_challenge(&mut self) -> &mut CryptoChallengeUnion { if self.crypto_challenge.is_none() { self.crypto_challenge.set_default(); - }; + } self.crypto_challenge.as_mut().unwrap() } @@ -2067,14 +1867,6 @@ impl APChallenge { self.crypto_challenge.as_ref().unwrap_or_else(|| CryptoChallengeUnion::default_instance()) } - fn get_crypto_challenge_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.crypto_challenge - } - - fn mut_crypto_challenge_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.crypto_challenge - } - // required bytes server_nonce = 50; pub fn clear_server_nonce(&mut self) { @@ -2095,7 +1887,7 @@ impl APChallenge { pub fn mut_server_nonce(&mut self) -> &mut ::std::vec::Vec { if self.server_nonce.is_none() { self.server_nonce.set_default(); - }; + } self.server_nonce.as_mut().unwrap() } @@ -2111,14 +1903,6 @@ impl APChallenge { } } - fn get_server_nonce_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.server_nonce - } - - fn mut_server_nonce_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.server_nonce - } - // optional bytes padding = 60; pub fn clear_padding(&mut self) { @@ -2139,7 +1923,7 @@ impl APChallenge { pub fn mut_padding(&mut self) -> &mut ::std::vec::Vec { if self.padding.is_none() { self.padding.set_default(); - }; + } self.padding.as_mut().unwrap() } @@ -2154,32 +1938,44 @@ impl APChallenge { None => &[], } } - - fn get_padding_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.padding - } - - fn mut_padding_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.padding - } } impl ::protobuf::Message for APChallenge { fn is_initialized(&self) -> bool { if self.login_crypto_challenge.is_none() { return false; - }; + } if self.fingerprint_challenge.is_none() { return false; - }; + } if self.pow_challenge.is_none() { return false; - }; + } if self.crypto_challenge.is_none() { return false; - }; + } if self.server_nonce.is_none() { return false; + } + for v in &self.login_crypto_challenge { + if !v.is_initialized() { + return false; + } + }; + for v in &self.fingerprint_challenge { + if !v.is_initialized() { + return false; + } + }; + for v in &self.pow_challenge { + if !v.is_initialized() { + return false; + } + }; + for v in &self.crypto_challenge { + if !v.is_initialized() { + return false; + } }; true } @@ -2218,60 +2014,60 @@ impl ::protobuf::Message for APChallenge { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.login_crypto_challenge.as_ref() { + if let Some(ref v) = self.login_crypto_challenge.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.fingerprint_challenge.as_ref() { + } + if let Some(ref v) = self.fingerprint_challenge.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.pow_challenge.as_ref() { + } + if let Some(ref v) = self.pow_challenge.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.crypto_challenge.as_ref() { + } + if let Some(ref v) = self.crypto_challenge.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.server_nonce.as_ref() { + } + if let Some(ref v) = self.server_nonce.as_ref() { my_size += ::protobuf::rt::bytes_size(50, &v); - }; - if let Some(v) = self.padding.as_ref() { + } + if let Some(ref v) = self.padding.as_ref() { my_size += ::protobuf::rt::bytes_size(60, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.login_crypto_challenge.as_ref() { + if let Some(ref v) = self.login_crypto_challenge.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.fingerprint_challenge.as_ref() { + } + if let Some(ref v) = self.fingerprint_challenge.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.pow_challenge.as_ref() { + } + if let Some(ref v) = self.pow_challenge.as_ref() { os.write_tag(30, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.crypto_challenge.as_ref() { + } + if let Some(ref v) = self.crypto_challenge.as_ref() { os.write_tag(40, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.server_nonce.as_ref() { + } + if let Some(ref v) = self.server_nonce.as_ref() { os.write_bytes(50, &v)?; - }; - if let Some(v) = self.padding.as_ref() { + } + if let Some(ref v) = self.padding.as_ref() { os.write_bytes(60, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2299,16 +2095,14 @@ impl ::protobuf::Message for APChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for APChallenge { fn new() -> APChallenge { APChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2318,33 +2112,33 @@ impl ::protobuf::MessageStatic for APChallenge { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "login_crypto_challenge", - APChallenge::get_login_crypto_challenge_for_reflect, - APChallenge::mut_login_crypto_challenge_for_reflect, + |m: &APChallenge| { &m.login_crypto_challenge }, + |m: &mut APChallenge| { &mut m.login_crypto_challenge }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "fingerprint_challenge", - APChallenge::get_fingerprint_challenge_for_reflect, - APChallenge::mut_fingerprint_challenge_for_reflect, + |m: &APChallenge| { &m.fingerprint_challenge }, + |m: &mut APChallenge| { &mut m.fingerprint_challenge }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "pow_challenge", - APChallenge::get_pow_challenge_for_reflect, - APChallenge::mut_pow_challenge_for_reflect, + |m: &APChallenge| { &m.pow_challenge }, + |m: &mut APChallenge| { &mut m.pow_challenge }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "crypto_challenge", - APChallenge::get_crypto_challenge_for_reflect, - APChallenge::mut_crypto_challenge_for_reflect, + |m: &APChallenge| { &m.crypto_challenge }, + |m: &mut APChallenge| { &mut m.crypto_challenge }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "server_nonce", - APChallenge::get_server_nonce_for_reflect, - APChallenge::mut_server_nonce_for_reflect, + |m: &APChallenge| { &m.server_nonce }, + |m: &mut APChallenge| { &mut m.server_nonce }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "padding", - APChallenge::get_padding_for_reflect, - APChallenge::mut_padding_for_reflect, + |m: &APChallenge| { &m.padding }, + |m: &mut APChallenge| { &mut m.padding }, )); ::protobuf::reflect::MessageDescriptor::new::( "APChallenge", @@ -2354,6 +2148,16 @@ impl ::protobuf::MessageStatic for APChallenge { }) } } + + fn default_instance() -> &'static APChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const APChallenge, + }; + unsafe { + instance.get(APChallenge::new) + } + } } impl ::protobuf::Clear for APChallenge { @@ -2389,24 +2193,11 @@ pub struct LoginCryptoChallengeUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCryptoChallengeUnion {} - impl LoginCryptoChallengeUnion { pub fn new() -> LoginCryptoChallengeUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCryptoChallengeUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCryptoChallengeUnion, - }; - unsafe { - instance.get(LoginCryptoChallengeUnion::new) - } - } - // optional .LoginCryptoDiffieHellmanChallenge diffie_hellman = 10; pub fn clear_diffie_hellman(&mut self) { @@ -2427,7 +2218,7 @@ impl LoginCryptoChallengeUnion { pub fn mut_diffie_hellman(&mut self) -> &mut LoginCryptoDiffieHellmanChallenge { if self.diffie_hellman.is_none() { self.diffie_hellman.set_default(); - }; + } self.diffie_hellman.as_mut().unwrap() } @@ -2439,18 +2230,15 @@ impl LoginCryptoChallengeUnion { pub fn get_diffie_hellman(&self) -> &LoginCryptoDiffieHellmanChallenge { self.diffie_hellman.as_ref().unwrap_or_else(|| LoginCryptoDiffieHellmanChallenge::default_instance()) } - - fn get_diffie_hellman_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.diffie_hellman - } - - fn mut_diffie_hellman_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.diffie_hellman - } } impl ::protobuf::Message for LoginCryptoChallengeUnion { fn is_initialized(&self) -> bool { + for v in &self.diffie_hellman { + if !v.is_initialized() { + return false; + } + }; true } @@ -2473,21 +2261,21 @@ impl ::protobuf::Message for LoginCryptoChallengeUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.diffie_hellman.as_ref() { + if let Some(ref v) = self.diffie_hellman.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.diffie_hellman.as_ref() { + if let Some(ref v) = self.diffie_hellman.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2515,16 +2303,14 @@ impl ::protobuf::Message for LoginCryptoChallengeUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCryptoChallengeUnion { fn new() -> LoginCryptoChallengeUnion { LoginCryptoChallengeUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2534,8 +2320,8 @@ impl ::protobuf::MessageStatic for LoginCryptoChallengeUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "diffie_hellman", - LoginCryptoChallengeUnion::get_diffie_hellman_for_reflect, - LoginCryptoChallengeUnion::mut_diffie_hellman_for_reflect, + |m: &LoginCryptoChallengeUnion| { &m.diffie_hellman }, + |m: &mut LoginCryptoChallengeUnion| { &mut m.diffie_hellman }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCryptoChallengeUnion", @@ -2545,6 +2331,16 @@ impl ::protobuf::MessageStatic for LoginCryptoChallengeUnion { }) } } + + fn default_instance() -> &'static LoginCryptoChallengeUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCryptoChallengeUnion, + }; + unsafe { + instance.get(LoginCryptoChallengeUnion::new) + } + } } impl ::protobuf::Clear for LoginCryptoChallengeUnion { @@ -2577,24 +2373,11 @@ pub struct LoginCryptoDiffieHellmanChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCryptoDiffieHellmanChallenge {} - impl LoginCryptoDiffieHellmanChallenge { pub fn new() -> LoginCryptoDiffieHellmanChallenge { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCryptoDiffieHellmanChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCryptoDiffieHellmanChallenge, - }; - unsafe { - instance.get(LoginCryptoDiffieHellmanChallenge::new) - } - } - // required bytes gs = 10; pub fn clear_gs(&mut self) { @@ -2615,7 +2398,7 @@ impl LoginCryptoDiffieHellmanChallenge { pub fn mut_gs(&mut self) -> &mut ::std::vec::Vec { if self.gs.is_none() { self.gs.set_default(); - }; + } self.gs.as_mut().unwrap() } @@ -2631,14 +2414,6 @@ impl LoginCryptoDiffieHellmanChallenge { } } - fn get_gs_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gs - } - - fn mut_gs_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gs - } - // required int32 server_signature_key = 20; pub fn clear_server_signature_key(&mut self) { @@ -2658,14 +2433,6 @@ impl LoginCryptoDiffieHellmanChallenge { self.server_signature_key.unwrap_or(0) } - fn get_server_signature_key_for_reflect(&self) -> &::std::option::Option { - &self.server_signature_key - } - - fn mut_server_signature_key_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.server_signature_key - } - // required bytes gs_signature = 30; pub fn clear_gs_signature(&mut self) { @@ -2686,7 +2453,7 @@ impl LoginCryptoDiffieHellmanChallenge { pub fn mut_gs_signature(&mut self) -> &mut ::std::vec::Vec { if self.gs_signature.is_none() { self.gs_signature.set_default(); - }; + } self.gs_signature.as_mut().unwrap() } @@ -2701,27 +2468,19 @@ impl LoginCryptoDiffieHellmanChallenge { None => &[], } } - - fn get_gs_signature_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gs_signature - } - - fn mut_gs_signature_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gs_signature - } } impl ::protobuf::Message for LoginCryptoDiffieHellmanChallenge { fn is_initialized(&self) -> bool { if self.gs.is_none() { return false; - }; + } if self.server_signature_key.is_none() { return false; - }; + } if self.gs_signature.is_none() { return false; - }; + } true } @@ -2735,7 +2494,7 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanChallenge { 20 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.server_signature_key = ::std::option::Option::Some(tmp); }, @@ -2754,30 +2513,30 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanChallenge { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.gs.as_ref() { + if let Some(ref v) = self.gs.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } if let Some(v) = self.server_signature_key { my_size += ::protobuf::rt::value_size(20, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.gs_signature.as_ref() { + } + if let Some(ref v) = self.gs_signature.as_ref() { my_size += ::protobuf::rt::bytes_size(30, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.gs.as_ref() { + if let Some(ref v) = self.gs.as_ref() { os.write_bytes(10, &v)?; - }; + } if let Some(v) = self.server_signature_key { os.write_int32(20, v)?; - }; - if let Some(v) = self.gs_signature.as_ref() { + } + if let Some(ref v) = self.gs_signature.as_ref() { os.write_bytes(30, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2805,16 +2564,14 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanChallenge { fn new() -> LoginCryptoDiffieHellmanChallenge { LoginCryptoDiffieHellmanChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2824,18 +2581,18 @@ impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanChallenge { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gs", - LoginCryptoDiffieHellmanChallenge::get_gs_for_reflect, - LoginCryptoDiffieHellmanChallenge::mut_gs_for_reflect, + |m: &LoginCryptoDiffieHellmanChallenge| { &m.gs }, + |m: &mut LoginCryptoDiffieHellmanChallenge| { &mut m.gs }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "server_signature_key", - LoginCryptoDiffieHellmanChallenge::get_server_signature_key_for_reflect, - LoginCryptoDiffieHellmanChallenge::mut_server_signature_key_for_reflect, + |m: &LoginCryptoDiffieHellmanChallenge| { &m.server_signature_key }, + |m: &mut LoginCryptoDiffieHellmanChallenge| { &mut m.server_signature_key }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gs_signature", - LoginCryptoDiffieHellmanChallenge::get_gs_signature_for_reflect, - LoginCryptoDiffieHellmanChallenge::mut_gs_signature_for_reflect, + |m: &LoginCryptoDiffieHellmanChallenge| { &m.gs_signature }, + |m: &mut LoginCryptoDiffieHellmanChallenge| { &mut m.gs_signature }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCryptoDiffieHellmanChallenge", @@ -2845,6 +2602,16 @@ impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanChallenge { }) } } + + fn default_instance() -> &'static LoginCryptoDiffieHellmanChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCryptoDiffieHellmanChallenge, + }; + unsafe { + instance.get(LoginCryptoDiffieHellmanChallenge::new) + } + } } impl ::protobuf::Clear for LoginCryptoDiffieHellmanChallenge { @@ -2878,24 +2645,11 @@ pub struct FingerprintChallengeUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FingerprintChallengeUnion {} - impl FingerprintChallengeUnion { pub fn new() -> FingerprintChallengeUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static FingerprintChallengeUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FingerprintChallengeUnion, - }; - unsafe { - instance.get(FingerprintChallengeUnion::new) - } - } - // optional .FingerprintGrainChallenge grain = 10; pub fn clear_grain(&mut self) { @@ -2916,7 +2670,7 @@ impl FingerprintChallengeUnion { pub fn mut_grain(&mut self) -> &mut FingerprintGrainChallenge { if self.grain.is_none() { self.grain.set_default(); - }; + } self.grain.as_mut().unwrap() } @@ -2929,14 +2683,6 @@ impl FingerprintChallengeUnion { self.grain.as_ref().unwrap_or_else(|| FingerprintGrainChallenge::default_instance()) } - fn get_grain_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.grain - } - - fn mut_grain_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.grain - } - // optional .FingerprintHmacRipemdChallenge hmac_ripemd = 20; pub fn clear_hmac_ripemd(&mut self) { @@ -2957,7 +2703,7 @@ impl FingerprintChallengeUnion { pub fn mut_hmac_ripemd(&mut self) -> &mut FingerprintHmacRipemdChallenge { if self.hmac_ripemd.is_none() { self.hmac_ripemd.set_default(); - }; + } self.hmac_ripemd.as_mut().unwrap() } @@ -2969,18 +2715,20 @@ impl FingerprintChallengeUnion { pub fn get_hmac_ripemd(&self) -> &FingerprintHmacRipemdChallenge { self.hmac_ripemd.as_ref().unwrap_or_else(|| FingerprintHmacRipemdChallenge::default_instance()) } - - fn get_hmac_ripemd_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.hmac_ripemd - } - - fn mut_hmac_ripemd_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.hmac_ripemd - } } impl ::protobuf::Message for FingerprintChallengeUnion { fn is_initialized(&self) -> bool { + for v in &self.grain { + if !v.is_initialized() { + return false; + } + }; + for v in &self.hmac_ripemd { + if !v.is_initialized() { + return false; + } + }; true } @@ -3006,30 +2754,30 @@ impl ::protobuf::Message for FingerprintChallengeUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.grain.as_ref() { + if let Some(ref v) = self.grain.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.hmac_ripemd.as_ref() { + } + if let Some(ref v) = self.hmac_ripemd.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.grain.as_ref() { + if let Some(ref v) = self.grain.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.hmac_ripemd.as_ref() { + } + if let Some(ref v) = self.hmac_ripemd.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3057,16 +2805,14 @@ impl ::protobuf::Message for FingerprintChallengeUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FingerprintChallengeUnion { fn new() -> FingerprintChallengeUnion { FingerprintChallengeUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3076,13 +2822,13 @@ impl ::protobuf::MessageStatic for FingerprintChallengeUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "grain", - FingerprintChallengeUnion::get_grain_for_reflect, - FingerprintChallengeUnion::mut_grain_for_reflect, + |m: &FingerprintChallengeUnion| { &m.grain }, + |m: &mut FingerprintChallengeUnion| { &mut m.grain }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "hmac_ripemd", - FingerprintChallengeUnion::get_hmac_ripemd_for_reflect, - FingerprintChallengeUnion::mut_hmac_ripemd_for_reflect, + |m: &FingerprintChallengeUnion| { &m.hmac_ripemd }, + |m: &mut FingerprintChallengeUnion| { &mut m.hmac_ripemd }, )); ::protobuf::reflect::MessageDescriptor::new::( "FingerprintChallengeUnion", @@ -3092,6 +2838,16 @@ impl ::protobuf::MessageStatic for FingerprintChallengeUnion { }) } } + + fn default_instance() -> &'static FingerprintChallengeUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FingerprintChallengeUnion, + }; + unsafe { + instance.get(FingerprintChallengeUnion::new) + } + } } impl ::protobuf::Clear for FingerprintChallengeUnion { @@ -3123,24 +2879,11 @@ pub struct FingerprintGrainChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FingerprintGrainChallenge {} - impl FingerprintGrainChallenge { pub fn new() -> FingerprintGrainChallenge { ::std::default::Default::default() } - pub fn default_instance() -> &'static FingerprintGrainChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FingerprintGrainChallenge, - }; - unsafe { - instance.get(FingerprintGrainChallenge::new) - } - } - // required bytes kek = 10; pub fn clear_kek(&mut self) { @@ -3161,7 +2904,7 @@ impl FingerprintGrainChallenge { pub fn mut_kek(&mut self) -> &mut ::std::vec::Vec { if self.kek.is_none() { self.kek.set_default(); - }; + } self.kek.as_mut().unwrap() } @@ -3176,21 +2919,13 @@ impl FingerprintGrainChallenge { None => &[], } } - - fn get_kek_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.kek - } - - fn mut_kek_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.kek - } } impl ::protobuf::Message for FingerprintGrainChallenge { fn is_initialized(&self) -> bool { if self.kek.is_none() { return false; - }; + } true } @@ -3213,18 +2948,18 @@ impl ::protobuf::Message for FingerprintGrainChallenge { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.kek.as_ref() { + if let Some(ref v) = self.kek.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.kek.as_ref() { + if let Some(ref v) = self.kek.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3252,16 +2987,14 @@ impl ::protobuf::Message for FingerprintGrainChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FingerprintGrainChallenge { fn new() -> FingerprintGrainChallenge { FingerprintGrainChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3271,8 +3004,8 @@ impl ::protobuf::MessageStatic for FingerprintGrainChallenge { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "kek", - FingerprintGrainChallenge::get_kek_for_reflect, - FingerprintGrainChallenge::mut_kek_for_reflect, + |m: &FingerprintGrainChallenge| { &m.kek }, + |m: &mut FingerprintGrainChallenge| { &mut m.kek }, )); ::protobuf::reflect::MessageDescriptor::new::( "FingerprintGrainChallenge", @@ -3282,6 +3015,16 @@ impl ::protobuf::MessageStatic for FingerprintGrainChallenge { }) } } + + fn default_instance() -> &'static FingerprintGrainChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FingerprintGrainChallenge, + }; + unsafe { + instance.get(FingerprintGrainChallenge::new) + } + } } impl ::protobuf::Clear for FingerprintGrainChallenge { @@ -3312,24 +3055,11 @@ pub struct FingerprintHmacRipemdChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for FingerprintHmacRipemdChallenge {} - impl FingerprintHmacRipemdChallenge { pub fn new() -> FingerprintHmacRipemdChallenge { ::std::default::Default::default() } - pub fn default_instance() -> &'static FingerprintHmacRipemdChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const FingerprintHmacRipemdChallenge, - }; - unsafe { - instance.get(FingerprintHmacRipemdChallenge::new) - } - } - // required bytes challenge = 10; pub fn clear_challenge(&mut self) { @@ -3350,7 +3080,7 @@ impl FingerprintHmacRipemdChallenge { pub fn mut_challenge(&mut self) -> &mut ::std::vec::Vec { if self.challenge.is_none() { self.challenge.set_default(); - }; + } self.challenge.as_mut().unwrap() } @@ -3365,21 +3095,13 @@ impl FingerprintHmacRipemdChallenge { None => &[], } } - - fn get_challenge_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.challenge - } - - fn mut_challenge_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.challenge - } } impl ::protobuf::Message for FingerprintHmacRipemdChallenge { fn is_initialized(&self) -> bool { if self.challenge.is_none() { return false; - }; + } true } @@ -3402,18 +3124,18 @@ impl ::protobuf::Message for FingerprintHmacRipemdChallenge { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.challenge.as_ref() { + if let Some(ref v) = self.challenge.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.challenge.as_ref() { + if let Some(ref v) = self.challenge.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3441,16 +3163,14 @@ impl ::protobuf::Message for FingerprintHmacRipemdChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for FingerprintHmacRipemdChallenge { fn new() -> FingerprintHmacRipemdChallenge { FingerprintHmacRipemdChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3460,8 +3180,8 @@ impl ::protobuf::MessageStatic for FingerprintHmacRipemdChallenge { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "challenge", - FingerprintHmacRipemdChallenge::get_challenge_for_reflect, - FingerprintHmacRipemdChallenge::mut_challenge_for_reflect, + |m: &FingerprintHmacRipemdChallenge| { &m.challenge }, + |m: &mut FingerprintHmacRipemdChallenge| { &mut m.challenge }, )); ::protobuf::reflect::MessageDescriptor::new::( "FingerprintHmacRipemdChallenge", @@ -3471,6 +3191,16 @@ impl ::protobuf::MessageStatic for FingerprintHmacRipemdChallenge { }) } } + + fn default_instance() -> &'static FingerprintHmacRipemdChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const FingerprintHmacRipemdChallenge, + }; + unsafe { + instance.get(FingerprintHmacRipemdChallenge::new) + } + } } impl ::protobuf::Clear for FingerprintHmacRipemdChallenge { @@ -3501,24 +3231,11 @@ pub struct PoWChallengeUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PoWChallengeUnion {} - impl PoWChallengeUnion { pub fn new() -> PoWChallengeUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static PoWChallengeUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PoWChallengeUnion, - }; - unsafe { - instance.get(PoWChallengeUnion::new) - } - } - // optional .PoWHashCashChallenge hash_cash = 10; pub fn clear_hash_cash(&mut self) { @@ -3539,7 +3256,7 @@ impl PoWChallengeUnion { pub fn mut_hash_cash(&mut self) -> &mut PoWHashCashChallenge { if self.hash_cash.is_none() { self.hash_cash.set_default(); - }; + } self.hash_cash.as_mut().unwrap() } @@ -3551,18 +3268,15 @@ impl PoWChallengeUnion { pub fn get_hash_cash(&self) -> &PoWHashCashChallenge { self.hash_cash.as_ref().unwrap_or_else(|| PoWHashCashChallenge::default_instance()) } - - fn get_hash_cash_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.hash_cash - } - - fn mut_hash_cash_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.hash_cash - } } impl ::protobuf::Message for PoWChallengeUnion { fn is_initialized(&self) -> bool { + for v in &self.hash_cash { + if !v.is_initialized() { + return false; + } + }; true } @@ -3585,21 +3299,21 @@ impl ::protobuf::Message for PoWChallengeUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.hash_cash.as_ref() { + if let Some(ref v) = self.hash_cash.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.hash_cash.as_ref() { + if let Some(ref v) = self.hash_cash.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3627,16 +3341,14 @@ impl ::protobuf::Message for PoWChallengeUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PoWChallengeUnion { fn new() -> PoWChallengeUnion { PoWChallengeUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3646,8 +3358,8 @@ impl ::protobuf::MessageStatic for PoWChallengeUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "hash_cash", - PoWChallengeUnion::get_hash_cash_for_reflect, - PoWChallengeUnion::mut_hash_cash_for_reflect, + |m: &PoWChallengeUnion| { &m.hash_cash }, + |m: &mut PoWChallengeUnion| { &mut m.hash_cash }, )); ::protobuf::reflect::MessageDescriptor::new::( "PoWChallengeUnion", @@ -3657,6 +3369,16 @@ impl ::protobuf::MessageStatic for PoWChallengeUnion { }) } } + + fn default_instance() -> &'static PoWChallengeUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PoWChallengeUnion, + }; + unsafe { + instance.get(PoWChallengeUnion::new) + } + } } impl ::protobuf::Clear for PoWChallengeUnion { @@ -3689,24 +3411,11 @@ pub struct PoWHashCashChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PoWHashCashChallenge {} - impl PoWHashCashChallenge { pub fn new() -> PoWHashCashChallenge { ::std::default::Default::default() } - pub fn default_instance() -> &'static PoWHashCashChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PoWHashCashChallenge, - }; - unsafe { - instance.get(PoWHashCashChallenge::new) - } - } - // optional bytes prefix = 10; pub fn clear_prefix(&mut self) { @@ -3727,7 +3436,7 @@ impl PoWHashCashChallenge { pub fn mut_prefix(&mut self) -> &mut ::std::vec::Vec { if self.prefix.is_none() { self.prefix.set_default(); - }; + } self.prefix.as_mut().unwrap() } @@ -3743,14 +3452,6 @@ impl PoWHashCashChallenge { } } - fn get_prefix_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.prefix - } - - fn mut_prefix_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.prefix - } - // optional int32 length = 20; pub fn clear_length(&mut self) { @@ -3770,14 +3471,6 @@ impl PoWHashCashChallenge { self.length.unwrap_or(0) } - fn get_length_for_reflect(&self) -> &::std::option::Option { - &self.length - } - - fn mut_length_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.length - } - // optional int32 target = 30; pub fn clear_target(&mut self) { @@ -3796,14 +3489,6 @@ impl PoWHashCashChallenge { pub fn get_target(&self) -> i32 { self.target.unwrap_or(0) } - - fn get_target_for_reflect(&self) -> &::std::option::Option { - &self.target - } - - fn mut_target_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.target - } } impl ::protobuf::Message for PoWHashCashChallenge { @@ -3821,14 +3506,14 @@ impl ::protobuf::Message for PoWHashCashChallenge { 20 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.length = ::std::option::Option::Some(tmp); }, 30 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.target = ::std::option::Option::Some(tmp); }, @@ -3844,30 +3529,30 @@ impl ::protobuf::Message for PoWHashCashChallenge { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.prefix.as_ref() { + if let Some(ref v) = self.prefix.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } if let Some(v) = self.length { my_size += ::protobuf::rt::value_size(20, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.target { my_size += ::protobuf::rt::value_size(30, v, ::protobuf::wire_format::WireTypeVarint); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.prefix.as_ref() { + if let Some(ref v) = self.prefix.as_ref() { os.write_bytes(10, &v)?; - }; + } if let Some(v) = self.length { os.write_int32(20, v)?; - }; + } if let Some(v) = self.target { os.write_int32(30, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3895,16 +3580,14 @@ impl ::protobuf::Message for PoWHashCashChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PoWHashCashChallenge { fn new() -> PoWHashCashChallenge { PoWHashCashChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3914,18 +3597,18 @@ impl ::protobuf::MessageStatic for PoWHashCashChallenge { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "prefix", - PoWHashCashChallenge::get_prefix_for_reflect, - PoWHashCashChallenge::mut_prefix_for_reflect, + |m: &PoWHashCashChallenge| { &m.prefix }, + |m: &mut PoWHashCashChallenge| { &mut m.prefix }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "length", - PoWHashCashChallenge::get_length_for_reflect, - PoWHashCashChallenge::mut_length_for_reflect, + |m: &PoWHashCashChallenge| { &m.length }, + |m: &mut PoWHashCashChallenge| { &mut m.length }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "target", - PoWHashCashChallenge::get_target_for_reflect, - PoWHashCashChallenge::mut_target_for_reflect, + |m: &PoWHashCashChallenge| { &m.target }, + |m: &mut PoWHashCashChallenge| { &mut m.target }, )); ::protobuf::reflect::MessageDescriptor::new::( "PoWHashCashChallenge", @@ -3935,6 +3618,16 @@ impl ::protobuf::MessageStatic for PoWHashCashChallenge { }) } } + + fn default_instance() -> &'static PoWHashCashChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PoWHashCashChallenge, + }; + unsafe { + instance.get(PoWHashCashChallenge::new) + } + } } impl ::protobuf::Clear for PoWHashCashChallenge { @@ -3968,24 +3661,11 @@ pub struct CryptoChallengeUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for CryptoChallengeUnion {} - impl CryptoChallengeUnion { pub fn new() -> CryptoChallengeUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static CryptoChallengeUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const CryptoChallengeUnion, - }; - unsafe { - instance.get(CryptoChallengeUnion::new) - } - } - // optional .CryptoShannonChallenge shannon = 10; pub fn clear_shannon(&mut self) { @@ -4006,7 +3686,7 @@ impl CryptoChallengeUnion { pub fn mut_shannon(&mut self) -> &mut CryptoShannonChallenge { if self.shannon.is_none() { self.shannon.set_default(); - }; + } self.shannon.as_mut().unwrap() } @@ -4019,14 +3699,6 @@ impl CryptoChallengeUnion { self.shannon.as_ref().unwrap_or_else(|| CryptoShannonChallenge::default_instance()) } - fn get_shannon_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.shannon - } - - fn mut_shannon_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.shannon - } - // optional .CryptoRc4Sha1HmacChallenge rc4_sha1_hmac = 20; pub fn clear_rc4_sha1_hmac(&mut self) { @@ -4047,7 +3719,7 @@ impl CryptoChallengeUnion { pub fn mut_rc4_sha1_hmac(&mut self) -> &mut CryptoRc4Sha1HmacChallenge { if self.rc4_sha1_hmac.is_none() { self.rc4_sha1_hmac.set_default(); - }; + } self.rc4_sha1_hmac.as_mut().unwrap() } @@ -4059,18 +3731,20 @@ impl CryptoChallengeUnion { pub fn get_rc4_sha1_hmac(&self) -> &CryptoRc4Sha1HmacChallenge { self.rc4_sha1_hmac.as_ref().unwrap_or_else(|| CryptoRc4Sha1HmacChallenge::default_instance()) } - - fn get_rc4_sha1_hmac_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.rc4_sha1_hmac - } - - fn mut_rc4_sha1_hmac_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.rc4_sha1_hmac - } } impl ::protobuf::Message for CryptoChallengeUnion { fn is_initialized(&self) -> bool { + for v in &self.shannon { + if !v.is_initialized() { + return false; + } + }; + for v in &self.rc4_sha1_hmac { + if !v.is_initialized() { + return false; + } + }; true } @@ -4096,30 +3770,30 @@ impl ::protobuf::Message for CryptoChallengeUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.shannon.as_ref() { + if let Some(ref v) = self.shannon.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.rc4_sha1_hmac.as_ref() { + } + if let Some(ref v) = self.rc4_sha1_hmac.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.shannon.as_ref() { + if let Some(ref v) = self.shannon.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.rc4_sha1_hmac.as_ref() { + } + if let Some(ref v) = self.rc4_sha1_hmac.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4147,16 +3821,14 @@ impl ::protobuf::Message for CryptoChallengeUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for CryptoChallengeUnion { fn new() -> CryptoChallengeUnion { CryptoChallengeUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4166,13 +3838,13 @@ impl ::protobuf::MessageStatic for CryptoChallengeUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "shannon", - CryptoChallengeUnion::get_shannon_for_reflect, - CryptoChallengeUnion::mut_shannon_for_reflect, + |m: &CryptoChallengeUnion| { &m.shannon }, + |m: &mut CryptoChallengeUnion| { &mut m.shannon }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "rc4_sha1_hmac", - CryptoChallengeUnion::get_rc4_sha1_hmac_for_reflect, - CryptoChallengeUnion::mut_rc4_sha1_hmac_for_reflect, + |m: &CryptoChallengeUnion| { &m.rc4_sha1_hmac }, + |m: &mut CryptoChallengeUnion| { &mut m.rc4_sha1_hmac }, )); ::protobuf::reflect::MessageDescriptor::new::( "CryptoChallengeUnion", @@ -4182,6 +3854,16 @@ impl ::protobuf::MessageStatic for CryptoChallengeUnion { }) } } + + fn default_instance() -> &'static CryptoChallengeUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const CryptoChallengeUnion, + }; + unsafe { + instance.get(CryptoChallengeUnion::new) + } + } } impl ::protobuf::Clear for CryptoChallengeUnion { @@ -4211,23 +3893,10 @@ pub struct CryptoShannonChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for CryptoShannonChallenge {} - impl CryptoShannonChallenge { pub fn new() -> CryptoShannonChallenge { ::std::default::Default::default() } - - pub fn default_instance() -> &'static CryptoShannonChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const CryptoShannonChallenge, - }; - unsafe { - instance.get(CryptoShannonChallenge::new) - } - } } impl ::protobuf::Message for CryptoShannonChallenge { @@ -4284,16 +3953,14 @@ impl ::protobuf::Message for CryptoShannonChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for CryptoShannonChallenge { fn new() -> CryptoShannonChallenge { CryptoShannonChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4309,6 +3976,16 @@ impl ::protobuf::MessageStatic for CryptoShannonChallenge { }) } } + + fn default_instance() -> &'static CryptoShannonChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const CryptoShannonChallenge, + }; + unsafe { + instance.get(CryptoShannonChallenge::new) + } + } } impl ::protobuf::Clear for CryptoShannonChallenge { @@ -4336,23 +4013,10 @@ pub struct CryptoRc4Sha1HmacChallenge { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for CryptoRc4Sha1HmacChallenge {} - impl CryptoRc4Sha1HmacChallenge { pub fn new() -> CryptoRc4Sha1HmacChallenge { ::std::default::Default::default() } - - pub fn default_instance() -> &'static CryptoRc4Sha1HmacChallenge { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const CryptoRc4Sha1HmacChallenge, - }; - unsafe { - instance.get(CryptoRc4Sha1HmacChallenge::new) - } - } } impl ::protobuf::Message for CryptoRc4Sha1HmacChallenge { @@ -4409,16 +4073,14 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacChallenge { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for CryptoRc4Sha1HmacChallenge { fn new() -> CryptoRc4Sha1HmacChallenge { CryptoRc4Sha1HmacChallenge::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4434,6 +4096,16 @@ impl ::protobuf::MessageStatic for CryptoRc4Sha1HmacChallenge { }) } } + + fn default_instance() -> &'static CryptoRc4Sha1HmacChallenge { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const CryptoRc4Sha1HmacChallenge, + }; + unsafe { + instance.get(CryptoRc4Sha1HmacChallenge::new) + } + } } impl ::protobuf::Clear for CryptoRc4Sha1HmacChallenge { @@ -4465,24 +4137,11 @@ pub struct UpgradeRequiredMessage { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for UpgradeRequiredMessage {} - impl UpgradeRequiredMessage { pub fn new() -> UpgradeRequiredMessage { ::std::default::Default::default() } - pub fn default_instance() -> &'static UpgradeRequiredMessage { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const UpgradeRequiredMessage, - }; - unsafe { - instance.get(UpgradeRequiredMessage::new) - } - } - // required bytes upgrade_signed_part = 10; pub fn clear_upgrade_signed_part(&mut self) { @@ -4503,7 +4162,7 @@ impl UpgradeRequiredMessage { pub fn mut_upgrade_signed_part(&mut self) -> &mut ::std::vec::Vec { if self.upgrade_signed_part.is_none() { self.upgrade_signed_part.set_default(); - }; + } self.upgrade_signed_part.as_mut().unwrap() } @@ -4519,14 +4178,6 @@ impl UpgradeRequiredMessage { } } - fn get_upgrade_signed_part_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.upgrade_signed_part - } - - fn mut_upgrade_signed_part_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.upgrade_signed_part - } - // required bytes signature = 20; pub fn clear_signature(&mut self) { @@ -4547,7 +4198,7 @@ impl UpgradeRequiredMessage { pub fn mut_signature(&mut self) -> &mut ::std::vec::Vec { if self.signature.is_none() { self.signature.set_default(); - }; + } self.signature.as_mut().unwrap() } @@ -4563,14 +4214,6 @@ impl UpgradeRequiredMessage { } } - fn get_signature_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.signature - } - - fn mut_signature_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.signature - } - // optional string http_suffix = 30; pub fn clear_http_suffix(&mut self) { @@ -4591,7 +4234,7 @@ impl UpgradeRequiredMessage { pub fn mut_http_suffix(&mut self) -> &mut ::std::string::String { if self.http_suffix.is_none() { self.http_suffix.set_default(); - }; + } self.http_suffix.as_mut().unwrap() } @@ -4606,24 +4249,16 @@ impl UpgradeRequiredMessage { None => "", } } - - fn get_http_suffix_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.http_suffix - } - - fn mut_http_suffix_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.http_suffix - } } impl ::protobuf::Message for UpgradeRequiredMessage { fn is_initialized(&self) -> bool { if self.upgrade_signed_part.is_none() { return false; - }; + } if self.signature.is_none() { return false; - }; + } true } @@ -4652,30 +4287,30 @@ impl ::protobuf::Message for UpgradeRequiredMessage { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.upgrade_signed_part.as_ref() { + if let Some(ref v) = self.upgrade_signed_part.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; - if let Some(v) = self.signature.as_ref() { + } + if let Some(ref v) = self.signature.as_ref() { my_size += ::protobuf::rt::bytes_size(20, &v); - }; - if let Some(v) = self.http_suffix.as_ref() { + } + if let Some(ref v) = self.http_suffix.as_ref() { my_size += ::protobuf::rt::string_size(30, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.upgrade_signed_part.as_ref() { + if let Some(ref v) = self.upgrade_signed_part.as_ref() { os.write_bytes(10, &v)?; - }; - if let Some(v) = self.signature.as_ref() { + } + if let Some(ref v) = self.signature.as_ref() { os.write_bytes(20, &v)?; - }; - if let Some(v) = self.http_suffix.as_ref() { + } + if let Some(ref v) = self.http_suffix.as_ref() { os.write_string(30, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4703,16 +4338,14 @@ impl ::protobuf::Message for UpgradeRequiredMessage { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for UpgradeRequiredMessage { fn new() -> UpgradeRequiredMessage { UpgradeRequiredMessage::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4722,18 +4355,18 @@ impl ::protobuf::MessageStatic for UpgradeRequiredMessage { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "upgrade_signed_part", - UpgradeRequiredMessage::get_upgrade_signed_part_for_reflect, - UpgradeRequiredMessage::mut_upgrade_signed_part_for_reflect, + |m: &UpgradeRequiredMessage| { &m.upgrade_signed_part }, + |m: &mut UpgradeRequiredMessage| { &mut m.upgrade_signed_part }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "signature", - UpgradeRequiredMessage::get_signature_for_reflect, - UpgradeRequiredMessage::mut_signature_for_reflect, + |m: &UpgradeRequiredMessage| { &m.signature }, + |m: &mut UpgradeRequiredMessage| { &mut m.signature }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "http_suffix", - UpgradeRequiredMessage::get_http_suffix_for_reflect, - UpgradeRequiredMessage::mut_http_suffix_for_reflect, + |m: &UpgradeRequiredMessage| { &m.http_suffix }, + |m: &mut UpgradeRequiredMessage| { &mut m.http_suffix }, )); ::protobuf::reflect::MessageDescriptor::new::( "UpgradeRequiredMessage", @@ -4743,6 +4376,16 @@ impl ::protobuf::MessageStatic for UpgradeRequiredMessage { }) } } + + fn default_instance() -> &'static UpgradeRequiredMessage { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const UpgradeRequiredMessage, + }; + unsafe { + instance.get(UpgradeRequiredMessage::new) + } + } } impl ::protobuf::Clear for UpgradeRequiredMessage { @@ -4778,24 +4421,11 @@ pub struct APLoginFailed { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for APLoginFailed {} - impl APLoginFailed { pub fn new() -> APLoginFailed { ::std::default::Default::default() } - pub fn default_instance() -> &'static APLoginFailed { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const APLoginFailed, - }; - unsafe { - instance.get(APLoginFailed::new) - } - } - // required .ErrorCode error_code = 10; pub fn clear_error_code(&mut self) { @@ -4815,14 +4445,6 @@ impl APLoginFailed { self.error_code.unwrap_or(ErrorCode::ProtocolError) } - fn get_error_code_for_reflect(&self) -> &::std::option::Option { - &self.error_code - } - - fn mut_error_code_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.error_code - } - // optional int32 retry_delay = 20; pub fn clear_retry_delay(&mut self) { @@ -4842,14 +4464,6 @@ impl APLoginFailed { self.retry_delay.unwrap_or(0) } - fn get_retry_delay_for_reflect(&self) -> &::std::option::Option { - &self.retry_delay - } - - fn mut_retry_delay_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.retry_delay - } - // optional int32 expiry = 30; pub fn clear_expiry(&mut self) { @@ -4869,14 +4483,6 @@ impl APLoginFailed { self.expiry.unwrap_or(0) } - fn get_expiry_for_reflect(&self) -> &::std::option::Option { - &self.expiry - } - - fn mut_expiry_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.expiry - } - // optional string error_description = 40; pub fn clear_error_description(&mut self) { @@ -4897,7 +4503,7 @@ impl APLoginFailed { pub fn mut_error_description(&mut self) -> &mut ::std::string::String { if self.error_description.is_none() { self.error_description.set_default(); - }; + } self.error_description.as_mut().unwrap() } @@ -4912,21 +4518,13 @@ impl APLoginFailed { None => "", } } - - fn get_error_description_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.error_description - } - - fn mut_error_description_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.error_description - } } impl ::protobuf::Message for APLoginFailed { fn is_initialized(&self) -> bool { if self.error_code.is_none() { return false; - }; + } true } @@ -4935,23 +4533,19 @@ impl ::protobuf::Message for APLoginFailed { let (field_number, wire_type) = is.read_tag_unpack()?; match field_number { 10 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.error_code = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.error_code, 10, &mut self.unknown_fields)? }, 20 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.retry_delay = ::std::option::Option::Some(tmp); }, 30 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.expiry = ::std::option::Option::Some(tmp); }, @@ -4972,16 +4566,16 @@ impl ::protobuf::Message for APLoginFailed { let mut my_size = 0; if let Some(v) = self.error_code { my_size += ::protobuf::rt::enum_size(10, v); - }; + } if let Some(v) = self.retry_delay { my_size += ::protobuf::rt::value_size(20, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.expiry { my_size += ::protobuf::rt::value_size(30, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.error_description.as_ref() { + } + if let Some(ref v) = self.error_description.as_ref() { my_size += ::protobuf::rt::string_size(40, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -4990,16 +4584,16 @@ impl ::protobuf::Message for APLoginFailed { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.error_code { os.write_enum(10, v.value())?; - }; + } if let Some(v) = self.retry_delay { os.write_int32(20, v)?; - }; + } if let Some(v) = self.expiry { os.write_int32(30, v)?; - }; - if let Some(v) = self.error_description.as_ref() { + } + if let Some(ref v) = self.error_description.as_ref() { os.write_string(40, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5027,16 +4621,14 @@ impl ::protobuf::Message for APLoginFailed { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for APLoginFailed { fn new() -> APLoginFailed { APLoginFailed::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5046,23 +4638,23 @@ impl ::protobuf::MessageStatic for APLoginFailed { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "error_code", - APLoginFailed::get_error_code_for_reflect, - APLoginFailed::mut_error_code_for_reflect, + |m: &APLoginFailed| { &m.error_code }, + |m: &mut APLoginFailed| { &mut m.error_code }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "retry_delay", - APLoginFailed::get_retry_delay_for_reflect, - APLoginFailed::mut_retry_delay_for_reflect, + |m: &APLoginFailed| { &m.retry_delay }, + |m: &mut APLoginFailed| { &mut m.retry_delay }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "expiry", - APLoginFailed::get_expiry_for_reflect, - APLoginFailed::mut_expiry_for_reflect, + |m: &APLoginFailed| { &m.expiry }, + |m: &mut APLoginFailed| { &mut m.expiry }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "error_description", - APLoginFailed::get_error_description_for_reflect, - APLoginFailed::mut_error_description_for_reflect, + |m: &APLoginFailed| { &m.error_description }, + |m: &mut APLoginFailed| { &mut m.error_description }, )); ::protobuf::reflect::MessageDescriptor::new::( "APLoginFailed", @@ -5072,6 +4664,16 @@ impl ::protobuf::MessageStatic for APLoginFailed { }) } } + + fn default_instance() -> &'static APLoginFailed { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const APLoginFailed, + }; + unsafe { + instance.get(APLoginFailed::new) + } + } } impl ::protobuf::Clear for APLoginFailed { @@ -5107,24 +4709,11 @@ pub struct ClientResponsePlaintext { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ClientResponsePlaintext {} - impl ClientResponsePlaintext { pub fn new() -> ClientResponsePlaintext { ::std::default::Default::default() } - pub fn default_instance() -> &'static ClientResponsePlaintext { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ClientResponsePlaintext, - }; - unsafe { - instance.get(ClientResponsePlaintext::new) - } - } - // required .LoginCryptoResponseUnion login_crypto_response = 10; pub fn clear_login_crypto_response(&mut self) { @@ -5145,7 +4734,7 @@ impl ClientResponsePlaintext { pub fn mut_login_crypto_response(&mut self) -> &mut LoginCryptoResponseUnion { if self.login_crypto_response.is_none() { self.login_crypto_response.set_default(); - }; + } self.login_crypto_response.as_mut().unwrap() } @@ -5158,14 +4747,6 @@ impl ClientResponsePlaintext { self.login_crypto_response.as_ref().unwrap_or_else(|| LoginCryptoResponseUnion::default_instance()) } - fn get_login_crypto_response_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.login_crypto_response - } - - fn mut_login_crypto_response_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.login_crypto_response - } - // required .PoWResponseUnion pow_response = 20; pub fn clear_pow_response(&mut self) { @@ -5186,7 +4767,7 @@ impl ClientResponsePlaintext { pub fn mut_pow_response(&mut self) -> &mut PoWResponseUnion { if self.pow_response.is_none() { self.pow_response.set_default(); - }; + } self.pow_response.as_mut().unwrap() } @@ -5199,14 +4780,6 @@ impl ClientResponsePlaintext { self.pow_response.as_ref().unwrap_or_else(|| PoWResponseUnion::default_instance()) } - fn get_pow_response_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.pow_response - } - - fn mut_pow_response_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.pow_response - } - // required .CryptoResponseUnion crypto_response = 30; pub fn clear_crypto_response(&mut self) { @@ -5227,7 +4800,7 @@ impl ClientResponsePlaintext { pub fn mut_crypto_response(&mut self) -> &mut CryptoResponseUnion { if self.crypto_response.is_none() { self.crypto_response.set_default(); - }; + } self.crypto_response.as_mut().unwrap() } @@ -5239,26 +4812,33 @@ impl ClientResponsePlaintext { pub fn get_crypto_response(&self) -> &CryptoResponseUnion { self.crypto_response.as_ref().unwrap_or_else(|| CryptoResponseUnion::default_instance()) } - - fn get_crypto_response_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.crypto_response - } - - fn mut_crypto_response_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.crypto_response - } } impl ::protobuf::Message for ClientResponsePlaintext { fn is_initialized(&self) -> bool { if self.login_crypto_response.is_none() { return false; - }; + } if self.pow_response.is_none() { return false; - }; + } if self.crypto_response.is_none() { return false; + } + for v in &self.login_crypto_response { + if !v.is_initialized() { + return false; + } + }; + for v in &self.pow_response { + if !v.is_initialized() { + return false; + } + }; + for v in &self.crypto_response { + if !v.is_initialized() { + return false; + } }; true } @@ -5288,39 +4868,39 @@ impl ::protobuf::Message for ClientResponsePlaintext { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.login_crypto_response.as_ref() { + if let Some(ref v) = self.login_crypto_response.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.pow_response.as_ref() { + } + if let Some(ref v) = self.pow_response.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.crypto_response.as_ref() { + } + if let Some(ref v) = self.crypto_response.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.login_crypto_response.as_ref() { + if let Some(ref v) = self.login_crypto_response.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.pow_response.as_ref() { + } + if let Some(ref v) = self.pow_response.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.crypto_response.as_ref() { + } + if let Some(ref v) = self.crypto_response.as_ref() { os.write_tag(30, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5348,16 +4928,14 @@ impl ::protobuf::Message for ClientResponsePlaintext { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ClientResponsePlaintext { fn new() -> ClientResponsePlaintext { ClientResponsePlaintext::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5367,18 +4945,18 @@ impl ::protobuf::MessageStatic for ClientResponsePlaintext { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "login_crypto_response", - ClientResponsePlaintext::get_login_crypto_response_for_reflect, - ClientResponsePlaintext::mut_login_crypto_response_for_reflect, + |m: &ClientResponsePlaintext| { &m.login_crypto_response }, + |m: &mut ClientResponsePlaintext| { &mut m.login_crypto_response }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "pow_response", - ClientResponsePlaintext::get_pow_response_for_reflect, - ClientResponsePlaintext::mut_pow_response_for_reflect, + |m: &ClientResponsePlaintext| { &m.pow_response }, + |m: &mut ClientResponsePlaintext| { &mut m.pow_response }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "crypto_response", - ClientResponsePlaintext::get_crypto_response_for_reflect, - ClientResponsePlaintext::mut_crypto_response_for_reflect, + |m: &ClientResponsePlaintext| { &m.crypto_response }, + |m: &mut ClientResponsePlaintext| { &mut m.crypto_response }, )); ::protobuf::reflect::MessageDescriptor::new::( "ClientResponsePlaintext", @@ -5388,6 +4966,16 @@ impl ::protobuf::MessageStatic for ClientResponsePlaintext { }) } } + + fn default_instance() -> &'static ClientResponsePlaintext { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ClientResponsePlaintext, + }; + unsafe { + instance.get(ClientResponsePlaintext::new) + } + } } impl ::protobuf::Clear for ClientResponsePlaintext { @@ -5420,24 +5008,11 @@ pub struct LoginCryptoResponseUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCryptoResponseUnion {} - impl LoginCryptoResponseUnion { pub fn new() -> LoginCryptoResponseUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCryptoResponseUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCryptoResponseUnion, - }; - unsafe { - instance.get(LoginCryptoResponseUnion::new) - } - } - // optional .LoginCryptoDiffieHellmanResponse diffie_hellman = 10; pub fn clear_diffie_hellman(&mut self) { @@ -5458,7 +5033,7 @@ impl LoginCryptoResponseUnion { pub fn mut_diffie_hellman(&mut self) -> &mut LoginCryptoDiffieHellmanResponse { if self.diffie_hellman.is_none() { self.diffie_hellman.set_default(); - }; + } self.diffie_hellman.as_mut().unwrap() } @@ -5470,18 +5045,15 @@ impl LoginCryptoResponseUnion { pub fn get_diffie_hellman(&self) -> &LoginCryptoDiffieHellmanResponse { self.diffie_hellman.as_ref().unwrap_or_else(|| LoginCryptoDiffieHellmanResponse::default_instance()) } - - fn get_diffie_hellman_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.diffie_hellman - } - - fn mut_diffie_hellman_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.diffie_hellman - } } impl ::protobuf::Message for LoginCryptoResponseUnion { fn is_initialized(&self) -> bool { + for v in &self.diffie_hellman { + if !v.is_initialized() { + return false; + } + }; true } @@ -5504,21 +5076,21 @@ impl ::protobuf::Message for LoginCryptoResponseUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.diffie_hellman.as_ref() { + if let Some(ref v) = self.diffie_hellman.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.diffie_hellman.as_ref() { + if let Some(ref v) = self.diffie_hellman.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5546,16 +5118,14 @@ impl ::protobuf::Message for LoginCryptoResponseUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCryptoResponseUnion { fn new() -> LoginCryptoResponseUnion { LoginCryptoResponseUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5565,8 +5135,8 @@ impl ::protobuf::MessageStatic for LoginCryptoResponseUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "diffie_hellman", - LoginCryptoResponseUnion::get_diffie_hellman_for_reflect, - LoginCryptoResponseUnion::mut_diffie_hellman_for_reflect, + |m: &LoginCryptoResponseUnion| { &m.diffie_hellman }, + |m: &mut LoginCryptoResponseUnion| { &mut m.diffie_hellman }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCryptoResponseUnion", @@ -5576,6 +5146,16 @@ impl ::protobuf::MessageStatic for LoginCryptoResponseUnion { }) } } + + fn default_instance() -> &'static LoginCryptoResponseUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCryptoResponseUnion, + }; + unsafe { + instance.get(LoginCryptoResponseUnion::new) + } + } } impl ::protobuf::Clear for LoginCryptoResponseUnion { @@ -5606,24 +5186,11 @@ pub struct LoginCryptoDiffieHellmanResponse { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for LoginCryptoDiffieHellmanResponse {} - impl LoginCryptoDiffieHellmanResponse { pub fn new() -> LoginCryptoDiffieHellmanResponse { ::std::default::Default::default() } - pub fn default_instance() -> &'static LoginCryptoDiffieHellmanResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const LoginCryptoDiffieHellmanResponse, - }; - unsafe { - instance.get(LoginCryptoDiffieHellmanResponse::new) - } - } - // required bytes hmac = 10; pub fn clear_hmac(&mut self) { @@ -5644,7 +5211,7 @@ impl LoginCryptoDiffieHellmanResponse { pub fn mut_hmac(&mut self) -> &mut ::std::vec::Vec { if self.hmac.is_none() { self.hmac.set_default(); - }; + } self.hmac.as_mut().unwrap() } @@ -5659,21 +5226,13 @@ impl LoginCryptoDiffieHellmanResponse { None => &[], } } - - fn get_hmac_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.hmac - } - - fn mut_hmac_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.hmac - } } impl ::protobuf::Message for LoginCryptoDiffieHellmanResponse { fn is_initialized(&self) -> bool { if self.hmac.is_none() { return false; - }; + } true } @@ -5696,18 +5255,18 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanResponse { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.hmac.as_ref() { + if let Some(ref v) = self.hmac.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.hmac.as_ref() { + if let Some(ref v) = self.hmac.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5735,16 +5294,14 @@ impl ::protobuf::Message for LoginCryptoDiffieHellmanResponse { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanResponse { fn new() -> LoginCryptoDiffieHellmanResponse { LoginCryptoDiffieHellmanResponse::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5754,8 +5311,8 @@ impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanResponse { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "hmac", - LoginCryptoDiffieHellmanResponse::get_hmac_for_reflect, - LoginCryptoDiffieHellmanResponse::mut_hmac_for_reflect, + |m: &LoginCryptoDiffieHellmanResponse| { &m.hmac }, + |m: &mut LoginCryptoDiffieHellmanResponse| { &mut m.hmac }, )); ::protobuf::reflect::MessageDescriptor::new::( "LoginCryptoDiffieHellmanResponse", @@ -5765,6 +5322,16 @@ impl ::protobuf::MessageStatic for LoginCryptoDiffieHellmanResponse { }) } } + + fn default_instance() -> &'static LoginCryptoDiffieHellmanResponse { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const LoginCryptoDiffieHellmanResponse, + }; + unsafe { + instance.get(LoginCryptoDiffieHellmanResponse::new) + } + } } impl ::protobuf::Clear for LoginCryptoDiffieHellmanResponse { @@ -5795,24 +5362,11 @@ pub struct PoWResponseUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PoWResponseUnion {} - impl PoWResponseUnion { pub fn new() -> PoWResponseUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static PoWResponseUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PoWResponseUnion, - }; - unsafe { - instance.get(PoWResponseUnion::new) - } - } - // optional .PoWHashCashResponse hash_cash = 10; pub fn clear_hash_cash(&mut self) { @@ -5833,7 +5387,7 @@ impl PoWResponseUnion { pub fn mut_hash_cash(&mut self) -> &mut PoWHashCashResponse { if self.hash_cash.is_none() { self.hash_cash.set_default(); - }; + } self.hash_cash.as_mut().unwrap() } @@ -5845,18 +5399,15 @@ impl PoWResponseUnion { pub fn get_hash_cash(&self) -> &PoWHashCashResponse { self.hash_cash.as_ref().unwrap_or_else(|| PoWHashCashResponse::default_instance()) } - - fn get_hash_cash_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.hash_cash - } - - fn mut_hash_cash_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.hash_cash - } } impl ::protobuf::Message for PoWResponseUnion { fn is_initialized(&self) -> bool { + for v in &self.hash_cash { + if !v.is_initialized() { + return false; + } + }; true } @@ -5879,21 +5430,21 @@ impl ::protobuf::Message for PoWResponseUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.hash_cash.as_ref() { + if let Some(ref v) = self.hash_cash.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.hash_cash.as_ref() { + if let Some(ref v) = self.hash_cash.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5921,16 +5472,14 @@ impl ::protobuf::Message for PoWResponseUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PoWResponseUnion { fn new() -> PoWResponseUnion { PoWResponseUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5940,8 +5489,8 @@ impl ::protobuf::MessageStatic for PoWResponseUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "hash_cash", - PoWResponseUnion::get_hash_cash_for_reflect, - PoWResponseUnion::mut_hash_cash_for_reflect, + |m: &PoWResponseUnion| { &m.hash_cash }, + |m: &mut PoWResponseUnion| { &mut m.hash_cash }, )); ::protobuf::reflect::MessageDescriptor::new::( "PoWResponseUnion", @@ -5951,6 +5500,16 @@ impl ::protobuf::MessageStatic for PoWResponseUnion { }) } } + + fn default_instance() -> &'static PoWResponseUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PoWResponseUnion, + }; + unsafe { + instance.get(PoWResponseUnion::new) + } + } } impl ::protobuf::Clear for PoWResponseUnion { @@ -5981,24 +5540,11 @@ pub struct PoWHashCashResponse { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for PoWHashCashResponse {} - impl PoWHashCashResponse { pub fn new() -> PoWHashCashResponse { ::std::default::Default::default() } - pub fn default_instance() -> &'static PoWHashCashResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const PoWHashCashResponse, - }; - unsafe { - instance.get(PoWHashCashResponse::new) - } - } - // required bytes hash_suffix = 10; pub fn clear_hash_suffix(&mut self) { @@ -6019,7 +5565,7 @@ impl PoWHashCashResponse { pub fn mut_hash_suffix(&mut self) -> &mut ::std::vec::Vec { if self.hash_suffix.is_none() { self.hash_suffix.set_default(); - }; + } self.hash_suffix.as_mut().unwrap() } @@ -6034,21 +5580,13 @@ impl PoWHashCashResponse { None => &[], } } - - fn get_hash_suffix_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.hash_suffix - } - - fn mut_hash_suffix_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.hash_suffix - } } impl ::protobuf::Message for PoWHashCashResponse { fn is_initialized(&self) -> bool { if self.hash_suffix.is_none() { return false; - }; + } true } @@ -6071,18 +5609,18 @@ impl ::protobuf::Message for PoWHashCashResponse { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.hash_suffix.as_ref() { + if let Some(ref v) = self.hash_suffix.as_ref() { my_size += ::protobuf::rt::bytes_size(10, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.hash_suffix.as_ref() { + if let Some(ref v) = self.hash_suffix.as_ref() { os.write_bytes(10, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6110,16 +5648,14 @@ impl ::protobuf::Message for PoWHashCashResponse { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for PoWHashCashResponse { fn new() -> PoWHashCashResponse { PoWHashCashResponse::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6129,8 +5665,8 @@ impl ::protobuf::MessageStatic for PoWHashCashResponse { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "hash_suffix", - PoWHashCashResponse::get_hash_suffix_for_reflect, - PoWHashCashResponse::mut_hash_suffix_for_reflect, + |m: &PoWHashCashResponse| { &m.hash_suffix }, + |m: &mut PoWHashCashResponse| { &mut m.hash_suffix }, )); ::protobuf::reflect::MessageDescriptor::new::( "PoWHashCashResponse", @@ -6140,6 +5676,16 @@ impl ::protobuf::MessageStatic for PoWHashCashResponse { }) } } + + fn default_instance() -> &'static PoWHashCashResponse { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const PoWHashCashResponse, + }; + unsafe { + instance.get(PoWHashCashResponse::new) + } + } } impl ::protobuf::Clear for PoWHashCashResponse { @@ -6171,24 +5717,11 @@ pub struct CryptoResponseUnion { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for CryptoResponseUnion {} - impl CryptoResponseUnion { pub fn new() -> CryptoResponseUnion { ::std::default::Default::default() } - pub fn default_instance() -> &'static CryptoResponseUnion { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const CryptoResponseUnion, - }; - unsafe { - instance.get(CryptoResponseUnion::new) - } - } - // optional .CryptoShannonResponse shannon = 10; pub fn clear_shannon(&mut self) { @@ -6209,7 +5742,7 @@ impl CryptoResponseUnion { pub fn mut_shannon(&mut self) -> &mut CryptoShannonResponse { if self.shannon.is_none() { self.shannon.set_default(); - }; + } self.shannon.as_mut().unwrap() } @@ -6222,14 +5755,6 @@ impl CryptoResponseUnion { self.shannon.as_ref().unwrap_or_else(|| CryptoShannonResponse::default_instance()) } - fn get_shannon_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.shannon - } - - fn mut_shannon_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.shannon - } - // optional .CryptoRc4Sha1HmacResponse rc4_sha1_hmac = 20; pub fn clear_rc4_sha1_hmac(&mut self) { @@ -6250,7 +5775,7 @@ impl CryptoResponseUnion { pub fn mut_rc4_sha1_hmac(&mut self) -> &mut CryptoRc4Sha1HmacResponse { if self.rc4_sha1_hmac.is_none() { self.rc4_sha1_hmac.set_default(); - }; + } self.rc4_sha1_hmac.as_mut().unwrap() } @@ -6262,18 +5787,20 @@ impl CryptoResponseUnion { pub fn get_rc4_sha1_hmac(&self) -> &CryptoRc4Sha1HmacResponse { self.rc4_sha1_hmac.as_ref().unwrap_or_else(|| CryptoRc4Sha1HmacResponse::default_instance()) } - - fn get_rc4_sha1_hmac_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.rc4_sha1_hmac - } - - fn mut_rc4_sha1_hmac_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.rc4_sha1_hmac - } } impl ::protobuf::Message for CryptoResponseUnion { fn is_initialized(&self) -> bool { + for v in &self.shannon { + if !v.is_initialized() { + return false; + } + }; + for v in &self.rc4_sha1_hmac { + if !v.is_initialized() { + return false; + } + }; true } @@ -6299,30 +5826,30 @@ impl ::protobuf::Message for CryptoResponseUnion { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.shannon.as_ref() { + if let Some(ref v) = self.shannon.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.rc4_sha1_hmac.as_ref() { + } + if let Some(ref v) = self.rc4_sha1_hmac.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.shannon.as_ref() { + if let Some(ref v) = self.shannon.as_ref() { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.rc4_sha1_hmac.as_ref() { + } + if let Some(ref v) = self.rc4_sha1_hmac.as_ref() { os.write_tag(20, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6350,16 +5877,14 @@ impl ::protobuf::Message for CryptoResponseUnion { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for CryptoResponseUnion { fn new() -> CryptoResponseUnion { CryptoResponseUnion::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6369,13 +5894,13 @@ impl ::protobuf::MessageStatic for CryptoResponseUnion { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "shannon", - CryptoResponseUnion::get_shannon_for_reflect, - CryptoResponseUnion::mut_shannon_for_reflect, + |m: &CryptoResponseUnion| { &m.shannon }, + |m: &mut CryptoResponseUnion| { &mut m.shannon }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "rc4_sha1_hmac", - CryptoResponseUnion::get_rc4_sha1_hmac_for_reflect, - CryptoResponseUnion::mut_rc4_sha1_hmac_for_reflect, + |m: &CryptoResponseUnion| { &m.rc4_sha1_hmac }, + |m: &mut CryptoResponseUnion| { &mut m.rc4_sha1_hmac }, )); ::protobuf::reflect::MessageDescriptor::new::( "CryptoResponseUnion", @@ -6385,6 +5910,16 @@ impl ::protobuf::MessageStatic for CryptoResponseUnion { }) } } + + fn default_instance() -> &'static CryptoResponseUnion { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const CryptoResponseUnion, + }; + unsafe { + instance.get(CryptoResponseUnion::new) + } + } } impl ::protobuf::Clear for CryptoResponseUnion { @@ -6416,24 +5951,11 @@ pub struct CryptoShannonResponse { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for CryptoShannonResponse {} - impl CryptoShannonResponse { pub fn new() -> CryptoShannonResponse { ::std::default::Default::default() } - pub fn default_instance() -> &'static CryptoShannonResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const CryptoShannonResponse, - }; - unsafe { - instance.get(CryptoShannonResponse::new) - } - } - // optional int32 dummy = 1; pub fn clear_dummy(&mut self) { @@ -6452,14 +5974,6 @@ impl CryptoShannonResponse { pub fn get_dummy(&self) -> i32 { self.dummy.unwrap_or(0) } - - fn get_dummy_for_reflect(&self) -> &::std::option::Option { - &self.dummy - } - - fn mut_dummy_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.dummy - } } impl ::protobuf::Message for CryptoShannonResponse { @@ -6474,7 +5988,7 @@ impl ::protobuf::Message for CryptoShannonResponse { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.dummy = ::std::option::Option::Some(tmp); }, @@ -6492,7 +6006,7 @@ impl ::protobuf::Message for CryptoShannonResponse { let mut my_size = 0; if let Some(v) = self.dummy { my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -6501,7 +6015,7 @@ impl ::protobuf::Message for CryptoShannonResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.dummy { os.write_int32(1, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6529,16 +6043,14 @@ impl ::protobuf::Message for CryptoShannonResponse { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for CryptoShannonResponse { fn new() -> CryptoShannonResponse { CryptoShannonResponse::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6548,8 +6060,8 @@ impl ::protobuf::MessageStatic for CryptoShannonResponse { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "dummy", - CryptoShannonResponse::get_dummy_for_reflect, - CryptoShannonResponse::mut_dummy_for_reflect, + |m: &CryptoShannonResponse| { &m.dummy }, + |m: &mut CryptoShannonResponse| { &mut m.dummy }, )); ::protobuf::reflect::MessageDescriptor::new::( "CryptoShannonResponse", @@ -6559,6 +6071,16 @@ impl ::protobuf::MessageStatic for CryptoShannonResponse { }) } } + + fn default_instance() -> &'static CryptoShannonResponse { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const CryptoShannonResponse, + }; + unsafe { + instance.get(CryptoShannonResponse::new) + } + } } impl ::protobuf::Clear for CryptoShannonResponse { @@ -6589,24 +6111,11 @@ pub struct CryptoRc4Sha1HmacResponse { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for CryptoRc4Sha1HmacResponse {} - impl CryptoRc4Sha1HmacResponse { pub fn new() -> CryptoRc4Sha1HmacResponse { ::std::default::Default::default() } - pub fn default_instance() -> &'static CryptoRc4Sha1HmacResponse { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const CryptoRc4Sha1HmacResponse, - }; - unsafe { - instance.get(CryptoRc4Sha1HmacResponse::new) - } - } - // optional int32 dummy = 1; pub fn clear_dummy(&mut self) { @@ -6625,14 +6134,6 @@ impl CryptoRc4Sha1HmacResponse { pub fn get_dummy(&self) -> i32 { self.dummy.unwrap_or(0) } - - fn get_dummy_for_reflect(&self) -> &::std::option::Option { - &self.dummy - } - - fn mut_dummy_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.dummy - } } impl ::protobuf::Message for CryptoRc4Sha1HmacResponse { @@ -6647,7 +6148,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacResponse { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.dummy = ::std::option::Option::Some(tmp); }, @@ -6665,7 +6166,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacResponse { let mut my_size = 0; if let Some(v) = self.dummy { my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -6674,7 +6175,7 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacResponse { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.dummy { os.write_int32(1, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6702,16 +6203,14 @@ impl ::protobuf::Message for CryptoRc4Sha1HmacResponse { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for CryptoRc4Sha1HmacResponse { fn new() -> CryptoRc4Sha1HmacResponse { CryptoRc4Sha1HmacResponse::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6721,8 +6220,8 @@ impl ::protobuf::MessageStatic for CryptoRc4Sha1HmacResponse { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "dummy", - CryptoRc4Sha1HmacResponse::get_dummy_for_reflect, - CryptoRc4Sha1HmacResponse::mut_dummy_for_reflect, + |m: &CryptoRc4Sha1HmacResponse| { &m.dummy }, + |m: &mut CryptoRc4Sha1HmacResponse| { &mut m.dummy }, )); ::protobuf::reflect::MessageDescriptor::new::( "CryptoRc4Sha1HmacResponse", @@ -6732,6 +6231,16 @@ impl ::protobuf::MessageStatic for CryptoRc4Sha1HmacResponse { }) } } + + fn default_instance() -> &'static CryptoRc4Sha1HmacResponse { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const CryptoRc4Sha1HmacResponse, + }; + unsafe { + instance.get(CryptoRc4Sha1HmacResponse::new) + } + } } impl ::protobuf::Clear for CryptoRc4Sha1HmacResponse { @@ -6789,7 +6298,7 @@ impl ::protobuf::ProtobufEnum for Product { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -6838,7 +6347,7 @@ impl ::protobuf::ProtobufEnum for ProductFlags { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -6953,7 +6462,7 @@ impl ::protobuf::ProtobufEnum for Platform { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -7002,7 +6511,7 @@ impl ::protobuf::ProtobufEnum for Fingerprint { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -7051,7 +6560,7 @@ impl ::protobuf::ProtobufEnum for Cryptosuite { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -7097,7 +6606,7 @@ impl ::protobuf::ProtobufEnum for Powscheme { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -7173,7 +6682,7 @@ impl ::protobuf::ProtobufEnum for ErrorCode { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -7195,731 +6704,107 @@ impl ::protobuf::reflect::ProtobufValue for ErrorCode { } } -static file_descriptor_proto_data: &'static [u8] = &[ - 0x0a, 0x11, 0x6b, 0x65, 0x79, 0x65, 0x78, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x22, 0xb2, 0x03, 0x0a, 0x0b, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x48, 0x65, - 0x6c, 0x6c, 0x6f, 0x12, 0x29, 0x0a, 0x0a, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x69, 0x6e, 0x66, - 0x6f, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x64, 0x49, - 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x43, - 0x0a, 0x16, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x73, 0x5f, 0x73, - 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x14, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0c, - 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x52, 0x15, 0x66, 0x69, - 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x73, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, - 0x74, 0x65, 0x64, 0x12, 0x43, 0x0a, 0x16, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x73, 0x75, 0x69, - 0x74, 0x65, 0x73, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x18, 0x1e, 0x20, - 0x03, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x73, 0x75, 0x69, 0x74, - 0x65, 0x52, 0x15, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x73, 0x53, - 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x3d, 0x0a, 0x14, 0x70, 0x6f, 0x77, 0x73, - 0x63, 0x68, 0x65, 0x6d, 0x65, 0x73, 0x5f, 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, - 0x18, 0x28, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x50, 0x6f, 0x77, 0x73, 0x63, 0x68, 0x65, - 0x6d, 0x65, 0x52, 0x13, 0x70, 0x6f, 0x77, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x73, 0x53, 0x75, - 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x12, 0x44, 0x0a, 0x12, 0x6c, 0x6f, 0x67, 0x69, 0x6e, - 0x5f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x68, 0x65, 0x6c, 0x6c, 0x6f, 0x18, 0x32, 0x20, - 0x02, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, - 0x6f, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x10, 0x6c, 0x6f, 0x67, - 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x12, 0x21, 0x0a, - 0x0c, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x3c, 0x20, - 0x02, 0x28, 0x0c, 0x52, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x6e, 0x63, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x46, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x07, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2c, 0x0a, 0x0b, 0x66, 0x65, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x18, 0x50, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0b, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x65, 0x74, 0x52, 0x0a, 0x66, 0x65, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x65, 0x74, 0x22, 0xa4, 0x01, 0x0a, 0x09, 0x42, 0x75, 0x69, - 0x6c, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, - 0x74, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x08, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, - 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x32, 0x0a, 0x0d, 0x70, 0x72, - 0x6f, 0x64, 0x75, 0x63, 0x74, 0x5f, 0x66, 0x6c, 0x61, 0x67, 0x73, 0x18, 0x14, 0x20, 0x03, 0x28, - 0x0e, 0x32, 0x0d, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, - 0x52, 0x0c, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x46, 0x6c, 0x61, 0x67, 0x73, 0x12, 0x25, - 0x0a, 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x1e, 0x20, 0x02, 0x28, 0x0e, - 0x32, 0x09, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x52, 0x08, 0x70, 0x6c, 0x61, - 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, - 0x18, 0x28, 0x20, 0x02, 0x28, 0x04, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, - 0x5e, 0x0a, 0x15, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x48, 0x65, - 0x6c, 0x6c, 0x6f, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x0a, 0x0e, 0x64, 0x69, 0x66, 0x66, - 0x69, 0x65, 0x5f, 0x68, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x44, 0x69, - 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, - 0x52, 0x0d, 0x64, 0x69, 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x22, - 0x5b, 0x0a, 0x1d, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x44, 0x69, - 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x48, 0x65, 0x6c, 0x6c, 0x6f, - 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x63, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x02, 0x67, 0x63, - 0x12, 0x2a, 0x0a, 0x11, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x73, 0x5f, - 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x18, 0x14, 0x20, 0x02, 0x28, 0x0d, 0x52, 0x0f, 0x73, 0x65, 0x72, - 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x73, 0x4b, 0x6e, 0x6f, 0x77, 0x6e, 0x22, 0x59, 0x0a, 0x0a, - 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x53, 0x65, 0x74, 0x12, 0x20, 0x0a, 0x0b, 0x61, 0x75, - 0x74, 0x6f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x32, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, - 0x0b, 0x61, 0x75, 0x74, 0x6f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x32, 0x12, 0x29, 0x0a, 0x10, - 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x4c, - 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa5, 0x01, 0x0a, 0x11, 0x41, 0x50, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2a, 0x0a, - 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0c, 0x2e, 0x41, 0x50, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x09, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x31, 0x0a, 0x07, 0x75, 0x70, 0x67, - 0x72, 0x61, 0x64, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x55, 0x70, 0x67, - 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x52, 0x07, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x12, 0x31, 0x0a, 0x0c, - 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x66, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x18, 0x1e, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x41, 0x50, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x61, 0x69, 0x6c, - 0x65, 0x64, 0x52, 0x0b, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x22, - 0xe8, 0x02, 0x0a, 0x0b, 0x41, 0x50, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, - 0x50, 0x0a, 0x16, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x63, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, - 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0b, 0x32, - 0x1a, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x6c, 0x6f, 0x67, - 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, - 0x65, 0x12, 0x4f, 0x0a, 0x15, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, - 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x14, 0x20, 0x02, 0x28, 0x0b, - 0x32, 0x1a, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x14, 0x66, 0x69, - 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x12, 0x37, 0x0a, 0x0d, 0x70, 0x6f, 0x77, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x18, 0x1e, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x50, 0x6f, 0x57, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x70, - 0x6f, 0x77, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x40, 0x0a, 0x10, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, - 0x28, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x63, 0x72, - 0x79, 0x70, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x21, 0x0a, - 0x0c, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6e, 0x6f, 0x6e, 0x63, 0x65, 0x18, 0x32, 0x20, - 0x02, 0x28, 0x0c, 0x52, 0x0b, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4e, 0x6f, 0x6e, 0x63, 0x65, - 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x3c, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x07, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x22, 0x66, 0x0a, 0x19, 0x4c, 0x6f, - 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, - 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x0e, 0x64, 0x69, 0x66, 0x66, 0x69, - 0x65, 0x5f, 0x68, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x22, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x44, 0x69, 0x66, - 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x52, 0x0d, 0x64, 0x69, 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, - 0x61, 0x6e, 0x22, 0x88, 0x01, 0x0a, 0x21, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, - 0x74, 0x6f, 0x44, 0x69, 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x43, - 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x67, 0x73, 0x18, 0x0a, - 0x20, 0x02, 0x28, 0x0c, 0x52, 0x02, 0x67, 0x73, 0x12, 0x30, 0x0a, 0x14, 0x73, 0x65, 0x72, 0x76, - 0x65, 0x72, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x6b, 0x65, 0x79, - 0x18, 0x14, 0x20, 0x02, 0x28, 0x05, 0x52, 0x12, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x53, 0x69, - 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x21, 0x0a, 0x0c, 0x67, 0x73, - 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x1e, 0x20, 0x02, 0x28, 0x0c, - 0x52, 0x0b, 0x67, 0x73, 0x53, 0x69, 0x67, 0x6e, 0x61, 0x74, 0x75, 0x72, 0x65, 0x22, 0x8f, 0x01, - 0x0a, 0x19, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x05, 0x67, - 0x72, 0x61, 0x69, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x46, 0x69, 0x6e, - 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x47, 0x72, 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, - 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x05, 0x67, 0x72, 0x61, 0x69, 0x6e, 0x12, 0x40, 0x0a, - 0x0b, 0x68, 0x6d, 0x61, 0x63, 0x5f, 0x72, 0x69, 0x70, 0x65, 0x6d, 0x64, 0x18, 0x14, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, - 0x48, 0x6d, 0x61, 0x63, 0x52, 0x69, 0x70, 0x65, 0x6d, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, - 0x6e, 0x67, 0x65, 0x52, 0x0a, 0x68, 0x6d, 0x61, 0x63, 0x52, 0x69, 0x70, 0x65, 0x6d, 0x64, 0x22, - 0x2d, 0x0a, 0x19, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x47, 0x72, - 0x61, 0x69, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, 0x10, 0x0a, 0x03, - 0x6b, 0x65, 0x6b, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x03, 0x6b, 0x65, 0x6b, 0x22, 0x3e, - 0x0a, 0x1e, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x48, 0x6d, 0x61, - 0x63, 0x52, 0x69, 0x70, 0x65, 0x6d, 0x64, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, - 0x12, 0x1c, 0x0a, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x18, 0x0a, 0x20, - 0x02, 0x28, 0x0c, 0x52, 0x09, 0x63, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x22, 0x47, - 0x0a, 0x11, 0x50, 0x6f, 0x57, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, - 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x0a, 0x09, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x63, 0x61, 0x73, 0x68, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x50, 0x6f, 0x57, 0x48, 0x61, 0x73, 0x68, - 0x43, 0x61, 0x73, 0x68, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x08, 0x68, - 0x61, 0x73, 0x68, 0x43, 0x61, 0x73, 0x68, 0x22, 0x5e, 0x0a, 0x14, 0x50, 0x6f, 0x57, 0x48, 0x61, - 0x73, 0x68, 0x43, 0x61, 0x73, 0x68, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0c, 0x52, - 0x06, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, - 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x22, 0x8a, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x79, 0x70, - 0x74, 0x6f, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, - 0x12, 0x31, 0x0a, 0x07, 0x73, 0x68, 0x61, 0x6e, 0x6e, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x17, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x53, 0x68, 0x61, 0x6e, 0x6e, 0x6f, - 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x07, 0x73, 0x68, 0x61, 0x6e, - 0x6e, 0x6f, 0x6e, 0x12, 0x3f, 0x0a, 0x0d, 0x72, 0x63, 0x34, 0x5f, 0x73, 0x68, 0x61, 0x31, 0x5f, - 0x68, 0x6d, 0x61, 0x63, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x43, 0x72, 0x79, - 0x70, 0x74, 0x6f, 0x52, 0x63, 0x34, 0x53, 0x68, 0x61, 0x31, 0x48, 0x6d, 0x61, 0x63, 0x43, 0x68, - 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x52, 0x0b, 0x72, 0x63, 0x34, 0x53, 0x68, 0x61, 0x31, - 0x48, 0x6d, 0x61, 0x63, 0x22, 0x18, 0x0a, 0x16, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x53, 0x68, - 0x61, 0x6e, 0x6e, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x22, 0x1c, - 0x0a, 0x1a, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x52, 0x63, 0x34, 0x53, 0x68, 0x61, 0x31, 0x48, - 0x6d, 0x61, 0x63, 0x43, 0x68, 0x61, 0x6c, 0x6c, 0x65, 0x6e, 0x67, 0x65, 0x22, 0x87, 0x01, 0x0a, - 0x16, 0x55, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2e, 0x0a, 0x13, 0x75, 0x70, 0x67, 0x72, 0x61, - 0x64, 0x65, 0x5f, 0x73, 0x69, 0x67, 0x6e, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x18, 0x0a, - 0x20, 0x02, 0x28, 0x0c, 0x52, 0x11, 0x75, 0x70, 0x67, 0x72, 0x61, 0x64, 0x65, 0x53, 0x69, 0x67, - 0x6e, 0x65, 0x64, 0x50, 0x61, 0x72, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x74, 0x75, 0x72, 0x65, 0x18, 0x14, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x09, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x74, 0x74, 0x70, 0x5f, 0x73, 0x75, - 0x66, 0x66, 0x69, 0x78, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x68, 0x74, 0x74, 0x70, - 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x22, 0xa0, 0x01, 0x0a, 0x0d, 0x41, 0x50, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x46, 0x61, 0x69, 0x6c, 0x65, 0x64, 0x12, 0x29, 0x0a, 0x0a, 0x65, 0x72, 0x72, 0x6f, - 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0e, 0x32, 0x0a, 0x2e, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, - 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x74, 0x72, 0x79, 0x5f, 0x64, 0x65, 0x6c, - 0x61, 0x79, 0x18, 0x14, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x72, 0x65, 0x74, 0x72, 0x79, 0x44, - 0x65, 0x6c, 0x61, 0x79, 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x1e, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x2b, 0x0a, 0x11, - 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x18, 0x28, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x44, 0x65, - 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xdd, 0x01, 0x0a, 0x17, 0x43, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x6c, 0x61, 0x69, - 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x4d, 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x5f, 0x63, - 0x72, 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x0a, - 0x20, 0x02, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, - 0x74, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, - 0x13, 0x6c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x34, 0x0a, 0x0c, 0x70, 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x14, 0x20, 0x02, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x50, 0x6f, 0x57, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x70, - 0x6f, 0x77, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3d, 0x0a, 0x0f, 0x63, 0x72, - 0x79, 0x70, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x1e, 0x20, - 0x02, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x63, 0x72, 0x79, 0x70, 0x74, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x64, 0x0a, 0x18, 0x4c, 0x6f, 0x67, - 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x48, 0x0a, 0x0e, 0x64, 0x69, 0x66, 0x66, 0x69, 0x65, 0x5f, - 0x68, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x21, 0x2e, - 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x44, 0x69, 0x66, 0x66, 0x69, - 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x52, 0x0d, 0x64, 0x69, 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x22, - 0x36, 0x0a, 0x20, 0x4c, 0x6f, 0x67, 0x69, 0x6e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x44, 0x69, - 0x66, 0x66, 0x69, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6d, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6d, 0x61, 0x63, 0x18, 0x0a, 0x20, 0x02, 0x28, - 0x0c, 0x52, 0x04, 0x68, 0x6d, 0x61, 0x63, 0x22, 0x45, 0x0a, 0x10, 0x50, 0x6f, 0x57, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x31, 0x0a, 0x09, 0x68, - 0x61, 0x73, 0x68, 0x5f, 0x63, 0x61, 0x73, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, - 0x2e, 0x50, 0x6f, 0x57, 0x48, 0x61, 0x73, 0x68, 0x43, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x08, 0x68, 0x61, 0x73, 0x68, 0x43, 0x61, 0x73, 0x68, 0x22, 0x36, - 0x0a, 0x13, 0x50, 0x6f, 0x57, 0x48, 0x61, 0x73, 0x68, 0x43, 0x61, 0x73, 0x68, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x68, 0x61, 0x73, 0x68, 0x5f, 0x73, 0x75, - 0x66, 0x66, 0x69, 0x78, 0x18, 0x0a, 0x20, 0x02, 0x28, 0x0c, 0x52, 0x0a, 0x68, 0x61, 0x73, 0x68, - 0x53, 0x75, 0x66, 0x66, 0x69, 0x78, 0x22, 0x87, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x79, 0x70, 0x74, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x55, 0x6e, 0x69, 0x6f, 0x6e, 0x12, 0x30, - 0x0a, 0x07, 0x73, 0x68, 0x61, 0x6e, 0x6e, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x16, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x53, 0x68, 0x61, 0x6e, 0x6e, 0x6f, 0x6e, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x07, 0x73, 0x68, 0x61, 0x6e, 0x6e, 0x6f, 0x6e, - 0x12, 0x3e, 0x0a, 0x0d, 0x72, 0x63, 0x34, 0x5f, 0x73, 0x68, 0x61, 0x31, 0x5f, 0x68, 0x6d, 0x61, - 0x63, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, - 0x52, 0x63, 0x34, 0x53, 0x68, 0x61, 0x31, 0x48, 0x6d, 0x61, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x52, 0x0b, 0x72, 0x63, 0x34, 0x53, 0x68, 0x61, 0x31, 0x48, 0x6d, 0x61, 0x63, - 0x22, 0x2d, 0x0a, 0x15, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x53, 0x68, 0x61, 0x6e, 0x6e, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x75, 0x6d, - 0x6d, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x22, - 0x31, 0x0a, 0x19, 0x43, 0x72, 0x79, 0x70, 0x74, 0x6f, 0x52, 0x63, 0x34, 0x53, 0x68, 0x61, 0x31, - 0x48, 0x6d, 0x61, 0x63, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x14, 0x0a, 0x05, - 0x64, 0x75, 0x6d, 0x6d, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x64, 0x75, 0x6d, - 0x6d, 0x79, 0x2a, 0x7f, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x12, 0x0a, - 0x0e, 0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x43, 0x4c, 0x49, 0x45, 0x4e, 0x54, 0x10, - 0x00, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x4c, 0x49, 0x42, - 0x53, 0x50, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x50, 0x52, 0x4f, - 0x44, 0x55, 0x43, 0x54, 0x5f, 0x4d, 0x4f, 0x42, 0x49, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x13, 0x0a, - 0x0f, 0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x4e, 0x45, 0x52, - 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b, 0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x4c, 0x49, - 0x42, 0x53, 0x50, 0x4f, 0x54, 0x49, 0x46, 0x59, 0x5f, 0x45, 0x4d, 0x42, 0x45, 0x44, 0x44, 0x45, - 0x44, 0x10, 0x05, 0x2a, 0x41, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x46, 0x6c, - 0x61, 0x67, 0x73, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x52, 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x46, - 0x4c, 0x41, 0x47, 0x5f, 0x4e, 0x4f, 0x4e, 0x45, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x52, - 0x4f, 0x44, 0x55, 0x43, 0x54, 0x5f, 0x46, 0x4c, 0x41, 0x47, 0x5f, 0x44, 0x45, 0x56, 0x5f, 0x42, - 0x55, 0x49, 0x4c, 0x44, 0x10, 0x01, 0x2a, 0xdc, 0x04, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, - 0x6f, 0x72, 0x6d, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, - 0x57, 0x49, 0x4e, 0x33, 0x32, 0x5f, 0x58, 0x38, 0x36, 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x50, - 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4f, 0x53, 0x58, 0x5f, 0x58, 0x38, 0x36, 0x10, - 0x01, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4c, 0x49, - 0x4e, 0x55, 0x58, 0x5f, 0x58, 0x38, 0x36, 0x10, 0x02, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4c, 0x41, - 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x49, 0x50, 0x48, 0x4f, 0x4e, 0x45, 0x5f, 0x41, 0x52, 0x4d, - 0x10, 0x03, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x53, - 0x36, 0x30, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x4c, 0x41, 0x54, - 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4f, 0x53, 0x58, 0x5f, 0x50, 0x50, 0x43, 0x10, 0x05, 0x12, 0x18, - 0x0a, 0x14, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x41, 0x4e, 0x44, 0x52, 0x4f, - 0x49, 0x44, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x06, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x4c, 0x41, 0x54, - 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x57, 0x49, 0x4e, 0x44, 0x4f, 0x57, 0x53, 0x5f, 0x43, 0x45, 0x5f, - 0x41, 0x52, 0x4d, 0x10, 0x07, 0x12, 0x19, 0x0a, 0x15, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, - 0x4d, 0x5f, 0x4c, 0x49, 0x4e, 0x55, 0x58, 0x5f, 0x58, 0x38, 0x36, 0x5f, 0x36, 0x34, 0x10, 0x08, - 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4f, 0x53, 0x58, - 0x5f, 0x58, 0x38, 0x36, 0x5f, 0x36, 0x34, 0x10, 0x09, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x4c, 0x41, - 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x50, 0x41, 0x4c, 0x4d, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x0a, - 0x12, 0x15, 0x0a, 0x11, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4c, 0x49, 0x4e, - 0x55, 0x58, 0x5f, 0x53, 0x48, 0x10, 0x0b, 0x12, 0x18, 0x0a, 0x14, 0x50, 0x4c, 0x41, 0x54, 0x46, - 0x4f, 0x52, 0x4d, 0x5f, 0x46, 0x52, 0x45, 0x45, 0x42, 0x53, 0x44, 0x5f, 0x58, 0x38, 0x36, 0x10, - 0x0c, 0x12, 0x1b, 0x0a, 0x17, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x46, 0x52, - 0x45, 0x45, 0x42, 0x53, 0x44, 0x5f, 0x58, 0x38, 0x36, 0x5f, 0x36, 0x34, 0x10, 0x0d, 0x12, 0x1b, - 0x0a, 0x17, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x42, 0x4c, 0x41, 0x43, 0x4b, - 0x42, 0x45, 0x52, 0x52, 0x59, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x0e, 0x12, 0x12, 0x0a, 0x0e, 0x50, - 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x53, 0x4f, 0x4e, 0x4f, 0x53, 0x10, 0x0f, 0x12, - 0x17, 0x0a, 0x13, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4c, 0x49, 0x4e, 0x55, - 0x58, 0x5f, 0x4d, 0x49, 0x50, 0x53, 0x10, 0x10, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x4c, 0x41, 0x54, - 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4c, 0x49, 0x4e, 0x55, 0x58, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x11, - 0x12, 0x19, 0x0a, 0x15, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4c, 0x4f, 0x47, - 0x49, 0x54, 0x45, 0x43, 0x48, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x12, 0x12, 0x1b, 0x0a, 0x17, 0x50, - 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4c, 0x49, 0x4e, 0x55, 0x58, 0x5f, 0x42, 0x4c, - 0x41, 0x43, 0x4b, 0x46, 0x49, 0x4e, 0x10, 0x13, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x4c, 0x41, 0x54, - 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x57, 0x50, 0x37, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x14, 0x12, 0x16, - 0x0a, 0x12, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x4f, 0x4e, 0x4b, 0x59, 0x4f, - 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x15, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, - 0x52, 0x4d, 0x5f, 0x51, 0x4e, 0x58, 0x4e, 0x54, 0x4f, 0x5f, 0x41, 0x52, 0x4d, 0x10, 0x16, 0x12, - 0x14, 0x0a, 0x10, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x42, 0x43, 0x4f, 0x5f, - 0x41, 0x52, 0x4d, 0x10, 0x17, 0x2a, 0x41, 0x0a, 0x0b, 0x46, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, - 0x72, 0x69, 0x6e, 0x74, 0x12, 0x15, 0x0a, 0x11, 0x46, 0x49, 0x4e, 0x47, 0x45, 0x52, 0x50, 0x52, - 0x49, 0x4e, 0x54, 0x5f, 0x47, 0x52, 0x41, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x46, - 0x49, 0x4e, 0x47, 0x45, 0x52, 0x50, 0x52, 0x49, 0x4e, 0x54, 0x5f, 0x48, 0x4d, 0x41, 0x43, 0x5f, - 0x52, 0x49, 0x50, 0x45, 0x4d, 0x44, 0x10, 0x01, 0x2a, 0x47, 0x0a, 0x0b, 0x43, 0x72, 0x79, 0x70, - 0x74, 0x6f, 0x73, 0x75, 0x69, 0x74, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x43, 0x52, 0x59, 0x50, 0x54, - 0x4f, 0x5f, 0x53, 0x55, 0x49, 0x54, 0x45, 0x5f, 0x53, 0x48, 0x41, 0x4e, 0x4e, 0x4f, 0x4e, 0x10, - 0x00, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x52, 0x59, 0x50, 0x54, 0x4f, 0x5f, 0x53, 0x55, 0x49, 0x54, - 0x45, 0x5f, 0x52, 0x43, 0x34, 0x5f, 0x53, 0x48, 0x41, 0x31, 0x5f, 0x48, 0x4d, 0x41, 0x43, 0x10, - 0x01, 0x2a, 0x1e, 0x0a, 0x09, 0x50, 0x6f, 0x77, 0x73, 0x63, 0x68, 0x65, 0x6d, 0x65, 0x12, 0x11, - 0x0a, 0x0d, 0x50, 0x4f, 0x57, 0x5f, 0x48, 0x41, 0x53, 0x48, 0x5f, 0x43, 0x41, 0x53, 0x48, 0x10, - 0x00, 0x2a, 0x89, 0x02, 0x0a, 0x09, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, - 0x11, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x10, 0x00, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x72, 0x79, 0x41, 0x6e, 0x6f, 0x74, 0x68, 0x65, 0x72, - 0x41, 0x50, 0x10, 0x02, 0x12, 0x13, 0x0a, 0x0f, 0x42, 0x61, 0x64, 0x43, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x10, 0x05, 0x12, 0x15, 0x0a, 0x11, 0x54, 0x72, 0x61, - 0x76, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x09, - 0x12, 0x1a, 0x0a, 0x16, 0x50, 0x72, 0x65, 0x6d, 0x69, 0x75, 0x6d, 0x41, 0x63, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x10, 0x0b, 0x12, 0x12, 0x0a, 0x0e, - 0x42, 0x61, 0x64, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x10, 0x0c, - 0x12, 0x1f, 0x0a, 0x1b, 0x43, 0x6f, 0x75, 0x6c, 0x64, 0x4e, 0x6f, 0x74, 0x56, 0x61, 0x6c, 0x69, - 0x64, 0x61, 0x74, 0x65, 0x43, 0x72, 0x65, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x73, 0x10, - 0x0d, 0x12, 0x11, 0x0a, 0x0d, 0x41, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x45, 0x78, 0x69, 0x73, - 0x74, 0x73, 0x10, 0x0e, 0x12, 0x1d, 0x0a, 0x19, 0x45, 0x78, 0x74, 0x72, 0x61, 0x56, 0x65, 0x72, - 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, - 0x64, 0x10, 0x0f, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x41, 0x70, - 0x70, 0x4b, 0x65, 0x79, 0x10, 0x10, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x61, 0x6e, 0x6e, 0x65, 0x64, 0x10, 0x11, 0x4a, 0xbd, 0x36, - 0x0a, 0x07, 0x12, 0x05, 0x00, 0x00, 0xe2, 0x01, 0x01, 0x0a, 0x08, 0x0a, 0x01, 0x0c, 0x12, 0x03, - 0x00, 0x00, 0x12, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x00, 0x12, 0x04, 0x02, 0x00, 0x0b, 0x01, 0x0a, - 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x02, 0x08, 0x13, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x00, 0x02, 0x00, 0x12, 0x03, 0x03, 0x04, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, - 0x04, 0x12, 0x03, 0x03, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x06, 0x12, - 0x03, 0x03, 0x0d, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x03, - 0x17, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, 0x03, 0x24, 0x27, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x04, 0x04, 0x37, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x01, 0x04, 0x12, 0x03, 0x04, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x01, 0x06, 0x12, 0x03, 0x04, 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x01, 0x01, 0x12, 0x03, 0x04, 0x19, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x03, - 0x12, 0x03, 0x04, 0x32, 0x36, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x02, 0x12, 0x03, 0x05, - 0x04, 0x37, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x04, 0x12, 0x03, 0x05, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x06, 0x12, 0x03, 0x05, 0x0d, 0x18, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, 0x03, 0x05, 0x19, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x02, 0x03, 0x12, 0x03, 0x05, 0x32, 0x36, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, - 0x02, 0x03, 0x12, 0x03, 0x06, 0x04, 0x33, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x04, - 0x12, 0x03, 0x06, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x06, 0x12, 0x03, - 0x06, 0x0d, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x01, 0x12, 0x03, 0x06, 0x17, - 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x03, 0x12, 0x03, 0x06, 0x2e, 0x32, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x04, 0x12, 0x03, 0x07, 0x04, 0x3d, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x04, 0x04, 0x12, 0x03, 0x07, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x04, 0x06, 0x12, 0x03, 0x07, 0x0d, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x04, - 0x01, 0x12, 0x03, 0x07, 0x23, 0x35, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x04, 0x03, 0x12, - 0x03, 0x07, 0x38, 0x3c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x05, 0x12, 0x03, 0x08, 0x04, - 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x04, 0x12, 0x03, 0x08, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x05, 0x12, 0x03, 0x08, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x05, 0x01, 0x12, 0x03, 0x08, 0x13, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x05, 0x03, 0x12, 0x03, 0x08, 0x22, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, - 0x06, 0x12, 0x03, 0x09, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x04, 0x12, - 0x03, 0x09, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x05, 0x12, 0x03, 0x09, - 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x01, 0x12, 0x03, 0x09, 0x13, 0x1a, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x03, 0x12, 0x03, 0x09, 0x1d, 0x21, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x00, 0x02, 0x07, 0x12, 0x03, 0x0a, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x07, 0x04, 0x12, 0x03, 0x0a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x07, 0x06, 0x12, 0x03, 0x0a, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x07, 0x01, - 0x12, 0x03, 0x0a, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x07, 0x03, 0x12, 0x03, - 0x0a, 0x26, 0x2a, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x01, 0x12, 0x04, 0x0e, 0x00, 0x13, 0x01, 0x0a, - 0x0a, 0x0a, 0x03, 0x04, 0x01, 0x01, 0x12, 0x03, 0x0e, 0x08, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x01, 0x02, 0x00, 0x12, 0x03, 0x0f, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, - 0x04, 0x12, 0x03, 0x0f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x06, 0x12, - 0x03, 0x0f, 0x0d, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x0f, - 0x15, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x03, 0x12, 0x03, 0x0f, 0x1f, 0x22, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x01, 0x12, 0x03, 0x10, 0x04, 0x2f, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x01, 0x04, 0x12, 0x03, 0x10, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x01, 0x02, 0x01, 0x06, 0x12, 0x03, 0x10, 0x0d, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, - 0x01, 0x01, 0x12, 0x03, 0x10, 0x1a, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x03, - 0x12, 0x03, 0x10, 0x2a, 0x2e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x02, 0x12, 0x03, 0x11, - 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x04, 0x12, 0x03, 0x11, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x06, 0x12, 0x03, 0x11, 0x0d, 0x15, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x01, 0x12, 0x03, 0x11, 0x16, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x01, 0x02, 0x02, 0x03, 0x12, 0x03, 0x11, 0x21, 0x25, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, - 0x02, 0x03, 0x12, 0x03, 0x12, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x04, - 0x12, 0x03, 0x12, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x05, 0x12, 0x03, - 0x12, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x01, 0x12, 0x03, 0x12, 0x14, - 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x03, 0x12, 0x03, 0x12, 0x1e, 0x22, 0x0a, - 0x0a, 0x0a, 0x02, 0x05, 0x00, 0x12, 0x04, 0x15, 0x00, 0x1b, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, - 0x00, 0x01, 0x12, 0x03, 0x15, 0x05, 0x0c, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x00, 0x12, - 0x03, 0x16, 0x04, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x16, - 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x00, 0x02, 0x12, 0x03, 0x16, 0x15, 0x18, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x01, 0x12, 0x03, 0x17, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x17, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x00, 0x02, 0x01, 0x02, 0x12, 0x03, 0x17, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, - 0x02, 0x12, 0x03, 0x18, 0x04, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x02, 0x01, 0x12, - 0x03, 0x18, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x02, 0x02, 0x12, 0x03, 0x18, - 0x15, 0x18, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x03, 0x12, 0x03, 0x19, 0x04, 0x1a, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x03, 0x01, 0x12, 0x03, 0x19, 0x04, 0x13, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x00, 0x02, 0x03, 0x02, 0x12, 0x03, 0x19, 0x16, 0x19, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x00, 0x02, 0x04, 0x12, 0x03, 0x1a, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x04, - 0x01, 0x12, 0x03, 0x1a, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x04, 0x02, 0x12, - 0x03, 0x1a, 0x22, 0x25, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x01, 0x12, 0x04, 0x1d, 0x00, 0x20, 0x01, - 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x01, 0x01, 0x12, 0x03, 0x1d, 0x05, 0x11, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x01, 0x02, 0x00, 0x12, 0x03, 0x1e, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, - 0x00, 0x01, 0x12, 0x03, 0x1e, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x00, 0x02, - 0x12, 0x03, 0x1e, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x01, 0x12, 0x03, 0x1f, - 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x01, 0x01, 0x12, 0x03, 0x1f, 0x04, 0x1a, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x01, 0x02, 0x12, 0x03, 0x1f, 0x1d, 0x20, 0x0a, 0x0a, - 0x0a, 0x02, 0x05, 0x02, 0x12, 0x04, 0x22, 0x00, 0x3b, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x02, - 0x01, 0x12, 0x03, 0x22, 0x05, 0x0d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x00, 0x12, 0x03, - 0x23, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x23, 0x04, - 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x00, 0x02, 0x12, 0x03, 0x23, 0x19, 0x1c, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x01, 0x12, 0x03, 0x24, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x02, 0x02, 0x01, 0x01, 0x12, 0x03, 0x24, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, - 0x02, 0x01, 0x02, 0x12, 0x03, 0x24, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x02, - 0x12, 0x03, 0x25, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, - 0x25, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x02, 0x02, 0x12, 0x03, 0x25, 0x19, - 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x03, 0x12, 0x03, 0x26, 0x04, 0x1e, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x02, 0x02, 0x03, 0x01, 0x12, 0x03, 0x26, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x02, 0x02, 0x03, 0x02, 0x12, 0x03, 0x26, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, - 0x02, 0x04, 0x12, 0x03, 0x27, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x04, 0x01, - 0x12, 0x03, 0x27, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x04, 0x02, 0x12, 0x03, - 0x27, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x05, 0x12, 0x03, 0x28, 0x04, 0x1b, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x05, 0x01, 0x12, 0x03, 0x28, 0x04, 0x14, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x02, 0x02, 0x05, 0x02, 0x12, 0x03, 0x28, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x02, 0x02, 0x06, 0x12, 0x03, 0x29, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, - 0x06, 0x01, 0x12, 0x03, 0x29, 0x04, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x06, 0x02, - 0x12, 0x03, 0x29, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x07, 0x12, 0x03, 0x2a, - 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x07, 0x01, 0x12, 0x03, 0x2a, 0x04, 0x1b, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x07, 0x02, 0x12, 0x03, 0x2a, 0x1e, 0x21, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x02, 0x02, 0x08, 0x12, 0x03, 0x2b, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x02, 0x02, 0x08, 0x01, 0x12, 0x03, 0x2b, 0x04, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, - 0x08, 0x02, 0x12, 0x03, 0x2b, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x09, 0x12, - 0x03, 0x2c, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x09, 0x01, 0x12, 0x03, 0x2c, - 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x09, 0x02, 0x12, 0x03, 0x2c, 0x1a, 0x1d, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x0a, 0x12, 0x03, 0x2d, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x02, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x2d, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x02, 0x02, 0x0a, 0x02, 0x12, 0x03, 0x2d, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, - 0x0b, 0x12, 0x03, 0x2e, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0b, 0x01, 0x12, - 0x03, 0x2e, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0b, 0x02, 0x12, 0x03, 0x2e, - 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x0c, 0x12, 0x03, 0x2f, 0x04, 0x1f, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0c, 0x01, 0x12, 0x03, 0x2f, 0x04, 0x18, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x02, 0x02, 0x0c, 0x02, 0x12, 0x03, 0x2f, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x02, 0x02, 0x0d, 0x12, 0x03, 0x30, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0d, - 0x01, 0x12, 0x03, 0x30, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0d, 0x02, 0x12, - 0x03, 0x30, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x0e, 0x12, 0x03, 0x31, 0x04, - 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x31, 0x04, 0x1b, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0e, 0x02, 0x12, 0x03, 0x31, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, - 0x04, 0x05, 0x02, 0x02, 0x0f, 0x12, 0x03, 0x32, 0x04, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, - 0x02, 0x0f, 0x01, 0x12, 0x03, 0x32, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x0f, - 0x02, 0x12, 0x03, 0x32, 0x15, 0x18, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x10, 0x12, 0x03, - 0x33, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x10, 0x01, 0x12, 0x03, 0x33, 0x04, - 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x10, 0x02, 0x12, 0x03, 0x33, 0x1a, 0x1e, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x11, 0x12, 0x03, 0x34, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x02, 0x02, 0x11, 0x01, 0x12, 0x03, 0x34, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, - 0x02, 0x11, 0x02, 0x12, 0x03, 0x34, 0x19, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x12, - 0x12, 0x03, 0x35, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x12, 0x01, 0x12, 0x03, - 0x35, 0x04, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x12, 0x02, 0x12, 0x03, 0x35, 0x1c, - 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x13, 0x12, 0x03, 0x36, 0x04, 0x23, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x02, 0x02, 0x13, 0x01, 0x12, 0x03, 0x36, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x02, 0x02, 0x13, 0x02, 0x12, 0x03, 0x36, 0x1e, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, - 0x02, 0x14, 0x12, 0x03, 0x37, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x14, 0x01, - 0x12, 0x03, 0x37, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x14, 0x02, 0x12, 0x03, - 0x37, 0x17, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x15, 0x12, 0x03, 0x38, 0x04, 0x1e, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x15, 0x01, 0x12, 0x03, 0x38, 0x04, 0x16, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x02, 0x02, 0x15, 0x02, 0x12, 0x03, 0x38, 0x19, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x02, 0x02, 0x16, 0x12, 0x03, 0x39, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, - 0x16, 0x01, 0x12, 0x03, 0x39, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x16, 0x02, - 0x12, 0x03, 0x39, 0x1a, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x17, 0x12, 0x03, 0x3a, - 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x17, 0x01, 0x12, 0x03, 0x3a, 0x04, 0x14, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x17, 0x02, 0x12, 0x03, 0x3a, 0x17, 0x1b, 0x0a, 0x0a, - 0x0a, 0x02, 0x05, 0x03, 0x12, 0x04, 0x3d, 0x00, 0x40, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x03, - 0x01, 0x12, 0x03, 0x3d, 0x05, 0x10, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x03, 0x02, 0x00, 0x12, 0x03, - 0x3e, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, 0x00, 0x01, 0x12, 0x03, 0x3e, 0x04, - 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, 0x02, 0x00, 0x02, 0x12, 0x03, 0x3e, 0x18, 0x1b, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x03, 0x02, 0x01, 0x12, 0x03, 0x3f, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x03, 0x02, 0x01, 0x01, 0x12, 0x03, 0x3f, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x03, - 0x02, 0x01, 0x02, 0x12, 0x03, 0x3f, 0x1e, 0x21, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x04, 0x12, 0x04, - 0x42, 0x00, 0x45, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x04, 0x01, 0x12, 0x03, 0x42, 0x05, 0x10, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, 0x00, 0x12, 0x03, 0x43, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x04, 0x02, 0x00, 0x01, 0x12, 0x03, 0x43, 0x04, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x04, 0x02, 0x00, 0x02, 0x12, 0x03, 0x43, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x04, 0x02, - 0x01, 0x12, 0x03, 0x44, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x44, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x04, 0x02, 0x01, 0x02, 0x12, 0x03, 0x44, - 0x21, 0x24, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x05, 0x12, 0x04, 0x47, 0x00, 0x49, 0x01, 0x0a, 0x0a, - 0x0a, 0x03, 0x05, 0x05, 0x01, 0x12, 0x03, 0x47, 0x05, 0x0e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x05, - 0x02, 0x00, 0x12, 0x03, 0x48, 0x04, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x05, 0x02, 0x00, 0x01, - 0x12, 0x03, 0x48, 0x04, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x05, 0x02, 0x00, 0x02, 0x12, 0x03, - 0x48, 0x14, 0x17, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x02, 0x12, 0x04, 0x4c, 0x00, 0x4e, 0x01, 0x0a, - 0x0a, 0x0a, 0x03, 0x04, 0x02, 0x01, 0x12, 0x03, 0x4c, 0x08, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x02, 0x02, 0x00, 0x12, 0x03, 0x4d, 0x04, 0x40, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, - 0x04, 0x12, 0x03, 0x4d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x06, 0x12, - 0x03, 0x4d, 0x0d, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x4d, - 0x2b, 0x39, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x4d, 0x3c, 0x3f, - 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x03, 0x12, 0x04, 0x51, 0x00, 0x54, 0x01, 0x0a, 0x0a, 0x0a, 0x03, - 0x04, 0x03, 0x01, 0x12, 0x03, 0x51, 0x08, 0x25, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x00, - 0x12, 0x03, 0x52, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x04, 0x12, 0x03, - 0x52, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x05, 0x12, 0x03, 0x52, 0x0d, - 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x01, 0x12, 0x03, 0x52, 0x13, 0x15, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x03, 0x12, 0x03, 0x52, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x03, 0x02, 0x01, 0x12, 0x03, 0x53, 0x04, 0x2d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, - 0x02, 0x01, 0x04, 0x12, 0x03, 0x53, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, - 0x05, 0x12, 0x03, 0x53, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x53, 0x14, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x03, 0x12, 0x03, 0x53, - 0x28, 0x2c, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x04, 0x12, 0x04, 0x57, 0x00, 0x5a, 0x01, 0x0a, 0x0a, - 0x0a, 0x03, 0x04, 0x04, 0x01, 0x12, 0x03, 0x57, 0x08, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, - 0x02, 0x00, 0x12, 0x03, 0x58, 0x04, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x04, - 0x12, 0x03, 0x58, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x05, 0x12, 0x03, - 0x58, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x01, 0x12, 0x03, 0x58, 0x12, - 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x03, 0x12, 0x03, 0x58, 0x20, 0x23, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x01, 0x12, 0x03, 0x59, 0x04, 0x29, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x04, 0x02, 0x01, 0x04, 0x12, 0x03, 0x59, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, - 0x02, 0x01, 0x05, 0x12, 0x03, 0x59, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, - 0x01, 0x12, 0x03, 0x59, 0x12, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x03, 0x12, - 0x03, 0x59, 0x25, 0x28, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x05, 0x12, 0x04, 0x5d, 0x00, 0x61, 0x01, - 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x05, 0x01, 0x12, 0x03, 0x5d, 0x08, 0x19, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x05, 0x02, 0x00, 0x12, 0x03, 0x5e, 0x04, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x00, 0x04, 0x12, 0x03, 0x5e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x06, - 0x12, 0x03, 0x5e, 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x01, 0x12, 0x03, - 0x5e, 0x19, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x03, 0x12, 0x03, 0x5e, 0x25, - 0x28, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 0x03, 0x5f, 0x04, 0x33, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x04, 0x12, 0x03, 0x5f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x01, 0x06, 0x12, 0x03, 0x5f, 0x0d, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x01, 0x01, 0x12, 0x03, 0x5f, 0x24, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, - 0x03, 0x12, 0x03, 0x5f, 0x2e, 0x32, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x02, 0x12, 0x03, - 0x60, 0x04, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x04, 0x12, 0x03, 0x60, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x06, 0x12, 0x03, 0x60, 0x0d, 0x1a, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x01, 0x12, 0x03, 0x60, 0x1b, 0x27, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x05, 0x02, 0x02, 0x03, 0x12, 0x03, 0x60, 0x2a, 0x2e, 0x0a, 0x0a, 0x0a, 0x02, 0x04, - 0x06, 0x12, 0x04, 0x63, 0x00, 0x6a, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x06, 0x01, 0x12, 0x03, - 0x63, 0x08, 0x13, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x00, 0x12, 0x03, 0x64, 0x04, 0x44, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x04, 0x12, 0x03, 0x64, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x06, 0x12, 0x03, 0x64, 0x0d, 0x26, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x00, 0x01, 0x12, 0x03, 0x64, 0x27, 0x3d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x00, 0x03, 0x12, 0x03, 0x64, 0x40, 0x43, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x01, - 0x12, 0x03, 0x65, 0x04, 0x44, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x04, 0x12, 0x03, - 0x65, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x06, 0x12, 0x03, 0x65, 0x0d, - 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x01, 0x12, 0x03, 0x65, 0x27, 0x3c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x03, 0x12, 0x03, 0x65, 0x3f, 0x43, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x06, 0x02, 0x02, 0x12, 0x03, 0x66, 0x04, 0x34, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x02, 0x04, 0x12, 0x03, 0x66, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, - 0x06, 0x12, 0x03, 0x66, 0x0d, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x01, 0x12, - 0x03, 0x66, 0x1f, 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x03, 0x12, 0x03, 0x66, - 0x2f, 0x33, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x03, 0x12, 0x03, 0x67, 0x04, 0x3a, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x04, 0x12, 0x03, 0x67, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x03, 0x06, 0x12, 0x03, 0x67, 0x0d, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x03, 0x01, 0x12, 0x03, 0x67, 0x22, 0x32, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x03, 0x03, 0x12, 0x03, 0x67, 0x35, 0x39, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x04, 0x12, - 0x03, 0x68, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x04, 0x12, 0x03, 0x68, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x05, 0x12, 0x03, 0x68, 0x0d, 0x12, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x01, 0x12, 0x03, 0x68, 0x13, 0x1f, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x03, 0x12, 0x03, 0x68, 0x22, 0x26, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x06, 0x02, 0x05, 0x12, 0x03, 0x69, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x05, 0x04, 0x12, 0x03, 0x69, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x05, - 0x12, 0x03, 0x69, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x01, 0x12, 0x03, - 0x69, 0x13, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x03, 0x12, 0x03, 0x69, 0x1d, - 0x21, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x07, 0x12, 0x04, 0x6c, 0x00, 0x6e, 0x01, 0x0a, 0x0a, 0x0a, - 0x03, 0x04, 0x07, 0x01, 0x12, 0x03, 0x6c, 0x08, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x07, 0x02, - 0x00, 0x12, 0x03, 0x6d, 0x04, 0x44, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x04, 0x12, - 0x03, 0x6d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x06, 0x12, 0x03, 0x6d, - 0x0d, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x01, 0x12, 0x03, 0x6d, 0x2f, 0x3d, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x03, 0x12, 0x03, 0x6d, 0x40, 0x43, 0x0a, 0x0a, - 0x0a, 0x02, 0x04, 0x08, 0x12, 0x04, 0x70, 0x00, 0x74, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x08, - 0x01, 0x12, 0x03, 0x70, 0x08, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x00, 0x12, 0x03, - 0x71, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x04, 0x12, 0x03, 0x71, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x05, 0x12, 0x03, 0x71, 0x0d, 0x12, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x01, 0x12, 0x03, 0x71, 0x13, 0x15, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x08, 0x02, 0x00, 0x03, 0x12, 0x03, 0x71, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x08, 0x02, 0x01, 0x12, 0x03, 0x72, 0x04, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x01, - 0x04, 0x12, 0x03, 0x72, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x01, 0x05, 0x12, - 0x03, 0x72, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x01, 0x01, 0x12, 0x03, 0x72, - 0x13, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x01, 0x03, 0x12, 0x03, 0x72, 0x2a, 0x2e, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x02, 0x12, 0x03, 0x73, 0x04, 0x27, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x08, 0x02, 0x02, 0x04, 0x12, 0x03, 0x73, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x08, 0x02, 0x02, 0x05, 0x12, 0x03, 0x73, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, - 0x02, 0x01, 0x12, 0x03, 0x73, 0x13, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x02, 0x03, - 0x12, 0x03, 0x73, 0x22, 0x26, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x09, 0x12, 0x04, 0x76, 0x00, 0x79, - 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x09, 0x01, 0x12, 0x03, 0x76, 0x08, 0x21, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x09, 0x02, 0x00, 0x12, 0x03, 0x77, 0x04, 0x33, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, - 0x02, 0x00, 0x04, 0x12, 0x03, 0x77, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, - 0x06, 0x12, 0x03, 0x77, 0x0d, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x01, 0x12, - 0x03, 0x77, 0x27, 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x03, 0x12, 0x03, 0x77, - 0x2f, 0x32, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x01, 0x12, 0x03, 0x78, 0x04, 0x3f, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x04, 0x12, 0x03, 0x78, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x09, 0x02, 0x01, 0x06, 0x12, 0x03, 0x78, 0x0d, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x09, 0x02, 0x01, 0x01, 0x12, 0x03, 0x78, 0x2c, 0x37, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, - 0x01, 0x03, 0x12, 0x03, 0x78, 0x3a, 0x3e, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x0a, 0x12, 0x04, 0x7c, - 0x00, 0x7e, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x0a, 0x01, 0x12, 0x03, 0x7c, 0x08, 0x21, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x00, 0x12, 0x03, 0x7d, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x0a, 0x02, 0x00, 0x04, 0x12, 0x03, 0x7d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, - 0x02, 0x00, 0x05, 0x12, 0x03, 0x7d, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, - 0x01, 0x12, 0x03, 0x7d, 0x13, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x03, 0x12, - 0x03, 0x7d, 0x19, 0x1c, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0b, 0x12, 0x06, 0x81, 0x01, 0x00, 0x83, - 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0b, 0x01, 0x12, 0x04, 0x81, 0x01, 0x08, 0x26, 0x0a, - 0x0c, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x00, 0x12, 0x04, 0x82, 0x01, 0x04, 0x23, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0b, 0x02, 0x00, 0x04, 0x12, 0x04, 0x82, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0b, 0x02, 0x00, 0x05, 0x12, 0x04, 0x82, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0b, 0x02, 0x00, 0x01, 0x12, 0x04, 0x82, 0x01, 0x13, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0b, - 0x02, 0x00, 0x03, 0x12, 0x04, 0x82, 0x01, 0x1f, 0x22, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0c, 0x12, - 0x06, 0x86, 0x01, 0x00, 0x88, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0c, 0x01, 0x12, 0x04, - 0x86, 0x01, 0x08, 0x19, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x00, 0x12, 0x04, 0x87, 0x01, - 0x04, 0x32, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x04, 0x12, 0x04, 0x87, 0x01, 0x04, - 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x06, 0x12, 0x04, 0x87, 0x01, 0x0d, 0x21, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x01, 0x12, 0x04, 0x87, 0x01, 0x22, 0x2b, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x03, 0x12, 0x04, 0x87, 0x01, 0x2e, 0x31, 0x0a, 0x0c, - 0x0a, 0x02, 0x04, 0x0d, 0x12, 0x06, 0x8a, 0x01, 0x00, 0x8e, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, - 0x04, 0x0d, 0x01, 0x12, 0x04, 0x8a, 0x01, 0x08, 0x1c, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d, 0x02, - 0x00, 0x12, 0x04, 0x8b, 0x01, 0x04, 0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x04, - 0x12, 0x04, 0x8b, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x05, 0x12, - 0x04, 0x8b, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x01, 0x12, 0x04, - 0x8b, 0x01, 0x13, 0x19, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x03, 0x12, 0x04, 0x8b, - 0x01, 0x1c, 0x1f, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d, 0x02, 0x01, 0x12, 0x04, 0x8c, 0x01, 0x04, - 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x04, 0x12, 0x04, 0x8c, 0x01, 0x04, 0x0c, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x05, 0x12, 0x04, 0x8c, 0x01, 0x0d, 0x12, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x01, 0x12, 0x04, 0x8c, 0x01, 0x13, 0x19, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x03, 0x12, 0x04, 0x8c, 0x01, 0x1c, 0x20, 0x0a, 0x0c, 0x0a, - 0x04, 0x04, 0x0d, 0x02, 0x02, 0x12, 0x04, 0x8d, 0x01, 0x04, 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0d, 0x02, 0x02, 0x04, 0x12, 0x04, 0x8d, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, - 0x02, 0x02, 0x05, 0x12, 0x04, 0x8d, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, - 0x02, 0x01, 0x12, 0x04, 0x8d, 0x01, 0x13, 0x19, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x02, - 0x03, 0x12, 0x04, 0x8d, 0x01, 0x1c, 0x20, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0e, 0x12, 0x06, 0x91, - 0x01, 0x00, 0x94, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0e, 0x01, 0x12, 0x04, 0x91, 0x01, - 0x08, 0x1c, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0e, 0x02, 0x00, 0x12, 0x04, 0x92, 0x01, 0x04, 0x32, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x04, 0x12, 0x04, 0x92, 0x01, 0x04, 0x0c, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x06, 0x12, 0x04, 0x92, 0x01, 0x0d, 0x23, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x01, 0x12, 0x04, 0x92, 0x01, 0x24, 0x2b, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0e, 0x02, 0x00, 0x03, 0x12, 0x04, 0x92, 0x01, 0x2e, 0x31, 0x0a, 0x0c, 0x0a, 0x04, - 0x04, 0x0e, 0x02, 0x01, 0x12, 0x04, 0x93, 0x01, 0x04, 0x3d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, - 0x02, 0x01, 0x04, 0x12, 0x04, 0x93, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, - 0x01, 0x06, 0x12, 0x04, 0x93, 0x01, 0x0d, 0x27, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x01, - 0x01, 0x12, 0x04, 0x93, 0x01, 0x28, 0x35, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x01, 0x03, - 0x12, 0x04, 0x93, 0x01, 0x38, 0x3c, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0f, 0x12, 0x06, 0x97, 0x01, - 0x00, 0x98, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0f, 0x01, 0x12, 0x04, 0x97, 0x01, 0x08, - 0x1e, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x10, 0x12, 0x06, 0x9b, 0x01, 0x00, 0x9c, 0x01, 0x01, 0x0a, - 0x0b, 0x0a, 0x03, 0x04, 0x10, 0x01, 0x12, 0x04, 0x9b, 0x01, 0x08, 0x22, 0x0a, 0x0c, 0x0a, 0x02, - 0x04, 0x11, 0x12, 0x06, 0x9f, 0x01, 0x00, 0xa3, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x11, - 0x01, 0x12, 0x04, 0x9f, 0x01, 0x08, 0x1e, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x11, 0x02, 0x00, 0x12, - 0x04, 0xa0, 0x01, 0x04, 0x2d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x00, 0x04, 0x12, 0x04, - 0xa0, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x00, 0x05, 0x12, 0x04, 0xa0, - 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x00, 0x01, 0x12, 0x04, 0xa0, 0x01, - 0x13, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x00, 0x03, 0x12, 0x04, 0xa0, 0x01, 0x29, - 0x2c, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x11, 0x02, 0x01, 0x12, 0x04, 0xa1, 0x01, 0x04, 0x24, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x01, 0x04, 0x12, 0x04, 0xa1, 0x01, 0x04, 0x0c, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x11, 0x02, 0x01, 0x05, 0x12, 0x04, 0xa1, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x11, 0x02, 0x01, 0x01, 0x12, 0x04, 0xa1, 0x01, 0x13, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x11, 0x02, 0x01, 0x03, 0x12, 0x04, 0xa1, 0x01, 0x1f, 0x23, 0x0a, 0x0c, 0x0a, 0x04, 0x04, - 0x11, 0x02, 0x02, 0x12, 0x04, 0xa2, 0x01, 0x04, 0x27, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, - 0x02, 0x04, 0x12, 0x04, 0xa2, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x02, - 0x05, 0x12, 0x04, 0xa2, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x02, 0x01, - 0x12, 0x04, 0xa2, 0x01, 0x14, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x11, 0x02, 0x02, 0x03, 0x12, - 0x04, 0xa2, 0x01, 0x22, 0x26, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x12, 0x12, 0x06, 0xa5, 0x01, 0x00, - 0xaa, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x12, 0x01, 0x12, 0x04, 0xa5, 0x01, 0x08, 0x15, - 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x12, 0x02, 0x00, 0x12, 0x04, 0xa6, 0x01, 0x04, 0x28, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x12, 0x02, 0x00, 0x04, 0x12, 0x04, 0xa6, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x12, 0x02, 0x00, 0x06, 0x12, 0x04, 0xa6, 0x01, 0x0d, 0x16, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x12, 0x02, 0x00, 0x01, 0x12, 0x04, 0xa6, 0x01, 0x17, 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x12, 0x02, 0x00, 0x03, 0x12, 0x04, 0xa6, 0x01, 0x24, 0x27, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x12, - 0x02, 0x01, 0x12, 0x04, 0xa7, 0x01, 0x04, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x01, - 0x04, 0x12, 0x04, 0xa7, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x01, 0x05, - 0x12, 0x04, 0xa7, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x01, 0x01, 0x12, - 0x04, 0xa7, 0x01, 0x13, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x01, 0x03, 0x12, 0x04, - 0xa7, 0x01, 0x21, 0x25, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x12, 0x02, 0x02, 0x12, 0x04, 0xa8, 0x01, - 0x04, 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x02, 0x04, 0x12, 0x04, 0xa8, 0x01, 0x04, - 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x02, 0x05, 0x12, 0x04, 0xa8, 0x01, 0x0d, 0x12, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x02, 0x01, 0x12, 0x04, 0xa8, 0x01, 0x13, 0x19, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, 0x02, 0x03, 0x12, 0x04, 0xa8, 0x01, 0x1c, 0x20, 0x0a, 0x0c, - 0x0a, 0x04, 0x04, 0x12, 0x02, 0x03, 0x12, 0x04, 0xa9, 0x01, 0x04, 0x2d, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x12, 0x02, 0x03, 0x04, 0x12, 0x04, 0xa9, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x12, 0x02, 0x03, 0x05, 0x12, 0x04, 0xa9, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, - 0x02, 0x03, 0x01, 0x12, 0x04, 0xa9, 0x01, 0x14, 0x25, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x12, 0x02, - 0x03, 0x03, 0x12, 0x04, 0xa9, 0x01, 0x28, 0x2c, 0x0a, 0x0c, 0x0a, 0x02, 0x05, 0x06, 0x12, 0x06, - 0xac, 0x01, 0x00, 0xb8, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x05, 0x06, 0x01, 0x12, 0x04, 0xac, - 0x01, 0x05, 0x0e, 0x0a, 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x00, 0x12, 0x04, 0xad, 0x01, 0x04, - 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x00, 0x01, 0x12, 0x04, 0xad, 0x01, 0x04, 0x11, - 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x00, 0x02, 0x12, 0x04, 0xad, 0x01, 0x14, 0x17, 0x0a, - 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x01, 0x12, 0x04, 0xae, 0x01, 0x04, 0x17, 0x0a, 0x0d, 0x0a, - 0x05, 0x05, 0x06, 0x02, 0x01, 0x01, 0x12, 0x04, 0xae, 0x01, 0x04, 0x10, 0x0a, 0x0d, 0x0a, 0x05, - 0x05, 0x06, 0x02, 0x01, 0x02, 0x12, 0x04, 0xae, 0x01, 0x13, 0x16, 0x0a, 0x0c, 0x0a, 0x04, 0x05, - 0x06, 0x02, 0x02, 0x12, 0x04, 0xaf, 0x01, 0x04, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, - 0x02, 0x01, 0x12, 0x04, 0xaf, 0x01, 0x04, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x02, - 0x02, 0x12, 0x04, 0xaf, 0x01, 0x16, 0x19, 0x0a, 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x03, 0x12, - 0x04, 0xb0, 0x01, 0x04, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x03, 0x01, 0x12, 0x04, - 0xb0, 0x01, 0x04, 0x15, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x03, 0x02, 0x12, 0x04, 0xb0, - 0x01, 0x18, 0x1b, 0x0a, 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x04, 0x12, 0x04, 0xb1, 0x01, 0x04, - 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x04, 0x01, 0x12, 0x04, 0xb1, 0x01, 0x04, 0x1a, - 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x04, 0x02, 0x12, 0x04, 0xb1, 0x01, 0x1d, 0x20, 0x0a, - 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x05, 0x12, 0x04, 0xb2, 0x01, 0x04, 0x19, 0x0a, 0x0d, 0x0a, - 0x05, 0x05, 0x06, 0x02, 0x05, 0x01, 0x12, 0x04, 0xb2, 0x01, 0x04, 0x12, 0x0a, 0x0d, 0x0a, 0x05, - 0x05, 0x06, 0x02, 0x05, 0x02, 0x12, 0x04, 0xb2, 0x01, 0x15, 0x18, 0x0a, 0x0c, 0x0a, 0x04, 0x05, - 0x06, 0x02, 0x06, 0x12, 0x04, 0xb3, 0x01, 0x04, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, - 0x06, 0x01, 0x12, 0x04, 0xb3, 0x01, 0x04, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x06, - 0x02, 0x12, 0x04, 0xb3, 0x01, 0x22, 0x25, 0x0a, 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x07, 0x12, - 0x04, 0xb4, 0x01, 0x04, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x07, 0x01, 0x12, 0x04, - 0xb4, 0x01, 0x04, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x07, 0x02, 0x12, 0x04, 0xb4, - 0x01, 0x14, 0x17, 0x0a, 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x08, 0x12, 0x04, 0xb5, 0x01, 0x04, - 0x24, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x08, 0x01, 0x12, 0x04, 0xb5, 0x01, 0x04, 0x1d, - 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x08, 0x02, 0x12, 0x04, 0xb5, 0x01, 0x20, 0x23, 0x0a, - 0x0c, 0x0a, 0x04, 0x05, 0x06, 0x02, 0x09, 0x12, 0x04, 0xb6, 0x01, 0x04, 0x19, 0x0a, 0x0d, 0x0a, - 0x05, 0x05, 0x06, 0x02, 0x09, 0x01, 0x12, 0x04, 0xb6, 0x01, 0x04, 0x11, 0x0a, 0x0d, 0x0a, 0x05, - 0x05, 0x06, 0x02, 0x09, 0x02, 0x12, 0x04, 0xb6, 0x01, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x04, 0x05, - 0x06, 0x02, 0x0a, 0x12, 0x04, 0xb7, 0x01, 0x04, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, - 0x0a, 0x01, 0x12, 0x04, 0xb7, 0x01, 0x04, 0x15, 0x0a, 0x0d, 0x0a, 0x05, 0x05, 0x06, 0x02, 0x0a, - 0x02, 0x12, 0x04, 0xb7, 0x01, 0x18, 0x1c, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x13, 0x12, 0x06, 0xba, - 0x01, 0x00, 0xbe, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x13, 0x01, 0x12, 0x04, 0xba, 0x01, - 0x08, 0x1f, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x13, 0x02, 0x00, 0x12, 0x04, 0xbb, 0x01, 0x04, 0x42, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x00, 0x04, 0x12, 0x04, 0xbb, 0x01, 0x04, 0x0c, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x00, 0x06, 0x12, 0x04, 0xbb, 0x01, 0x0d, 0x25, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x13, 0x02, 0x00, 0x01, 0x12, 0x04, 0xbb, 0x01, 0x26, 0x3b, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x13, 0x02, 0x00, 0x03, 0x12, 0x04, 0xbb, 0x01, 0x3e, 0x41, 0x0a, 0x0c, 0x0a, 0x04, - 0x04, 0x13, 0x02, 0x01, 0x12, 0x04, 0xbc, 0x01, 0x04, 0x32, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, - 0x02, 0x01, 0x04, 0x12, 0x04, 0xbc, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, - 0x01, 0x06, 0x12, 0x04, 0xbc, 0x01, 0x0d, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x01, - 0x01, 0x12, 0x04, 0xbc, 0x01, 0x1e, 0x2a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x01, 0x03, - 0x12, 0x04, 0xbc, 0x01, 0x2d, 0x31, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x13, 0x02, 0x02, 0x12, 0x04, - 0xbd, 0x01, 0x04, 0x38, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x02, 0x04, 0x12, 0x04, 0xbd, - 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x02, 0x06, 0x12, 0x04, 0xbd, 0x01, - 0x0d, 0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x02, 0x01, 0x12, 0x04, 0xbd, 0x01, 0x21, - 0x30, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x13, 0x02, 0x02, 0x03, 0x12, 0x04, 0xbd, 0x01, 0x33, 0x37, - 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x14, 0x12, 0x06, 0xc1, 0x01, 0x00, 0xc3, 0x01, 0x01, 0x0a, 0x0b, - 0x0a, 0x03, 0x04, 0x14, 0x01, 0x12, 0x04, 0xc1, 0x01, 0x08, 0x20, 0x0a, 0x0c, 0x0a, 0x04, 0x04, - 0x14, 0x02, 0x00, 0x12, 0x04, 0xc2, 0x01, 0x04, 0x43, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x14, 0x02, - 0x00, 0x04, 0x12, 0x04, 0xc2, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x14, 0x02, 0x00, - 0x06, 0x12, 0x04, 0xc2, 0x01, 0x0d, 0x2d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x14, 0x02, 0x00, 0x01, - 0x12, 0x04, 0xc2, 0x01, 0x2e, 0x3c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x14, 0x02, 0x00, 0x03, 0x12, - 0x04, 0xc2, 0x01, 0x3f, 0x42, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x15, 0x12, 0x06, 0xc6, 0x01, 0x00, - 0xc8, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x15, 0x01, 0x12, 0x04, 0xc6, 0x01, 0x08, 0x28, - 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x15, 0x02, 0x00, 0x12, 0x04, 0xc7, 0x01, 0x04, 0x1e, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x15, 0x02, 0x00, 0x04, 0x12, 0x04, 0xc7, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x15, 0x02, 0x00, 0x05, 0x12, 0x04, 0xc7, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x15, 0x02, 0x00, 0x01, 0x12, 0x04, 0xc7, 0x01, 0x13, 0x17, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x15, 0x02, 0x00, 0x03, 0x12, 0x04, 0xc7, 0x01, 0x1a, 0x1d, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x16, - 0x12, 0x06, 0xcb, 0x01, 0x00, 0xcd, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x16, 0x01, 0x12, - 0x04, 0xcb, 0x01, 0x08, 0x18, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x16, 0x02, 0x00, 0x12, 0x04, 0xcc, - 0x01, 0x04, 0x31, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x16, 0x02, 0x00, 0x04, 0x12, 0x04, 0xcc, 0x01, - 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x16, 0x02, 0x00, 0x06, 0x12, 0x04, 0xcc, 0x01, 0x0d, - 0x20, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x16, 0x02, 0x00, 0x01, 0x12, 0x04, 0xcc, 0x01, 0x21, 0x2a, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x16, 0x02, 0x00, 0x03, 0x12, 0x04, 0xcc, 0x01, 0x2d, 0x30, 0x0a, - 0x0c, 0x0a, 0x02, 0x04, 0x17, 0x12, 0x06, 0xd0, 0x01, 0x00, 0xd2, 0x01, 0x01, 0x0a, 0x0b, 0x0a, - 0x03, 0x04, 0x17, 0x01, 0x12, 0x04, 0xd0, 0x01, 0x08, 0x1b, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x17, - 0x02, 0x00, 0x12, 0x04, 0xd1, 0x01, 0x04, 0x25, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x17, 0x02, 0x00, - 0x04, 0x12, 0x04, 0xd1, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x17, 0x02, 0x00, 0x05, - 0x12, 0x04, 0xd1, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x17, 0x02, 0x00, 0x01, 0x12, - 0x04, 0xd1, 0x01, 0x13, 0x1e, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x17, 0x02, 0x00, 0x03, 0x12, 0x04, - 0xd1, 0x01, 0x21, 0x24, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x18, 0x12, 0x06, 0xd5, 0x01, 0x00, 0xd8, - 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x18, 0x01, 0x12, 0x04, 0xd5, 0x01, 0x08, 0x1b, 0x0a, - 0x0c, 0x0a, 0x04, 0x04, 0x18, 0x02, 0x00, 0x12, 0x04, 0xd6, 0x01, 0x04, 0x31, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x18, 0x02, 0x00, 0x04, 0x12, 0x04, 0xd6, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x18, 0x02, 0x00, 0x06, 0x12, 0x04, 0xd6, 0x01, 0x0d, 0x22, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x18, 0x02, 0x00, 0x01, 0x12, 0x04, 0xd6, 0x01, 0x23, 0x2a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x18, - 0x02, 0x00, 0x03, 0x12, 0x04, 0xd6, 0x01, 0x2d, 0x30, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x18, 0x02, - 0x01, 0x12, 0x04, 0xd7, 0x01, 0x04, 0x3c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x18, 0x02, 0x01, 0x04, - 0x12, 0x04, 0xd7, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x18, 0x02, 0x01, 0x06, 0x12, - 0x04, 0xd7, 0x01, 0x0d, 0x26, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x18, 0x02, 0x01, 0x01, 0x12, 0x04, - 0xd7, 0x01, 0x27, 0x34, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x18, 0x02, 0x01, 0x03, 0x12, 0x04, 0xd7, - 0x01, 0x37, 0x3b, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x19, 0x12, 0x06, 0xdb, 0x01, 0x00, 0xdd, 0x01, - 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x19, 0x01, 0x12, 0x04, 0xdb, 0x01, 0x08, 0x1d, 0x0a, 0x0c, - 0x0a, 0x04, 0x04, 0x19, 0x02, 0x00, 0x12, 0x04, 0xdc, 0x01, 0x04, 0x1f, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x19, 0x02, 0x00, 0x04, 0x12, 0x04, 0xdc, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x19, 0x02, 0x00, 0x05, 0x12, 0x04, 0xdc, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x19, - 0x02, 0x00, 0x01, 0x12, 0x04, 0xdc, 0x01, 0x13, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x19, 0x02, - 0x00, 0x03, 0x12, 0x04, 0xdc, 0x01, 0x1b, 0x1e, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x1a, 0x12, 0x06, - 0xe0, 0x01, 0x00, 0xe2, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x1a, 0x01, 0x12, 0x04, 0xe0, - 0x01, 0x08, 0x21, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x1a, 0x02, 0x00, 0x12, 0x04, 0xe1, 0x01, 0x04, - 0x1f, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x1a, 0x02, 0x00, 0x04, 0x12, 0x04, 0xe1, 0x01, 0x04, 0x0c, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x1a, 0x02, 0x00, 0x05, 0x12, 0x04, 0xe1, 0x01, 0x0d, 0x12, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x1a, 0x02, 0x00, 0x01, 0x12, 0x04, 0xe1, 0x01, 0x13, 0x18, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x1a, 0x02, 0x00, 0x03, 0x12, 0x04, 0xe1, 0x01, 0x1b, 0x1e, -]; +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x11keyexchange.proto\"\xb2\x03\n\x0bClientHello\x12)\n\nbuild_info\ + \x18\n\x20\x02(\x0b2\n.BuildInfoR\tbuildInfo\x12C\n\x16fingerprints_supp\ + orted\x18\x14\x20\x03(\x0e2\x0c.FingerprintR\x15fingerprintsSupported\ + \x12C\n\x16cryptosuites_supported\x18\x1e\x20\x03(\x0e2\x0c.CryptosuiteR\ + \x15cryptosuitesSupported\x12=\n\x14powschemes_supported\x18(\x20\x03(\ + \x0e2\n.PowschemeR\x13powschemesSupported\x12D\n\x12login_crypto_hello\ + \x182\x20\x02(\x0b2\x16.LoginCryptoHelloUnionR\x10loginCryptoHello\x12!\ + \n\x0cclient_nonce\x18<\x20\x02(\x0cR\x0bclientNonce\x12\x18\n\x07paddin\ + g\x18F\x20\x01(\x0cR\x07padding\x12,\n\x0bfeature_set\x18P\x20\x01(\x0b2\ + \x0b.FeatureSetR\nfeatureSet\"\xa4\x01\n\tBuildInfo\x12\"\n\x07product\ + \x18\n\x20\x02(\x0e2\x08.ProductR\x07product\x122\n\rproduct_flags\x18\ + \x14\x20\x03(\x0e2\r.ProductFlagsR\x0cproductFlags\x12%\n\x08platform\ + \x18\x1e\x20\x02(\x0e2\t.PlatformR\x08platform\x12\x18\n\x07version\x18(\ + \x20\x02(\x04R\x07version\"^\n\x15LoginCryptoHelloUnion\x12E\n\x0ediffie\ + _hellman\x18\n\x20\x01(\x0b2\x1e.LoginCryptoDiffieHellmanHelloR\rdiffieH\ + ellman\"[\n\x1dLoginCryptoDiffieHellmanHello\x12\x0e\n\x02gc\x18\n\x20\ + \x02(\x0cR\x02gc\x12*\n\x11server_keys_known\x18\x14\x20\x02(\rR\x0fserv\ + erKeysKnown\"Y\n\nFeatureSet\x12\x20\n\x0bautoupdate2\x18\x01\x20\x01(\ + \x08R\x0bautoupdate2\x12)\n\x10current_location\x18\x02\x20\x01(\x08R\ + \x0fcurrentLocation\"\xa5\x01\n\x11APResponseMessage\x12*\n\tchallenge\ + \x18\n\x20\x01(\x0b2\x0c.APChallengeR\tchallenge\x121\n\x07upgrade\x18\ + \x14\x20\x01(\x0b2\x17.UpgradeRequiredMessageR\x07upgrade\x121\n\x0clogi\ + n_failed\x18\x1e\x20\x01(\x0b2\x0e.APLoginFailedR\x0bloginFailed\"\xe8\ + \x02\n\x0bAPChallenge\x12P\n\x16login_crypto_challenge\x18\n\x20\x02(\ + \x0b2\x1a.LoginCryptoChallengeUnionR\x14loginCryptoChallenge\x12O\n\x15f\ + ingerprint_challenge\x18\x14\x20\x02(\x0b2\x1a.FingerprintChallengeUnion\ + R\x14fingerprintChallenge\x127\n\rpow_challenge\x18\x1e\x20\x02(\x0b2\ + \x12.PoWChallengeUnionR\x0cpowChallenge\x12@\n\x10crypto_challenge\x18(\ + \x20\x02(\x0b2\x15.CryptoChallengeUnionR\x0fcryptoChallenge\x12!\n\x0cse\ + rver_nonce\x182\x20\x02(\x0cR\x0bserverNonce\x12\x18\n\x07padding\x18<\ + \x20\x01(\x0cR\x07padding\"f\n\x19LoginCryptoChallengeUnion\x12I\n\x0edi\ + ffie_hellman\x18\n\x20\x01(\x0b2\".LoginCryptoDiffieHellmanChallengeR\rd\ + iffieHellman\"\x88\x01\n!LoginCryptoDiffieHellmanChallenge\x12\x0e\n\x02\ + gs\x18\n\x20\x02(\x0cR\x02gs\x120\n\x14server_signature_key\x18\x14\x20\ + \x02(\x05R\x12serverSignatureKey\x12!\n\x0cgs_signature\x18\x1e\x20\x02(\ + \x0cR\x0bgsSignature\"\x8f\x01\n\x19FingerprintChallengeUnion\x120\n\x05\ + grain\x18\n\x20\x01(\x0b2\x1a.FingerprintGrainChallengeR\x05grain\x12@\n\ + \x0bhmac_ripemd\x18\x14\x20\x01(\x0b2\x1f.FingerprintHmacRipemdChallenge\ + R\nhmacRipemd\"-\n\x19FingerprintGrainChallenge\x12\x10\n\x03kek\x18\n\ + \x20\x02(\x0cR\x03kek\">\n\x1eFingerprintHmacRipemdChallenge\x12\x1c\n\t\ + challenge\x18\n\x20\x02(\x0cR\tchallenge\"G\n\x11PoWChallengeUnion\x122\ + \n\thash_cash\x18\n\x20\x01(\x0b2\x15.PoWHashCashChallengeR\x08hashCash\ + \"^\n\x14PoWHashCashChallenge\x12\x16\n\x06prefix\x18\n\x20\x01(\x0cR\ + \x06prefix\x12\x16\n\x06length\x18\x14\x20\x01(\x05R\x06length\x12\x16\n\ + \x06target\x18\x1e\x20\x01(\x05R\x06target\"\x8a\x01\n\x14CryptoChalleng\ + eUnion\x121\n\x07shannon\x18\n\x20\x01(\x0b2\x17.CryptoShannonChallengeR\ + \x07shannon\x12?\n\rrc4_sha1_hmac\x18\x14\x20\x01(\x0b2\x1b.CryptoRc4Sha\ + 1HmacChallengeR\x0brc4Sha1Hmac\"\x18\n\x16CryptoShannonChallenge\"\x1c\n\ + \x1aCryptoRc4Sha1HmacChallenge\"\x87\x01\n\x16UpgradeRequiredMessage\x12\ + .\n\x13upgrade_signed_part\x18\n\x20\x02(\x0cR\x11upgradeSignedPart\x12\ + \x1c\n\tsignature\x18\x14\x20\x02(\x0cR\tsignature\x12\x1f\n\x0bhttp_suf\ + fix\x18\x1e\x20\x01(\tR\nhttpSuffix\"\xa0\x01\n\rAPLoginFailed\x12)\n\ne\ + rror_code\x18\n\x20\x02(\x0e2\n.ErrorCodeR\terrorCode\x12\x1f\n\x0bretry\ + _delay\x18\x14\x20\x01(\x05R\nretryDelay\x12\x16\n\x06expiry\x18\x1e\x20\ + \x01(\x05R\x06expiry\x12+\n\x11error_description\x18(\x20\x01(\tR\x10err\ + orDescription\"\xdd\x01\n\x17ClientResponsePlaintext\x12M\n\x15login_cry\ + pto_response\x18\n\x20\x02(\x0b2\x19.LoginCryptoResponseUnionR\x13loginC\ + ryptoResponse\x124\n\x0cpow_response\x18\x14\x20\x02(\x0b2\x11.PoWRespon\ + seUnionR\x0bpowResponse\x12=\n\x0fcrypto_response\x18\x1e\x20\x02(\x0b2\ + \x14.CryptoResponseUnionR\x0ecryptoResponse\"d\n\x18LoginCryptoResponseU\ + nion\x12H\n\x0ediffie_hellman\x18\n\x20\x01(\x0b2!.LoginCryptoDiffieHell\ + manResponseR\rdiffieHellman\"6\n\x20LoginCryptoDiffieHellmanResponse\x12\ + \x12\n\x04hmac\x18\n\x20\x02(\x0cR\x04hmac\"E\n\x10PoWResponseUnion\x121\ + \n\thash_cash\x18\n\x20\x01(\x0b2\x14.PoWHashCashResponseR\x08hashCash\"\ + 6\n\x13PoWHashCashResponse\x12\x1f\n\x0bhash_suffix\x18\n\x20\x02(\x0cR\ + \nhashSuffix\"\x87\x01\n\x13CryptoResponseUnion\x120\n\x07shannon\x18\n\ + \x20\x01(\x0b2\x16.CryptoShannonResponseR\x07shannon\x12>\n\rrc4_sha1_hm\ + ac\x18\x14\x20\x01(\x0b2\x1a.CryptoRc4Sha1HmacResponseR\x0brc4Sha1Hmac\"\ + -\n\x15CryptoShannonResponse\x12\x14\n\x05dummy\x18\x01\x20\x01(\x05R\ + \x05dummy\"1\n\x19CryptoRc4Sha1HmacResponse\x12\x14\n\x05dummy\x18\x01\ + \x20\x01(\x05R\x05dummy*\x7f\n\x07Product\x12\x12\n\x0ePRODUCT_CLIENT\ + \x10\0\x12\x16\n\x12PRODUCT_LIBSPOTIFY\x10\x01\x12\x12\n\x0ePRODUCT_MOBI\ + LE\x10\x02\x12\x13\n\x0fPRODUCT_PARTNER\x10\x03\x12\x1f\n\x1bPRODUCT_LIB\ + SPOTIFY_EMBEDDED\x10\x05*A\n\x0cProductFlags\x12\x15\n\x11PRODUCT_FLAG_N\ + ONE\x10\0\x12\x1a\n\x16PRODUCT_FLAG_DEV_BUILD\x10\x01*\xdc\x04\n\x08Plat\ + form\x12\x16\n\x12PLATFORM_WIN32_X86\x10\0\x12\x14\n\x10PLATFORM_OSX_X86\ + \x10\x01\x12\x16\n\x12PLATFORM_LINUX_X86\x10\x02\x12\x17\n\x13PLATFORM_I\ + PHONE_ARM\x10\x03\x12\x14\n\x10PLATFORM_S60_ARM\x10\x04\x12\x14\n\x10PLA\ + TFORM_OSX_PPC\x10\x05\x12\x18\n\x14PLATFORM_ANDROID_ARM\x10\x06\x12\x1b\ + \n\x17PLATFORM_WINDOWS_CE_ARM\x10\x07\x12\x19\n\x15PLATFORM_LINUX_X86_64\ + \x10\x08\x12\x17\n\x13PLATFORM_OSX_X86_64\x10\t\x12\x15\n\x11PLATFORM_PA\ + LM_ARM\x10\n\x12\x15\n\x11PLATFORM_LINUX_SH\x10\x0b\x12\x18\n\x14PLATFOR\ + M_FREEBSD_X86\x10\x0c\x12\x1b\n\x17PLATFORM_FREEBSD_X86_64\x10\r\x12\x1b\ + \n\x17PLATFORM_BLACKBERRY_ARM\x10\x0e\x12\x12\n\x0ePLATFORM_SONOS\x10\ + \x0f\x12\x17\n\x13PLATFORM_LINUX_MIPS\x10\x10\x12\x16\n\x12PLATFORM_LINU\ + X_ARM\x10\x11\x12\x19\n\x15PLATFORM_LOGITECH_ARM\x10\x12\x12\x1b\n\x17PL\ + ATFORM_LINUX_BLACKFIN\x10\x13\x12\x14\n\x10PLATFORM_WP7_ARM\x10\x14\x12\ + \x16\n\x12PLATFORM_ONKYO_ARM\x10\x15\x12\x17\n\x13PLATFORM_QNXNTO_ARM\ + \x10\x16\x12\x14\n\x10PLATFORM_BCO_ARM\x10\x17*A\n\x0bFingerprint\x12\ + \x15\n\x11FINGERPRINT_GRAIN\x10\0\x12\x1b\n\x17FINGERPRINT_HMAC_RIPEMD\ + \x10\x01*G\n\x0bCryptosuite\x12\x18\n\x14CRYPTO_SUITE_SHANNON\x10\0\x12\ + \x1e\n\x1aCRYPTO_SUITE_RC4_SHA1_HMAC\x10\x01*\x1e\n\tPowscheme\x12\x11\n\ + \rPOW_HASH_CASH\x10\0*\x89\x02\n\tErrorCode\x12\x11\n\rProtocolError\x10\ + \0\x12\x10\n\x0cTryAnotherAP\x10\x02\x12\x13\n\x0fBadConnectionId\x10\ + \x05\x12\x15\n\x11TravelRestriction\x10\t\x12\x1a\n\x16PremiumAccountReq\ + uired\x10\x0b\x12\x12\n\x0eBadCredentials\x10\x0c\x12\x1f\n\x1bCouldNotV\ + alidateCredentials\x10\r\x12\x11\n\rAccountExists\x10\x0e\x12\x1d\n\x19E\ + xtraVerificationRequired\x10\x0f\x12\x11\n\rInvalidAppKey\x10\x10\x12\ + \x15\n\x11ApplicationBanned\x10\x11\ +"; static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, diff --git a/protocol/src/mercury.rs b/protocol/src/mercury.rs index a01d4f10..84c9ac65 100644 --- a/protocol/src/mercury.rs +++ b/protocol/src/mercury.rs @@ -1,4 +1,4 @@ -// This file is generated. Do not edit +// This file is generated by rust-protobuf 2.0.5. Do not edit // @generated // https://github.com/Manishearth/rust-clippy/issues/702 @@ -30,24 +30,11 @@ pub struct MercuryMultiGetRequest { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for MercuryMultiGetRequest {} - impl MercuryMultiGetRequest { pub fn new() -> MercuryMultiGetRequest { ::std::default::Default::default() } - pub fn default_instance() -> &'static MercuryMultiGetRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const MercuryMultiGetRequest, - }; - unsafe { - instance.get(MercuryMultiGetRequest::new) - } - } - // repeated .MercuryRequest request = 1; pub fn clear_request(&mut self) { @@ -72,18 +59,15 @@ impl MercuryMultiGetRequest { pub fn get_request(&self) -> &[MercuryRequest] { &self.request } - - fn get_request_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.request - } - - fn mut_request_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.request - } } impl ::protobuf::Message for MercuryMultiGetRequest { fn is_initialized(&self) -> bool { + for v in &self.request { + if !v.is_initialized() { + return false; + } + }; true } @@ -148,16 +132,14 @@ impl ::protobuf::Message for MercuryMultiGetRequest { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for MercuryMultiGetRequest { fn new() -> MercuryMultiGetRequest { MercuryMultiGetRequest::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -167,8 +149,8 @@ impl ::protobuf::MessageStatic for MercuryMultiGetRequest { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "request", - MercuryMultiGetRequest::get_request_for_reflect, - MercuryMultiGetRequest::mut_request_for_reflect, + |m: &MercuryMultiGetRequest| { &m.request }, + |m: &mut MercuryMultiGetRequest| { &mut m.request }, )); ::protobuf::reflect::MessageDescriptor::new::( "MercuryMultiGetRequest", @@ -178,6 +160,16 @@ impl ::protobuf::MessageStatic for MercuryMultiGetRequest { }) } } + + fn default_instance() -> &'static MercuryMultiGetRequest { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const MercuryMultiGetRequest, + }; + unsafe { + instance.get(MercuryMultiGetRequest::new) + } + } } impl ::protobuf::Clear for MercuryMultiGetRequest { @@ -208,24 +200,11 @@ pub struct MercuryMultiGetReply { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for MercuryMultiGetReply {} - impl MercuryMultiGetReply { pub fn new() -> MercuryMultiGetReply { ::std::default::Default::default() } - pub fn default_instance() -> &'static MercuryMultiGetReply { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const MercuryMultiGetReply, - }; - unsafe { - instance.get(MercuryMultiGetReply::new) - } - } - // repeated .MercuryReply reply = 1; pub fn clear_reply(&mut self) { @@ -250,18 +229,15 @@ impl MercuryMultiGetReply { pub fn get_reply(&self) -> &[MercuryReply] { &self.reply } - - fn get_reply_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.reply - } - - fn mut_reply_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.reply - } } impl ::protobuf::Message for MercuryMultiGetReply { fn is_initialized(&self) -> bool { + for v in &self.reply { + if !v.is_initialized() { + return false; + } + }; true } @@ -326,16 +302,14 @@ impl ::protobuf::Message for MercuryMultiGetReply { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for MercuryMultiGetReply { fn new() -> MercuryMultiGetReply { MercuryMultiGetReply::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -345,8 +319,8 @@ impl ::protobuf::MessageStatic for MercuryMultiGetReply { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "reply", - MercuryMultiGetReply::get_reply_for_reflect, - MercuryMultiGetReply::mut_reply_for_reflect, + |m: &MercuryMultiGetReply| { &m.reply }, + |m: &mut MercuryMultiGetReply| { &mut m.reply }, )); ::protobuf::reflect::MessageDescriptor::new::( "MercuryMultiGetReply", @@ -356,6 +330,16 @@ impl ::protobuf::MessageStatic for MercuryMultiGetReply { }) } } + + fn default_instance() -> &'static MercuryMultiGetReply { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const MercuryMultiGetReply, + }; + unsafe { + instance.get(MercuryMultiGetReply::new) + } + } } impl ::protobuf::Clear for MercuryMultiGetReply { @@ -389,24 +373,11 @@ pub struct MercuryRequest { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for MercuryRequest {} - impl MercuryRequest { pub fn new() -> MercuryRequest { ::std::default::Default::default() } - pub fn default_instance() -> &'static MercuryRequest { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const MercuryRequest, - }; - unsafe { - instance.get(MercuryRequest::new) - } - } - // optional string uri = 1; pub fn clear_uri(&mut self) { @@ -427,7 +398,7 @@ impl MercuryRequest { pub fn mut_uri(&mut self) -> &mut ::std::string::String { if self.uri.is_none() { self.uri.set_default(); - }; + } self.uri.as_mut().unwrap() } @@ -443,14 +414,6 @@ impl MercuryRequest { } } - fn get_uri_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.uri - } - - fn mut_uri_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.uri - } - // optional string content_type = 2; pub fn clear_content_type(&mut self) { @@ -471,7 +434,7 @@ impl MercuryRequest { pub fn mut_content_type(&mut self) -> &mut ::std::string::String { if self.content_type.is_none() { self.content_type.set_default(); - }; + } self.content_type.as_mut().unwrap() } @@ -487,14 +450,6 @@ impl MercuryRequest { } } - fn get_content_type_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.content_type - } - - fn mut_content_type_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.content_type - } - // optional bytes body = 3; pub fn clear_body(&mut self) { @@ -515,7 +470,7 @@ impl MercuryRequest { pub fn mut_body(&mut self) -> &mut ::std::vec::Vec { if self.body.is_none() { self.body.set_default(); - }; + } self.body.as_mut().unwrap() } @@ -531,14 +486,6 @@ impl MercuryRequest { } } - fn get_body_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.body - } - - fn mut_body_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.body - } - // optional bytes etag = 4; pub fn clear_etag(&mut self) { @@ -559,7 +506,7 @@ impl MercuryRequest { pub fn mut_etag(&mut self) -> &mut ::std::vec::Vec { if self.etag.is_none() { self.etag.set_default(); - }; + } self.etag.as_mut().unwrap() } @@ -574,14 +521,6 @@ impl MercuryRequest { None => &[], } } - - fn get_etag_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.etag - } - - fn mut_etag_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.etag - } } impl ::protobuf::Message for MercuryRequest { @@ -617,36 +556,36 @@ impl ::protobuf::Message for MercuryRequest { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.uri.as_ref() { + if let Some(ref v) = self.uri.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; - if let Some(v) = self.content_type.as_ref() { + } + if let Some(ref v) = self.content_type.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; - if let Some(v) = self.body.as_ref() { + } + if let Some(ref v) = self.body.as_ref() { my_size += ::protobuf::rt::bytes_size(3, &v); - }; - if let Some(v) = self.etag.as_ref() { + } + if let Some(ref v) = self.etag.as_ref() { my_size += ::protobuf::rt::bytes_size(4, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.uri.as_ref() { + if let Some(ref v) = self.uri.as_ref() { os.write_string(1, &v)?; - }; - if let Some(v) = self.content_type.as_ref() { + } + if let Some(ref v) = self.content_type.as_ref() { os.write_string(2, &v)?; - }; - if let Some(v) = self.body.as_ref() { + } + if let Some(ref v) = self.body.as_ref() { os.write_bytes(3, &v)?; - }; - if let Some(v) = self.etag.as_ref() { + } + if let Some(ref v) = self.etag.as_ref() { os.write_bytes(4, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -674,16 +613,14 @@ impl ::protobuf::Message for MercuryRequest { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for MercuryRequest { fn new() -> MercuryRequest { MercuryRequest::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -693,23 +630,23 @@ impl ::protobuf::MessageStatic for MercuryRequest { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "uri", - MercuryRequest::get_uri_for_reflect, - MercuryRequest::mut_uri_for_reflect, + |m: &MercuryRequest| { &m.uri }, + |m: &mut MercuryRequest| { &mut m.uri }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "content_type", - MercuryRequest::get_content_type_for_reflect, - MercuryRequest::mut_content_type_for_reflect, + |m: &MercuryRequest| { &m.content_type }, + |m: &mut MercuryRequest| { &mut m.content_type }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "body", - MercuryRequest::get_body_for_reflect, - MercuryRequest::mut_body_for_reflect, + |m: &MercuryRequest| { &m.body }, + |m: &mut MercuryRequest| { &mut m.body }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "etag", - MercuryRequest::get_etag_for_reflect, - MercuryRequest::mut_etag_for_reflect, + |m: &MercuryRequest| { &m.etag }, + |m: &mut MercuryRequest| { &mut m.etag }, )); ::protobuf::reflect::MessageDescriptor::new::( "MercuryRequest", @@ -719,6 +656,16 @@ impl ::protobuf::MessageStatic for MercuryRequest { }) } } + + fn default_instance() -> &'static MercuryRequest { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const MercuryRequest, + }; + unsafe { + instance.get(MercuryRequest::new) + } + } } impl ::protobuf::Clear for MercuryRequest { @@ -758,24 +705,11 @@ pub struct MercuryReply { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for MercuryReply {} - impl MercuryReply { pub fn new() -> MercuryReply { ::std::default::Default::default() } - pub fn default_instance() -> &'static MercuryReply { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const MercuryReply, - }; - unsafe { - instance.get(MercuryReply::new) - } - } - // optional sint32 status_code = 1; pub fn clear_status_code(&mut self) { @@ -795,14 +729,6 @@ impl MercuryReply { self.status_code.unwrap_or(0) } - fn get_status_code_for_reflect(&self) -> &::std::option::Option { - &self.status_code - } - - fn mut_status_code_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.status_code - } - // optional string status_message = 2; pub fn clear_status_message(&mut self) { @@ -823,7 +749,7 @@ impl MercuryReply { pub fn mut_status_message(&mut self) -> &mut ::std::string::String { if self.status_message.is_none() { self.status_message.set_default(); - }; + } self.status_message.as_mut().unwrap() } @@ -839,14 +765,6 @@ impl MercuryReply { } } - fn get_status_message_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.status_message - } - - fn mut_status_message_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.status_message - } - // optional .MercuryReply.CachePolicy cache_policy = 3; pub fn clear_cache_policy(&mut self) { @@ -866,14 +784,6 @@ impl MercuryReply { self.cache_policy.unwrap_or(MercuryReply_CachePolicy::CACHE_NO) } - fn get_cache_policy_for_reflect(&self) -> &::std::option::Option { - &self.cache_policy - } - - fn mut_cache_policy_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.cache_policy - } - // optional sint32 ttl = 4; pub fn clear_ttl(&mut self) { @@ -893,14 +803,6 @@ impl MercuryReply { self.ttl.unwrap_or(0) } - fn get_ttl_for_reflect(&self) -> &::std::option::Option { - &self.ttl - } - - fn mut_ttl_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.ttl - } - // optional bytes etag = 5; pub fn clear_etag(&mut self) { @@ -921,7 +823,7 @@ impl MercuryReply { pub fn mut_etag(&mut self) -> &mut ::std::vec::Vec { if self.etag.is_none() { self.etag.set_default(); - }; + } self.etag.as_mut().unwrap() } @@ -937,14 +839,6 @@ impl MercuryReply { } } - fn get_etag_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.etag - } - - fn mut_etag_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.etag - } - // optional string content_type = 6; pub fn clear_content_type(&mut self) { @@ -965,7 +859,7 @@ impl MercuryReply { pub fn mut_content_type(&mut self) -> &mut ::std::string::String { if self.content_type.is_none() { self.content_type.set_default(); - }; + } self.content_type.as_mut().unwrap() } @@ -981,14 +875,6 @@ impl MercuryReply { } } - fn get_content_type_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.content_type - } - - fn mut_content_type_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.content_type - } - // optional bytes body = 7; pub fn clear_body(&mut self) { @@ -1009,7 +895,7 @@ impl MercuryReply { pub fn mut_body(&mut self) -> &mut ::std::vec::Vec { if self.body.is_none() { self.body.set_default(); - }; + } self.body.as_mut().unwrap() } @@ -1024,14 +910,6 @@ impl MercuryReply { None => &[], } } - - fn get_body_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.body - } - - fn mut_body_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.body - } } impl ::protobuf::Message for MercuryReply { @@ -1046,7 +924,7 @@ impl ::protobuf::Message for MercuryReply { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.status_code = ::std::option::Option::Some(tmp); }, @@ -1054,16 +932,12 @@ impl ::protobuf::Message for MercuryReply { ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.status_message)?; }, 3 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.cache_policy = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.cache_policy, 3, &mut self.unknown_fields)? }, 4 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.ttl = ::std::option::Option::Some(tmp); }, @@ -1090,25 +964,25 @@ impl ::protobuf::Message for MercuryReply { let mut my_size = 0; if let Some(v) = self.status_code { my_size += ::protobuf::rt::value_varint_zigzag_size(1, v); - }; - if let Some(v) = self.status_message.as_ref() { + } + if let Some(ref v) = self.status_message.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } if let Some(v) = self.cache_policy { my_size += ::protobuf::rt::enum_size(3, v); - }; + } if let Some(v) = self.ttl { my_size += ::protobuf::rt::value_varint_zigzag_size(4, v); - }; - if let Some(v) = self.etag.as_ref() { + } + if let Some(ref v) = self.etag.as_ref() { my_size += ::protobuf::rt::bytes_size(5, &v); - }; - if let Some(v) = self.content_type.as_ref() { + } + if let Some(ref v) = self.content_type.as_ref() { my_size += ::protobuf::rt::string_size(6, &v); - }; - if let Some(v) = self.body.as_ref() { + } + if let Some(ref v) = self.body.as_ref() { my_size += ::protobuf::rt::bytes_size(7, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -1117,25 +991,25 @@ impl ::protobuf::Message for MercuryReply { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.status_code { os.write_sint32(1, v)?; - }; - if let Some(v) = self.status_message.as_ref() { + } + if let Some(ref v) = self.status_message.as_ref() { os.write_string(2, &v)?; - }; + } if let Some(v) = self.cache_policy { os.write_enum(3, v.value())?; - }; + } if let Some(v) = self.ttl { os.write_sint32(4, v)?; - }; - if let Some(v) = self.etag.as_ref() { + } + if let Some(ref v) = self.etag.as_ref() { os.write_bytes(5, &v)?; - }; - if let Some(v) = self.content_type.as_ref() { + } + if let Some(ref v) = self.content_type.as_ref() { os.write_string(6, &v)?; - }; - if let Some(v) = self.body.as_ref() { + } + if let Some(ref v) = self.body.as_ref() { os.write_bytes(7, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1163,16 +1037,14 @@ impl ::protobuf::Message for MercuryReply { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for MercuryReply { fn new() -> MercuryReply { MercuryReply::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1182,38 +1054,38 @@ impl ::protobuf::MessageStatic for MercuryReply { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "status_code", - MercuryReply::get_status_code_for_reflect, - MercuryReply::mut_status_code_for_reflect, + |m: &MercuryReply| { &m.status_code }, + |m: &mut MercuryReply| { &mut m.status_code }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "status_message", - MercuryReply::get_status_message_for_reflect, - MercuryReply::mut_status_message_for_reflect, + |m: &MercuryReply| { &m.status_message }, + |m: &mut MercuryReply| { &mut m.status_message }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "cache_policy", - MercuryReply::get_cache_policy_for_reflect, - MercuryReply::mut_cache_policy_for_reflect, + |m: &MercuryReply| { &m.cache_policy }, + |m: &mut MercuryReply| { &mut m.cache_policy }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "ttl", - MercuryReply::get_ttl_for_reflect, - MercuryReply::mut_ttl_for_reflect, + |m: &MercuryReply| { &m.ttl }, + |m: &mut MercuryReply| { &mut m.ttl }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "etag", - MercuryReply::get_etag_for_reflect, - MercuryReply::mut_etag_for_reflect, + |m: &MercuryReply| { &m.etag }, + |m: &mut MercuryReply| { &mut m.etag }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "content_type", - MercuryReply::get_content_type_for_reflect, - MercuryReply::mut_content_type_for_reflect, + |m: &MercuryReply| { &m.content_type }, + |m: &mut MercuryReply| { &mut m.content_type }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "body", - MercuryReply::get_body_for_reflect, - MercuryReply::mut_body_for_reflect, + |m: &MercuryReply| { &m.body }, + |m: &mut MercuryReply| { &mut m.body }, )); ::protobuf::reflect::MessageDescriptor::new::( "MercuryReply", @@ -1223,6 +1095,16 @@ impl ::protobuf::MessageStatic for MercuryReply { }) } } + + fn default_instance() -> &'static MercuryReply { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const MercuryReply, + }; + unsafe { + instance.get(MercuryReply::new) + } + } } impl ::protobuf::Clear for MercuryReply { @@ -1280,7 +1162,7 @@ impl ::protobuf::ProtobufEnum for MercuryReply_CachePolicy { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -1315,24 +1197,11 @@ pub struct Header { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Header {} - impl Header { pub fn new() -> Header { ::std::default::Default::default() } - pub fn default_instance() -> &'static Header { - static mut instance: ::protobuf::lazy::Lazy
= ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Header, - }; - unsafe { - instance.get(Header::new) - } - } - // optional string uri = 1; pub fn clear_uri(&mut self) { @@ -1353,7 +1222,7 @@ impl Header { pub fn mut_uri(&mut self) -> &mut ::std::string::String { if self.uri.is_none() { self.uri.set_default(); - }; + } self.uri.as_mut().unwrap() } @@ -1369,14 +1238,6 @@ impl Header { } } - fn get_uri_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.uri - } - - fn mut_uri_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.uri - } - // optional string content_type = 2; pub fn clear_content_type(&mut self) { @@ -1397,7 +1258,7 @@ impl Header { pub fn mut_content_type(&mut self) -> &mut ::std::string::String { if self.content_type.is_none() { self.content_type.set_default(); - }; + } self.content_type.as_mut().unwrap() } @@ -1413,14 +1274,6 @@ impl Header { } } - fn get_content_type_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.content_type - } - - fn mut_content_type_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.content_type - } - // optional string method = 3; pub fn clear_method(&mut self) { @@ -1441,7 +1294,7 @@ impl Header { pub fn mut_method(&mut self) -> &mut ::std::string::String { if self.method.is_none() { self.method.set_default(); - }; + } self.method.as_mut().unwrap() } @@ -1457,14 +1310,6 @@ impl Header { } } - fn get_method_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.method - } - - fn mut_method_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.method - } - // optional sint32 status_code = 4; pub fn clear_status_code(&mut self) { @@ -1484,14 +1329,6 @@ impl Header { self.status_code.unwrap_or(0) } - fn get_status_code_for_reflect(&self) -> &::std::option::Option { - &self.status_code - } - - fn mut_status_code_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.status_code - } - // repeated .UserField user_fields = 6; pub fn clear_user_fields(&mut self) { @@ -1516,18 +1353,15 @@ impl Header { pub fn get_user_fields(&self) -> &[UserField] { &self.user_fields } - - fn get_user_fields_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.user_fields - } - - fn mut_user_fields_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.user_fields - } } impl ::protobuf::Message for Header { fn is_initialized(&self) -> bool { + for v in &self.user_fields { + if !v.is_initialized() { + return false; + } + }; true } @@ -1547,7 +1381,7 @@ impl ::protobuf::Message for Header { 4 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.status_code = ::std::option::Option::Some(tmp); }, @@ -1566,18 +1400,18 @@ impl ::protobuf::Message for Header { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.uri.as_ref() { + if let Some(ref v) = self.uri.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; - if let Some(v) = self.content_type.as_ref() { + } + if let Some(ref v) = self.content_type.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; - if let Some(v) = self.method.as_ref() { + } + if let Some(ref v) = self.method.as_ref() { my_size += ::protobuf::rt::string_size(3, &v); - }; + } if let Some(v) = self.status_code { my_size += ::protobuf::rt::value_varint_zigzag_size(4, v); - }; + } for value in &self.user_fields { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -1588,18 +1422,18 @@ impl ::protobuf::Message for Header { } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.uri.as_ref() { + if let Some(ref v) = self.uri.as_ref() { os.write_string(1, &v)?; - }; - if let Some(v) = self.content_type.as_ref() { + } + if let Some(ref v) = self.content_type.as_ref() { os.write_string(2, &v)?; - }; - if let Some(v) = self.method.as_ref() { + } + if let Some(ref v) = self.method.as_ref() { os.write_string(3, &v)?; - }; + } if let Some(v) = self.status_code { os.write_sint32(4, v)?; - }; + } for v in &self.user_fields { os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -1632,16 +1466,14 @@ impl ::protobuf::Message for Header { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Header { fn new() -> Header { Header::new() } - fn descriptor_static(_: ::std::option::Option
) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1651,28 +1483,28 @@ impl ::protobuf::MessageStatic for Header { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "uri", - Header::get_uri_for_reflect, - Header::mut_uri_for_reflect, + |m: &Header| { &m.uri }, + |m: &mut Header| { &mut m.uri }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "content_type", - Header::get_content_type_for_reflect, - Header::mut_content_type_for_reflect, + |m: &Header| { &m.content_type }, + |m: &mut Header| { &mut m.content_type }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "method", - Header::get_method_for_reflect, - Header::mut_method_for_reflect, + |m: &Header| { &m.method }, + |m: &mut Header| { &mut m.method }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "status_code", - Header::get_status_code_for_reflect, - Header::mut_status_code_for_reflect, + |m: &Header| { &m.status_code }, + |m: &mut Header| { &mut m.status_code }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "user_fields", - Header::get_user_fields_for_reflect, - Header::mut_user_fields_for_reflect, + |m: &Header| { &m.user_fields }, + |m: &mut Header| { &mut m.user_fields }, )); ::protobuf::reflect::MessageDescriptor::new::
( "Header", @@ -1682,6 +1514,16 @@ impl ::protobuf::MessageStatic for Header { }) } } + + fn default_instance() -> &'static Header { + static mut instance: ::protobuf::lazy::Lazy
= ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Header, + }; + unsafe { + instance.get(Header::new) + } + } } impl ::protobuf::Clear for Header { @@ -1717,24 +1559,11 @@ pub struct UserField { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for UserField {} - impl UserField { pub fn new() -> UserField { ::std::default::Default::default() } - pub fn default_instance() -> &'static UserField { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const UserField, - }; - unsafe { - instance.get(UserField::new) - } - } - // optional string key = 1; pub fn clear_key(&mut self) { @@ -1755,7 +1584,7 @@ impl UserField { pub fn mut_key(&mut self) -> &mut ::std::string::String { if self.key.is_none() { self.key.set_default(); - }; + } self.key.as_mut().unwrap() } @@ -1771,14 +1600,6 @@ impl UserField { } } - fn get_key_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.key - } - - fn mut_key_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.key - } - // optional bytes value = 2; pub fn clear_value(&mut self) { @@ -1799,7 +1620,7 @@ impl UserField { pub fn mut_value(&mut self) -> &mut ::std::vec::Vec { if self.value.is_none() { self.value.set_default(); - }; + } self.value.as_mut().unwrap() } @@ -1814,14 +1635,6 @@ impl UserField { None => &[], } } - - fn get_value_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.value - } - - fn mut_value_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.value - } } impl ::protobuf::Message for UserField { @@ -1851,24 +1664,24 @@ impl ::protobuf::Message for UserField { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.key.as_ref() { + if let Some(ref v) = self.key.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; - if let Some(v) = self.value.as_ref() { + } + if let Some(ref v) = self.value.as_ref() { my_size += ::protobuf::rt::bytes_size(2, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.key.as_ref() { + if let Some(ref v) = self.key.as_ref() { os.write_string(1, &v)?; - }; - if let Some(v) = self.value.as_ref() { + } + if let Some(ref v) = self.value.as_ref() { os.write_bytes(2, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1896,16 +1709,14 @@ impl ::protobuf::Message for UserField { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for UserField { fn new() -> UserField { UserField::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1915,13 +1726,13 @@ impl ::protobuf::MessageStatic for UserField { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "key", - UserField::get_key_for_reflect, - UserField::mut_key_for_reflect, + |m: &UserField| { &m.key }, + |m: &mut UserField| { &mut m.key }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "value", - UserField::get_value_for_reflect, - UserField::mut_value_for_reflect, + |m: &UserField| { &m.value }, + |m: &mut UserField| { &mut m.value }, )); ::protobuf::reflect::MessageDescriptor::new::( "UserField", @@ -1931,6 +1742,16 @@ impl ::protobuf::MessageStatic for UserField { }) } } + + fn default_instance() -> &'static UserField { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const UserField, + }; + unsafe { + instance.get(UserField::new) + } + } } impl ::protobuf::Clear for UserField { @@ -1953,165 +1774,28 @@ impl ::protobuf::reflect::ProtobufValue for UserField { } } -static file_descriptor_proto_data: &'static [u8] = &[ - 0x0a, 0x0d, 0x6d, 0x65, 0x72, 0x63, 0x75, 0x72, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0x43, 0x0a, 0x16, 0x4d, 0x65, 0x72, 0x63, 0x75, 0x72, 0x79, 0x4d, 0x75, 0x6c, 0x74, 0x69, 0x47, - 0x65, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x29, 0x0a, 0x07, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x4d, 0x65, 0x72, - 0x63, 0x75, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x22, 0x3b, 0x0a, 0x14, 0x4d, 0x65, 0x72, 0x63, 0x75, 0x72, 0x79, 0x4d, - 0x75, 0x6c, 0x74, 0x69, 0x47, 0x65, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x23, 0x0a, 0x05, - 0x72, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x4d, 0x65, - 0x72, 0x63, 0x75, 0x72, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6c, - 0x79, 0x22, 0x6d, 0x0a, 0x0e, 0x4d, 0x65, 0x72, 0x63, 0x75, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, - 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, - 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x12, 0x12, 0x0a, 0x04, - 0x65, 0x74, 0x61, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, - 0x22, 0xb3, 0x02, 0x0a, 0x0c, 0x4d, 0x65, 0x72, 0x63, 0x75, 0x72, 0x79, 0x52, 0x65, 0x70, 0x6c, - 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, - 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x3c, 0x0a, 0x0c, 0x63, 0x61, 0x63, - 0x68, 0x65, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x19, 0x2e, 0x4d, 0x65, 0x72, 0x63, 0x75, 0x72, 0x79, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x43, - 0x61, 0x63, 0x68, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0b, 0x63, 0x61, 0x63, 0x68, - 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x74, 0x6c, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x11, 0x52, 0x03, 0x74, 0x74, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, - 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x21, 0x0a, - 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x62, 0x6f, 0x64, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, - 0x62, 0x6f, 0x64, 0x79, 0x22, 0x40, 0x0a, 0x0b, 0x43, 0x61, 0x63, 0x68, 0x65, 0x50, 0x6f, 0x6c, - 0x69, 0x63, 0x79, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x4e, 0x4f, 0x10, - 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x50, 0x52, 0x49, 0x56, 0x41, - 0x54, 0x45, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x43, 0x41, 0x43, 0x48, 0x45, 0x5f, 0x50, 0x55, - 0x42, 0x4c, 0x49, 0x43, 0x10, 0x03, 0x22, 0xa3, 0x01, 0x0a, 0x06, 0x48, 0x65, 0x61, 0x64, 0x65, - 0x72, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x75, 0x72, 0x69, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x74, - 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, - 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1f, - 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x64, 0x65, 0x12, - 0x2b, 0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x06, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x65, 0x6c, 0x64, - 0x52, 0x0a, 0x75, 0x73, 0x65, 0x72, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x22, 0x33, 0x0a, 0x09, - 0x55, 0x73, 0x65, 0x72, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, - 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x4a, 0xaf, 0x0d, 0x0a, 0x06, 0x12, 0x04, 0x00, 0x00, 0x2c, 0x01, 0x0a, 0x08, 0x0a, 0x01, - 0x0c, 0x12, 0x03, 0x00, 0x00, 0x12, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x00, 0x12, 0x04, 0x02, 0x00, - 0x04, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x02, 0x08, 0x1e, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x03, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x00, 0x04, 0x12, 0x03, 0x03, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x00, 0x06, 0x12, 0x03, 0x03, 0x0d, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x01, - 0x12, 0x03, 0x03, 0x1c, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, - 0x03, 0x26, 0x29, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x01, 0x12, 0x04, 0x06, 0x00, 0x08, 0x01, 0x0a, - 0x0a, 0x0a, 0x03, 0x04, 0x01, 0x01, 0x12, 0x03, 0x06, 0x08, 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x01, 0x02, 0x00, 0x12, 0x03, 0x07, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, - 0x04, 0x12, 0x03, 0x07, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x06, 0x12, - 0x03, 0x07, 0x0d, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x07, - 0x1a, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x03, 0x12, 0x03, 0x07, 0x22, 0x25, - 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x02, 0x12, 0x04, 0x0a, 0x00, 0x0f, 0x01, 0x0a, 0x0a, 0x0a, 0x03, - 0x04, 0x02, 0x01, 0x12, 0x03, 0x0a, 0x08, 0x16, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x00, - 0x12, 0x03, 0x0b, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x04, 0x12, 0x03, - 0x0b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x05, 0x12, 0x03, 0x0b, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x0b, 0x14, 0x17, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x0b, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x0c, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x01, 0x04, 0x12, 0x03, 0x0c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, - 0x05, 0x12, 0x03, 0x0c, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x0c, 0x14, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x03, 0x12, 0x03, 0x0c, - 0x23, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x02, 0x12, 0x03, 0x0d, 0x04, 0x1e, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x04, 0x12, 0x03, 0x0d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x02, 0x02, 0x02, 0x05, 0x12, 0x03, 0x0d, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, 0x0d, 0x13, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, - 0x02, 0x03, 0x12, 0x03, 0x0d, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x03, 0x12, - 0x03, 0x0e, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x04, 0x12, 0x03, 0x0e, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x05, 0x12, 0x03, 0x0e, 0x0d, 0x12, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x01, 0x12, 0x03, 0x0e, 0x13, 0x17, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x03, 0x12, 0x03, 0x0e, 0x1a, 0x1d, 0x0a, 0x0a, 0x0a, 0x02, - 0x04, 0x03, 0x12, 0x04, 0x11, 0x00, 0x1e, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x03, 0x01, 0x12, - 0x03, 0x11, 0x08, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x00, 0x12, 0x03, 0x12, 0x04, - 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x04, 0x12, 0x03, 0x12, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x05, 0x12, 0x03, 0x12, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x03, 0x02, 0x00, 0x01, 0x12, 0x03, 0x12, 0x14, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x03, 0x02, 0x00, 0x03, 0x12, 0x03, 0x12, 0x22, 0x25, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, - 0x01, 0x12, 0x03, 0x13, 0x04, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x04, 0x12, - 0x03, 0x13, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x05, 0x12, 0x03, 0x13, - 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x01, 0x12, 0x03, 0x13, 0x14, 0x22, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x01, 0x03, 0x12, 0x03, 0x13, 0x25, 0x28, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x03, 0x02, 0x02, 0x12, 0x03, 0x14, 0x04, 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x03, 0x02, 0x02, 0x04, 0x12, 0x03, 0x14, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, - 0x02, 0x06, 0x12, 0x03, 0x14, 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x02, 0x01, - 0x12, 0x03, 0x14, 0x19, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x02, 0x03, 0x12, 0x03, - 0x14, 0x28, 0x2b, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x03, 0x04, 0x00, 0x12, 0x04, 0x15, 0x04, 0x19, - 0x05, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x15, 0x09, 0x14, 0x0a, - 0x0d, 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x16, 0x08, 0x17, 0x0a, 0x0e, - 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x16, 0x08, 0x10, 0x0a, 0x0e, - 0x0a, 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x03, 0x16, 0x13, 0x16, 0x0a, 0x0d, - 0x0a, 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x17, 0x08, 0x1c, 0x0a, 0x0e, 0x0a, - 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x17, 0x08, 0x15, 0x0a, 0x0e, 0x0a, - 0x07, 0x04, 0x03, 0x04, 0x00, 0x02, 0x01, 0x02, 0x12, 0x03, 0x17, 0x18, 0x1b, 0x0a, 0x0d, 0x0a, - 0x06, 0x04, 0x03, 0x04, 0x00, 0x02, 0x02, 0x12, 0x03, 0x18, 0x08, 0x1b, 0x0a, 0x0e, 0x0a, 0x07, - 0x04, 0x03, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, 0x03, 0x18, 0x08, 0x14, 0x0a, 0x0e, 0x0a, 0x07, - 0x04, 0x03, 0x04, 0x00, 0x02, 0x02, 0x02, 0x12, 0x03, 0x18, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x03, 0x02, 0x03, 0x12, 0x03, 0x1a, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, - 0x03, 0x04, 0x12, 0x03, 0x1a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x05, - 0x12, 0x03, 0x1a, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x01, 0x12, 0x03, - 0x1a, 0x14, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x03, 0x03, 0x12, 0x03, 0x1a, 0x1a, - 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x04, 0x12, 0x03, 0x1b, 0x04, 0x1e, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x03, 0x02, 0x04, 0x04, 0x12, 0x03, 0x1b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x03, 0x02, 0x04, 0x05, 0x12, 0x03, 0x1b, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, - 0x02, 0x04, 0x01, 0x12, 0x03, 0x1b, 0x13, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x04, - 0x03, 0x12, 0x03, 0x1b, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x05, 0x12, 0x03, - 0x1c, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05, 0x04, 0x12, 0x03, 0x1c, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05, 0x05, 0x12, 0x03, 0x1c, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x05, 0x01, 0x12, 0x03, 0x1c, 0x14, 0x20, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x03, 0x02, 0x05, 0x03, 0x12, 0x03, 0x1c, 0x23, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x03, 0x02, 0x06, 0x12, 0x03, 0x1d, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, - 0x04, 0x12, 0x03, 0x1d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, 0x05, 0x12, - 0x03, 0x1d, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, 0x01, 0x12, 0x03, 0x1d, - 0x13, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x06, 0x03, 0x12, 0x03, 0x1d, 0x1a, 0x1d, - 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x04, 0x12, 0x04, 0x21, 0x00, 0x27, 0x01, 0x0a, 0x0a, 0x0a, 0x03, - 0x04, 0x04, 0x01, 0x12, 0x03, 0x21, 0x08, 0x0e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x00, - 0x12, 0x03, 0x22, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x04, 0x12, 0x03, - 0x22, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x05, 0x12, 0x03, 0x22, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x01, 0x12, 0x03, 0x22, 0x14, 0x17, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x03, 0x12, 0x03, 0x22, 0x1a, 0x1e, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x04, 0x02, 0x01, 0x12, 0x03, 0x23, 0x04, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, - 0x02, 0x01, 0x04, 0x12, 0x03, 0x23, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, - 0x05, 0x12, 0x03, 0x23, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x23, 0x14, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x03, 0x12, 0x03, 0x23, - 0x23, 0x27, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x02, 0x12, 0x03, 0x24, 0x04, 0x22, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x04, 0x12, 0x03, 0x24, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x04, 0x02, 0x02, 0x05, 0x12, 0x03, 0x24, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x24, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x02, 0x03, 0x12, 0x03, 0x24, 0x1d, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x03, 0x12, - 0x03, 0x25, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x03, 0x04, 0x12, 0x03, 0x25, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x03, 0x05, 0x12, 0x03, 0x25, 0x0d, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x03, 0x01, 0x12, 0x03, 0x25, 0x14, 0x1f, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x04, 0x02, 0x03, 0x03, 0x12, 0x03, 0x25, 0x22, 0x26, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x04, 0x02, 0x04, 0x12, 0x03, 0x26, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x04, 0x04, 0x12, 0x03, 0x26, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x04, 0x06, - 0x12, 0x03, 0x26, 0x0d, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x04, 0x01, 0x12, 0x03, - 0x26, 0x17, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x04, 0x03, 0x12, 0x03, 0x26, 0x25, - 0x29, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x05, 0x12, 0x04, 0x29, 0x00, 0x2c, 0x01, 0x0a, 0x0a, 0x0a, - 0x03, 0x04, 0x05, 0x01, 0x12, 0x03, 0x29, 0x08, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, - 0x00, 0x12, 0x03, 0x2a, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x04, 0x12, - 0x03, 0x2a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x05, 0x12, 0x03, 0x2a, - 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x01, 0x12, 0x03, 0x2a, 0x14, 0x17, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x03, 0x12, 0x03, 0x2a, 0x1a, 0x1e, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 0x03, 0x2b, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x02, 0x01, 0x04, 0x12, 0x03, 0x2b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x01, 0x05, 0x12, 0x03, 0x2b, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x2b, 0x13, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x03, 0x12, 0x03, - 0x2b, 0x1b, 0x1f, -]; +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\rmercury.proto\"C\n\x16MercuryMultiGetRequest\x12)\n\x07request\x18\ + \x01\x20\x03(\x0b2\x0f.MercuryRequestR\x07request\";\n\x14MercuryMultiGe\ + tReply\x12#\n\x05reply\x18\x01\x20\x03(\x0b2\r.MercuryReplyR\x05reply\"m\ + \n\x0eMercuryRequest\x12\x10\n\x03uri\x18\x01\x20\x01(\tR\x03uri\x12!\n\ + \x0ccontent_type\x18\x02\x20\x01(\tR\x0bcontentType\x12\x12\n\x04body\ + \x18\x03\x20\x01(\x0cR\x04body\x12\x12\n\x04etag\x18\x04\x20\x01(\x0cR\ + \x04etag\"\xb3\x02\n\x0cMercuryReply\x12\x1f\n\x0bstatus_code\x18\x01\ + \x20\x01(\x11R\nstatusCode\x12%\n\x0estatus_message\x18\x02\x20\x01(\tR\ + \rstatusMessage\x12<\n\x0ccache_policy\x18\x03\x20\x01(\x0e2\x19.Mercury\ + Reply.CachePolicyR\x0bcachePolicy\x12\x10\n\x03ttl\x18\x04\x20\x01(\x11R\ + \x03ttl\x12\x12\n\x04etag\x18\x05\x20\x01(\x0cR\x04etag\x12!\n\x0cconten\ + t_type\x18\x06\x20\x01(\tR\x0bcontentType\x12\x12\n\x04body\x18\x07\x20\ + \x01(\x0cR\x04body\"@\n\x0bCachePolicy\x12\x0c\n\x08CACHE_NO\x10\x01\x12\ + \x11\n\rCACHE_PRIVATE\x10\x02\x12\x10\n\x0cCACHE_PUBLIC\x10\x03\"\xa3\ + \x01\n\x06Header\x12\x10\n\x03uri\x18\x01\x20\x01(\tR\x03uri\x12!\n\x0cc\ + ontent_type\x18\x02\x20\x01(\tR\x0bcontentType\x12\x16\n\x06method\x18\ + \x03\x20\x01(\tR\x06method\x12\x1f\n\x0bstatus_code\x18\x04\x20\x01(\x11\ + R\nstatusCode\x12+\n\x0buser_fields\x18\x06\x20\x03(\x0b2\n.UserFieldR\n\ + userFields\"3\n\tUserField\x12\x10\n\x03key\x18\x01\x20\x01(\tR\x03key\ + \x12\x14\n\x05value\x18\x02\x20\x01(\x0cR\x05value\ +"; static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, diff --git a/protocol/src/metadata.rs b/protocol/src/metadata.rs index 5f899405..8393d917 100644 --- a/protocol/src/metadata.rs +++ b/protocol/src/metadata.rs @@ -1,4 +1,4 @@ -// This file is generated. Do not edit +// This file is generated by rust-protobuf 2.0.5. Do not edit // @generated // https://github.com/Manishearth/rust-clippy/issues/702 @@ -31,24 +31,11 @@ pub struct TopTracks { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for TopTracks {} - impl TopTracks { pub fn new() -> TopTracks { ::std::default::Default::default() } - pub fn default_instance() -> &'static TopTracks { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const TopTracks, - }; - unsafe { - instance.get(TopTracks::new) - } - } - // optional string country = 1; pub fn clear_country(&mut self) { @@ -69,7 +56,7 @@ impl TopTracks { pub fn mut_country(&mut self) -> &mut ::std::string::String { if self.country.is_none() { self.country.set_default(); - }; + } self.country.as_mut().unwrap() } @@ -85,14 +72,6 @@ impl TopTracks { } } - fn get_country_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.country - } - - fn mut_country_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.country - } - // repeated .Track track = 2; pub fn clear_track(&mut self) { @@ -117,18 +96,15 @@ impl TopTracks { pub fn get_track(&self) -> &[Track] { &self.track } - - fn get_track_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.track - } - - fn mut_track_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.track - } } impl ::protobuf::Message for TopTracks { fn is_initialized(&self) -> bool { + for v in &self.track { + if !v.is_initialized() { + return false; + } + }; true } @@ -154,9 +130,9 @@ impl ::protobuf::Message for TopTracks { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.country.as_ref() { + if let Some(ref v) = self.country.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; + } for value in &self.track { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -167,9 +143,9 @@ impl ::protobuf::Message for TopTracks { } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.country.as_ref() { + if let Some(ref v) = self.country.as_ref() { os.write_string(1, &v)?; - }; + } for v in &self.track { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -202,16 +178,14 @@ impl ::protobuf::Message for TopTracks { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for TopTracks { fn new() -> TopTracks { TopTracks::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -221,13 +195,13 @@ impl ::protobuf::MessageStatic for TopTracks { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "country", - TopTracks::get_country_for_reflect, - TopTracks::mut_country_for_reflect, + |m: &TopTracks| { &m.country }, + |m: &mut TopTracks| { &mut m.country }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "track", - TopTracks::get_track_for_reflect, - TopTracks::mut_track_for_reflect, + |m: &TopTracks| { &m.track }, + |m: &mut TopTracks| { &mut m.track }, )); ::protobuf::reflect::MessageDescriptor::new::( "TopTracks", @@ -237,6 +211,16 @@ impl ::protobuf::MessageStatic for TopTracks { }) } } + + fn default_instance() -> &'static TopTracks { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const TopTracks, + }; + unsafe { + instance.get(TopTracks::new) + } + } } impl ::protobuf::Clear for TopTracks { @@ -270,24 +254,11 @@ pub struct ActivityPeriod { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ActivityPeriod {} - impl ActivityPeriod { pub fn new() -> ActivityPeriod { ::std::default::Default::default() } - pub fn default_instance() -> &'static ActivityPeriod { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ActivityPeriod, - }; - unsafe { - instance.get(ActivityPeriod::new) - } - } - // optional sint32 start_year = 1; pub fn clear_start_year(&mut self) { @@ -307,14 +278,6 @@ impl ActivityPeriod { self.start_year.unwrap_or(0) } - fn get_start_year_for_reflect(&self) -> &::std::option::Option { - &self.start_year - } - - fn mut_start_year_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.start_year - } - // optional sint32 end_year = 2; pub fn clear_end_year(&mut self) { @@ -334,14 +297,6 @@ impl ActivityPeriod { self.end_year.unwrap_or(0) } - fn get_end_year_for_reflect(&self) -> &::std::option::Option { - &self.end_year - } - - fn mut_end_year_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.end_year - } - // optional sint32 decade = 3; pub fn clear_decade(&mut self) { @@ -360,14 +315,6 @@ impl ActivityPeriod { pub fn get_decade(&self) -> i32 { self.decade.unwrap_or(0) } - - fn get_decade_for_reflect(&self) -> &::std::option::Option { - &self.decade - } - - fn mut_decade_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.decade - } } impl ::protobuf::Message for ActivityPeriod { @@ -382,21 +329,21 @@ impl ::protobuf::Message for ActivityPeriod { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.start_year = ::std::option::Option::Some(tmp); }, 2 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.end_year = ::std::option::Option::Some(tmp); }, 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.decade = ::std::option::Option::Some(tmp); }, @@ -414,13 +361,13 @@ impl ::protobuf::Message for ActivityPeriod { let mut my_size = 0; if let Some(v) = self.start_year { my_size += ::protobuf::rt::value_varint_zigzag_size(1, v); - }; + } if let Some(v) = self.end_year { my_size += ::protobuf::rt::value_varint_zigzag_size(2, v); - }; + } if let Some(v) = self.decade { my_size += ::protobuf::rt::value_varint_zigzag_size(3, v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -429,13 +376,13 @@ impl ::protobuf::Message for ActivityPeriod { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.start_year { os.write_sint32(1, v)?; - }; + } if let Some(v) = self.end_year { os.write_sint32(2, v)?; - }; + } if let Some(v) = self.decade { os.write_sint32(3, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -463,16 +410,14 @@ impl ::protobuf::Message for ActivityPeriod { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ActivityPeriod { fn new() -> ActivityPeriod { ActivityPeriod::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -482,18 +427,18 @@ impl ::protobuf::MessageStatic for ActivityPeriod { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "start_year", - ActivityPeriod::get_start_year_for_reflect, - ActivityPeriod::mut_start_year_for_reflect, + |m: &ActivityPeriod| { &m.start_year }, + |m: &mut ActivityPeriod| { &mut m.start_year }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "end_year", - ActivityPeriod::get_end_year_for_reflect, - ActivityPeriod::mut_end_year_for_reflect, + |m: &ActivityPeriod| { &m.end_year }, + |m: &mut ActivityPeriod| { &mut m.end_year }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "decade", - ActivityPeriod::get_decade_for_reflect, - ActivityPeriod::mut_decade_for_reflect, + |m: &ActivityPeriod| { &m.decade }, + |m: &mut ActivityPeriod| { &mut m.decade }, )); ::protobuf::reflect::MessageDescriptor::new::( "ActivityPeriod", @@ -503,6 +448,16 @@ impl ::protobuf::MessageStatic for ActivityPeriod { }) } } + + fn default_instance() -> &'static ActivityPeriod { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ActivityPeriod, + }; + unsafe { + instance.get(ActivityPeriod::new) + } + } } impl ::protobuf::Clear for ActivityPeriod { @@ -551,24 +506,11 @@ pub struct Artist { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Artist {} - impl Artist { pub fn new() -> Artist { ::std::default::Default::default() } - pub fn default_instance() -> &'static Artist { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Artist, - }; - unsafe { - instance.get(Artist::new) - } - } - // optional bytes gid = 1; pub fn clear_gid(&mut self) { @@ -589,7 +531,7 @@ impl Artist { pub fn mut_gid(&mut self) -> &mut ::std::vec::Vec { if self.gid.is_none() { self.gid.set_default(); - }; + } self.gid.as_mut().unwrap() } @@ -605,14 +547,6 @@ impl Artist { } } - fn get_gid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gid - } - - fn mut_gid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gid - } - // optional string name = 2; pub fn clear_name(&mut self) { @@ -633,7 +567,7 @@ impl Artist { pub fn mut_name(&mut self) -> &mut ::std::string::String { if self.name.is_none() { self.name.set_default(); - }; + } self.name.as_mut().unwrap() } @@ -649,14 +583,6 @@ impl Artist { } } - fn get_name_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.name - } - - fn mut_name_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.name - } - // optional sint32 popularity = 3; pub fn clear_popularity(&mut self) { @@ -676,14 +602,6 @@ impl Artist { self.popularity.unwrap_or(0) } - fn get_popularity_for_reflect(&self) -> &::std::option::Option { - &self.popularity - } - - fn mut_popularity_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.popularity - } - // repeated .TopTracks top_track = 4; pub fn clear_top_track(&mut self) { @@ -709,14 +627,6 @@ impl Artist { &self.top_track } - fn get_top_track_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.top_track - } - - fn mut_top_track_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.top_track - } - // repeated .AlbumGroup album_group = 5; pub fn clear_album_group(&mut self) { @@ -742,14 +652,6 @@ impl Artist { &self.album_group } - fn get_album_group_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.album_group - } - - fn mut_album_group_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.album_group - } - // repeated .AlbumGroup single_group = 6; pub fn clear_single_group(&mut self) { @@ -775,14 +677,6 @@ impl Artist { &self.single_group } - fn get_single_group_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.single_group - } - - fn mut_single_group_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.single_group - } - // repeated .AlbumGroup compilation_group = 7; pub fn clear_compilation_group(&mut self) { @@ -808,14 +702,6 @@ impl Artist { &self.compilation_group } - fn get_compilation_group_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.compilation_group - } - - fn mut_compilation_group_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.compilation_group - } - // repeated .AlbumGroup appears_on_group = 8; pub fn clear_appears_on_group(&mut self) { @@ -841,14 +727,6 @@ impl Artist { &self.appears_on_group } - fn get_appears_on_group_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.appears_on_group - } - - fn mut_appears_on_group_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.appears_on_group - } - // repeated string genre = 9; pub fn clear_genre(&mut self) { @@ -874,14 +752,6 @@ impl Artist { &self.genre } - fn get_genre_for_reflect(&self) -> &::protobuf::RepeatedField<::std::string::String> { - &self.genre - } - - fn mut_genre_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { - &mut self.genre - } - // repeated .ExternalId external_id = 10; pub fn clear_external_id(&mut self) { @@ -907,14 +777,6 @@ impl Artist { &self.external_id } - fn get_external_id_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.external_id - } - - fn mut_external_id_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.external_id - } - // repeated .Image portrait = 11; pub fn clear_portrait(&mut self) { @@ -940,14 +802,6 @@ impl Artist { &self.portrait } - fn get_portrait_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.portrait - } - - fn mut_portrait_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.portrait - } - // repeated .Biography biography = 12; pub fn clear_biography(&mut self) { @@ -973,14 +827,6 @@ impl Artist { &self.biography } - fn get_biography_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.biography - } - - fn mut_biography_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.biography - } - // repeated .ActivityPeriod activity_period = 13; pub fn clear_activity_period(&mut self) { @@ -1006,14 +852,6 @@ impl Artist { &self.activity_period } - fn get_activity_period_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.activity_period - } - - fn mut_activity_period_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.activity_period - } - // repeated .Restriction restriction = 14; pub fn clear_restriction(&mut self) { @@ -1039,14 +877,6 @@ impl Artist { &self.restriction } - fn get_restriction_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.restriction - } - - fn mut_restriction_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.restriction - } - // repeated .Artist related = 15; pub fn clear_related(&mut self) { @@ -1072,14 +902,6 @@ impl Artist { &self.related } - fn get_related_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.related - } - - fn mut_related_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.related - } - // optional bool is_portrait_album_cover = 16; pub fn clear_is_portrait_album_cover(&mut self) { @@ -1099,14 +921,6 @@ impl Artist { self.is_portrait_album_cover.unwrap_or(false) } - fn get_is_portrait_album_cover_for_reflect(&self) -> &::std::option::Option { - &self.is_portrait_album_cover - } - - fn mut_is_portrait_album_cover_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.is_portrait_album_cover - } - // optional .ImageGroup portrait_group = 17; pub fn clear_portrait_group(&mut self) { @@ -1127,7 +941,7 @@ impl Artist { pub fn mut_portrait_group(&mut self) -> &mut ImageGroup { if self.portrait_group.is_none() { self.portrait_group.set_default(); - }; + } self.portrait_group.as_mut().unwrap() } @@ -1139,18 +953,70 @@ impl Artist { pub fn get_portrait_group(&self) -> &ImageGroup { self.portrait_group.as_ref().unwrap_or_else(|| ImageGroup::default_instance()) } - - fn get_portrait_group_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.portrait_group - } - - fn mut_portrait_group_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.portrait_group - } } impl ::protobuf::Message for Artist { fn is_initialized(&self) -> bool { + for v in &self.top_track { + if !v.is_initialized() { + return false; + } + }; + for v in &self.album_group { + if !v.is_initialized() { + return false; + } + }; + for v in &self.single_group { + if !v.is_initialized() { + return false; + } + }; + for v in &self.compilation_group { + if !v.is_initialized() { + return false; + } + }; + for v in &self.appears_on_group { + if !v.is_initialized() { + return false; + } + }; + for v in &self.external_id { + if !v.is_initialized() { + return false; + } + }; + for v in &self.portrait { + if !v.is_initialized() { + return false; + } + }; + for v in &self.biography { + if !v.is_initialized() { + return false; + } + }; + for v in &self.activity_period { + if !v.is_initialized() { + return false; + } + }; + for v in &self.restriction { + if !v.is_initialized() { + return false; + } + }; + for v in &self.related { + if !v.is_initialized() { + return false; + } + }; + for v in &self.portrait_group { + if !v.is_initialized() { + return false; + } + }; true } @@ -1167,7 +1033,7 @@ impl ::protobuf::Message for Artist { 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.popularity = ::std::option::Option::Some(tmp); }, @@ -1210,7 +1076,7 @@ impl ::protobuf::Message for Artist { 16 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.is_portrait_album_cover = ::std::option::Option::Some(tmp); }, @@ -1229,15 +1095,15 @@ impl ::protobuf::Message for Artist { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { my_size += ::protobuf::rt::bytes_size(1, &v); - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } if let Some(v) = self.popularity { my_size += ::protobuf::rt::value_varint_zigzag_size(3, v); - }; + } for value in &self.top_track { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -1287,26 +1153,26 @@ impl ::protobuf::Message for Artist { }; if let Some(v) = self.is_portrait_album_cover { my_size += 3; - }; - if let Some(v) = self.portrait_group.as_ref() { + } + if let Some(ref v) = self.portrait_group.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { os.write_bytes(1, &v)?; - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { os.write_string(2, &v)?; - }; + } if let Some(v) = self.popularity { os.write_sint32(3, v)?; - }; + } for v in &self.top_track { os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -1367,12 +1233,12 @@ impl ::protobuf::Message for Artist { }; if let Some(v) = self.is_portrait_album_cover { os.write_bool(16, v)?; - }; - if let Some(v) = self.portrait_group.as_ref() { + } + if let Some(ref v) = self.portrait_group.as_ref() { os.write_tag(17, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1400,16 +1266,14 @@ impl ::protobuf::Message for Artist { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Artist { fn new() -> Artist { Artist::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1419,88 +1283,88 @@ impl ::protobuf::MessageStatic for Artist { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gid", - Artist::get_gid_for_reflect, - Artist::mut_gid_for_reflect, + |m: &Artist| { &m.gid }, + |m: &mut Artist| { &mut m.gid }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "name", - Artist::get_name_for_reflect, - Artist::mut_name_for_reflect, + |m: &Artist| { &m.name }, + |m: &mut Artist| { &mut m.name }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "popularity", - Artist::get_popularity_for_reflect, - Artist::mut_popularity_for_reflect, + |m: &Artist| { &m.popularity }, + |m: &mut Artist| { &mut m.popularity }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "top_track", - Artist::get_top_track_for_reflect, - Artist::mut_top_track_for_reflect, + |m: &Artist| { &m.top_track }, + |m: &mut Artist| { &mut m.top_track }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "album_group", - Artist::get_album_group_for_reflect, - Artist::mut_album_group_for_reflect, + |m: &Artist| { &m.album_group }, + |m: &mut Artist| { &mut m.album_group }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "single_group", - Artist::get_single_group_for_reflect, - Artist::mut_single_group_for_reflect, + |m: &Artist| { &m.single_group }, + |m: &mut Artist| { &mut m.single_group }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "compilation_group", - Artist::get_compilation_group_for_reflect, - Artist::mut_compilation_group_for_reflect, + |m: &Artist| { &m.compilation_group }, + |m: &mut Artist| { &mut m.compilation_group }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "appears_on_group", - Artist::get_appears_on_group_for_reflect, - Artist::mut_appears_on_group_for_reflect, + |m: &Artist| { &m.appears_on_group }, + |m: &mut Artist| { &mut m.appears_on_group }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "genre", - Artist::get_genre_for_reflect, - Artist::mut_genre_for_reflect, + |m: &Artist| { &m.genre }, + |m: &mut Artist| { &mut m.genre }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "external_id", - Artist::get_external_id_for_reflect, - Artist::mut_external_id_for_reflect, + |m: &Artist| { &m.external_id }, + |m: &mut Artist| { &mut m.external_id }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "portrait", - Artist::get_portrait_for_reflect, - Artist::mut_portrait_for_reflect, + |m: &Artist| { &m.portrait }, + |m: &mut Artist| { &mut m.portrait }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "biography", - Artist::get_biography_for_reflect, - Artist::mut_biography_for_reflect, + |m: &Artist| { &m.biography }, + |m: &mut Artist| { &mut m.biography }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "activity_period", - Artist::get_activity_period_for_reflect, - Artist::mut_activity_period_for_reflect, + |m: &Artist| { &m.activity_period }, + |m: &mut Artist| { &mut m.activity_period }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "restriction", - Artist::get_restriction_for_reflect, - Artist::mut_restriction_for_reflect, + |m: &Artist| { &m.restriction }, + |m: &mut Artist| { &mut m.restriction }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "related", - Artist::get_related_for_reflect, - Artist::mut_related_for_reflect, + |m: &Artist| { &m.related }, + |m: &mut Artist| { &mut m.related }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "is_portrait_album_cover", - Artist::get_is_portrait_album_cover_for_reflect, - Artist::mut_is_portrait_album_cover_for_reflect, + |m: &Artist| { &m.is_portrait_album_cover }, + |m: &mut Artist| { &mut m.is_portrait_album_cover }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "portrait_group", - Artist::get_portrait_group_for_reflect, - Artist::mut_portrait_group_for_reflect, + |m: &Artist| { &m.portrait_group }, + |m: &mut Artist| { &mut m.portrait_group }, )); ::protobuf::reflect::MessageDescriptor::new::( "Artist", @@ -1510,6 +1374,16 @@ impl ::protobuf::MessageStatic for Artist { }) } } + + fn default_instance() -> &'static Artist { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Artist, + }; + unsafe { + instance.get(Artist::new) + } + } } impl ::protobuf::Clear for Artist { @@ -1556,24 +1430,11 @@ pub struct AlbumGroup { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for AlbumGroup {} - impl AlbumGroup { pub fn new() -> AlbumGroup { ::std::default::Default::default() } - pub fn default_instance() -> &'static AlbumGroup { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const AlbumGroup, - }; - unsafe { - instance.get(AlbumGroup::new) - } - } - // repeated .Album album = 1; pub fn clear_album(&mut self) { @@ -1598,18 +1459,15 @@ impl AlbumGroup { pub fn get_album(&self) -> &[Album] { &self.album } - - fn get_album_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.album - } - - fn mut_album_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.album - } } impl ::protobuf::Message for AlbumGroup { fn is_initialized(&self) -> bool { + for v in &self.album { + if !v.is_initialized() { + return false; + } + }; true } @@ -1674,16 +1532,14 @@ impl ::protobuf::Message for AlbumGroup { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for AlbumGroup { fn new() -> AlbumGroup { AlbumGroup::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1693,8 +1549,8 @@ impl ::protobuf::MessageStatic for AlbumGroup { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "album", - AlbumGroup::get_album_for_reflect, - AlbumGroup::mut_album_for_reflect, + |m: &AlbumGroup| { &m.album }, + |m: &mut AlbumGroup| { &mut m.album }, )); ::protobuf::reflect::MessageDescriptor::new::( "AlbumGroup", @@ -1704,6 +1560,16 @@ impl ::protobuf::MessageStatic for AlbumGroup { }) } } + + fn default_instance() -> &'static AlbumGroup { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const AlbumGroup, + }; + unsafe { + instance.get(AlbumGroup::new) + } + } } impl ::protobuf::Clear for AlbumGroup { @@ -1736,24 +1602,11 @@ pub struct Date { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Date {} - impl Date { pub fn new() -> Date { ::std::default::Default::default() } - pub fn default_instance() -> &'static Date { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Date, - }; - unsafe { - instance.get(Date::new) - } - } - // optional sint32 year = 1; pub fn clear_year(&mut self) { @@ -1773,14 +1626,6 @@ impl Date { self.year.unwrap_or(0) } - fn get_year_for_reflect(&self) -> &::std::option::Option { - &self.year - } - - fn mut_year_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.year - } - // optional sint32 month = 2; pub fn clear_month(&mut self) { @@ -1800,14 +1645,6 @@ impl Date { self.month.unwrap_or(0) } - fn get_month_for_reflect(&self) -> &::std::option::Option { - &self.month - } - - fn mut_month_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.month - } - // optional sint32 day = 3; pub fn clear_day(&mut self) { @@ -1826,14 +1663,6 @@ impl Date { pub fn get_day(&self) -> i32 { self.day.unwrap_or(0) } - - fn get_day_for_reflect(&self) -> &::std::option::Option { - &self.day - } - - fn mut_day_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.day - } } impl ::protobuf::Message for Date { @@ -1848,21 +1677,21 @@ impl ::protobuf::Message for Date { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.year = ::std::option::Option::Some(tmp); }, 2 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.month = ::std::option::Option::Some(tmp); }, 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.day = ::std::option::Option::Some(tmp); }, @@ -1880,13 +1709,13 @@ impl ::protobuf::Message for Date { let mut my_size = 0; if let Some(v) = self.year { my_size += ::protobuf::rt::value_varint_zigzag_size(1, v); - }; + } if let Some(v) = self.month { my_size += ::protobuf::rt::value_varint_zigzag_size(2, v); - }; + } if let Some(v) = self.day { my_size += ::protobuf::rt::value_varint_zigzag_size(3, v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -1895,13 +1724,13 @@ impl ::protobuf::Message for Date { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.year { os.write_sint32(1, v)?; - }; + } if let Some(v) = self.month { os.write_sint32(2, v)?; - }; + } if let Some(v) = self.day { os.write_sint32(3, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -1929,16 +1758,14 @@ impl ::protobuf::Message for Date { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Date { fn new() -> Date { Date::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1948,18 +1775,18 @@ impl ::protobuf::MessageStatic for Date { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "year", - Date::get_year_for_reflect, - Date::mut_year_for_reflect, + |m: &Date| { &m.year }, + |m: &mut Date| { &mut m.year }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "month", - Date::get_month_for_reflect, - Date::mut_month_for_reflect, + |m: &Date| { &m.month }, + |m: &mut Date| { &mut m.month }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "day", - Date::get_day_for_reflect, - Date::mut_day_for_reflect, + |m: &Date| { &m.day }, + |m: &mut Date| { &mut m.day }, )); ::protobuf::reflect::MessageDescriptor::new::( "Date", @@ -1969,6 +1796,16 @@ impl ::protobuf::MessageStatic for Date { }) } } + + fn default_instance() -> &'static Date { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Date, + }; + unsafe { + instance.get(Date::new) + } + } } impl ::protobuf::Clear for Date { @@ -2017,24 +1854,11 @@ pub struct Album { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Album {} - impl Album { pub fn new() -> Album { ::std::default::Default::default() } - pub fn default_instance() -> &'static Album { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Album, - }; - unsafe { - instance.get(Album::new) - } - } - // optional bytes gid = 1; pub fn clear_gid(&mut self) { @@ -2055,7 +1879,7 @@ impl Album { pub fn mut_gid(&mut self) -> &mut ::std::vec::Vec { if self.gid.is_none() { self.gid.set_default(); - }; + } self.gid.as_mut().unwrap() } @@ -2071,14 +1895,6 @@ impl Album { } } - fn get_gid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gid - } - - fn mut_gid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gid - } - // optional string name = 2; pub fn clear_name(&mut self) { @@ -2099,7 +1915,7 @@ impl Album { pub fn mut_name(&mut self) -> &mut ::std::string::String { if self.name.is_none() { self.name.set_default(); - }; + } self.name.as_mut().unwrap() } @@ -2115,14 +1931,6 @@ impl Album { } } - fn get_name_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.name - } - - fn mut_name_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.name - } - // repeated .Artist artist = 3; pub fn clear_artist(&mut self) { @@ -2148,14 +1956,6 @@ impl Album { &self.artist } - fn get_artist_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.artist - } - - fn mut_artist_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.artist - } - // optional .Album.Type typ = 4; pub fn clear_typ(&mut self) { @@ -2175,14 +1975,6 @@ impl Album { self.typ.unwrap_or(Album_Type::ALBUM) } - fn get_typ_for_reflect(&self) -> &::std::option::Option { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.typ - } - // optional string label = 5; pub fn clear_label(&mut self) { @@ -2203,7 +1995,7 @@ impl Album { pub fn mut_label(&mut self) -> &mut ::std::string::String { if self.label.is_none() { self.label.set_default(); - }; + } self.label.as_mut().unwrap() } @@ -2219,14 +2011,6 @@ impl Album { } } - fn get_label_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.label - } - - fn mut_label_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.label - } - // optional .Date date = 6; pub fn clear_date(&mut self) { @@ -2247,7 +2031,7 @@ impl Album { pub fn mut_date(&mut self) -> &mut Date { if self.date.is_none() { self.date.set_default(); - }; + } self.date.as_mut().unwrap() } @@ -2260,14 +2044,6 @@ impl Album { self.date.as_ref().unwrap_or_else(|| Date::default_instance()) } - fn get_date_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.date - } - - fn mut_date_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.date - } - // optional sint32 popularity = 7; pub fn clear_popularity(&mut self) { @@ -2287,14 +2063,6 @@ impl Album { self.popularity.unwrap_or(0) } - fn get_popularity_for_reflect(&self) -> &::std::option::Option { - &self.popularity - } - - fn mut_popularity_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.popularity - } - // repeated string genre = 8; pub fn clear_genre(&mut self) { @@ -2320,14 +2088,6 @@ impl Album { &self.genre } - fn get_genre_for_reflect(&self) -> &::protobuf::RepeatedField<::std::string::String> { - &self.genre - } - - fn mut_genre_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { - &mut self.genre - } - // repeated .Image cover = 9; pub fn clear_cover(&mut self) { @@ -2353,14 +2113,6 @@ impl Album { &self.cover } - fn get_cover_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.cover - } - - fn mut_cover_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.cover - } - // repeated .ExternalId external_id = 10; pub fn clear_external_id(&mut self) { @@ -2386,14 +2138,6 @@ impl Album { &self.external_id } - fn get_external_id_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.external_id - } - - fn mut_external_id_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.external_id - } - // repeated .Disc disc = 11; pub fn clear_disc(&mut self) { @@ -2419,14 +2163,6 @@ impl Album { &self.disc } - fn get_disc_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.disc - } - - fn mut_disc_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.disc - } - // repeated string review = 12; pub fn clear_review(&mut self) { @@ -2452,14 +2188,6 @@ impl Album { &self.review } - fn get_review_for_reflect(&self) -> &::protobuf::RepeatedField<::std::string::String> { - &self.review - } - - fn mut_review_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { - &mut self.review - } - // repeated .Copyright copyright = 13; pub fn clear_copyright(&mut self) { @@ -2485,14 +2213,6 @@ impl Album { &self.copyright } - fn get_copyright_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.copyright - } - - fn mut_copyright_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.copyright - } - // repeated .Restriction restriction = 14; pub fn clear_restriction(&mut self) { @@ -2518,14 +2238,6 @@ impl Album { &self.restriction } - fn get_restriction_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.restriction - } - - fn mut_restriction_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.restriction - } - // repeated .Album related = 15; pub fn clear_related(&mut self) { @@ -2551,14 +2263,6 @@ impl Album { &self.related } - fn get_related_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.related - } - - fn mut_related_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.related - } - // repeated .SalePeriod sale_period = 16; pub fn clear_sale_period(&mut self) { @@ -2584,14 +2288,6 @@ impl Album { &self.sale_period } - fn get_sale_period_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.sale_period - } - - fn mut_sale_period_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.sale_period - } - // optional .ImageGroup cover_group = 17; pub fn clear_cover_group(&mut self) { @@ -2612,7 +2308,7 @@ impl Album { pub fn mut_cover_group(&mut self) -> &mut ImageGroup { if self.cover_group.is_none() { self.cover_group.set_default(); - }; + } self.cover_group.as_mut().unwrap() } @@ -2624,18 +2320,60 @@ impl Album { pub fn get_cover_group(&self) -> &ImageGroup { self.cover_group.as_ref().unwrap_or_else(|| ImageGroup::default_instance()) } - - fn get_cover_group_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.cover_group - } - - fn mut_cover_group_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.cover_group - } } impl ::protobuf::Message for Album { fn is_initialized(&self) -> bool { + for v in &self.artist { + if !v.is_initialized() { + return false; + } + }; + for v in &self.date { + if !v.is_initialized() { + return false; + } + }; + for v in &self.cover { + if !v.is_initialized() { + return false; + } + }; + for v in &self.external_id { + if !v.is_initialized() { + return false; + } + }; + for v in &self.disc { + if !v.is_initialized() { + return false; + } + }; + for v in &self.copyright { + if !v.is_initialized() { + return false; + } + }; + for v in &self.restriction { + if !v.is_initialized() { + return false; + } + }; + for v in &self.related { + if !v.is_initialized() { + return false; + } + }; + for v in &self.sale_period { + if !v.is_initialized() { + return false; + } + }; + for v in &self.cover_group { + if !v.is_initialized() { + return false; + } + }; true } @@ -2653,11 +2391,7 @@ impl ::protobuf::Message for Album { ::protobuf::rt::read_repeated_message_into(wire_type, is, &mut self.artist)?; }, 4 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.typ = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.typ, 4, &mut self.unknown_fields)? }, 5 => { ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.label)?; @@ -2668,7 +2402,7 @@ impl ::protobuf::Message for Album { 7 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.popularity = ::std::option::Option::Some(tmp); }, @@ -2714,29 +2448,29 @@ impl ::protobuf::Message for Album { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { my_size += ::protobuf::rt::bytes_size(1, &v); - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } for value in &self.artist { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; if let Some(v) = self.typ { my_size += ::protobuf::rt::enum_size(4, v); - }; - if let Some(v) = self.label.as_ref() { + } + if let Some(ref v) = self.label.as_ref() { my_size += ::protobuf::rt::string_size(5, &v); - }; - if let Some(v) = self.date.as_ref() { + } + if let Some(ref v) = self.date.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } if let Some(v) = self.popularity { my_size += ::protobuf::rt::value_varint_zigzag_size(7, v); - }; + } for value in &self.genre { my_size += ::protobuf::rt::string_size(8, &value); }; @@ -2771,22 +2505,22 @@ impl ::protobuf::Message for Album { let len = value.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; - if let Some(v) = self.cover_group.as_ref() { + if let Some(ref v) = self.cover_group.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { os.write_bytes(1, &v)?; - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { os.write_string(2, &v)?; - }; + } for v in &self.artist { os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -2794,18 +2528,18 @@ impl ::protobuf::Message for Album { }; if let Some(v) = self.typ { os.write_enum(4, v.value())?; - }; - if let Some(v) = self.label.as_ref() { + } + if let Some(ref v) = self.label.as_ref() { os.write_string(5, &v)?; - }; - if let Some(v) = self.date.as_ref() { + } + if let Some(ref v) = self.date.as_ref() { os.write_tag(6, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } if let Some(v) = self.popularity { os.write_sint32(7, v)?; - }; + } for v in &self.genre { os.write_string(8, &v)?; }; @@ -2847,11 +2581,11 @@ impl ::protobuf::Message for Album { os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; }; - if let Some(v) = self.cover_group.as_ref() { + if let Some(ref v) = self.cover_group.as_ref() { os.write_tag(17, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2879,16 +2613,14 @@ impl ::protobuf::Message for Album { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Album { fn new() -> Album { Album::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2898,88 +2630,88 @@ impl ::protobuf::MessageStatic for Album { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gid", - Album::get_gid_for_reflect, - Album::mut_gid_for_reflect, + |m: &Album| { &m.gid }, + |m: &mut Album| { &mut m.gid }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "name", - Album::get_name_for_reflect, - Album::mut_name_for_reflect, + |m: &Album| { &m.name }, + |m: &mut Album| { &mut m.name }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "artist", - Album::get_artist_for_reflect, - Album::mut_artist_for_reflect, + |m: &Album| { &m.artist }, + |m: &mut Album| { &mut m.artist }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "typ", - Album::get_typ_for_reflect, - Album::mut_typ_for_reflect, + |m: &Album| { &m.typ }, + |m: &mut Album| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "label", - Album::get_label_for_reflect, - Album::mut_label_for_reflect, + |m: &Album| { &m.label }, + |m: &mut Album| { &mut m.label }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "date", - Album::get_date_for_reflect, - Album::mut_date_for_reflect, + |m: &Album| { &m.date }, + |m: &mut Album| { &mut m.date }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "popularity", - Album::get_popularity_for_reflect, - Album::mut_popularity_for_reflect, + |m: &Album| { &m.popularity }, + |m: &mut Album| { &mut m.popularity }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "genre", - Album::get_genre_for_reflect, - Album::mut_genre_for_reflect, + |m: &Album| { &m.genre }, + |m: &mut Album| { &mut m.genre }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "cover", - Album::get_cover_for_reflect, - Album::mut_cover_for_reflect, + |m: &Album| { &m.cover }, + |m: &mut Album| { &mut m.cover }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "external_id", - Album::get_external_id_for_reflect, - Album::mut_external_id_for_reflect, + |m: &Album| { &m.external_id }, + |m: &mut Album| { &mut m.external_id }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "disc", - Album::get_disc_for_reflect, - Album::mut_disc_for_reflect, + |m: &Album| { &m.disc }, + |m: &mut Album| { &mut m.disc }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "review", - Album::get_review_for_reflect, - Album::mut_review_for_reflect, + |m: &Album| { &m.review }, + |m: &mut Album| { &mut m.review }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "copyright", - Album::get_copyright_for_reflect, - Album::mut_copyright_for_reflect, + |m: &Album| { &m.copyright }, + |m: &mut Album| { &mut m.copyright }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "restriction", - Album::get_restriction_for_reflect, - Album::mut_restriction_for_reflect, + |m: &Album| { &m.restriction }, + |m: &mut Album| { &mut m.restriction }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "related", - Album::get_related_for_reflect, - Album::mut_related_for_reflect, + |m: &Album| { &m.related }, + |m: &mut Album| { &mut m.related }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "sale_period", - Album::get_sale_period_for_reflect, - Album::mut_sale_period_for_reflect, + |m: &Album| { &m.sale_period }, + |m: &mut Album| { &mut m.sale_period }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "cover_group", - Album::get_cover_group_for_reflect, - Album::mut_cover_group_for_reflect, + |m: &Album| { &m.cover_group }, + |m: &mut Album| { &mut m.cover_group }, )); ::protobuf::reflect::MessageDescriptor::new::( "Album", @@ -2989,6 +2721,16 @@ impl ::protobuf::MessageStatic for Album { }) } } + + fn default_instance() -> &'static Album { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Album, + }; + unsafe { + instance.get(Album::new) + } + } } impl ::protobuf::Clear for Album { @@ -3059,7 +2801,7 @@ impl ::protobuf::ProtobufEnum for Album_Type { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -3104,24 +2846,11 @@ pub struct Track { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Track {} - impl Track { pub fn new() -> Track { ::std::default::Default::default() } - pub fn default_instance() -> &'static Track { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Track, - }; - unsafe { - instance.get(Track::new) - } - } - // optional bytes gid = 1; pub fn clear_gid(&mut self) { @@ -3142,7 +2871,7 @@ impl Track { pub fn mut_gid(&mut self) -> &mut ::std::vec::Vec { if self.gid.is_none() { self.gid.set_default(); - }; + } self.gid.as_mut().unwrap() } @@ -3158,14 +2887,6 @@ impl Track { } } - fn get_gid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gid - } - - fn mut_gid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gid - } - // optional string name = 2; pub fn clear_name(&mut self) { @@ -3186,7 +2907,7 @@ impl Track { pub fn mut_name(&mut self) -> &mut ::std::string::String { if self.name.is_none() { self.name.set_default(); - }; + } self.name.as_mut().unwrap() } @@ -3202,14 +2923,6 @@ impl Track { } } - fn get_name_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.name - } - - fn mut_name_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.name - } - // optional .Album album = 3; pub fn clear_album(&mut self) { @@ -3230,7 +2943,7 @@ impl Track { pub fn mut_album(&mut self) -> &mut Album { if self.album.is_none() { self.album.set_default(); - }; + } self.album.as_mut().unwrap() } @@ -3243,14 +2956,6 @@ impl Track { self.album.as_ref().unwrap_or_else(|| Album::default_instance()) } - fn get_album_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.album - } - - fn mut_album_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.album - } - // repeated .Artist artist = 4; pub fn clear_artist(&mut self) { @@ -3276,14 +2981,6 @@ impl Track { &self.artist } - fn get_artist_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.artist - } - - fn mut_artist_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.artist - } - // optional sint32 number = 5; pub fn clear_number(&mut self) { @@ -3303,14 +3000,6 @@ impl Track { self.number.unwrap_or(0) } - fn get_number_for_reflect(&self) -> &::std::option::Option { - &self.number - } - - fn mut_number_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.number - } - // optional sint32 disc_number = 6; pub fn clear_disc_number(&mut self) { @@ -3330,14 +3019,6 @@ impl Track { self.disc_number.unwrap_or(0) } - fn get_disc_number_for_reflect(&self) -> &::std::option::Option { - &self.disc_number - } - - fn mut_disc_number_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.disc_number - } - // optional sint32 duration = 7; pub fn clear_duration(&mut self) { @@ -3357,14 +3038,6 @@ impl Track { self.duration.unwrap_or(0) } - fn get_duration_for_reflect(&self) -> &::std::option::Option { - &self.duration - } - - fn mut_duration_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.duration - } - // optional sint32 popularity = 8; pub fn clear_popularity(&mut self) { @@ -3384,14 +3057,6 @@ impl Track { self.popularity.unwrap_or(0) } - fn get_popularity_for_reflect(&self) -> &::std::option::Option { - &self.popularity - } - - fn mut_popularity_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.popularity - } - // optional bool explicit = 9; pub fn clear_explicit(&mut self) { @@ -3411,14 +3076,6 @@ impl Track { self.explicit.unwrap_or(false) } - fn get_explicit_for_reflect(&self) -> &::std::option::Option { - &self.explicit - } - - fn mut_explicit_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.explicit - } - // repeated .ExternalId external_id = 10; pub fn clear_external_id(&mut self) { @@ -3444,14 +3101,6 @@ impl Track { &self.external_id } - fn get_external_id_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.external_id - } - - fn mut_external_id_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.external_id - } - // repeated .Restriction restriction = 11; pub fn clear_restriction(&mut self) { @@ -3477,14 +3126,6 @@ impl Track { &self.restriction } - fn get_restriction_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.restriction - } - - fn mut_restriction_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.restriction - } - // repeated .AudioFile file = 12; pub fn clear_file(&mut self) { @@ -3510,14 +3151,6 @@ impl Track { &self.file } - fn get_file_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.file - } - - fn mut_file_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.file - } - // repeated .Track alternative = 13; pub fn clear_alternative(&mut self) { @@ -3543,14 +3176,6 @@ impl Track { &self.alternative } - fn get_alternative_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.alternative - } - - fn mut_alternative_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.alternative - } - // repeated .SalePeriod sale_period = 14; pub fn clear_sale_period(&mut self) { @@ -3576,14 +3201,6 @@ impl Track { &self.sale_period } - fn get_sale_period_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.sale_period - } - - fn mut_sale_period_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.sale_period - } - // repeated .AudioFile preview = 15; pub fn clear_preview(&mut self) { @@ -3608,18 +3225,50 @@ impl Track { pub fn get_preview(&self) -> &[AudioFile] { &self.preview } - - fn get_preview_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.preview - } - - fn mut_preview_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.preview - } } impl ::protobuf::Message for Track { fn is_initialized(&self) -> bool { + for v in &self.album { + if !v.is_initialized() { + return false; + } + }; + for v in &self.artist { + if !v.is_initialized() { + return false; + } + }; + for v in &self.external_id { + if !v.is_initialized() { + return false; + } + }; + for v in &self.restriction { + if !v.is_initialized() { + return false; + } + }; + for v in &self.file { + if !v.is_initialized() { + return false; + } + }; + for v in &self.alternative { + if !v.is_initialized() { + return false; + } + }; + for v in &self.sale_period { + if !v.is_initialized() { + return false; + } + }; + for v in &self.preview { + if !v.is_initialized() { + return false; + } + }; true } @@ -3642,35 +3291,35 @@ impl ::protobuf::Message for Track { 5 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.number = ::std::option::Option::Some(tmp); }, 6 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.disc_number = ::std::option::Option::Some(tmp); }, 7 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.duration = ::std::option::Option::Some(tmp); }, 8 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.popularity = ::std::option::Option::Some(tmp); }, 9 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.explicit = ::std::option::Option::Some(tmp); }, @@ -3704,35 +3353,35 @@ impl ::protobuf::Message for Track { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { my_size += ::protobuf::rt::bytes_size(1, &v); - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; - if let Some(v) = self.album.as_ref() { + } + if let Some(ref v) = self.album.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } for value in &self.artist { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; if let Some(v) = self.number { my_size += ::protobuf::rt::value_varint_zigzag_size(5, v); - }; + } if let Some(v) = self.disc_number { my_size += ::protobuf::rt::value_varint_zigzag_size(6, v); - }; + } if let Some(v) = self.duration { my_size += ::protobuf::rt::value_varint_zigzag_size(7, v); - }; + } if let Some(v) = self.popularity { my_size += ::protobuf::rt::value_varint_zigzag_size(8, v); - }; + } if let Some(v) = self.explicit { my_size += 2; - }; + } for value in &self.external_id { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -3763,17 +3412,17 @@ impl ::protobuf::Message for Track { } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { os.write_bytes(1, &v)?; - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { os.write_string(2, &v)?; - }; - if let Some(v) = self.album.as_ref() { + } + if let Some(ref v) = self.album.as_ref() { os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } for v in &self.artist { os.write_tag(4, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -3781,19 +3430,19 @@ impl ::protobuf::Message for Track { }; if let Some(v) = self.number { os.write_sint32(5, v)?; - }; + } if let Some(v) = self.disc_number { os.write_sint32(6, v)?; - }; + } if let Some(v) = self.duration { os.write_sint32(7, v)?; - }; + } if let Some(v) = self.popularity { os.write_sint32(8, v)?; - }; + } if let Some(v) = self.explicit { os.write_bool(9, v)?; - }; + } for v in &self.external_id { os.write_tag(10, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -3851,16 +3500,14 @@ impl ::protobuf::Message for Track { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Track { fn new() -> Track { Track::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3870,78 +3517,78 @@ impl ::protobuf::MessageStatic for Track { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gid", - Track::get_gid_for_reflect, - Track::mut_gid_for_reflect, + |m: &Track| { &m.gid }, + |m: &mut Track| { &mut m.gid }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "name", - Track::get_name_for_reflect, - Track::mut_name_for_reflect, + |m: &Track| { &m.name }, + |m: &mut Track| { &mut m.name }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "album", - Track::get_album_for_reflect, - Track::mut_album_for_reflect, + |m: &Track| { &m.album }, + |m: &mut Track| { &mut m.album }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "artist", - Track::get_artist_for_reflect, - Track::mut_artist_for_reflect, + |m: &Track| { &m.artist }, + |m: &mut Track| { &mut m.artist }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "number", - Track::get_number_for_reflect, - Track::mut_number_for_reflect, + |m: &Track| { &m.number }, + |m: &mut Track| { &mut m.number }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "disc_number", - Track::get_disc_number_for_reflect, - Track::mut_disc_number_for_reflect, + |m: &Track| { &m.disc_number }, + |m: &mut Track| { &mut m.disc_number }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "duration", - Track::get_duration_for_reflect, - Track::mut_duration_for_reflect, + |m: &Track| { &m.duration }, + |m: &mut Track| { &mut m.duration }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "popularity", - Track::get_popularity_for_reflect, - Track::mut_popularity_for_reflect, + |m: &Track| { &m.popularity }, + |m: &mut Track| { &mut m.popularity }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "explicit", - Track::get_explicit_for_reflect, - Track::mut_explicit_for_reflect, + |m: &Track| { &m.explicit }, + |m: &mut Track| { &mut m.explicit }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "external_id", - Track::get_external_id_for_reflect, - Track::mut_external_id_for_reflect, + |m: &Track| { &m.external_id }, + |m: &mut Track| { &mut m.external_id }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "restriction", - Track::get_restriction_for_reflect, - Track::mut_restriction_for_reflect, + |m: &Track| { &m.restriction }, + |m: &mut Track| { &mut m.restriction }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "file", - Track::get_file_for_reflect, - Track::mut_file_for_reflect, + |m: &Track| { &m.file }, + |m: &mut Track| { &mut m.file }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "alternative", - Track::get_alternative_for_reflect, - Track::mut_alternative_for_reflect, + |m: &Track| { &m.alternative }, + |m: &mut Track| { &mut m.alternative }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "sale_period", - Track::get_sale_period_for_reflect, - Track::mut_sale_period_for_reflect, + |m: &Track| { &m.sale_period }, + |m: &mut Track| { &mut m.sale_period }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "preview", - Track::get_preview_for_reflect, - Track::mut_preview_for_reflect, + |m: &Track| { &m.preview }, + |m: &mut Track| { &mut m.preview }, )); ::protobuf::reflect::MessageDescriptor::new::( "Track", @@ -3951,6 +3598,16 @@ impl ::protobuf::MessageStatic for Track { }) } } + + fn default_instance() -> &'static Track { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Track, + }; + unsafe { + instance.get(Track::new) + } + } } impl ::protobuf::Clear for Track { @@ -3998,24 +3655,11 @@ pub struct Image { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Image {} - impl Image { pub fn new() -> Image { ::std::default::Default::default() } - pub fn default_instance() -> &'static Image { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Image, - }; - unsafe { - instance.get(Image::new) - } - } - // optional bytes file_id = 1; pub fn clear_file_id(&mut self) { @@ -4036,7 +3680,7 @@ impl Image { pub fn mut_file_id(&mut self) -> &mut ::std::vec::Vec { if self.file_id.is_none() { self.file_id.set_default(); - }; + } self.file_id.as_mut().unwrap() } @@ -4052,14 +3696,6 @@ impl Image { } } - fn get_file_id_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.file_id - } - - fn mut_file_id_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.file_id - } - // optional .Image.Size size = 2; pub fn clear_size(&mut self) { @@ -4079,14 +3715,6 @@ impl Image { self.size.unwrap_or(Image_Size::DEFAULT) } - fn get_size_for_reflect(&self) -> &::std::option::Option { - &self.size - } - - fn mut_size_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.size - } - // optional sint32 width = 3; pub fn clear_width(&mut self) { @@ -4106,14 +3734,6 @@ impl Image { self.width.unwrap_or(0) } - fn get_width_for_reflect(&self) -> &::std::option::Option { - &self.width - } - - fn mut_width_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.width - } - // optional sint32 height = 4; pub fn clear_height(&mut self) { @@ -4132,14 +3752,6 @@ impl Image { pub fn get_height(&self) -> i32 { self.height.unwrap_or(0) } - - fn get_height_for_reflect(&self) -> &::std::option::Option { - &self.height - } - - fn mut_height_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.height - } } impl ::protobuf::Message for Image { @@ -4155,23 +3767,19 @@ impl ::protobuf::Message for Image { ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.file_id)?; }, 2 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.size = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.size, 2, &mut self.unknown_fields)? }, 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.width = ::std::option::Option::Some(tmp); }, 4 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.height = ::std::option::Option::Some(tmp); }, @@ -4187,36 +3795,36 @@ impl ::protobuf::Message for Image { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.file_id.as_ref() { + if let Some(ref v) = self.file_id.as_ref() { my_size += ::protobuf::rt::bytes_size(1, &v); - }; + } if let Some(v) = self.size { my_size += ::protobuf::rt::enum_size(2, v); - }; + } if let Some(v) = self.width { my_size += ::protobuf::rt::value_varint_zigzag_size(3, v); - }; + } if let Some(v) = self.height { my_size += ::protobuf::rt::value_varint_zigzag_size(4, v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.file_id.as_ref() { + if let Some(ref v) = self.file_id.as_ref() { os.write_bytes(1, &v)?; - }; + } if let Some(v) = self.size { os.write_enum(2, v.value())?; - }; + } if let Some(v) = self.width { os.write_sint32(3, v)?; - }; + } if let Some(v) = self.height { os.write_sint32(4, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4244,16 +3852,14 @@ impl ::protobuf::Message for Image { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Image { fn new() -> Image { Image::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4263,23 +3869,23 @@ impl ::protobuf::MessageStatic for Image { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "file_id", - Image::get_file_id_for_reflect, - Image::mut_file_id_for_reflect, + |m: &Image| { &m.file_id }, + |m: &mut Image| { &mut m.file_id }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "size", - Image::get_size_for_reflect, - Image::mut_size_for_reflect, + |m: &Image| { &m.size }, + |m: &mut Image| { &mut m.size }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "width", - Image::get_width_for_reflect, - Image::mut_width_for_reflect, + |m: &Image| { &m.width }, + |m: &mut Image| { &mut m.width }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "height", - Image::get_height_for_reflect, - Image::mut_height_for_reflect, + |m: &Image| { &m.height }, + |m: &mut Image| { &mut m.height }, )); ::protobuf::reflect::MessageDescriptor::new::( "Image", @@ -4289,6 +3895,16 @@ impl ::protobuf::MessageStatic for Image { }) } } + + fn default_instance() -> &'static Image { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Image, + }; + unsafe { + instance.get(Image::new) + } + } } impl ::protobuf::Clear for Image { @@ -4346,7 +3962,7 @@ impl ::protobuf::ProtobufEnum for Image_Size { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -4377,24 +3993,11 @@ pub struct ImageGroup { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ImageGroup {} - impl ImageGroup { pub fn new() -> ImageGroup { ::std::default::Default::default() } - pub fn default_instance() -> &'static ImageGroup { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ImageGroup, - }; - unsafe { - instance.get(ImageGroup::new) - } - } - // repeated .Image image = 1; pub fn clear_image(&mut self) { @@ -4419,18 +4022,15 @@ impl ImageGroup { pub fn get_image(&self) -> &[Image] { &self.image } - - fn get_image_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.image - } - - fn mut_image_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.image - } } impl ::protobuf::Message for ImageGroup { fn is_initialized(&self) -> bool { + for v in &self.image { + if !v.is_initialized() { + return false; + } + }; true } @@ -4495,16 +4095,14 @@ impl ::protobuf::Message for ImageGroup { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ImageGroup { fn new() -> ImageGroup { ImageGroup::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4514,8 +4112,8 @@ impl ::protobuf::MessageStatic for ImageGroup { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "image", - ImageGroup::get_image_for_reflect, - ImageGroup::mut_image_for_reflect, + |m: &ImageGroup| { &m.image }, + |m: &mut ImageGroup| { &mut m.image }, )); ::protobuf::reflect::MessageDescriptor::new::( "ImageGroup", @@ -4525,6 +4123,16 @@ impl ::protobuf::MessageStatic for ImageGroup { }) } } + + fn default_instance() -> &'static ImageGroup { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ImageGroup, + }; + unsafe { + instance.get(ImageGroup::new) + } + } } impl ::protobuf::Clear for ImageGroup { @@ -4557,24 +4165,11 @@ pub struct Biography { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Biography {} - impl Biography { pub fn new() -> Biography { ::std::default::Default::default() } - pub fn default_instance() -> &'static Biography { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Biography, - }; - unsafe { - instance.get(Biography::new) - } - } - // optional string text = 1; pub fn clear_text(&mut self) { @@ -4595,7 +4190,7 @@ impl Biography { pub fn mut_text(&mut self) -> &mut ::std::string::String { if self.text.is_none() { self.text.set_default(); - }; + } self.text.as_mut().unwrap() } @@ -4611,14 +4206,6 @@ impl Biography { } } - fn get_text_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.text - } - - fn mut_text_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.text - } - // repeated .Image portrait = 2; pub fn clear_portrait(&mut self) { @@ -4644,14 +4231,6 @@ impl Biography { &self.portrait } - fn get_portrait_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.portrait - } - - fn mut_portrait_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.portrait - } - // repeated .ImageGroup portrait_group = 3; pub fn clear_portrait_group(&mut self) { @@ -4676,18 +4255,20 @@ impl Biography { pub fn get_portrait_group(&self) -> &[ImageGroup] { &self.portrait_group } - - fn get_portrait_group_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.portrait_group - } - - fn mut_portrait_group_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.portrait_group - } } impl ::protobuf::Message for Biography { fn is_initialized(&self) -> bool { + for v in &self.portrait { + if !v.is_initialized() { + return false; + } + }; + for v in &self.portrait_group { + if !v.is_initialized() { + return false; + } + }; true } @@ -4716,9 +4297,9 @@ impl ::protobuf::Message for Biography { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.text.as_ref() { + if let Some(ref v) = self.text.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; + } for value in &self.portrait { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -4733,9 +4314,9 @@ impl ::protobuf::Message for Biography { } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.text.as_ref() { + if let Some(ref v) = self.text.as_ref() { os.write_string(1, &v)?; - }; + } for v in &self.portrait { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -4773,16 +4354,14 @@ impl ::protobuf::Message for Biography { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Biography { fn new() -> Biography { Biography::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4792,18 +4371,18 @@ impl ::protobuf::MessageStatic for Biography { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "text", - Biography::get_text_for_reflect, - Biography::mut_text_for_reflect, + |m: &Biography| { &m.text }, + |m: &mut Biography| { &mut m.text }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "portrait", - Biography::get_portrait_for_reflect, - Biography::mut_portrait_for_reflect, + |m: &Biography| { &m.portrait }, + |m: &mut Biography| { &mut m.portrait }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "portrait_group", - Biography::get_portrait_group_for_reflect, - Biography::mut_portrait_group_for_reflect, + |m: &Biography| { &m.portrait_group }, + |m: &mut Biography| { &mut m.portrait_group }, )); ::protobuf::reflect::MessageDescriptor::new::( "Biography", @@ -4813,6 +4392,16 @@ impl ::protobuf::MessageStatic for Biography { }) } } + + fn default_instance() -> &'static Biography { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Biography, + }; + unsafe { + instance.get(Biography::new) + } + } } impl ::protobuf::Clear for Biography { @@ -4847,24 +4436,11 @@ pub struct Disc { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Disc {} - impl Disc { pub fn new() -> Disc { ::std::default::Default::default() } - pub fn default_instance() -> &'static Disc { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Disc, - }; - unsafe { - instance.get(Disc::new) - } - } - // optional sint32 number = 1; pub fn clear_number(&mut self) { @@ -4884,14 +4460,6 @@ impl Disc { self.number.unwrap_or(0) } - fn get_number_for_reflect(&self) -> &::std::option::Option { - &self.number - } - - fn mut_number_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.number - } - // optional string name = 2; pub fn clear_name(&mut self) { @@ -4912,7 +4480,7 @@ impl Disc { pub fn mut_name(&mut self) -> &mut ::std::string::String { if self.name.is_none() { self.name.set_default(); - }; + } self.name.as_mut().unwrap() } @@ -4928,14 +4496,6 @@ impl Disc { } } - fn get_name_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.name - } - - fn mut_name_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.name - } - // repeated .Track track = 3; pub fn clear_track(&mut self) { @@ -4960,18 +4520,15 @@ impl Disc { pub fn get_track(&self) -> &[Track] { &self.track } - - fn get_track_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.track - } - - fn mut_track_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.track - } } impl ::protobuf::Message for Disc { fn is_initialized(&self) -> bool { + for v in &self.track { + if !v.is_initialized() { + return false; + } + }; true } @@ -4982,7 +4539,7 @@ impl ::protobuf::Message for Disc { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_sint32()?; self.number = ::std::option::Option::Some(tmp); }, @@ -5006,10 +4563,10 @@ impl ::protobuf::Message for Disc { let mut my_size = 0; if let Some(v) = self.number { my_size += ::protobuf::rt::value_varint_zigzag_size(1, v); - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } for value in &self.track { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -5022,10 +4579,10 @@ impl ::protobuf::Message for Disc { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.number { os.write_sint32(1, v)?; - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { os.write_string(2, &v)?; - }; + } for v in &self.track { os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -5058,16 +4615,14 @@ impl ::protobuf::Message for Disc { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Disc { fn new() -> Disc { Disc::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5077,18 +4632,18 @@ impl ::protobuf::MessageStatic for Disc { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeSint32>( "number", - Disc::get_number_for_reflect, - Disc::mut_number_for_reflect, + |m: &Disc| { &m.number }, + |m: &mut Disc| { &mut m.number }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "name", - Disc::get_name_for_reflect, - Disc::mut_name_for_reflect, + |m: &Disc| { &m.name }, + |m: &mut Disc| { &mut m.name }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "track", - Disc::get_track_for_reflect, - Disc::mut_track_for_reflect, + |m: &Disc| { &m.track }, + |m: &mut Disc| { &mut m.track }, )); ::protobuf::reflect::MessageDescriptor::new::( "Disc", @@ -5098,6 +4653,16 @@ impl ::protobuf::MessageStatic for Disc { }) } } + + fn default_instance() -> &'static Disc { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Disc, + }; + unsafe { + instance.get(Disc::new) + } + } } impl ::protobuf::Clear for Disc { @@ -5131,24 +4696,11 @@ pub struct Copyright { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Copyright {} - impl Copyright { pub fn new() -> Copyright { ::std::default::Default::default() } - pub fn default_instance() -> &'static Copyright { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Copyright, - }; - unsafe { - instance.get(Copyright::new) - } - } - // optional .Copyright.Type typ = 1; pub fn clear_typ(&mut self) { @@ -5168,14 +4720,6 @@ impl Copyright { self.typ.unwrap_or(Copyright_Type::P) } - fn get_typ_for_reflect(&self) -> &::std::option::Option { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.typ - } - // optional string text = 2; pub fn clear_text(&mut self) { @@ -5196,7 +4740,7 @@ impl Copyright { pub fn mut_text(&mut self) -> &mut ::std::string::String { if self.text.is_none() { self.text.set_default(); - }; + } self.text.as_mut().unwrap() } @@ -5211,14 +4755,6 @@ impl Copyright { None => "", } } - - fn get_text_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.text - } - - fn mut_text_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.text - } } impl ::protobuf::Message for Copyright { @@ -5231,11 +4767,7 @@ impl ::protobuf::Message for Copyright { let (field_number, wire_type) = is.read_tag_unpack()?; match field_number { 1 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.typ = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.typ, 1, &mut self.unknown_fields)? }, 2 => { ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.text)?; @@ -5254,10 +4786,10 @@ impl ::protobuf::Message for Copyright { let mut my_size = 0; if let Some(v) = self.typ { my_size += ::protobuf::rt::enum_size(1, v); - }; - if let Some(v) = self.text.as_ref() { + } + if let Some(ref v) = self.text.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -5266,10 +4798,10 @@ impl ::protobuf::Message for Copyright { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.typ { os.write_enum(1, v.value())?; - }; - if let Some(v) = self.text.as_ref() { + } + if let Some(ref v) = self.text.as_ref() { os.write_string(2, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -5297,16 +4829,14 @@ impl ::protobuf::Message for Copyright { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Copyright { fn new() -> Copyright { Copyright::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5316,13 +4846,13 @@ impl ::protobuf::MessageStatic for Copyright { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "typ", - Copyright::get_typ_for_reflect, - Copyright::mut_typ_for_reflect, + |m: &Copyright| { &m.typ }, + |m: &mut Copyright| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "text", - Copyright::get_text_for_reflect, - Copyright::mut_text_for_reflect, + |m: &Copyright| { &m.text }, + |m: &mut Copyright| { &mut m.text }, )); ::protobuf::reflect::MessageDescriptor::new::( "Copyright", @@ -5332,6 +4862,16 @@ impl ::protobuf::MessageStatic for Copyright { }) } } + + fn default_instance() -> &'static Copyright { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Copyright, + }; + unsafe { + instance.get(Copyright::new) + } + } } impl ::protobuf::Clear for Copyright { @@ -5381,7 +4921,7 @@ impl ::protobuf::ProtobufEnum for Copyright_Type { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5415,24 +4955,11 @@ pub struct Restriction { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Restriction {} - impl Restriction { pub fn new() -> Restriction { ::std::default::Default::default() } - pub fn default_instance() -> &'static Restriction { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Restriction, - }; - unsafe { - instance.get(Restriction::new) - } - } - // optional string countries_allowed = 2; pub fn clear_countries_allowed(&mut self) { @@ -5453,7 +4980,7 @@ impl Restriction { pub fn mut_countries_allowed(&mut self) -> &mut ::std::string::String { if self.countries_allowed.is_none() { self.countries_allowed.set_default(); - }; + } self.countries_allowed.as_mut().unwrap() } @@ -5469,14 +4996,6 @@ impl Restriction { } } - fn get_countries_allowed_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.countries_allowed - } - - fn mut_countries_allowed_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.countries_allowed - } - // optional string countries_forbidden = 3; pub fn clear_countries_forbidden(&mut self) { @@ -5497,7 +5016,7 @@ impl Restriction { pub fn mut_countries_forbidden(&mut self) -> &mut ::std::string::String { if self.countries_forbidden.is_none() { self.countries_forbidden.set_default(); - }; + } self.countries_forbidden.as_mut().unwrap() } @@ -5513,14 +5032,6 @@ impl Restriction { } } - fn get_countries_forbidden_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.countries_forbidden - } - - fn mut_countries_forbidden_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.countries_forbidden - } - // optional .Restriction.Type typ = 4; pub fn clear_typ(&mut self) { @@ -5540,14 +5051,6 @@ impl Restriction { self.typ.unwrap_or(Restriction_Type::STREAMING) } - fn get_typ_for_reflect(&self) -> &::std::option::Option { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.typ - } - // repeated string catalogue_str = 5; pub fn clear_catalogue_str(&mut self) { @@ -5572,14 +5075,6 @@ impl Restriction { pub fn get_catalogue_str(&self) -> &[::std::string::String] { &self.catalogue_str } - - fn get_catalogue_str_for_reflect(&self) -> &::protobuf::RepeatedField<::std::string::String> { - &self.catalogue_str - } - - fn mut_catalogue_str_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { - &mut self.catalogue_str - } } impl ::protobuf::Message for Restriction { @@ -5598,11 +5093,7 @@ impl ::protobuf::Message for Restriction { ::protobuf::rt::read_singular_string_into(wire_type, is, &mut self.countries_forbidden)?; }, 4 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.typ = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.typ, 4, &mut self.unknown_fields)? }, 5 => { ::protobuf::rt::read_repeated_string_into(wire_type, is, &mut self.catalogue_str)?; @@ -5619,15 +5110,15 @@ impl ::protobuf::Message for Restriction { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.countries_allowed.as_ref() { + if let Some(ref v) = self.countries_allowed.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; - if let Some(v) = self.countries_forbidden.as_ref() { + } + if let Some(ref v) = self.countries_forbidden.as_ref() { my_size += ::protobuf::rt::string_size(3, &v); - }; + } if let Some(v) = self.typ { my_size += ::protobuf::rt::enum_size(4, v); - }; + } for value in &self.catalogue_str { my_size += ::protobuf::rt::string_size(5, &value); }; @@ -5637,15 +5128,15 @@ impl ::protobuf::Message for Restriction { } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.countries_allowed.as_ref() { + if let Some(ref v) = self.countries_allowed.as_ref() { os.write_string(2, &v)?; - }; - if let Some(v) = self.countries_forbidden.as_ref() { + } + if let Some(ref v) = self.countries_forbidden.as_ref() { os.write_string(3, &v)?; - }; + } if let Some(v) = self.typ { os.write_enum(4, v.value())?; - }; + } for v in &self.catalogue_str { os.write_string(5, &v)?; }; @@ -5676,16 +5167,14 @@ impl ::protobuf::Message for Restriction { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Restriction { fn new() -> Restriction { Restriction::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -5695,23 +5184,23 @@ impl ::protobuf::MessageStatic for Restriction { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "countries_allowed", - Restriction::get_countries_allowed_for_reflect, - Restriction::mut_countries_allowed_for_reflect, + |m: &Restriction| { &m.countries_allowed }, + |m: &mut Restriction| { &mut m.countries_allowed }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "countries_forbidden", - Restriction::get_countries_forbidden_for_reflect, - Restriction::mut_countries_forbidden_for_reflect, + |m: &Restriction| { &m.countries_forbidden }, + |m: &mut Restriction| { &mut m.countries_forbidden }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "typ", - Restriction::get_typ_for_reflect, - Restriction::mut_typ_for_reflect, + |m: &Restriction| { &m.typ }, + |m: &mut Restriction| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "catalogue_str", - Restriction::get_catalogue_str_for_reflect, - Restriction::mut_catalogue_str_for_reflect, + |m: &Restriction| { &m.catalogue_str }, + |m: &mut Restriction| { &mut m.catalogue_str }, )); ::protobuf::reflect::MessageDescriptor::new::( "Restriction", @@ -5721,6 +5210,16 @@ impl ::protobuf::MessageStatic for Restriction { }) } } + + fn default_instance() -> &'static Restriction { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Restriction, + }; + unsafe { + instance.get(Restriction::new) + } + } } impl ::protobuf::Clear for Restriction { @@ -5769,7 +5268,7 @@ impl ::protobuf::ProtobufEnum for Restriction_Type { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -5802,24 +5301,11 @@ pub struct SalePeriod { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for SalePeriod {} - impl SalePeriod { pub fn new() -> SalePeriod { ::std::default::Default::default() } - pub fn default_instance() -> &'static SalePeriod { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const SalePeriod, - }; - unsafe { - instance.get(SalePeriod::new) - } - } - // repeated .Restriction restriction = 1; pub fn clear_restriction(&mut self) { @@ -5845,14 +5331,6 @@ impl SalePeriod { &self.restriction } - fn get_restriction_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.restriction - } - - fn mut_restriction_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.restriction - } - // optional .Date start = 2; pub fn clear_start(&mut self) { @@ -5873,7 +5351,7 @@ impl SalePeriod { pub fn mut_start(&mut self) -> &mut Date { if self.start.is_none() { self.start.set_default(); - }; + } self.start.as_mut().unwrap() } @@ -5886,14 +5364,6 @@ impl SalePeriod { self.start.as_ref().unwrap_or_else(|| Date::default_instance()) } - fn get_start_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.start - } - - fn mut_start_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.start - } - // optional .Date end = 3; pub fn clear_end(&mut self) { @@ -5914,7 +5384,7 @@ impl SalePeriod { pub fn mut_end(&mut self) -> &mut Date { if self.end.is_none() { self.end.set_default(); - }; + } self.end.as_mut().unwrap() } @@ -5926,18 +5396,25 @@ impl SalePeriod { pub fn get_end(&self) -> &Date { self.end.as_ref().unwrap_or_else(|| Date::default_instance()) } - - fn get_end_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.end - } - - fn mut_end_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.end - } } impl ::protobuf::Message for SalePeriod { fn is_initialized(&self) -> bool { + for v in &self.restriction { + if !v.is_initialized() { + return false; + } + }; + for v in &self.start { + if !v.is_initialized() { + return false; + } + }; + for v in &self.end { + if !v.is_initialized() { + return false; + } + }; true } @@ -5970,14 +5447,14 @@ impl ::protobuf::Message for SalePeriod { let len = value.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; - if let Some(v) = self.start.as_ref() { + if let Some(ref v) = self.start.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.end.as_ref() { + } + if let Some(ref v) = self.end.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -5989,16 +5466,16 @@ impl ::protobuf::Message for SalePeriod { os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; }; - if let Some(v) = self.start.as_ref() { + if let Some(ref v) = self.start.as_ref() { os.write_tag(2, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.end.as_ref() { + } + if let Some(ref v) = self.end.as_ref() { os.write_tag(3, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6026,16 +5503,14 @@ impl ::protobuf::Message for SalePeriod { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for SalePeriod { fn new() -> SalePeriod { SalePeriod::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6045,18 +5520,18 @@ impl ::protobuf::MessageStatic for SalePeriod { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "restriction", - SalePeriod::get_restriction_for_reflect, - SalePeriod::mut_restriction_for_reflect, + |m: &SalePeriod| { &m.restriction }, + |m: &mut SalePeriod| { &mut m.restriction }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "start", - SalePeriod::get_start_for_reflect, - SalePeriod::mut_start_for_reflect, + |m: &SalePeriod| { &m.start }, + |m: &mut SalePeriod| { &mut m.start }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "end", - SalePeriod::get_end_for_reflect, - SalePeriod::mut_end_for_reflect, + |m: &SalePeriod| { &m.end }, + |m: &mut SalePeriod| { &mut m.end }, )); ::protobuf::reflect::MessageDescriptor::new::( "SalePeriod", @@ -6066,6 +5541,16 @@ impl ::protobuf::MessageStatic for SalePeriod { }) } } + + fn default_instance() -> &'static SalePeriod { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const SalePeriod, + }; + unsafe { + instance.get(SalePeriod::new) + } + } } impl ::protobuf::Clear for SalePeriod { @@ -6099,24 +5584,11 @@ pub struct ExternalId { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for ExternalId {} - impl ExternalId { pub fn new() -> ExternalId { ::std::default::Default::default() } - pub fn default_instance() -> &'static ExternalId { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const ExternalId, - }; - unsafe { - instance.get(ExternalId::new) - } - } - // optional string typ = 1; pub fn clear_typ(&mut self) { @@ -6137,7 +5609,7 @@ impl ExternalId { pub fn mut_typ(&mut self) -> &mut ::std::string::String { if self.typ.is_none() { self.typ.set_default(); - }; + } self.typ.as_mut().unwrap() } @@ -6153,14 +5625,6 @@ impl ExternalId { } } - fn get_typ_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.typ - } - // optional string id = 2; pub fn clear_id(&mut self) { @@ -6181,7 +5645,7 @@ impl ExternalId { pub fn mut_id(&mut self) -> &mut ::std::string::String { if self.id.is_none() { self.id.set_default(); - }; + } self.id.as_mut().unwrap() } @@ -6196,14 +5660,6 @@ impl ExternalId { None => "", } } - - fn get_id_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.id - } - - fn mut_id_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.id - } } impl ::protobuf::Message for ExternalId { @@ -6233,24 +5689,24 @@ impl ::protobuf::Message for ExternalId { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.typ.as_ref() { + if let Some(ref v) = self.typ.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; - if let Some(v) = self.id.as_ref() { + } + if let Some(ref v) = self.id.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.typ.as_ref() { + if let Some(ref v) = self.typ.as_ref() { os.write_string(1, &v)?; - }; - if let Some(v) = self.id.as_ref() { + } + if let Some(ref v) = self.id.as_ref() { os.write_string(2, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6278,16 +5734,14 @@ impl ::protobuf::Message for ExternalId { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for ExternalId { fn new() -> ExternalId { ExternalId::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6297,13 +5751,13 @@ impl ::protobuf::MessageStatic for ExternalId { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "typ", - ExternalId::get_typ_for_reflect, - ExternalId::mut_typ_for_reflect, + |m: &ExternalId| { &m.typ }, + |m: &mut ExternalId| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "id", - ExternalId::get_id_for_reflect, - ExternalId::mut_id_for_reflect, + |m: &ExternalId| { &m.id }, + |m: &mut ExternalId| { &mut m.id }, )); ::protobuf::reflect::MessageDescriptor::new::( "ExternalId", @@ -6313,6 +5767,16 @@ impl ::protobuf::MessageStatic for ExternalId { }) } } + + fn default_instance() -> &'static ExternalId { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const ExternalId, + }; + unsafe { + instance.get(ExternalId::new) + } + } } impl ::protobuf::Clear for ExternalId { @@ -6345,24 +5809,11 @@ pub struct AudioFile { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for AudioFile {} - impl AudioFile { pub fn new() -> AudioFile { ::std::default::Default::default() } - pub fn default_instance() -> &'static AudioFile { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const AudioFile, - }; - unsafe { - instance.get(AudioFile::new) - } - } - // optional bytes file_id = 1; pub fn clear_file_id(&mut self) { @@ -6383,7 +5834,7 @@ impl AudioFile { pub fn mut_file_id(&mut self) -> &mut ::std::vec::Vec { if self.file_id.is_none() { self.file_id.set_default(); - }; + } self.file_id.as_mut().unwrap() } @@ -6399,14 +5850,6 @@ impl AudioFile { } } - fn get_file_id_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.file_id - } - - fn mut_file_id_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.file_id - } - // optional .AudioFile.Format format = 2; pub fn clear_format(&mut self) { @@ -6425,14 +5868,6 @@ impl AudioFile { pub fn get_format(&self) -> AudioFile_Format { self.format.unwrap_or(AudioFile_Format::OGG_VORBIS_96) } - - fn get_format_for_reflect(&self) -> &::std::option::Option { - &self.format - } - - fn mut_format_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.format - } } impl ::protobuf::Message for AudioFile { @@ -6448,11 +5883,7 @@ impl ::protobuf::Message for AudioFile { ::protobuf::rt::read_singular_bytes_into(wire_type, is, &mut self.file_id)?; }, 2 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.format = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.format, 2, &mut self.unknown_fields)? }, _ => { ::protobuf::rt::read_unknown_or_skip_group(field_number, wire_type, is, self.mut_unknown_fields())?; @@ -6466,24 +5897,24 @@ impl ::protobuf::Message for AudioFile { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.file_id.as_ref() { + if let Some(ref v) = self.file_id.as_ref() { my_size += ::protobuf::rt::bytes_size(1, &v); - }; + } if let Some(v) = self.format { my_size += ::protobuf::rt::enum_size(2, v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.file_id.as_ref() { + if let Some(ref v) = self.file_id.as_ref() { os.write_bytes(1, &v)?; - }; + } if let Some(v) = self.format { os.write_enum(2, v.value())?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -6511,16 +5942,14 @@ impl ::protobuf::Message for AudioFile { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for AudioFile { fn new() -> AudioFile { AudioFile::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -6530,13 +5959,13 @@ impl ::protobuf::MessageStatic for AudioFile { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "file_id", - AudioFile::get_file_id_for_reflect, - AudioFile::mut_file_id_for_reflect, + |m: &AudioFile| { &m.file_id }, + |m: &mut AudioFile| { &mut m.file_id }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "format", - AudioFile::get_format_for_reflect, - AudioFile::mut_format_for_reflect, + |m: &AudioFile| { &m.format }, + |m: &mut AudioFile| { &mut m.format }, )); ::protobuf::reflect::MessageDescriptor::new::( "AudioFile", @@ -6546,6 +5975,16 @@ impl ::protobuf::MessageStatic for AudioFile { }) } } + + fn default_instance() -> &'static AudioFile { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const AudioFile, + }; + unsafe { + instance.get(AudioFile::new) + } + } } impl ::protobuf::Clear for AudioFile { @@ -6631,7 +6070,7 @@ impl ::protobuf::ProtobufEnum for AudioFile_Format { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -6653,683 +6092,93 @@ impl ::protobuf::reflect::ProtobufValue for AudioFile_Format { } } -static file_descriptor_proto_data: &'static [u8] = &[ - 0x0a, 0x0e, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x22, 0x43, 0x0a, 0x09, 0x54, 0x6f, 0x70, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x18, 0x0a, - 0x07, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x1c, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x52, 0x05, - 0x74, 0x72, 0x61, 0x63, 0x6b, 0x22, 0x62, 0x0a, 0x0e, 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, - 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x5f, 0x79, 0x65, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x09, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x59, 0x65, 0x61, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x79, 0x65, - 0x61, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x11, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x59, 0x65, 0x61, - 0x72, 0x12, 0x16, 0x0a, 0x06, 0x64, 0x65, 0x63, 0x61, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x06, 0x64, 0x65, 0x63, 0x61, 0x64, 0x65, 0x22, 0xd0, 0x05, 0x0a, 0x06, 0x41, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0c, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6f, - 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, - 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x27, 0x0a, 0x09, 0x74, 0x6f, - 0x70, 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, - 0x54, 0x6f, 0x70, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x73, 0x52, 0x08, 0x74, 0x6f, 0x70, 0x54, 0x72, - 0x61, 0x63, 0x6b, 0x12, 0x2c, 0x0a, 0x0b, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x5f, 0x67, 0x72, 0x6f, - 0x75, 0x70, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x41, 0x6c, 0x62, 0x75, 0x6d, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0a, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x12, 0x2e, 0x0a, 0x0c, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x67, 0x72, 0x6f, 0x75, - 0x70, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x41, 0x6c, 0x62, 0x75, 0x6d, 0x47, - 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0b, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x47, 0x72, 0x6f, 0x75, - 0x70, 0x12, 0x38, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, - 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x41, - 0x6c, 0x62, 0x75, 0x6d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x10, 0x63, 0x6f, 0x6d, 0x70, 0x69, - 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x35, 0x0a, 0x10, 0x61, - 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x5f, 0x6f, 0x6e, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, - 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x41, 0x6c, 0x62, 0x75, 0x6d, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x52, 0x0e, 0x61, 0x70, 0x70, 0x65, 0x61, 0x72, 0x73, 0x4f, 0x6e, 0x47, 0x72, 0x6f, - 0x75, 0x70, 0x12, 0x14, 0x0a, 0x05, 0x67, 0x65, 0x6e, 0x72, 0x65, 0x18, 0x09, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x05, 0x67, 0x65, 0x6e, 0x72, 0x65, 0x12, 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, - 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, - 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x22, 0x0a, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x72, 0x61, - 0x69, 0x74, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, - 0x52, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, 0x12, 0x28, 0x0a, 0x09, 0x62, 0x69, - 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, - 0x42, 0x69, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, 0x52, 0x09, 0x62, 0x69, 0x6f, 0x67, 0x72, - 0x61, 0x70, 0x68, 0x79, 0x12, 0x38, 0x0a, 0x0f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, - 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x0e, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x69, 0x74, 0x79, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x2e, - 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x21, - 0x0a, 0x07, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x07, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, - 0x64, 0x12, 0x35, 0x0a, 0x17, 0x69, 0x73, 0x5f, 0x70, 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, - 0x5f, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x5f, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x10, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x14, 0x69, 0x73, 0x50, 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, 0x41, 0x6c, - 0x62, 0x75, 0x6d, 0x43, 0x6f, 0x76, 0x65, 0x72, 0x12, 0x32, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, - 0x72, 0x61, 0x69, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x0b, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0d, 0x70, - 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x2a, 0x0a, 0x0a, - 0x41, 0x6c, 0x62, 0x75, 0x6d, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1c, 0x0a, 0x05, 0x61, 0x6c, - 0x62, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x41, 0x6c, 0x62, 0x75, - 0x6d, 0x52, 0x05, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x22, 0x42, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x65, - 0x12, 0x12, 0x0a, 0x04, 0x79, 0x65, 0x61, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x11, 0x52, 0x04, - 0x79, 0x65, 0x61, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x11, 0x52, 0x05, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x64, 0x61, - 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x11, 0x52, 0x03, 0x64, 0x61, 0x79, 0x22, 0xe3, 0x04, 0x0a, - 0x05, 0x41, 0x6c, 0x62, 0x75, 0x6d, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0c, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x06, - 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x07, 0x2e, 0x41, - 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x06, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x12, 0x1d, 0x0a, - 0x03, 0x74, 0x79, 0x70, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x41, 0x6c, 0x62, - 0x75, 0x6d, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x14, 0x0a, 0x05, - 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6c, 0x61, 0x62, - 0x65, 0x6c, 0x12, 0x19, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x05, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x04, 0x64, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, - 0x0a, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x0a, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x14, 0x0a, - 0x05, 0x67, 0x65, 0x6e, 0x72, 0x65, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x67, 0x65, - 0x6e, 0x72, 0x65, 0x12, 0x1c, 0x0a, 0x05, 0x63, 0x6f, 0x76, 0x65, 0x72, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x63, 0x6f, 0x76, 0x65, - 0x72, 0x12, 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, 0x64, - 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, - 0x6c, 0x49, 0x64, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, - 0x19, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x63, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x05, 0x2e, - 0x44, 0x69, 0x73, 0x63, 0x52, 0x04, 0x64, 0x69, 0x73, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, - 0x76, 0x69, 0x65, 0x77, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x76, 0x69, - 0x65, 0x77, 0x12, 0x28, 0x0a, 0x09, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x18, - 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, - 0x74, 0x52, 0x09, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x12, 0x2e, 0x0a, 0x0b, - 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0c, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, - 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x07, - 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, - 0x41, 0x6c, 0x62, 0x75, 0x6d, 0x52, 0x07, 0x72, 0x65, 0x6c, 0x61, 0x74, 0x65, 0x64, 0x12, 0x2c, - 0x0a, 0x0b, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x10, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x53, 0x61, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, - 0x52, 0x0a, 0x73, 0x61, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x2c, 0x0a, 0x0b, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x0b, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0a, - 0x63, 0x6f, 0x76, 0x65, 0x72, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x36, 0x0a, 0x04, 0x54, 0x79, - 0x70, 0x65, 0x12, 0x09, 0x0a, 0x05, 0x41, 0x4c, 0x42, 0x55, 0x4d, 0x10, 0x01, 0x12, 0x0a, 0x0a, - 0x06, 0x53, 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x43, 0x4f, 0x4d, - 0x50, 0x49, 0x4c, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x06, 0x0a, 0x02, 0x45, 0x50, - 0x10, 0x04, 0x22, 0xf9, 0x03, 0x0a, 0x05, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x10, 0x0a, 0x03, - 0x67, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x12, - 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x05, 0x61, 0x6c, 0x62, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x06, 0x2e, 0x41, 0x6c, 0x62, 0x75, 0x6d, 0x52, 0x05, 0x61, 0x6c, 0x62, 0x75, 0x6d, - 0x12, 0x1f, 0x0a, 0x06, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x07, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x52, 0x06, 0x61, 0x72, 0x74, 0x69, 0x73, - 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, 0x0b, 0x64, 0x69, 0x73, - 0x63, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, - 0x64, 0x69, 0x73, 0x63, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x11, 0x52, 0x08, 0x64, 0x75, - 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x6f, 0x70, 0x75, 0x6c, 0x61, - 0x72, 0x69, 0x74, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x11, 0x52, 0x0a, 0x70, 0x6f, 0x70, 0x75, - 0x6c, 0x61, 0x72, 0x69, 0x74, 0x79, 0x12, 0x1a, 0x0a, 0x08, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, - 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x65, 0x78, 0x70, 0x6c, 0x69, 0x63, - 0x69, 0x74, 0x12, 0x2c, 0x0a, 0x0b, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x69, - 0x64, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x49, 0x64, 0x52, 0x0a, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, - 0x12, 0x2e, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, - 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x12, 0x1e, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, - 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, - 0x12, 0x28, 0x0a, 0x0b, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x18, - 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x52, 0x0b, 0x61, - 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x12, 0x2c, 0x0a, 0x0b, 0x73, 0x61, - 0x6c, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x0b, 0x2e, 0x53, 0x61, 0x6c, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x52, 0x0a, 0x73, 0x61, - 0x6c, 0x65, 0x50, 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x24, 0x0a, 0x07, 0x70, 0x72, 0x65, 0x76, - 0x69, 0x65, 0x77, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x41, 0x75, 0x64, 0x69, - 0x6f, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x07, 0x70, 0x72, 0x65, 0x76, 0x69, 0x65, 0x77, 0x22, 0xa6, - 0x01, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x69, 0x6c, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x65, 0x49, - 0x64, 0x12, 0x1f, 0x0a, 0x04, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, - 0x0b, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x69, 0x7a, 0x65, 0x52, 0x04, 0x73, 0x69, - 0x7a, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x11, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x16, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67, - 0x68, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74, - 0x22, 0x35, 0x0a, 0x04, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x0b, 0x0a, 0x07, 0x44, 0x45, 0x46, 0x41, - 0x55, 0x4c, 0x54, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x4d, 0x41, 0x4c, 0x4c, 0x10, 0x01, - 0x12, 0x09, 0x0a, 0x05, 0x4c, 0x41, 0x52, 0x47, 0x45, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x58, - 0x4c, 0x41, 0x52, 0x47, 0x45, 0x10, 0x03, 0x22, 0x2a, 0x0a, 0x0a, 0x49, 0x6d, 0x61, 0x67, 0x65, - 0x47, 0x72, 0x6f, 0x75, 0x70, 0x12, 0x1c, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, - 0x61, 0x67, 0x65, 0x22, 0x77, 0x0a, 0x09, 0x42, 0x69, 0x6f, 0x67, 0x72, 0x61, 0x70, 0x68, 0x79, - 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x74, 0x65, 0x78, 0x74, 0x12, 0x22, 0x0a, 0x08, 0x70, 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x06, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x08, - 0x70, 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, 0x12, 0x32, 0x0a, 0x0e, 0x70, 0x6f, 0x72, 0x74, - 0x72, 0x61, 0x69, 0x74, 0x5f, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x0b, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x52, 0x0d, 0x70, - 0x6f, 0x72, 0x74, 0x72, 0x61, 0x69, 0x74, 0x47, 0x72, 0x6f, 0x75, 0x70, 0x22, 0x50, 0x0a, 0x04, - 0x44, 0x69, 0x73, 0x63, 0x12, 0x16, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x11, 0x52, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x1c, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x06, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x52, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x22, 0x58, - 0x0a, 0x09, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x12, 0x21, 0x0a, 0x03, 0x74, - 0x79, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0f, 0x2e, 0x43, 0x6f, 0x70, 0x79, 0x72, - 0x69, 0x67, 0x68, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x12, - 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, - 0x78, 0x74, 0x22, 0x14, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x05, 0x0a, 0x01, 0x50, 0x10, - 0x00, 0x12, 0x05, 0x0a, 0x01, 0x43, 0x10, 0x01, 0x22, 0xcc, 0x01, 0x0a, 0x0b, 0x52, 0x65, 0x73, - 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x0a, 0x11, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x72, 0x69, 0x65, 0x73, 0x5f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x41, 0x6c, - 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, - 0x65, 0x73, 0x5f, 0x66, 0x6f, 0x72, 0x62, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x12, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x46, 0x6f, 0x72, - 0x62, 0x69, 0x64, 0x64, 0x65, 0x6e, 0x12, 0x23, 0x0a, 0x03, 0x74, 0x79, 0x70, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, - 0x6e, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x23, 0x0a, 0x0d, 0x63, - 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x75, 0x65, 0x5f, 0x73, 0x74, 0x72, 0x18, 0x05, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x74, 0x61, 0x6c, 0x6f, 0x67, 0x75, 0x65, 0x53, 0x74, 0x72, - 0x22, 0x15, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x54, 0x52, 0x45, - 0x41, 0x4d, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x22, 0x72, 0x0a, 0x0a, 0x53, 0x61, 0x6c, 0x65, 0x50, - 0x65, 0x72, 0x69, 0x6f, 0x64, 0x12, 0x2e, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0c, 0x2e, 0x52, 0x65, 0x73, - 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x72, 0x74, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x05, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, - 0x72, 0x74, 0x12, 0x17, 0x0a, 0x03, 0x65, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x05, 0x2e, 0x44, 0x61, 0x74, 0x65, 0x52, 0x03, 0x65, 0x6e, 0x64, 0x22, 0x2e, 0x0a, 0x0a, 0x45, - 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x49, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x79, 0x70, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x0e, 0x0a, 0x02, 0x69, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0xa3, 0x02, 0x0a, 0x09, - 0x41, 0x75, 0x64, 0x69, 0x6f, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x66, 0x69, 0x6c, - 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x65, - 0x49, 0x64, 0x12, 0x29, 0x0a, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x11, 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x46, 0x69, 0x6c, 0x65, 0x2e, 0x46, - 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x06, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0xd1, 0x01, - 0x0a, 0x06, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x11, 0x0a, 0x0d, 0x4f, 0x47, 0x47, 0x5f, - 0x56, 0x4f, 0x52, 0x42, 0x49, 0x53, 0x5f, 0x39, 0x36, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x4f, - 0x47, 0x47, 0x5f, 0x56, 0x4f, 0x52, 0x42, 0x49, 0x53, 0x5f, 0x31, 0x36, 0x30, 0x10, 0x01, 0x12, - 0x12, 0x0a, 0x0e, 0x4f, 0x47, 0x47, 0x5f, 0x56, 0x4f, 0x52, 0x42, 0x49, 0x53, 0x5f, 0x33, 0x32, - 0x30, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x50, 0x33, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x03, - 0x12, 0x0b, 0x0a, 0x07, 0x4d, 0x50, 0x33, 0x5f, 0x33, 0x32, 0x30, 0x10, 0x04, 0x12, 0x0b, 0x0a, - 0x07, 0x4d, 0x50, 0x33, 0x5f, 0x31, 0x36, 0x30, 0x10, 0x05, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x50, - 0x33, 0x5f, 0x39, 0x36, 0x10, 0x06, 0x12, 0x0f, 0x0a, 0x0b, 0x4d, 0x50, 0x33, 0x5f, 0x31, 0x36, - 0x30, 0x5f, 0x45, 0x4e, 0x43, 0x10, 0x07, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x54, 0x48, 0x45, 0x52, - 0x32, 0x10, 0x08, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x33, 0x10, 0x09, 0x12, - 0x0b, 0x0a, 0x07, 0x41, 0x41, 0x43, 0x5f, 0x31, 0x36, 0x30, 0x10, 0x0a, 0x12, 0x0b, 0x0a, 0x07, - 0x41, 0x41, 0x43, 0x5f, 0x33, 0x32, 0x30, 0x10, 0x0b, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x54, 0x48, - 0x45, 0x52, 0x34, 0x10, 0x0c, 0x12, 0x0a, 0x0a, 0x06, 0x4f, 0x54, 0x48, 0x45, 0x52, 0x35, 0x10, - 0x0d, 0x4a, 0xba, 0x3a, 0x0a, 0x07, 0x12, 0x05, 0x00, 0x00, 0xa5, 0x01, 0x01, 0x0a, 0x08, 0x0a, - 0x01, 0x0c, 0x12, 0x03, 0x00, 0x00, 0x12, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x00, 0x12, 0x04, 0x02, - 0x00, 0x05, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x02, 0x08, 0x11, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x03, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x00, 0x04, 0x12, 0x03, 0x03, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x00, 0x05, 0x12, 0x03, 0x03, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, - 0x01, 0x12, 0x03, 0x03, 0x14, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, - 0x03, 0x03, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x04, 0x04, - 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x04, 0x12, 0x03, 0x04, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x06, 0x12, 0x03, 0x04, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x04, 0x13, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x01, 0x03, 0x12, 0x03, 0x04, 0x1b, 0x1e, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x01, 0x12, - 0x04, 0x07, 0x00, 0x0b, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x01, 0x01, 0x12, 0x03, 0x07, 0x08, - 0x16, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x00, 0x12, 0x03, 0x08, 0x04, 0x25, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x04, 0x12, 0x03, 0x08, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x01, 0x02, 0x00, 0x05, 0x12, 0x03, 0x08, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, - 0x02, 0x00, 0x01, 0x12, 0x03, 0x08, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, - 0x03, 0x12, 0x03, 0x08, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x01, 0x12, 0x03, - 0x09, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x04, 0x12, 0x03, 0x09, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x05, 0x12, 0x03, 0x09, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x01, 0x12, 0x03, 0x09, 0x14, 0x1c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x01, 0x03, 0x12, 0x03, 0x09, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x01, 0x02, 0x02, 0x12, 0x03, 0x0a, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, - 0x04, 0x12, 0x03, 0x0a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x05, 0x12, - 0x03, 0x0a, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x01, 0x12, 0x03, 0x0a, - 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x03, 0x12, 0x03, 0x0a, 0x1d, 0x20, - 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x02, 0x12, 0x04, 0x0d, 0x00, 0x1f, 0x01, 0x0a, 0x0a, 0x0a, 0x03, - 0x04, 0x02, 0x01, 0x12, 0x03, 0x0d, 0x08, 0x0e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x00, - 0x12, 0x03, 0x0e, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x04, 0x12, 0x03, - 0x0e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x05, 0x12, 0x03, 0x0e, 0x0d, - 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x0e, 0x13, 0x16, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x0e, 0x19, 0x1c, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x0f, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x01, 0x04, 0x12, 0x03, 0x0f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, - 0x05, 0x12, 0x03, 0x0f, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x01, 0x12, - 0x03, 0x0f, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x03, 0x12, 0x03, 0x0f, - 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x02, 0x12, 0x03, 0x10, 0x04, 0x25, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x04, 0x12, 0x03, 0x10, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x02, 0x02, 0x02, 0x05, 0x12, 0x03, 0x10, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, 0x10, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, - 0x02, 0x03, 0x12, 0x03, 0x10, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x03, 0x12, - 0x03, 0x11, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x04, 0x12, 0x03, 0x11, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x06, 0x12, 0x03, 0x11, 0x0d, 0x16, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x01, 0x12, 0x03, 0x11, 0x17, 0x20, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x03, 0x03, 0x12, 0x03, 0x11, 0x23, 0x26, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x02, 0x02, 0x04, 0x12, 0x03, 0x12, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, - 0x04, 0x04, 0x12, 0x03, 0x12, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x06, - 0x12, 0x03, 0x12, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x01, 0x12, 0x03, - 0x12, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x04, 0x03, 0x12, 0x03, 0x12, 0x26, - 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x05, 0x12, 0x03, 0x13, 0x04, 0x2b, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05, 0x04, 0x12, 0x03, 0x13, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x05, 0x06, 0x12, 0x03, 0x13, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x05, 0x01, 0x12, 0x03, 0x13, 0x18, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x05, - 0x03, 0x12, 0x03, 0x13, 0x27, 0x2a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x06, 0x12, 0x03, - 0x14, 0x04, 0x30, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x04, 0x12, 0x03, 0x14, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x06, 0x12, 0x03, 0x14, 0x0d, 0x17, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x06, 0x01, 0x12, 0x03, 0x14, 0x18, 0x29, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x02, 0x02, 0x06, 0x03, 0x12, 0x03, 0x14, 0x2c, 0x2f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x02, 0x02, 0x07, 0x12, 0x03, 0x15, 0x04, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, - 0x04, 0x12, 0x03, 0x15, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x06, 0x12, - 0x03, 0x15, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x01, 0x12, 0x03, 0x15, - 0x18, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x07, 0x03, 0x12, 0x03, 0x15, 0x2b, 0x2e, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x08, 0x12, 0x03, 0x16, 0x04, 0x20, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x02, 0x02, 0x08, 0x04, 0x12, 0x03, 0x16, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x02, 0x02, 0x08, 0x05, 0x12, 0x03, 0x16, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, - 0x08, 0x01, 0x12, 0x03, 0x16, 0x14, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x08, 0x03, - 0x12, 0x03, 0x16, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x09, 0x12, 0x03, 0x17, - 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x04, 0x12, 0x03, 0x17, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x06, 0x12, 0x03, 0x17, 0x0d, 0x17, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x09, 0x01, 0x12, 0x03, 0x17, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x09, 0x03, 0x12, 0x03, 0x17, 0x26, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, - 0x02, 0x0a, 0x12, 0x03, 0x18, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0a, 0x04, - 0x12, 0x03, 0x18, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0a, 0x06, 0x12, 0x03, - 0x18, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x18, 0x13, - 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0a, 0x03, 0x12, 0x03, 0x18, 0x1e, 0x21, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x0b, 0x12, 0x03, 0x19, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x0b, 0x04, 0x12, 0x03, 0x19, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x0b, 0x06, 0x12, 0x03, 0x19, 0x0d, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0b, - 0x01, 0x12, 0x03, 0x19, 0x17, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0b, 0x03, 0x12, - 0x03, 0x19, 0x23, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x0c, 0x12, 0x03, 0x1a, 0x04, - 0x32, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0c, 0x04, 0x12, 0x03, 0x1a, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0c, 0x06, 0x12, 0x03, 0x1a, 0x0d, 0x1b, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x02, 0x02, 0x0c, 0x01, 0x12, 0x03, 0x1a, 0x1c, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x02, 0x02, 0x0c, 0x03, 0x12, 0x03, 0x1a, 0x2e, 0x31, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, - 0x0d, 0x12, 0x03, 0x1b, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0d, 0x04, 0x12, - 0x03, 0x1b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0d, 0x06, 0x12, 0x03, 0x1b, - 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0d, 0x01, 0x12, 0x03, 0x1b, 0x19, 0x24, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0d, 0x03, 0x12, 0x03, 0x1b, 0x27, 0x2a, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x02, 0x02, 0x0e, 0x12, 0x03, 0x1c, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x02, 0x02, 0x0e, 0x04, 0x12, 0x03, 0x1c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, - 0x0e, 0x06, 0x12, 0x03, 0x1c, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0e, 0x01, - 0x12, 0x03, 0x1c, 0x14, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0e, 0x03, 0x12, 0x03, - 0x1c, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x0f, 0x12, 0x03, 0x1d, 0x04, 0x31, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0f, 0x04, 0x12, 0x03, 0x1d, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x0f, 0x05, 0x12, 0x03, 0x1d, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x0f, 0x01, 0x12, 0x03, 0x1d, 0x12, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x0f, 0x03, 0x12, 0x03, 0x1d, 0x2c, 0x30, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x10, - 0x12, 0x03, 0x1e, 0x04, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x10, 0x04, 0x12, 0x03, - 0x1e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x10, 0x06, 0x12, 0x03, 0x1e, 0x0d, - 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x10, 0x01, 0x12, 0x03, 0x1e, 0x18, 0x26, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x10, 0x03, 0x12, 0x03, 0x1e, 0x29, 0x2d, 0x0a, 0x0a, 0x0a, - 0x02, 0x04, 0x03, 0x12, 0x04, 0x21, 0x00, 0x23, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x03, 0x01, - 0x12, 0x03, 0x21, 0x08, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x00, 0x12, 0x03, 0x22, - 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x04, 0x12, 0x03, 0x22, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x06, 0x12, 0x03, 0x22, 0x0d, 0x12, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x01, 0x12, 0x03, 0x22, 0x13, 0x18, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x03, 0x02, 0x00, 0x03, 0x12, 0x03, 0x22, 0x1b, 0x1e, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x04, - 0x12, 0x04, 0x25, 0x00, 0x29, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x04, 0x01, 0x12, 0x03, 0x25, - 0x08, 0x0c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x00, 0x12, 0x03, 0x26, 0x04, 0x1f, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x04, 0x12, 0x03, 0x26, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x04, 0x02, 0x00, 0x05, 0x12, 0x03, 0x26, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x04, 0x02, 0x00, 0x01, 0x12, 0x03, 0x26, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x00, 0x03, 0x12, 0x03, 0x26, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x01, 0x12, - 0x03, 0x27, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x04, 0x12, 0x03, 0x27, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x05, 0x12, 0x03, 0x27, 0x0d, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x01, 0x12, 0x03, 0x27, 0x14, 0x19, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x03, 0x12, 0x03, 0x27, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x04, 0x02, 0x02, 0x12, 0x03, 0x28, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x02, 0x04, 0x12, 0x03, 0x28, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x05, - 0x12, 0x03, 0x28, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, - 0x28, 0x14, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x03, 0x12, 0x03, 0x28, 0x1a, - 0x1d, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x05, 0x12, 0x04, 0x2b, 0x00, 0x43, 0x01, 0x0a, 0x0a, 0x0a, - 0x03, 0x04, 0x05, 0x01, 0x12, 0x03, 0x2b, 0x08, 0x0d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, - 0x00, 0x12, 0x03, 0x2c, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x04, 0x12, - 0x03, 0x2c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x05, 0x12, 0x03, 0x2c, - 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x01, 0x12, 0x03, 0x2c, 0x13, 0x16, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x03, 0x12, 0x03, 0x2c, 0x19, 0x1c, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 0x03, 0x2d, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x02, 0x01, 0x04, 0x12, 0x03, 0x2d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x01, 0x05, 0x12, 0x03, 0x2d, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x2d, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x03, 0x12, 0x03, - 0x2d, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x02, 0x12, 0x03, 0x2e, 0x04, 0x21, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x04, 0x12, 0x03, 0x2e, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x06, 0x12, 0x03, 0x2e, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x02, 0x01, 0x12, 0x03, 0x2e, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x02, 0x03, 0x12, 0x03, 0x2e, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x03, - 0x12, 0x03, 0x2f, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, 0x04, 0x12, 0x03, - 0x2f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, 0x06, 0x12, 0x03, 0x2f, 0x0d, - 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, 0x01, 0x12, 0x03, 0x2f, 0x12, 0x15, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, 0x03, 0x12, 0x03, 0x2f, 0x18, 0x1b, 0x0a, 0x0c, 0x0a, - 0x04, 0x04, 0x05, 0x04, 0x00, 0x12, 0x04, 0x30, 0x04, 0x35, 0x05, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x04, 0x00, 0x01, 0x12, 0x03, 0x30, 0x09, 0x0d, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x05, 0x04, - 0x00, 0x02, 0x00, 0x12, 0x03, 0x31, 0x08, 0x14, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, - 0x02, 0x00, 0x01, 0x12, 0x03, 0x31, 0x08, 0x0d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, - 0x02, 0x00, 0x02, 0x12, 0x03, 0x31, 0x10, 0x13, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x05, 0x04, 0x00, - 0x02, 0x01, 0x12, 0x03, 0x32, 0x08, 0x15, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, 0x02, - 0x01, 0x01, 0x12, 0x03, 0x32, 0x08, 0x0e, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, 0x02, - 0x01, 0x02, 0x12, 0x03, 0x32, 0x11, 0x14, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x05, 0x04, 0x00, 0x02, - 0x02, 0x12, 0x03, 0x33, 0x08, 0x1a, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, 0x02, 0x02, - 0x01, 0x12, 0x03, 0x33, 0x08, 0x13, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, 0x02, 0x02, - 0x02, 0x12, 0x03, 0x33, 0x16, 0x19, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x05, 0x04, 0x00, 0x02, 0x03, - 0x12, 0x03, 0x34, 0x08, 0x11, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, 0x02, 0x03, 0x01, - 0x12, 0x03, 0x34, 0x08, 0x0a, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x05, 0x04, 0x00, 0x02, 0x03, 0x02, - 0x12, 0x03, 0x34, 0x0d, 0x10, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x04, 0x12, 0x03, 0x36, - 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x04, 0x04, 0x12, 0x03, 0x36, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x04, 0x05, 0x12, 0x03, 0x36, 0x0d, 0x13, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x04, 0x01, 0x12, 0x03, 0x36, 0x14, 0x19, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x04, 0x03, 0x12, 0x03, 0x36, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, - 0x02, 0x05, 0x12, 0x03, 0x37, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x05, 0x04, - 0x12, 0x03, 0x37, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x05, 0x06, 0x12, 0x03, - 0x37, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x05, 0x01, 0x12, 0x03, 0x37, 0x12, - 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x05, 0x03, 0x12, 0x03, 0x37, 0x19, 0x1c, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x06, 0x12, 0x03, 0x38, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x06, 0x04, 0x12, 0x03, 0x38, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x06, 0x05, 0x12, 0x03, 0x38, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x06, - 0x01, 0x12, 0x03, 0x38, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x06, 0x03, 0x12, - 0x03, 0x38, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x07, 0x12, 0x03, 0x39, 0x04, - 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x07, 0x04, 0x12, 0x03, 0x39, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x07, 0x05, 0x12, 0x03, 0x39, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x05, 0x02, 0x07, 0x01, 0x12, 0x03, 0x39, 0x14, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x02, 0x07, 0x03, 0x12, 0x03, 0x39, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, - 0x08, 0x12, 0x03, 0x3a, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x08, 0x04, 0x12, - 0x03, 0x3a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x08, 0x06, 0x12, 0x03, 0x3a, - 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x08, 0x01, 0x12, 0x03, 0x3a, 0x13, 0x18, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x08, 0x03, 0x12, 0x03, 0x3a, 0x1b, 0x1e, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x05, 0x02, 0x09, 0x12, 0x03, 0x3b, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x02, 0x09, 0x04, 0x12, 0x03, 0x3b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x09, 0x06, 0x12, 0x03, 0x3b, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x09, 0x01, - 0x12, 0x03, 0x3b, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x09, 0x03, 0x12, 0x03, - 0x3b, 0x26, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x0a, 0x12, 0x03, 0x3c, 0x04, 0x1d, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0a, 0x04, 0x12, 0x03, 0x3c, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0a, 0x06, 0x12, 0x03, 0x3c, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x3c, 0x12, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x0a, 0x03, 0x12, 0x03, 0x3c, 0x19, 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x0b, - 0x12, 0x03, 0x3d, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0b, 0x04, 0x12, 0x03, - 0x3d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0b, 0x05, 0x12, 0x03, 0x3d, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x3d, 0x14, 0x1a, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0b, 0x03, 0x12, 0x03, 0x3d, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x05, 0x02, 0x0c, 0x12, 0x03, 0x3e, 0x04, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x0c, 0x04, 0x12, 0x03, 0x3e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0c, - 0x06, 0x12, 0x03, 0x3e, 0x0d, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0c, 0x01, 0x12, - 0x03, 0x3e, 0x17, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0c, 0x03, 0x12, 0x03, 0x3e, - 0x23, 0x26, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x0d, 0x12, 0x03, 0x3f, 0x04, 0x2b, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0d, 0x04, 0x12, 0x03, 0x3f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x05, 0x02, 0x0d, 0x06, 0x12, 0x03, 0x3f, 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x02, 0x0d, 0x01, 0x12, 0x03, 0x3f, 0x19, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x0d, 0x03, 0x12, 0x03, 0x3f, 0x27, 0x2a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x0e, 0x12, - 0x03, 0x40, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0e, 0x04, 0x12, 0x03, 0x40, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0e, 0x06, 0x12, 0x03, 0x40, 0x0d, 0x12, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x40, 0x13, 0x1a, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0e, 0x03, 0x12, 0x03, 0x40, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x05, 0x02, 0x0f, 0x12, 0x03, 0x41, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x0f, 0x04, 0x12, 0x03, 0x41, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0f, 0x06, - 0x12, 0x03, 0x41, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0f, 0x01, 0x12, 0x03, - 0x41, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x0f, 0x03, 0x12, 0x03, 0x41, 0x26, - 0x2a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x10, 0x12, 0x03, 0x42, 0x04, 0x2b, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x10, 0x04, 0x12, 0x03, 0x42, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x10, 0x06, 0x12, 0x03, 0x42, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x10, 0x01, 0x12, 0x03, 0x42, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x10, - 0x03, 0x12, 0x03, 0x42, 0x26, 0x2a, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x06, 0x12, 0x04, 0x45, 0x00, - 0x55, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x06, 0x01, 0x12, 0x03, 0x45, 0x08, 0x0d, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x06, 0x02, 0x00, 0x12, 0x03, 0x46, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x00, 0x04, 0x12, 0x03, 0x46, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x00, 0x05, 0x12, 0x03, 0x46, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x01, - 0x12, 0x03, 0x46, 0x13, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x03, 0x12, 0x03, - 0x46, 0x19, 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x01, 0x12, 0x03, 0x47, 0x04, 0x1f, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x04, 0x12, 0x03, 0x47, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x05, 0x12, 0x03, 0x47, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x01, 0x01, 0x12, 0x03, 0x47, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x01, 0x03, 0x12, 0x03, 0x47, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x02, - 0x12, 0x03, 0x48, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x04, 0x12, 0x03, - 0x48, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x06, 0x12, 0x03, 0x48, 0x0d, - 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x01, 0x12, 0x03, 0x48, 0x13, 0x18, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x03, 0x12, 0x03, 0x48, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x06, 0x02, 0x03, 0x12, 0x03, 0x49, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x03, 0x04, 0x12, 0x03, 0x49, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, - 0x06, 0x12, 0x03, 0x49, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x01, 0x12, - 0x03, 0x49, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x03, 0x12, 0x03, 0x49, - 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x04, 0x12, 0x03, 0x4a, 0x04, 0x21, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x04, 0x12, 0x03, 0x4a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x04, 0x05, 0x12, 0x03, 0x4a, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x04, 0x01, 0x12, 0x03, 0x4a, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x04, 0x03, 0x12, 0x03, 0x4a, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x05, 0x12, - 0x03, 0x4b, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x04, 0x12, 0x03, 0x4b, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x05, 0x12, 0x03, 0x4b, 0x0d, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x01, 0x12, 0x03, 0x4b, 0x14, 0x1f, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x03, 0x12, 0x03, 0x4b, 0x22, 0x25, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x06, 0x02, 0x06, 0x12, 0x03, 0x4c, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x06, 0x04, 0x12, 0x03, 0x4c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x05, - 0x12, 0x03, 0x4c, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x01, 0x12, 0x03, - 0x4c, 0x14, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x03, 0x12, 0x03, 0x4c, 0x1f, - 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x07, 0x12, 0x03, 0x4d, 0x04, 0x25, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x07, 0x04, 0x12, 0x03, 0x4d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x07, 0x05, 0x12, 0x03, 0x4d, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x07, 0x01, 0x12, 0x03, 0x4d, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x07, - 0x03, 0x12, 0x03, 0x4d, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x08, 0x12, 0x03, - 0x4e, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x08, 0x04, 0x12, 0x03, 0x4e, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x08, 0x05, 0x12, 0x03, 0x4e, 0x0d, 0x11, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x08, 0x01, 0x12, 0x03, 0x4e, 0x12, 0x1a, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x08, 0x03, 0x12, 0x03, 0x4e, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x06, 0x02, 0x09, 0x12, 0x03, 0x4f, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x09, - 0x04, 0x12, 0x03, 0x4f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x09, 0x06, 0x12, - 0x03, 0x4f, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x09, 0x01, 0x12, 0x03, 0x4f, - 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x09, 0x03, 0x12, 0x03, 0x4f, 0x26, 0x29, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x0a, 0x12, 0x03, 0x50, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x0a, 0x04, 0x12, 0x03, 0x50, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x0a, 0x06, 0x12, 0x03, 0x50, 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x0a, 0x01, 0x12, 0x03, 0x50, 0x19, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0a, 0x03, - 0x12, 0x03, 0x50, 0x27, 0x2a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x0b, 0x12, 0x03, 0x51, - 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0b, 0x04, 0x12, 0x03, 0x51, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0b, 0x06, 0x12, 0x03, 0x51, 0x0d, 0x16, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x51, 0x17, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x0b, 0x03, 0x12, 0x03, 0x51, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, - 0x02, 0x0c, 0x12, 0x03, 0x52, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0c, 0x04, - 0x12, 0x03, 0x52, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0c, 0x06, 0x12, 0x03, - 0x52, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0c, 0x01, 0x12, 0x03, 0x52, 0x13, - 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0c, 0x03, 0x12, 0x03, 0x52, 0x21, 0x24, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x0d, 0x12, 0x03, 0x53, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x0d, 0x04, 0x12, 0x03, 0x53, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x0d, 0x06, 0x12, 0x03, 0x53, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0d, - 0x01, 0x12, 0x03, 0x53, 0x18, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0d, 0x03, 0x12, - 0x03, 0x53, 0x26, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x0e, 0x12, 0x03, 0x54, 0x04, - 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0e, 0x04, 0x12, 0x03, 0x54, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x0e, 0x06, 0x12, 0x03, 0x54, 0x0d, 0x16, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x54, 0x17, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x0e, 0x03, 0x12, 0x03, 0x54, 0x21, 0x24, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x07, 0x12, - 0x04, 0x57, 0x00, 0x62, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x07, 0x01, 0x12, 0x03, 0x57, 0x08, - 0x0d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x00, 0x12, 0x03, 0x58, 0x04, 0x21, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x04, 0x12, 0x03, 0x58, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x07, 0x02, 0x00, 0x05, 0x12, 0x03, 0x58, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, - 0x02, 0x00, 0x01, 0x12, 0x03, 0x58, 0x13, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, - 0x03, 0x12, 0x03, 0x58, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x01, 0x12, 0x03, - 0x59, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x04, 0x12, 0x03, 0x59, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x06, 0x12, 0x03, 0x59, 0x0d, 0x11, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x01, 0x12, 0x03, 0x59, 0x12, 0x16, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x07, 0x02, 0x01, 0x03, 0x12, 0x03, 0x59, 0x19, 0x1c, 0x0a, 0x0c, 0x0a, 0x04, 0x04, - 0x07, 0x04, 0x00, 0x12, 0x04, 0x5a, 0x04, 0x5f, 0x05, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x04, - 0x00, 0x01, 0x12, 0x03, 0x5a, 0x09, 0x0d, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x07, 0x04, 0x00, 0x02, - 0x00, 0x12, 0x03, 0x5b, 0x08, 0x16, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x00, - 0x01, 0x12, 0x03, 0x5b, 0x08, 0x0f, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x00, - 0x02, 0x12, 0x03, 0x5b, 0x12, 0x15, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x07, 0x04, 0x00, 0x02, 0x01, - 0x12, 0x03, 0x5c, 0x08, 0x14, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x5c, 0x08, 0x0d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x01, 0x02, - 0x12, 0x03, 0x5c, 0x10, 0x13, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x07, 0x04, 0x00, 0x02, 0x02, 0x12, - 0x03, 0x5d, 0x08, 0x14, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, - 0x03, 0x5d, 0x08, 0x0d, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x02, 0x02, 0x12, - 0x03, 0x5d, 0x10, 0x13, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x07, 0x04, 0x00, 0x02, 0x03, 0x12, 0x03, - 0x5e, 0x08, 0x15, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x03, 0x01, 0x12, 0x03, - 0x5e, 0x08, 0x0e, 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x07, 0x04, 0x00, 0x02, 0x03, 0x02, 0x12, 0x03, - 0x5e, 0x11, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x02, 0x12, 0x03, 0x60, 0x04, 0x20, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x02, 0x04, 0x12, 0x03, 0x60, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x07, 0x02, 0x02, 0x05, 0x12, 0x03, 0x60, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x07, 0x02, 0x02, 0x01, 0x12, 0x03, 0x60, 0x14, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, - 0x02, 0x02, 0x03, 0x12, 0x03, 0x60, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x03, - 0x12, 0x03, 0x61, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x03, 0x04, 0x12, 0x03, - 0x61, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x03, 0x05, 0x12, 0x03, 0x61, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x03, 0x01, 0x12, 0x03, 0x61, 0x14, 0x1a, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x03, 0x03, 0x12, 0x03, 0x61, 0x1d, 0x20, 0x0a, 0x0a, 0x0a, - 0x02, 0x04, 0x08, 0x12, 0x04, 0x64, 0x00, 0x66, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x08, 0x01, - 0x12, 0x03, 0x64, 0x08, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x08, 0x02, 0x00, 0x12, 0x03, 0x65, - 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x04, 0x12, 0x03, 0x65, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x06, 0x12, 0x03, 0x65, 0x0d, 0x12, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x08, 0x02, 0x00, 0x01, 0x12, 0x03, 0x65, 0x13, 0x18, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x08, 0x02, 0x00, 0x03, 0x12, 0x03, 0x65, 0x1b, 0x1e, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x09, - 0x12, 0x04, 0x68, 0x00, 0x6c, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x09, 0x01, 0x12, 0x03, 0x68, - 0x08, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x00, 0x12, 0x03, 0x69, 0x04, 0x1f, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x00, 0x04, 0x12, 0x03, 0x69, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x09, 0x02, 0x00, 0x05, 0x12, 0x03, 0x69, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x09, 0x02, 0x00, 0x01, 0x12, 0x03, 0x69, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, - 0x00, 0x03, 0x12, 0x03, 0x69, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x09, 0x02, 0x01, 0x12, - 0x03, 0x6a, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x04, 0x12, 0x03, 0x6a, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x06, 0x12, 0x03, 0x6a, 0x0d, 0x12, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x01, 0x12, 0x03, 0x6a, 0x13, 0x1b, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x09, 0x02, 0x01, 0x03, 0x12, 0x03, 0x6a, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x09, 0x02, 0x02, 0x12, 0x03, 0x6b, 0x04, 0x2d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, - 0x02, 0x04, 0x12, 0x03, 0x6b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x02, 0x06, - 0x12, 0x03, 0x6b, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x02, 0x01, 0x12, 0x03, - 0x6b, 0x18, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x09, 0x02, 0x02, 0x03, 0x12, 0x03, 0x6b, 0x29, - 0x2c, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x0a, 0x12, 0x04, 0x6e, 0x00, 0x72, 0x01, 0x0a, 0x0a, 0x0a, - 0x03, 0x04, 0x0a, 0x01, 0x12, 0x03, 0x6e, 0x08, 0x0c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x0a, 0x02, - 0x00, 0x12, 0x03, 0x6f, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x04, 0x12, - 0x03, 0x6f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x05, 0x12, 0x03, 0x6f, - 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x01, 0x12, 0x03, 0x6f, 0x14, 0x1a, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x00, 0x03, 0x12, 0x03, 0x6f, 0x1d, 0x20, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x01, 0x12, 0x03, 0x70, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x0a, 0x02, 0x01, 0x04, 0x12, 0x03, 0x70, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, - 0x01, 0x05, 0x12, 0x03, 0x70, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x70, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x01, 0x03, 0x12, 0x03, - 0x70, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x0a, 0x02, 0x02, 0x12, 0x03, 0x71, 0x04, 0x1f, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x02, 0x04, 0x12, 0x03, 0x71, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x0a, 0x02, 0x02, 0x06, 0x12, 0x03, 0x71, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x0a, 0x02, 0x02, 0x01, 0x12, 0x03, 0x71, 0x13, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0a, - 0x02, 0x02, 0x03, 0x12, 0x03, 0x71, 0x1b, 0x1e, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x0b, 0x12, 0x04, - 0x74, 0x00, 0x7b, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x0b, 0x01, 0x12, 0x03, 0x74, 0x08, 0x11, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x00, 0x12, 0x03, 0x75, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x0b, 0x02, 0x00, 0x04, 0x12, 0x03, 0x75, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x0b, 0x02, 0x00, 0x06, 0x12, 0x03, 0x75, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0b, 0x02, - 0x00, 0x01, 0x12, 0x03, 0x75, 0x12, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x00, 0x03, - 0x12, 0x03, 0x75, 0x18, 0x1b, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0b, 0x04, 0x00, 0x12, 0x04, 0x76, - 0x04, 0x79, 0x05, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0b, 0x04, 0x00, 0x01, 0x12, 0x03, 0x76, 0x09, - 0x0d, 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x77, 0x08, 0x10, - 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x77, 0x08, 0x09, - 0x0a, 0x0e, 0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x03, 0x77, 0x0c, 0x0f, - 0x0a, 0x0d, 0x0a, 0x06, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x78, 0x08, 0x10, 0x0a, - 0x0e, 0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x78, 0x08, 0x09, 0x0a, - 0x0e, 0x0a, 0x07, 0x04, 0x0b, 0x04, 0x00, 0x02, 0x01, 0x02, 0x12, 0x03, 0x78, 0x0c, 0x0f, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x0b, 0x02, 0x01, 0x12, 0x03, 0x7a, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x0b, 0x02, 0x01, 0x04, 0x12, 0x03, 0x7a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0b, - 0x02, 0x01, 0x05, 0x12, 0x03, 0x7a, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x01, - 0x01, 0x12, 0x03, 0x7a, 0x14, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0b, 0x02, 0x01, 0x03, 0x12, - 0x03, 0x7a, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x02, 0x04, 0x0c, 0x12, 0x05, 0x7d, 0x00, 0x85, 0x01, - 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x0c, 0x01, 0x12, 0x03, 0x7d, 0x08, 0x13, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x0c, 0x02, 0x00, 0x12, 0x03, 0x7e, 0x04, 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0c, - 0x02, 0x00, 0x04, 0x12, 0x03, 0x7e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, - 0x05, 0x12, 0x03, 0x7e, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x01, 0x12, - 0x03, 0x7e, 0x14, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x00, 0x03, 0x12, 0x03, 0x7e, - 0x28, 0x2b, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x01, 0x12, 0x03, 0x7f, 0x04, 0x2e, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x01, 0x04, 0x12, 0x03, 0x7f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x0c, 0x02, 0x01, 0x05, 0x12, 0x03, 0x7f, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x0c, 0x02, 0x01, 0x01, 0x12, 0x03, 0x7f, 0x14, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x0c, 0x02, - 0x01, 0x03, 0x12, 0x03, 0x7f, 0x2a, 0x2d, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x02, 0x12, - 0x04, 0x80, 0x01, 0x04, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, 0x04, 0x12, 0x04, - 0x80, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, 0x06, 0x12, 0x04, 0x80, - 0x01, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, 0x01, 0x12, 0x04, 0x80, 0x01, - 0x12, 0x15, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x02, 0x03, 0x12, 0x04, 0x80, 0x01, 0x18, - 0x1b, 0x0a, 0x0e, 0x0a, 0x04, 0x04, 0x0c, 0x04, 0x00, 0x12, 0x06, 0x81, 0x01, 0x04, 0x83, 0x01, - 0x05, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x04, 0x00, 0x01, 0x12, 0x04, 0x81, 0x01, 0x09, 0x0d, - 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0c, 0x04, 0x00, 0x02, 0x00, 0x12, 0x04, 0x82, 0x01, 0x08, 0x18, - 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0c, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04, 0x82, 0x01, 0x08, - 0x11, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0c, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x04, 0x82, 0x01, - 0x14, 0x17, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0c, 0x02, 0x03, 0x12, 0x04, 0x84, 0x01, 0x04, 0x28, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x04, 0x12, 0x04, 0x84, 0x01, 0x04, 0x0c, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x05, 0x12, 0x04, 0x84, 0x01, 0x0d, 0x13, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0c, 0x02, 0x03, 0x01, 0x12, 0x04, 0x84, 0x01, 0x14, 0x21, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0c, 0x02, 0x03, 0x03, 0x12, 0x04, 0x84, 0x01, 0x24, 0x27, 0x0a, 0x0c, 0x0a, 0x02, - 0x04, 0x0d, 0x12, 0x06, 0x87, 0x01, 0x00, 0x8b, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0d, - 0x01, 0x12, 0x04, 0x87, 0x01, 0x08, 0x12, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d, 0x02, 0x00, 0x12, - 0x04, 0x88, 0x01, 0x04, 0x2b, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x04, 0x12, 0x04, - 0x88, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x06, 0x12, 0x04, 0x88, - 0x01, 0x0d, 0x18, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x01, 0x12, 0x04, 0x88, 0x01, - 0x19, 0x24, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x00, 0x03, 0x12, 0x04, 0x88, 0x01, 0x27, - 0x2a, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0d, 0x02, 0x01, 0x12, 0x04, 0x89, 0x01, 0x04, 0x1e, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x04, 0x12, 0x04, 0x89, 0x01, 0x04, 0x0c, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x01, 0x06, 0x12, 0x04, 0x89, 0x01, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0d, 0x02, 0x01, 0x01, 0x12, 0x04, 0x89, 0x01, 0x12, 0x17, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0d, 0x02, 0x01, 0x03, 0x12, 0x04, 0x89, 0x01, 0x1a, 0x1d, 0x0a, 0x0c, 0x0a, 0x04, 0x04, - 0x0d, 0x02, 0x02, 0x12, 0x04, 0x8a, 0x01, 0x04, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, - 0x02, 0x04, 0x12, 0x04, 0x8a, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x02, - 0x06, 0x12, 0x04, 0x8a, 0x01, 0x0d, 0x11, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x02, 0x01, - 0x12, 0x04, 0x8a, 0x01, 0x12, 0x15, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0d, 0x02, 0x02, 0x03, 0x12, - 0x04, 0x8a, 0x01, 0x18, 0x1b, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0e, 0x12, 0x06, 0x8d, 0x01, 0x00, - 0x90, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0e, 0x01, 0x12, 0x04, 0x8d, 0x01, 0x08, 0x12, - 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0e, 0x02, 0x00, 0x12, 0x04, 0x8e, 0x01, 0x04, 0x1e, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x00, 0x04, 0x12, 0x04, 0x8e, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0e, 0x02, 0x00, 0x05, 0x12, 0x04, 0x8e, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0e, 0x02, 0x00, 0x01, 0x12, 0x04, 0x8e, 0x01, 0x14, 0x17, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0e, 0x02, 0x00, 0x03, 0x12, 0x04, 0x8e, 0x01, 0x1a, 0x1d, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0e, - 0x02, 0x01, 0x12, 0x04, 0x8f, 0x01, 0x04, 0x1d, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x01, - 0x04, 0x12, 0x04, 0x8f, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x01, 0x05, - 0x12, 0x04, 0x8f, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x01, 0x01, 0x12, - 0x04, 0x8f, 0x01, 0x14, 0x16, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0e, 0x02, 0x01, 0x03, 0x12, 0x04, - 0x8f, 0x01, 0x19, 0x1c, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x0f, 0x12, 0x06, 0x92, 0x01, 0x00, 0xa5, - 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x0f, 0x01, 0x12, 0x04, 0x92, 0x01, 0x08, 0x11, 0x0a, - 0x0c, 0x0a, 0x04, 0x04, 0x0f, 0x02, 0x00, 0x12, 0x04, 0x93, 0x01, 0x04, 0x21, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x0f, 0x02, 0x00, 0x04, 0x12, 0x04, 0x93, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, - 0x04, 0x0f, 0x02, 0x00, 0x05, 0x12, 0x04, 0x93, 0x01, 0x0d, 0x12, 0x0a, 0x0d, 0x0a, 0x05, 0x04, - 0x0f, 0x02, 0x00, 0x01, 0x12, 0x04, 0x93, 0x01, 0x13, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, - 0x02, 0x00, 0x03, 0x12, 0x04, 0x93, 0x01, 0x1d, 0x20, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x0f, 0x02, - 0x01, 0x12, 0x04, 0x94, 0x01, 0x04, 0x21, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x04, - 0x12, 0x04, 0x94, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x06, 0x12, - 0x04, 0x94, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x01, 0x12, 0x04, - 0x94, 0x01, 0x14, 0x1a, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x02, 0x01, 0x03, 0x12, 0x04, 0x94, - 0x01, 0x1d, 0x20, 0x0a, 0x0e, 0x0a, 0x04, 0x04, 0x0f, 0x04, 0x00, 0x12, 0x06, 0x95, 0x01, 0x04, - 0xa4, 0x01, 0x05, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x0f, 0x04, 0x00, 0x01, 0x12, 0x04, 0x95, 0x01, - 0x09, 0x0f, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x00, 0x12, 0x04, 0x96, 0x01, - 0x08, 0x1c, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x04, 0x96, - 0x01, 0x08, 0x15, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x00, 0x02, 0x12, 0x04, - 0x96, 0x01, 0x18, 0x1b, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x01, 0x12, 0x04, - 0x97, 0x01, 0x08, 0x1d, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, - 0x04, 0x97, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x01, 0x02, - 0x12, 0x04, 0x97, 0x01, 0x19, 0x1c, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x02, - 0x12, 0x04, 0x98, 0x01, 0x08, 0x1d, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x02, - 0x01, 0x12, 0x04, 0x98, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, - 0x02, 0x02, 0x12, 0x04, 0x98, 0x01, 0x19, 0x1c, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, - 0x02, 0x03, 0x12, 0x04, 0x99, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, - 0x02, 0x03, 0x01, 0x12, 0x04, 0x99, 0x01, 0x08, 0x0f, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, - 0x00, 0x02, 0x03, 0x02, 0x12, 0x04, 0x99, 0x01, 0x12, 0x15, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, - 0x04, 0x00, 0x02, 0x04, 0x12, 0x04, 0x9a, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, - 0x04, 0x00, 0x02, 0x04, 0x01, 0x12, 0x04, 0x9a, 0x01, 0x08, 0x0f, 0x0a, 0x0f, 0x0a, 0x07, 0x04, - 0x0f, 0x04, 0x00, 0x02, 0x04, 0x02, 0x12, 0x04, 0x9a, 0x01, 0x12, 0x15, 0x0a, 0x0e, 0x0a, 0x06, - 0x04, 0x0f, 0x04, 0x00, 0x02, 0x05, 0x12, 0x04, 0x9b, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, - 0x04, 0x0f, 0x04, 0x00, 0x02, 0x05, 0x01, 0x12, 0x04, 0x9b, 0x01, 0x08, 0x0f, 0x0a, 0x0f, 0x0a, - 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x05, 0x02, 0x12, 0x04, 0x9b, 0x01, 0x12, 0x15, 0x0a, 0x0e, - 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x06, 0x12, 0x04, 0x9c, 0x01, 0x08, 0x15, 0x0a, 0x0f, - 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x06, 0x01, 0x12, 0x04, 0x9c, 0x01, 0x08, 0x0e, 0x0a, - 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x06, 0x02, 0x12, 0x04, 0x9c, 0x01, 0x11, 0x14, - 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x07, 0x12, 0x04, 0x9d, 0x01, 0x08, 0x1a, - 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x07, 0x01, 0x12, 0x04, 0x9d, 0x01, 0x08, - 0x13, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x07, 0x02, 0x12, 0x04, 0x9d, 0x01, - 0x16, 0x19, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x08, 0x12, 0x04, 0x9e, 0x01, - 0x08, 0x15, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x08, 0x01, 0x12, 0x04, 0x9e, - 0x01, 0x08, 0x0e, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x08, 0x02, 0x12, 0x04, - 0x9e, 0x01, 0x11, 0x14, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x09, 0x12, 0x04, - 0x9f, 0x01, 0x08, 0x15, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x09, 0x01, 0x12, - 0x04, 0x9f, 0x01, 0x08, 0x0e, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x09, 0x02, - 0x12, 0x04, 0x9f, 0x01, 0x11, 0x14, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x0a, - 0x12, 0x04, 0xa0, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x0a, - 0x01, 0x12, 0x04, 0xa0, 0x01, 0x08, 0x0f, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, - 0x0a, 0x02, 0x12, 0x04, 0xa0, 0x01, 0x12, 0x15, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, 0x04, 0x00, - 0x02, 0x0b, 0x12, 0x04, 0xa1, 0x01, 0x08, 0x16, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, 0x00, - 0x02, 0x0b, 0x01, 0x12, 0x04, 0xa1, 0x01, 0x08, 0x0f, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, 0x04, - 0x00, 0x02, 0x0b, 0x02, 0x12, 0x04, 0xa1, 0x01, 0x12, 0x15, 0x0a, 0x0e, 0x0a, 0x06, 0x04, 0x0f, - 0x04, 0x00, 0x02, 0x0c, 0x12, 0x04, 0xa2, 0x01, 0x08, 0x15, 0x0a, 0x0f, 0x0a, 0x07, 0x04, 0x0f, - 0x04, 0x00, 0x02, 0x0c, 0x01, 0x12, 0x04, 0xa2, 0x01, 0x08, 0x0e, 0x0a, 0x0f, 0x0a, 0x07, 0x04, - 0x0f, 0x04, 0x00, 0x02, 0x0c, 0x02, 0x12, 0x04, 0xa2, 0x01, 0x11, 0x14, 0x0a, 0x0e, 0x0a, 0x06, - 0x04, 0x0f, 0x04, 0x00, 0x02, 0x0d, 0x12, 0x04, 0xa3, 0x01, 0x08, 0x15, 0x0a, 0x0f, 0x0a, 0x07, - 0x04, 0x0f, 0x04, 0x00, 0x02, 0x0d, 0x01, 0x12, 0x04, 0xa3, 0x01, 0x08, 0x0e, 0x0a, 0x0f, 0x0a, - 0x07, 0x04, 0x0f, 0x04, 0x00, 0x02, 0x0d, 0x02, 0x12, 0x04, 0xa3, 0x01, 0x11, 0x14, -]; +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x0emetadata.proto\"C\n\tTopTracks\x12\x18\n\x07country\x18\x01\x20\ + \x01(\tR\x07country\x12\x1c\n\x05track\x18\x02\x20\x03(\x0b2\x06.TrackR\ + \x05track\"b\n\x0eActivityPeriod\x12\x1d\n\nstart_year\x18\x01\x20\x01(\ + \x11R\tstartYear\x12\x19\n\x08end_year\x18\x02\x20\x01(\x11R\x07endYear\ + \x12\x16\n\x06decade\x18\x03\x20\x01(\x11R\x06decade\"\xd0\x05\n\x06Arti\ + st\x12\x10\n\x03gid\x18\x01\x20\x01(\x0cR\x03gid\x12\x12\n\x04name\x18\ + \x02\x20\x01(\tR\x04name\x12\x1e\n\npopularity\x18\x03\x20\x01(\x11R\npo\ + pularity\x12'\n\ttop_track\x18\x04\x20\x03(\x0b2\n.TopTracksR\x08topTrac\ + k\x12,\n\x0balbum_group\x18\x05\x20\x03(\x0b2\x0b.AlbumGroupR\nalbumGrou\ + p\x12.\n\x0csingle_group\x18\x06\x20\x03(\x0b2\x0b.AlbumGroupR\x0bsingle\ + Group\x128\n\x11compilation_group\x18\x07\x20\x03(\x0b2\x0b.AlbumGroupR\ + \x10compilationGroup\x125\n\x10appears_on_group\x18\x08\x20\x03(\x0b2\ + \x0b.AlbumGroupR\x0eappearsOnGroup\x12\x14\n\x05genre\x18\t\x20\x03(\tR\ + \x05genre\x12,\n\x0bexternal_id\x18\n\x20\x03(\x0b2\x0b.ExternalIdR\next\ + ernalId\x12\"\n\x08portrait\x18\x0b\x20\x03(\x0b2\x06.ImageR\x08portrait\ + \x12(\n\tbiography\x18\x0c\x20\x03(\x0b2\n.BiographyR\tbiography\x128\n\ + \x0factivity_period\x18\r\x20\x03(\x0b2\x0f.ActivityPeriodR\x0eactivityP\ + eriod\x12.\n\x0brestriction\x18\x0e\x20\x03(\x0b2\x0c.RestrictionR\x0bre\ + striction\x12!\n\x07related\x18\x0f\x20\x03(\x0b2\x07.ArtistR\x07related\ + \x125\n\x17is_portrait_album_cover\x18\x10\x20\x01(\x08R\x14isPortraitAl\ + bumCover\x122\n\x0eportrait_group\x18\x11\x20\x01(\x0b2\x0b.ImageGroupR\ + \rportraitGroup\"*\n\nAlbumGroup\x12\x1c\n\x05album\x18\x01\x20\x03(\x0b\ + 2\x06.AlbumR\x05album\"B\n\x04Date\x12\x12\n\x04year\x18\x01\x20\x01(\ + \x11R\x04year\x12\x14\n\x05month\x18\x02\x20\x01(\x11R\x05month\x12\x10\ + \n\x03day\x18\x03\x20\x01(\x11R\x03day\"\xe3\x04\n\x05Album\x12\x10\n\ + \x03gid\x18\x01\x20\x01(\x0cR\x03gid\x12\x12\n\x04name\x18\x02\x20\x01(\ + \tR\x04name\x12\x1f\n\x06artist\x18\x03\x20\x03(\x0b2\x07.ArtistR\x06art\ + ist\x12\x1d\n\x03typ\x18\x04\x20\x01(\x0e2\x0b.Album.TypeR\x03typ\x12\ + \x14\n\x05label\x18\x05\x20\x01(\tR\x05label\x12\x19\n\x04date\x18\x06\ + \x20\x01(\x0b2\x05.DateR\x04date\x12\x1e\n\npopularity\x18\x07\x20\x01(\ + \x11R\npopularity\x12\x14\n\x05genre\x18\x08\x20\x03(\tR\x05genre\x12\ + \x1c\n\x05cover\x18\t\x20\x03(\x0b2\x06.ImageR\x05cover\x12,\n\x0bextern\ + al_id\x18\n\x20\x03(\x0b2\x0b.ExternalIdR\nexternalId\x12\x19\n\x04disc\ + \x18\x0b\x20\x03(\x0b2\x05.DiscR\x04disc\x12\x16\n\x06review\x18\x0c\x20\ + \x03(\tR\x06review\x12(\n\tcopyright\x18\r\x20\x03(\x0b2\n.CopyrightR\tc\ + opyright\x12.\n\x0brestriction\x18\x0e\x20\x03(\x0b2\x0c.RestrictionR\ + \x0brestriction\x12\x20\n\x07related\x18\x0f\x20\x03(\x0b2\x06.AlbumR\ + \x07related\x12,\n\x0bsale_period\x18\x10\x20\x03(\x0b2\x0b.SalePeriodR\ + \nsalePeriod\x12,\n\x0bcover_group\x18\x11\x20\x01(\x0b2\x0b.ImageGroupR\ + \ncoverGroup\"6\n\x04Type\x12\t\n\x05ALBUM\x10\x01\x12\n\n\x06SINGLE\x10\ + \x02\x12\x0f\n\x0bCOMPILATION\x10\x03\x12\x06\n\x02EP\x10\x04\"\xf9\x03\ + \n\x05Track\x12\x10\n\x03gid\x18\x01\x20\x01(\x0cR\x03gid\x12\x12\n\x04n\ + ame\x18\x02\x20\x01(\tR\x04name\x12\x1c\n\x05album\x18\x03\x20\x01(\x0b2\ + \x06.AlbumR\x05album\x12\x1f\n\x06artist\x18\x04\x20\x03(\x0b2\x07.Artis\ + tR\x06artist\x12\x16\n\x06number\x18\x05\x20\x01(\x11R\x06number\x12\x1f\ + \n\x0bdisc_number\x18\x06\x20\x01(\x11R\ndiscNumber\x12\x1a\n\x08duratio\ + n\x18\x07\x20\x01(\x11R\x08duration\x12\x1e\n\npopularity\x18\x08\x20\ + \x01(\x11R\npopularity\x12\x1a\n\x08explicit\x18\t\x20\x01(\x08R\x08expl\ + icit\x12,\n\x0bexternal_id\x18\n\x20\x03(\x0b2\x0b.ExternalIdR\nexternal\ + Id\x12.\n\x0brestriction\x18\x0b\x20\x03(\x0b2\x0c.RestrictionR\x0brestr\ + iction\x12\x1e\n\x04file\x18\x0c\x20\x03(\x0b2\n.AudioFileR\x04file\x12(\ + \n\x0balternative\x18\r\x20\x03(\x0b2\x06.TrackR\x0balternative\x12,\n\ + \x0bsale_period\x18\x0e\x20\x03(\x0b2\x0b.SalePeriodR\nsalePeriod\x12$\n\ + \x07preview\x18\x0f\x20\x03(\x0b2\n.AudioFileR\x07preview\"\xa6\x01\n\ + \x05Image\x12\x17\n\x07file_id\x18\x01\x20\x01(\x0cR\x06fileId\x12\x1f\n\ + \x04size\x18\x02\x20\x01(\x0e2\x0b.Image.SizeR\x04size\x12\x14\n\x05widt\ + h\x18\x03\x20\x01(\x11R\x05width\x12\x16\n\x06height\x18\x04\x20\x01(\ + \x11R\x06height\"5\n\x04Size\x12\x0b\n\x07DEFAULT\x10\0\x12\t\n\x05SMALL\ + \x10\x01\x12\t\n\x05LARGE\x10\x02\x12\n\n\x06XLARGE\x10\x03\"*\n\nImageG\ + roup\x12\x1c\n\x05image\x18\x01\x20\x03(\x0b2\x06.ImageR\x05image\"w\n\t\ + Biography\x12\x12\n\x04text\x18\x01\x20\x01(\tR\x04text\x12\"\n\x08portr\ + ait\x18\x02\x20\x03(\x0b2\x06.ImageR\x08portrait\x122\n\x0eportrait_grou\ + p\x18\x03\x20\x03(\x0b2\x0b.ImageGroupR\rportraitGroup\"P\n\x04Disc\x12\ + \x16\n\x06number\x18\x01\x20\x01(\x11R\x06number\x12\x12\n\x04name\x18\ + \x02\x20\x01(\tR\x04name\x12\x1c\n\x05track\x18\x03\x20\x03(\x0b2\x06.Tr\ + ackR\x05track\"X\n\tCopyright\x12!\n\x03typ\x18\x01\x20\x01(\x0e2\x0f.Co\ + pyright.TypeR\x03typ\x12\x12\n\x04text\x18\x02\x20\x01(\tR\x04text\"\x14\ + \n\x04Type\x12\x05\n\x01P\x10\0\x12\x05\n\x01C\x10\x01\"\xcc\x01\n\x0bRe\ + striction\x12+\n\x11countries_allowed\x18\x02\x20\x01(\tR\x10countriesAl\ + lowed\x12/\n\x13countries_forbidden\x18\x03\x20\x01(\tR\x12countriesForb\ + idden\x12#\n\x03typ\x18\x04\x20\x01(\x0e2\x11.Restriction.TypeR\x03typ\ + \x12#\n\rcatalogue_str\x18\x05\x20\x03(\tR\x0ccatalogueStr\"\x15\n\x04Ty\ + pe\x12\r\n\tSTREAMING\x10\0\"r\n\nSalePeriod\x12.\n\x0brestriction\x18\ + \x01\x20\x03(\x0b2\x0c.RestrictionR\x0brestriction\x12\x1b\n\x05start\ + \x18\x02\x20\x01(\x0b2\x05.DateR\x05start\x12\x17\n\x03end\x18\x03\x20\ + \x01(\x0b2\x05.DateR\x03end\".\n\nExternalId\x12\x10\n\x03typ\x18\x01\ + \x20\x01(\tR\x03typ\x12\x0e\n\x02id\x18\x02\x20\x01(\tR\x02id\"\xa3\x02\ + \n\tAudioFile\x12\x17\n\x07file_id\x18\x01\x20\x01(\x0cR\x06fileId\x12)\ + \n\x06format\x18\x02\x20\x01(\x0e2\x11.AudioFile.FormatR\x06format\"\xd1\ + \x01\n\x06Format\x12\x11\n\rOGG_VORBIS_96\x10\0\x12\x12\n\x0eOGG_VORBIS_\ + 160\x10\x01\x12\x12\n\x0eOGG_VORBIS_320\x10\x02\x12\x0b\n\x07MP3_256\x10\ + \x03\x12\x0b\n\x07MP3_320\x10\x04\x12\x0b\n\x07MP3_160\x10\x05\x12\n\n\ + \x06MP3_96\x10\x06\x12\x0f\n\x0bMP3_160_ENC\x10\x07\x12\n\n\x06OTHER2\ + \x10\x08\x12\n\n\x06OTHER3\x10\t\x12\x0b\n\x07AAC_160\x10\n\x12\x0b\n\ + \x07AAC_320\x10\x0b\x12\n\n\x06OTHER4\x10\x0c\x12\n\n\x06OTHER5\x10\r\ +"; static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, diff --git a/protocol/src/pubsub.rs b/protocol/src/pubsub.rs index bc33e417..2d564faa 100644 --- a/protocol/src/pubsub.rs +++ b/protocol/src/pubsub.rs @@ -1,4 +1,4 @@ -// This file is generated. Do not edit +// This file is generated by rust-protobuf 2.0.5. Do not edit // @generated // https://github.com/Manishearth/rust-clippy/issues/702 @@ -32,24 +32,11 @@ pub struct Subscription { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Subscription {} - impl Subscription { pub fn new() -> Subscription { ::std::default::Default::default() } - pub fn default_instance() -> &'static Subscription { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Subscription, - }; - unsafe { - instance.get(Subscription::new) - } - } - // optional string uri = 1; pub fn clear_uri(&mut self) { @@ -70,7 +57,7 @@ impl Subscription { pub fn mut_uri(&mut self) -> &mut ::std::string::String { if self.uri.is_none() { self.uri.set_default(); - }; + } self.uri.as_mut().unwrap() } @@ -86,14 +73,6 @@ impl Subscription { } } - fn get_uri_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.uri - } - - fn mut_uri_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.uri - } - // optional int32 expiry = 2; pub fn clear_expiry(&mut self) { @@ -113,14 +92,6 @@ impl Subscription { self.expiry.unwrap_or(0) } - fn get_expiry_for_reflect(&self) -> &::std::option::Option { - &self.expiry - } - - fn mut_expiry_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.expiry - } - // optional int32 status_code = 3; pub fn clear_status_code(&mut self) { @@ -139,14 +110,6 @@ impl Subscription { pub fn get_status_code(&self) -> i32 { self.status_code.unwrap_or(0) } - - fn get_status_code_for_reflect(&self) -> &::std::option::Option { - &self.status_code - } - - fn mut_status_code_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.status_code - } } impl ::protobuf::Message for Subscription { @@ -164,14 +127,14 @@ impl ::protobuf::Message for Subscription { 2 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.expiry = ::std::option::Option::Some(tmp); }, 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.status_code = ::std::option::Option::Some(tmp); }, @@ -187,30 +150,30 @@ impl ::protobuf::Message for Subscription { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.uri.as_ref() { + if let Some(ref v) = self.uri.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; + } if let Some(v) = self.expiry { my_size += ::protobuf::rt::value_size(2, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.status_code { my_size += ::protobuf::rt::value_size(3, v, ::protobuf::wire_format::WireTypeVarint); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.uri.as_ref() { + if let Some(ref v) = self.uri.as_ref() { os.write_string(1, &v)?; - }; + } if let Some(v) = self.expiry { os.write_int32(2, v)?; - }; + } if let Some(v) = self.status_code { os.write_int32(3, v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -238,16 +201,14 @@ impl ::protobuf::Message for Subscription { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Subscription { fn new() -> Subscription { Subscription::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -257,18 +218,18 @@ impl ::protobuf::MessageStatic for Subscription { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "uri", - Subscription::get_uri_for_reflect, - Subscription::mut_uri_for_reflect, + |m: &Subscription| { &m.uri }, + |m: &mut Subscription| { &mut m.uri }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "expiry", - Subscription::get_expiry_for_reflect, - Subscription::mut_expiry_for_reflect, + |m: &Subscription| { &m.expiry }, + |m: &mut Subscription| { &mut m.expiry }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "status_code", - Subscription::get_status_code_for_reflect, - Subscription::mut_status_code_for_reflect, + |m: &Subscription| { &m.status_code }, + |m: &mut Subscription| { &mut m.status_code }, )); ::protobuf::reflect::MessageDescriptor::new::( "Subscription", @@ -278,6 +239,16 @@ impl ::protobuf::MessageStatic for Subscription { }) } } + + fn default_instance() -> &'static Subscription { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Subscription, + }; + unsafe { + instance.get(Subscription::new) + } + } } impl ::protobuf::Clear for Subscription { @@ -301,31 +272,11 @@ impl ::protobuf::reflect::ProtobufValue for Subscription { } } -static file_descriptor_proto_data: &'static [u8] = &[ - 0x0a, 0x0c, 0x70, 0x75, 0x62, 0x73, 0x75, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x59, - 0x0a, 0x0c, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, - 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, - 0x12, 0x16, 0x0a, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x65, 0x78, 0x70, 0x69, 0x72, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x73, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x43, 0x6f, 0x64, 0x65, 0x4a, 0xf9, 0x01, 0x0a, 0x06, 0x12, 0x04, - 0x00, 0x00, 0x06, 0x01, 0x0a, 0x08, 0x0a, 0x01, 0x0c, 0x12, 0x03, 0x00, 0x00, 0x12, 0x0a, 0x0a, - 0x0a, 0x02, 0x04, 0x00, 0x12, 0x04, 0x02, 0x00, 0x06, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, - 0x01, 0x12, 0x03, 0x02, 0x08, 0x14, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, - 0x03, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x04, 0x12, 0x03, 0x03, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x05, 0x12, 0x03, 0x03, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x03, 0x14, 0x17, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, 0x03, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x00, 0x02, 0x01, 0x12, 0x03, 0x04, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, - 0x04, 0x12, 0x03, 0x04, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x05, 0x12, - 0x03, 0x04, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x04, - 0x13, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x03, 0x12, 0x03, 0x04, 0x1c, 0x1f, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x02, 0x12, 0x03, 0x05, 0x04, 0x25, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x02, 0x04, 0x12, 0x03, 0x05, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x02, 0x05, 0x12, 0x03, 0x05, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x02, 0x01, 0x12, 0x03, 0x05, 0x13, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x03, - 0x12, 0x03, 0x05, 0x21, 0x24, -]; +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x0cpubsub.proto\"Y\n\x0cSubscription\x12\x10\n\x03uri\x18\x01\x20\x01\ + (\tR\x03uri\x12\x16\n\x06expiry\x18\x02\x20\x01(\x05R\x06expiry\x12\x1f\ + \n\x0bstatus_code\x18\x03\x20\x01(\x05R\nstatusCode\ +"; static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, diff --git a/protocol/src/spirc.rs b/protocol/src/spirc.rs index f3414acf..05bef26d 100644 --- a/protocol/src/spirc.rs +++ b/protocol/src/spirc.rs @@ -1,4 +1,4 @@ -// This file is generated. Do not edit +// This file is generated by rust-protobuf 2.0.5. Do not edit // @generated // https://github.com/Manishearth/rust-clippy/issues/702 @@ -44,24 +44,11 @@ pub struct Frame { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Frame {} - impl Frame { pub fn new() -> Frame { ::std::default::Default::default() } - pub fn default_instance() -> &'static Frame { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Frame, - }; - unsafe { - instance.get(Frame::new) - } - } - // optional uint32 version = 1; pub fn clear_version(&mut self) { @@ -81,14 +68,6 @@ impl Frame { self.version.unwrap_or(0) } - fn get_version_for_reflect(&self) -> &::std::option::Option { - &self.version - } - - fn mut_version_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.version - } - // optional string ident = 2; pub fn clear_ident(&mut self) { @@ -109,7 +88,7 @@ impl Frame { pub fn mut_ident(&mut self) -> &mut ::std::string::String { if self.ident.is_none() { self.ident.set_default(); - }; + } self.ident.as_mut().unwrap() } @@ -125,14 +104,6 @@ impl Frame { } } - fn get_ident_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.ident - } - - fn mut_ident_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.ident - } - // optional string protocol_version = 3; pub fn clear_protocol_version(&mut self) { @@ -153,7 +124,7 @@ impl Frame { pub fn mut_protocol_version(&mut self) -> &mut ::std::string::String { if self.protocol_version.is_none() { self.protocol_version.set_default(); - }; + } self.protocol_version.as_mut().unwrap() } @@ -169,14 +140,6 @@ impl Frame { } } - fn get_protocol_version_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.protocol_version - } - - fn mut_protocol_version_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.protocol_version - } - // optional uint32 seq_nr = 4; pub fn clear_seq_nr(&mut self) { @@ -196,14 +159,6 @@ impl Frame { self.seq_nr.unwrap_or(0) } - fn get_seq_nr_for_reflect(&self) -> &::std::option::Option { - &self.seq_nr - } - - fn mut_seq_nr_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.seq_nr - } - // optional .MessageType typ = 5; pub fn clear_typ(&mut self) { @@ -223,14 +178,6 @@ impl Frame { self.typ.unwrap_or(MessageType::kMessageTypeHello) } - fn get_typ_for_reflect(&self) -> &::std::option::Option { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.typ - } - // optional .DeviceState device_state = 7; pub fn clear_device_state(&mut self) { @@ -251,7 +198,7 @@ impl Frame { pub fn mut_device_state(&mut self) -> &mut DeviceState { if self.device_state.is_none() { self.device_state.set_default(); - }; + } self.device_state.as_mut().unwrap() } @@ -264,14 +211,6 @@ impl Frame { self.device_state.as_ref().unwrap_or_else(|| DeviceState::default_instance()) } - fn get_device_state_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.device_state - } - - fn mut_device_state_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.device_state - } - // optional .Goodbye goodbye = 11; pub fn clear_goodbye(&mut self) { @@ -292,7 +231,7 @@ impl Frame { pub fn mut_goodbye(&mut self) -> &mut Goodbye { if self.goodbye.is_none() { self.goodbye.set_default(); - }; + } self.goodbye.as_mut().unwrap() } @@ -305,14 +244,6 @@ impl Frame { self.goodbye.as_ref().unwrap_or_else(|| Goodbye::default_instance()) } - fn get_goodbye_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.goodbye - } - - fn mut_goodbye_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.goodbye - } - // optional .State state = 12; pub fn clear_state(&mut self) { @@ -333,7 +264,7 @@ impl Frame { pub fn mut_state(&mut self) -> &mut State { if self.state.is_none() { self.state.set_default(); - }; + } self.state.as_mut().unwrap() } @@ -346,14 +277,6 @@ impl Frame { self.state.as_ref().unwrap_or_else(|| State::default_instance()) } - fn get_state_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.state - } - - fn mut_state_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.state - } - // optional uint32 position = 13; pub fn clear_position(&mut self) { @@ -373,14 +296,6 @@ impl Frame { self.position.unwrap_or(0) } - fn get_position_for_reflect(&self) -> &::std::option::Option { - &self.position - } - - fn mut_position_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.position - } - // optional uint32 volume = 14; pub fn clear_volume(&mut self) { @@ -400,14 +315,6 @@ impl Frame { self.volume.unwrap_or(0) } - fn get_volume_for_reflect(&self) -> &::std::option::Option { - &self.volume - } - - fn mut_volume_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.volume - } - // optional int64 state_update_id = 17; pub fn clear_state_update_id(&mut self) { @@ -427,14 +334,6 @@ impl Frame { self.state_update_id.unwrap_or(0) } - fn get_state_update_id_for_reflect(&self) -> &::std::option::Option { - &self.state_update_id - } - - fn mut_state_update_id_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.state_update_id - } - // repeated string recipient = 18; pub fn clear_recipient(&mut self) { @@ -460,14 +359,6 @@ impl Frame { &self.recipient } - fn get_recipient_for_reflect(&self) -> &::protobuf::RepeatedField<::std::string::String> { - &self.recipient - } - - fn mut_recipient_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { - &mut self.recipient - } - // optional bytes context_player_state = 19; pub fn clear_context_player_state(&mut self) { @@ -488,7 +379,7 @@ impl Frame { pub fn mut_context_player_state(&mut self) -> &mut ::std::vec::Vec { if self.context_player_state.is_none() { self.context_player_state.set_default(); - }; + } self.context_player_state.as_mut().unwrap() } @@ -504,14 +395,6 @@ impl Frame { } } - fn get_context_player_state_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.context_player_state - } - - fn mut_context_player_state_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.context_player_state - } - // optional string new_name = 20; pub fn clear_new_name(&mut self) { @@ -532,7 +415,7 @@ impl Frame { pub fn mut_new_name(&mut self) -> &mut ::std::string::String { if self.new_name.is_none() { self.new_name.set_default(); - }; + } self.new_name.as_mut().unwrap() } @@ -548,14 +431,6 @@ impl Frame { } } - fn get_new_name_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.new_name - } - - fn mut_new_name_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.new_name - } - // optional .Metadata metadata = 25; pub fn clear_metadata(&mut self) { @@ -576,7 +451,7 @@ impl Frame { pub fn mut_metadata(&mut self) -> &mut Metadata { if self.metadata.is_none() { self.metadata.set_default(); - }; + } self.metadata.as_mut().unwrap() } @@ -588,18 +463,30 @@ impl Frame { pub fn get_metadata(&self) -> &Metadata { self.metadata.as_ref().unwrap_or_else(|| Metadata::default_instance()) } - - fn get_metadata_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.metadata - } - - fn mut_metadata_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.metadata - } } impl ::protobuf::Message for Frame { fn is_initialized(&self) -> bool { + for v in &self.device_state { + if !v.is_initialized() { + return false; + } + }; + for v in &self.goodbye { + if !v.is_initialized() { + return false; + } + }; + for v in &self.state { + if !v.is_initialized() { + return false; + } + }; + for v in &self.metadata { + if !v.is_initialized() { + return false; + } + }; true } @@ -610,7 +497,7 @@ impl ::protobuf::Message for Frame { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.version = ::std::option::Option::Some(tmp); }, @@ -623,16 +510,12 @@ impl ::protobuf::Message for Frame { 4 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.seq_nr = ::std::option::Option::Some(tmp); }, 5 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.typ = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.typ, 5, &mut self.unknown_fields)? }, 7 => { ::protobuf::rt::read_singular_message_into(wire_type, is, &mut self.device_state)?; @@ -646,21 +529,21 @@ impl ::protobuf::Message for Frame { 13 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.position = ::std::option::Option::Some(tmp); }, 14 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.volume = ::std::option::Option::Some(tmp); }, 17 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int64()?; self.state_update_id = ::std::option::Option::Some(tmp); }, @@ -690,53 +573,53 @@ impl ::protobuf::Message for Frame { let mut my_size = 0; if let Some(v) = self.version { my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.ident.as_ref() { + } + if let Some(ref v) = self.ident.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; - if let Some(v) = self.protocol_version.as_ref() { + } + if let Some(ref v) = self.protocol_version.as_ref() { my_size += ::protobuf::rt::string_size(3, &v); - }; + } if let Some(v) = self.seq_nr { my_size += ::protobuf::rt::value_size(4, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.typ { my_size += ::protobuf::rt::enum_size(5, v); - }; - if let Some(v) = self.device_state.as_ref() { + } + if let Some(ref v) = self.device_state.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.goodbye.as_ref() { + } + if let Some(ref v) = self.goodbye.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; - if let Some(v) = self.state.as_ref() { + } + if let Some(ref v) = self.state.as_ref() { let len = v.compute_size(); my_size += 1 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } if let Some(v) = self.position { my_size += ::protobuf::rt::value_size(13, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.volume { my_size += ::protobuf::rt::value_size(14, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.state_update_id { my_size += ::protobuf::rt::value_size(17, v, ::protobuf::wire_format::WireTypeVarint); - }; + } for value in &self.recipient { my_size += ::protobuf::rt::string_size(18, &value); }; - if let Some(v) = self.context_player_state.as_ref() { + if let Some(ref v) = self.context_player_state.as_ref() { my_size += ::protobuf::rt::bytes_size(19, &v); - }; - if let Some(v) = self.new_name.as_ref() { + } + if let Some(ref v) = self.new_name.as_ref() { my_size += ::protobuf::rt::string_size(20, &v); - }; - if let Some(v) = self.metadata.as_ref() { + } + if let Some(ref v) = self.metadata.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -745,57 +628,57 @@ impl ::protobuf::Message for Frame { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.version { os.write_uint32(1, v)?; - }; - if let Some(v) = self.ident.as_ref() { + } + if let Some(ref v) = self.ident.as_ref() { os.write_string(2, &v)?; - }; - if let Some(v) = self.protocol_version.as_ref() { + } + if let Some(ref v) = self.protocol_version.as_ref() { os.write_string(3, &v)?; - }; + } if let Some(v) = self.seq_nr { os.write_uint32(4, v)?; - }; + } if let Some(v) = self.typ { os.write_enum(5, v.value())?; - }; - if let Some(v) = self.device_state.as_ref() { + } + if let Some(ref v) = self.device_state.as_ref() { os.write_tag(7, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.goodbye.as_ref() { + } + if let Some(ref v) = self.goodbye.as_ref() { os.write_tag(11, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; - if let Some(v) = self.state.as_ref() { + } + if let Some(ref v) = self.state.as_ref() { os.write_tag(12, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } if let Some(v) = self.position { os.write_uint32(13, v)?; - }; + } if let Some(v) = self.volume { os.write_uint32(14, v)?; - }; + } if let Some(v) = self.state_update_id { os.write_int64(17, v)?; - }; + } for v in &self.recipient { os.write_string(18, &v)?; }; - if let Some(v) = self.context_player_state.as_ref() { + if let Some(ref v) = self.context_player_state.as_ref() { os.write_bytes(19, &v)?; - }; - if let Some(v) = self.new_name.as_ref() { + } + if let Some(ref v) = self.new_name.as_ref() { os.write_string(20, &v)?; - }; - if let Some(v) = self.metadata.as_ref() { + } + if let Some(ref v) = self.metadata.as_ref() { os.write_tag(25, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -823,16 +706,14 @@ impl ::protobuf::Message for Frame { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Frame { fn new() -> Frame { Frame::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -842,78 +723,78 @@ impl ::protobuf::MessageStatic for Frame { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "version", - Frame::get_version_for_reflect, - Frame::mut_version_for_reflect, + |m: &Frame| { &m.version }, + |m: &mut Frame| { &mut m.version }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "ident", - Frame::get_ident_for_reflect, - Frame::mut_ident_for_reflect, + |m: &Frame| { &m.ident }, + |m: &mut Frame| { &mut m.ident }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "protocol_version", - Frame::get_protocol_version_for_reflect, - Frame::mut_protocol_version_for_reflect, + |m: &Frame| { &m.protocol_version }, + |m: &mut Frame| { &mut m.protocol_version }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "seq_nr", - Frame::get_seq_nr_for_reflect, - Frame::mut_seq_nr_for_reflect, + |m: &Frame| { &m.seq_nr }, + |m: &mut Frame| { &mut m.seq_nr }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "typ", - Frame::get_typ_for_reflect, - Frame::mut_typ_for_reflect, + |m: &Frame| { &m.typ }, + |m: &mut Frame| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "device_state", - Frame::get_device_state_for_reflect, - Frame::mut_device_state_for_reflect, + |m: &Frame| { &m.device_state }, + |m: &mut Frame| { &mut m.device_state }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "goodbye", - Frame::get_goodbye_for_reflect, - Frame::mut_goodbye_for_reflect, + |m: &Frame| { &m.goodbye }, + |m: &mut Frame| { &mut m.goodbye }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "state", - Frame::get_state_for_reflect, - Frame::mut_state_for_reflect, + |m: &Frame| { &m.state }, + |m: &mut Frame| { &mut m.state }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "position", - Frame::get_position_for_reflect, - Frame::mut_position_for_reflect, + |m: &Frame| { &m.position }, + |m: &mut Frame| { &mut m.position }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "volume", - Frame::get_volume_for_reflect, - Frame::mut_volume_for_reflect, + |m: &Frame| { &m.volume }, + |m: &mut Frame| { &mut m.volume }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( "state_update_id", - Frame::get_state_update_id_for_reflect, - Frame::mut_state_update_id_for_reflect, + |m: &Frame| { &m.state_update_id }, + |m: &mut Frame| { &mut m.state_update_id }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "recipient", - Frame::get_recipient_for_reflect, - Frame::mut_recipient_for_reflect, + |m: &Frame| { &m.recipient }, + |m: &mut Frame| { &mut m.recipient }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "context_player_state", - Frame::get_context_player_state_for_reflect, - Frame::mut_context_player_state_for_reflect, + |m: &Frame| { &m.context_player_state }, + |m: &mut Frame| { &mut m.context_player_state }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "new_name", - Frame::get_new_name_for_reflect, - Frame::mut_new_name_for_reflect, + |m: &Frame| { &m.new_name }, + |m: &mut Frame| { &mut m.new_name }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "metadata", - Frame::get_metadata_for_reflect, - Frame::mut_metadata_for_reflect, + |m: &Frame| { &m.metadata }, + |m: &mut Frame| { &mut m.metadata }, )); ::protobuf::reflect::MessageDescriptor::new::( "Frame", @@ -923,6 +804,16 @@ impl ::protobuf::MessageStatic for Frame { }) } } + + fn default_instance() -> &'static Frame { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Frame, + }; + unsafe { + instance.get(Frame::new) + } + } } impl ::protobuf::Clear for Frame { @@ -977,24 +868,11 @@ pub struct DeviceState { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for DeviceState {} - impl DeviceState { pub fn new() -> DeviceState { ::std::default::Default::default() } - pub fn default_instance() -> &'static DeviceState { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const DeviceState, - }; - unsafe { - instance.get(DeviceState::new) - } - } - // optional string sw_version = 1; pub fn clear_sw_version(&mut self) { @@ -1015,7 +893,7 @@ impl DeviceState { pub fn mut_sw_version(&mut self) -> &mut ::std::string::String { if self.sw_version.is_none() { self.sw_version.set_default(); - }; + } self.sw_version.as_mut().unwrap() } @@ -1031,14 +909,6 @@ impl DeviceState { } } - fn get_sw_version_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.sw_version - } - - fn mut_sw_version_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.sw_version - } - // optional bool is_active = 10; pub fn clear_is_active(&mut self) { @@ -1058,14 +928,6 @@ impl DeviceState { self.is_active.unwrap_or(false) } - fn get_is_active_for_reflect(&self) -> &::std::option::Option { - &self.is_active - } - - fn mut_is_active_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.is_active - } - // optional bool can_play = 11; pub fn clear_can_play(&mut self) { @@ -1085,14 +947,6 @@ impl DeviceState { self.can_play.unwrap_or(false) } - fn get_can_play_for_reflect(&self) -> &::std::option::Option { - &self.can_play - } - - fn mut_can_play_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.can_play - } - // optional uint32 volume = 12; pub fn clear_volume(&mut self) { @@ -1112,14 +966,6 @@ impl DeviceState { self.volume.unwrap_or(0) } - fn get_volume_for_reflect(&self) -> &::std::option::Option { - &self.volume - } - - fn mut_volume_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.volume - } - // optional string name = 13; pub fn clear_name(&mut self) { @@ -1140,7 +986,7 @@ impl DeviceState { pub fn mut_name(&mut self) -> &mut ::std::string::String { if self.name.is_none() { self.name.set_default(); - }; + } self.name.as_mut().unwrap() } @@ -1156,14 +1002,6 @@ impl DeviceState { } } - fn get_name_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.name - } - - fn mut_name_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.name - } - // optional uint32 error_code = 14; pub fn clear_error_code(&mut self) { @@ -1183,14 +1021,6 @@ impl DeviceState { self.error_code.unwrap_or(0) } - fn get_error_code_for_reflect(&self) -> &::std::option::Option { - &self.error_code - } - - fn mut_error_code_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.error_code - } - // optional int64 became_active_at = 15; pub fn clear_became_active_at(&mut self) { @@ -1210,14 +1040,6 @@ impl DeviceState { self.became_active_at.unwrap_or(0) } - fn get_became_active_at_for_reflect(&self) -> &::std::option::Option { - &self.became_active_at - } - - fn mut_became_active_at_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.became_active_at - } - // optional string error_message = 16; pub fn clear_error_message(&mut self) { @@ -1238,7 +1060,7 @@ impl DeviceState { pub fn mut_error_message(&mut self) -> &mut ::std::string::String { if self.error_message.is_none() { self.error_message.set_default(); - }; + } self.error_message.as_mut().unwrap() } @@ -1254,14 +1076,6 @@ impl DeviceState { } } - fn get_error_message_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.error_message - } - - fn mut_error_message_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.error_message - } - // repeated .Capability capabilities = 17; pub fn clear_capabilities(&mut self) { @@ -1287,14 +1101,6 @@ impl DeviceState { &self.capabilities } - fn get_capabilities_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.capabilities - } - - fn mut_capabilities_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.capabilities - } - // optional string context_player_error = 20; pub fn clear_context_player_error(&mut self) { @@ -1315,7 +1121,7 @@ impl DeviceState { pub fn mut_context_player_error(&mut self) -> &mut ::std::string::String { if self.context_player_error.is_none() { self.context_player_error.set_default(); - }; + } self.context_player_error.as_mut().unwrap() } @@ -1331,14 +1137,6 @@ impl DeviceState { } } - fn get_context_player_error_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.context_player_error - } - - fn mut_context_player_error_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.context_player_error - } - // repeated .Metadata metadata = 25; pub fn clear_metadata(&mut self) { @@ -1363,18 +1161,20 @@ impl DeviceState { pub fn get_metadata(&self) -> &[Metadata] { &self.metadata } - - fn get_metadata_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.metadata - } - - fn mut_metadata_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.metadata - } } impl ::protobuf::Message for DeviceState { fn is_initialized(&self) -> bool { + for v in &self.capabilities { + if !v.is_initialized() { + return false; + } + }; + for v in &self.metadata { + if !v.is_initialized() { + return false; + } + }; true } @@ -1388,21 +1188,21 @@ impl ::protobuf::Message for DeviceState { 10 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.is_active = ::std::option::Option::Some(tmp); }, 11 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.can_play = ::std::option::Option::Some(tmp); }, 12 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.volume = ::std::option::Option::Some(tmp); }, @@ -1412,14 +1212,14 @@ impl ::protobuf::Message for DeviceState { 14 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.error_code = ::std::option::Option::Some(tmp); }, 15 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int64()?; self.became_active_at = ::std::option::Option::Some(tmp); }, @@ -1447,37 +1247,37 @@ impl ::protobuf::Message for DeviceState { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.sw_version.as_ref() { + if let Some(ref v) = self.sw_version.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; + } if let Some(v) = self.is_active { my_size += 2; - }; + } if let Some(v) = self.can_play { my_size += 2; - }; + } if let Some(v) = self.volume { my_size += ::protobuf::rt::value_size(12, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { my_size += ::protobuf::rt::string_size(13, &v); - }; + } if let Some(v) = self.error_code { my_size += ::protobuf::rt::value_size(14, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.became_active_at { my_size += ::protobuf::rt::value_size(15, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.error_message.as_ref() { + } + if let Some(ref v) = self.error_message.as_ref() { my_size += ::protobuf::rt::string_size(16, &v); - }; + } for value in &self.capabilities { let len = value.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; - if let Some(v) = self.context_player_error.as_ref() { + if let Some(ref v) = self.context_player_error.as_ref() { my_size += ::protobuf::rt::string_size(20, &v); - }; + } for value in &self.metadata { let len = value.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; @@ -1488,38 +1288,38 @@ impl ::protobuf::Message for DeviceState { } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.sw_version.as_ref() { + if let Some(ref v) = self.sw_version.as_ref() { os.write_string(1, &v)?; - }; + } if let Some(v) = self.is_active { os.write_bool(10, v)?; - }; + } if let Some(v) = self.can_play { os.write_bool(11, v)?; - }; + } if let Some(v) = self.volume { os.write_uint32(12, v)?; - }; - if let Some(v) = self.name.as_ref() { + } + if let Some(ref v) = self.name.as_ref() { os.write_string(13, &v)?; - }; + } if let Some(v) = self.error_code { os.write_uint32(14, v)?; - }; + } if let Some(v) = self.became_active_at { os.write_int64(15, v)?; - }; - if let Some(v) = self.error_message.as_ref() { + } + if let Some(ref v) = self.error_message.as_ref() { os.write_string(16, &v)?; - }; + } for v in &self.capabilities { os.write_tag(17, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; }; - if let Some(v) = self.context_player_error.as_ref() { + if let Some(ref v) = self.context_player_error.as_ref() { os.write_string(20, &v)?; - }; + } for v in &self.metadata { os.write_tag(25, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; @@ -1552,16 +1352,14 @@ impl ::protobuf::Message for DeviceState { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for DeviceState { fn new() -> DeviceState { DeviceState::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1571,58 +1369,58 @@ impl ::protobuf::MessageStatic for DeviceState { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "sw_version", - DeviceState::get_sw_version_for_reflect, - DeviceState::mut_sw_version_for_reflect, + |m: &DeviceState| { &m.sw_version }, + |m: &mut DeviceState| { &mut m.sw_version }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "is_active", - DeviceState::get_is_active_for_reflect, - DeviceState::mut_is_active_for_reflect, + |m: &DeviceState| { &m.is_active }, + |m: &mut DeviceState| { &mut m.is_active }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "can_play", - DeviceState::get_can_play_for_reflect, - DeviceState::mut_can_play_for_reflect, + |m: &DeviceState| { &m.can_play }, + |m: &mut DeviceState| { &mut m.can_play }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "volume", - DeviceState::get_volume_for_reflect, - DeviceState::mut_volume_for_reflect, + |m: &DeviceState| { &m.volume }, + |m: &mut DeviceState| { &mut m.volume }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "name", - DeviceState::get_name_for_reflect, - DeviceState::mut_name_for_reflect, + |m: &DeviceState| { &m.name }, + |m: &mut DeviceState| { &mut m.name }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "error_code", - DeviceState::get_error_code_for_reflect, - DeviceState::mut_error_code_for_reflect, + |m: &DeviceState| { &m.error_code }, + |m: &mut DeviceState| { &mut m.error_code }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( "became_active_at", - DeviceState::get_became_active_at_for_reflect, - DeviceState::mut_became_active_at_for_reflect, + |m: &DeviceState| { &m.became_active_at }, + |m: &mut DeviceState| { &mut m.became_active_at }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "error_message", - DeviceState::get_error_message_for_reflect, - DeviceState::mut_error_message_for_reflect, + |m: &DeviceState| { &m.error_message }, + |m: &mut DeviceState| { &mut m.error_message }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "capabilities", - DeviceState::get_capabilities_for_reflect, - DeviceState::mut_capabilities_for_reflect, + |m: &DeviceState| { &m.capabilities }, + |m: &mut DeviceState| { &mut m.capabilities }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "context_player_error", - DeviceState::get_context_player_error_for_reflect, - DeviceState::mut_context_player_error_for_reflect, + |m: &DeviceState| { &m.context_player_error }, + |m: &mut DeviceState| { &mut m.context_player_error }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "metadata", - DeviceState::get_metadata_for_reflect, - DeviceState::mut_metadata_for_reflect, + |m: &DeviceState| { &m.metadata }, + |m: &mut DeviceState| { &mut m.metadata }, )); ::protobuf::reflect::MessageDescriptor::new::( "DeviceState", @@ -1632,6 +1430,16 @@ impl ::protobuf::MessageStatic for DeviceState { }) } } + + fn default_instance() -> &'static DeviceState { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const DeviceState, + }; + unsafe { + instance.get(DeviceState::new) + } + } } impl ::protobuf::Clear for DeviceState { @@ -1674,24 +1482,11 @@ pub struct Capability { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Capability {} - impl Capability { pub fn new() -> Capability { ::std::default::Default::default() } - pub fn default_instance() -> &'static Capability { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Capability, - }; - unsafe { - instance.get(Capability::new) - } - } - // optional .CapabilityType typ = 1; pub fn clear_typ(&mut self) { @@ -1711,14 +1506,6 @@ impl Capability { self.typ.unwrap_or(CapabilityType::kSupportedContexts) } - fn get_typ_for_reflect(&self) -> &::std::option::Option { - &self.typ - } - - fn mut_typ_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.typ - } - // repeated int64 intValue = 2; pub fn clear_intValue(&mut self) { @@ -1744,14 +1531,6 @@ impl Capability { &self.intValue } - fn get_intValue_for_reflect(&self) -> &::std::vec::Vec { - &self.intValue - } - - fn mut_intValue_for_reflect(&mut self) -> &mut ::std::vec::Vec { - &mut self.intValue - } - // repeated string stringValue = 3; pub fn clear_stringValue(&mut self) { @@ -1776,14 +1555,6 @@ impl Capability { pub fn get_stringValue(&self) -> &[::std::string::String] { &self.stringValue } - - fn get_stringValue_for_reflect(&self) -> &::protobuf::RepeatedField<::std::string::String> { - &self.stringValue - } - - fn mut_stringValue_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField<::std::string::String> { - &mut self.stringValue - } } impl ::protobuf::Message for Capability { @@ -1796,11 +1567,7 @@ impl ::protobuf::Message for Capability { let (field_number, wire_type) = is.read_tag_unpack()?; match field_number { 1 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.typ = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.typ, 1, &mut self.unknown_fields)? }, 2 => { ::protobuf::rt::read_repeated_int64_into(wire_type, is, &mut self.intValue)?; @@ -1822,7 +1589,7 @@ impl ::protobuf::Message for Capability { let mut my_size = 0; if let Some(v) = self.typ { my_size += ::protobuf::rt::enum_size(1, v); - }; + } for value in &self.intValue { my_size += ::protobuf::rt::value_size(2, *value, ::protobuf::wire_format::WireTypeVarint); }; @@ -1837,7 +1604,7 @@ impl ::protobuf::Message for Capability { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.typ { os.write_enum(1, v.value())?; - }; + } for v in &self.intValue { os.write_int64(2, *v)?; }; @@ -1871,16 +1638,14 @@ impl ::protobuf::Message for Capability { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Capability { fn new() -> Capability { Capability::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -1890,18 +1655,18 @@ impl ::protobuf::MessageStatic for Capability { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "typ", - Capability::get_typ_for_reflect, - Capability::mut_typ_for_reflect, + |m: &Capability| { &m.typ }, + |m: &mut Capability| { &mut m.typ }, )); fields.push(::protobuf::reflect::accessor::make_vec_accessor::<_, ::protobuf::types::ProtobufTypeInt64>( "intValue", - Capability::get_intValue_for_reflect, - Capability::mut_intValue_for_reflect, + |m: &Capability| { &m.intValue }, + |m: &mut Capability| { &mut m.intValue }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "stringValue", - Capability::get_stringValue_for_reflect, - Capability::mut_stringValue_for_reflect, + |m: &Capability| { &m.stringValue }, + |m: &mut Capability| { &mut m.stringValue }, )); ::protobuf::reflect::MessageDescriptor::new::( "Capability", @@ -1911,6 +1676,16 @@ impl ::protobuf::MessageStatic for Capability { }) } } + + fn default_instance() -> &'static Capability { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Capability, + }; + unsafe { + instance.get(Capability::new) + } + } } impl ::protobuf::Clear for Capability { @@ -1943,24 +1718,11 @@ pub struct Goodbye { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Goodbye {} - impl Goodbye { pub fn new() -> Goodbye { ::std::default::Default::default() } - pub fn default_instance() -> &'static Goodbye { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Goodbye, - }; - unsafe { - instance.get(Goodbye::new) - } - } - // optional string reason = 1; pub fn clear_reason(&mut self) { @@ -1981,7 +1743,7 @@ impl Goodbye { pub fn mut_reason(&mut self) -> &mut ::std::string::String { if self.reason.is_none() { self.reason.set_default(); - }; + } self.reason.as_mut().unwrap() } @@ -1996,14 +1758,6 @@ impl Goodbye { None => "", } } - - fn get_reason_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.reason - } - - fn mut_reason_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.reason - } } impl ::protobuf::Message for Goodbye { @@ -2030,18 +1784,18 @@ impl ::protobuf::Message for Goodbye { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.reason.as_ref() { + if let Some(ref v) = self.reason.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.reason.as_ref() { + if let Some(ref v) = self.reason.as_ref() { os.write_string(1, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2069,16 +1823,14 @@ impl ::protobuf::Message for Goodbye { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Goodbye { fn new() -> Goodbye { Goodbye::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2088,8 +1840,8 @@ impl ::protobuf::MessageStatic for Goodbye { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "reason", - Goodbye::get_reason_for_reflect, - Goodbye::mut_reason_for_reflect, + |m: &Goodbye| { &m.reason }, + |m: &mut Goodbye| { &mut m.reason }, )); ::protobuf::reflect::MessageDescriptor::new::( "Goodbye", @@ -2099,6 +1851,16 @@ impl ::protobuf::MessageStatic for Goodbye { }) } } + + fn default_instance() -> &'static Goodbye { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Goodbye, + }; + unsafe { + instance.get(Goodbye::new) + } + } } impl ::protobuf::Clear for Goodbye { @@ -2143,24 +1905,11 @@ pub struct State { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for State {} - impl State { pub fn new() -> State { ::std::default::Default::default() } - pub fn default_instance() -> &'static State { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const State, - }; - unsafe { - instance.get(State::new) - } - } - // optional string context_uri = 2; pub fn clear_context_uri(&mut self) { @@ -2181,7 +1930,7 @@ impl State { pub fn mut_context_uri(&mut self) -> &mut ::std::string::String { if self.context_uri.is_none() { self.context_uri.set_default(); - }; + } self.context_uri.as_mut().unwrap() } @@ -2197,14 +1946,6 @@ impl State { } } - fn get_context_uri_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.context_uri - } - - fn mut_context_uri_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.context_uri - } - // optional uint32 index = 3; pub fn clear_index(&mut self) { @@ -2224,14 +1965,6 @@ impl State { self.index.unwrap_or(0) } - fn get_index_for_reflect(&self) -> &::std::option::Option { - &self.index - } - - fn mut_index_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.index - } - // optional uint32 position_ms = 4; pub fn clear_position_ms(&mut self) { @@ -2251,14 +1984,6 @@ impl State { self.position_ms.unwrap_or(0) } - fn get_position_ms_for_reflect(&self) -> &::std::option::Option { - &self.position_ms - } - - fn mut_position_ms_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.position_ms - } - // optional .PlayStatus status = 5; pub fn clear_status(&mut self) { @@ -2278,14 +2003,6 @@ impl State { self.status.unwrap_or(PlayStatus::kPlayStatusStop) } - fn get_status_for_reflect(&self) -> &::std::option::Option { - &self.status - } - - fn mut_status_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.status - } - // optional uint64 position_measured_at = 7; pub fn clear_position_measured_at(&mut self) { @@ -2305,14 +2022,6 @@ impl State { self.position_measured_at.unwrap_or(0) } - fn get_position_measured_at_for_reflect(&self) -> &::std::option::Option { - &self.position_measured_at - } - - fn mut_position_measured_at_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.position_measured_at - } - // optional string context_description = 8; pub fn clear_context_description(&mut self) { @@ -2333,7 +2042,7 @@ impl State { pub fn mut_context_description(&mut self) -> &mut ::std::string::String { if self.context_description.is_none() { self.context_description.set_default(); - }; + } self.context_description.as_mut().unwrap() } @@ -2349,14 +2058,6 @@ impl State { } } - fn get_context_description_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.context_description - } - - fn mut_context_description_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.context_description - } - // optional bool shuffle = 13; pub fn clear_shuffle(&mut self) { @@ -2376,14 +2077,6 @@ impl State { self.shuffle.unwrap_or(false) } - fn get_shuffle_for_reflect(&self) -> &::std::option::Option { - &self.shuffle - } - - fn mut_shuffle_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.shuffle - } - // optional bool repeat = 14; pub fn clear_repeat(&mut self) { @@ -2403,14 +2096,6 @@ impl State { self.repeat.unwrap_or(false) } - fn get_repeat_for_reflect(&self) -> &::std::option::Option { - &self.repeat - } - - fn mut_repeat_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.repeat - } - // optional string last_command_ident = 20; pub fn clear_last_command_ident(&mut self) { @@ -2431,7 +2116,7 @@ impl State { pub fn mut_last_command_ident(&mut self) -> &mut ::std::string::String { if self.last_command_ident.is_none() { self.last_command_ident.set_default(); - }; + } self.last_command_ident.as_mut().unwrap() } @@ -2447,14 +2132,6 @@ impl State { } } - fn get_last_command_ident_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.last_command_ident - } - - fn mut_last_command_ident_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.last_command_ident - } - // optional uint32 last_command_msgid = 21; pub fn clear_last_command_msgid(&mut self) { @@ -2474,14 +2151,6 @@ impl State { self.last_command_msgid.unwrap_or(0) } - fn get_last_command_msgid_for_reflect(&self) -> &::std::option::Option { - &self.last_command_msgid - } - - fn mut_last_command_msgid_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.last_command_msgid - } - // optional bool playing_from_fallback = 24; pub fn clear_playing_from_fallback(&mut self) { @@ -2501,14 +2170,6 @@ impl State { self.playing_from_fallback.unwrap_or(false) } - fn get_playing_from_fallback_for_reflect(&self) -> &::std::option::Option { - &self.playing_from_fallback - } - - fn mut_playing_from_fallback_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.playing_from_fallback - } - // optional uint32 row = 25; pub fn clear_row(&mut self) { @@ -2528,14 +2189,6 @@ impl State { self.row.unwrap_or(0) } - fn get_row_for_reflect(&self) -> &::std::option::Option { - &self.row - } - - fn mut_row_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.row - } - // optional uint32 playing_track_index = 26; pub fn clear_playing_track_index(&mut self) { @@ -2555,14 +2208,6 @@ impl State { self.playing_track_index.unwrap_or(0) } - fn get_playing_track_index_for_reflect(&self) -> &::std::option::Option { - &self.playing_track_index - } - - fn mut_playing_track_index_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.playing_track_index - } - // repeated .TrackRef track = 27; pub fn clear_track(&mut self) { @@ -2588,14 +2233,6 @@ impl State { &self.track } - fn get_track_for_reflect(&self) -> &::protobuf::RepeatedField { - &self.track - } - - fn mut_track_for_reflect(&mut self) -> &mut ::protobuf::RepeatedField { - &mut self.track - } - // optional .Ad ad = 28; pub fn clear_ad(&mut self) { @@ -2616,7 +2253,7 @@ impl State { pub fn mut_ad(&mut self) -> &mut Ad { if self.ad.is_none() { self.ad.set_default(); - }; + } self.ad.as_mut().unwrap() } @@ -2628,18 +2265,20 @@ impl State { pub fn get_ad(&self) -> &Ad { self.ad.as_ref().unwrap_or_else(|| Ad::default_instance()) } - - fn get_ad_for_reflect(&self) -> &::protobuf::SingularPtrField { - &self.ad - } - - fn mut_ad_for_reflect(&mut self) -> &mut ::protobuf::SingularPtrField { - &mut self.ad - } } impl ::protobuf::Message for State { fn is_initialized(&self) -> bool { + for v in &self.track { + if !v.is_initialized() { + return false; + } + }; + for v in &self.ad { + if !v.is_initialized() { + return false; + } + }; true } @@ -2653,28 +2292,24 @@ impl ::protobuf::Message for State { 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.index = ::std::option::Option::Some(tmp); }, 4 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.position_ms = ::std::option::Option::Some(tmp); }, 5 => { - if wire_type != ::protobuf::wire_format::WireTypeVarint { - return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; - let tmp = is.read_enum()?; - self.status = ::std::option::Option::Some(tmp); + ::protobuf::rt::read_proto2_enum_with_unknown_fields_into(wire_type, is, &mut self.status, 5, &mut self.unknown_fields)? }, 7 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint64()?; self.position_measured_at = ::std::option::Option::Some(tmp); }, @@ -2684,14 +2319,14 @@ impl ::protobuf::Message for State { 13 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.shuffle = ::std::option::Option::Some(tmp); }, 14 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.repeat = ::std::option::Option::Some(tmp); }, @@ -2701,28 +2336,28 @@ impl ::protobuf::Message for State { 21 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.last_command_msgid = ::std::option::Option::Some(tmp); }, 24 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.playing_from_fallback = ::std::option::Option::Some(tmp); }, 25 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.row = ::std::option::Option::Some(tmp); }, 26 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_uint32()?; self.playing_track_index = ::std::option::Option::Some(tmp); }, @@ -2744,108 +2379,108 @@ impl ::protobuf::Message for State { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.context_uri.as_ref() { + if let Some(ref v) = self.context_uri.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } if let Some(v) = self.index { my_size += ::protobuf::rt::value_size(3, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.position_ms { my_size += ::protobuf::rt::value_size(4, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.status { my_size += ::protobuf::rt::enum_size(5, v); - }; + } if let Some(v) = self.position_measured_at { my_size += ::protobuf::rt::value_size(7, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.context_description.as_ref() { + } + if let Some(ref v) = self.context_description.as_ref() { my_size += ::protobuf::rt::string_size(8, &v); - }; + } if let Some(v) = self.shuffle { my_size += 2; - }; + } if let Some(v) = self.repeat { my_size += 2; - }; - if let Some(v) = self.last_command_ident.as_ref() { + } + if let Some(ref v) = self.last_command_ident.as_ref() { my_size += ::protobuf::rt::string_size(20, &v); - }; + } if let Some(v) = self.last_command_msgid { my_size += ::protobuf::rt::value_size(21, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.playing_from_fallback { my_size += 3; - }; + } if let Some(v) = self.row { my_size += ::protobuf::rt::value_size(25, v, ::protobuf::wire_format::WireTypeVarint); - }; + } if let Some(v) = self.playing_track_index { my_size += ::protobuf::rt::value_size(26, v, ::protobuf::wire_format::WireTypeVarint); - }; + } for value in &self.track { let len = value.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; }; - if let Some(v) = self.ad.as_ref() { + if let Some(ref v) = self.ad.as_ref() { let len = v.compute_size(); my_size += 2 + ::protobuf::rt::compute_raw_varint32_size(len) + len; - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.context_uri.as_ref() { + if let Some(ref v) = self.context_uri.as_ref() { os.write_string(2, &v)?; - }; + } if let Some(v) = self.index { os.write_uint32(3, v)?; - }; + } if let Some(v) = self.position_ms { os.write_uint32(4, v)?; - }; + } if let Some(v) = self.status { os.write_enum(5, v.value())?; - }; + } if let Some(v) = self.position_measured_at { os.write_uint64(7, v)?; - }; - if let Some(v) = self.context_description.as_ref() { + } + if let Some(ref v) = self.context_description.as_ref() { os.write_string(8, &v)?; - }; + } if let Some(v) = self.shuffle { os.write_bool(13, v)?; - }; + } if let Some(v) = self.repeat { os.write_bool(14, v)?; - }; - if let Some(v) = self.last_command_ident.as_ref() { + } + if let Some(ref v) = self.last_command_ident.as_ref() { os.write_string(20, &v)?; - }; + } if let Some(v) = self.last_command_msgid { os.write_uint32(21, v)?; - }; + } if let Some(v) = self.playing_from_fallback { os.write_bool(24, v)?; - }; + } if let Some(v) = self.row { os.write_uint32(25, v)?; - }; + } if let Some(v) = self.playing_track_index { os.write_uint32(26, v)?; - }; + } for v in &self.track { os.write_tag(27, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; }; - if let Some(v) = self.ad.as_ref() { + if let Some(ref v) = self.ad.as_ref() { os.write_tag(28, ::protobuf::wire_format::WireTypeLengthDelimited)?; os.write_raw_varint32(v.get_cached_size())?; v.write_to_with_cached_sizes(os)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -2873,16 +2508,14 @@ impl ::protobuf::Message for State { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for State { fn new() -> State { State::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -2892,78 +2525,78 @@ impl ::protobuf::MessageStatic for State { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "context_uri", - State::get_context_uri_for_reflect, - State::mut_context_uri_for_reflect, + |m: &State| { &m.context_uri }, + |m: &mut State| { &mut m.context_uri }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "index", - State::get_index_for_reflect, - State::mut_index_for_reflect, + |m: &State| { &m.index }, + |m: &mut State| { &mut m.index }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "position_ms", - State::get_position_ms_for_reflect, - State::mut_position_ms_for_reflect, + |m: &State| { &m.position_ms }, + |m: &mut State| { &mut m.position_ms }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeEnum>( "status", - State::get_status_for_reflect, - State::mut_status_for_reflect, + |m: &State| { &m.status }, + |m: &mut State| { &mut m.status }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint64>( "position_measured_at", - State::get_position_measured_at_for_reflect, - State::mut_position_measured_at_for_reflect, + |m: &State| { &m.position_measured_at }, + |m: &mut State| { &mut m.position_measured_at }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "context_description", - State::get_context_description_for_reflect, - State::mut_context_description_for_reflect, + |m: &State| { &m.context_description }, + |m: &mut State| { &mut m.context_description }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "shuffle", - State::get_shuffle_for_reflect, - State::mut_shuffle_for_reflect, + |m: &State| { &m.shuffle }, + |m: &mut State| { &mut m.shuffle }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "repeat", - State::get_repeat_for_reflect, - State::mut_repeat_for_reflect, + |m: &State| { &m.repeat }, + |m: &mut State| { &mut m.repeat }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "last_command_ident", - State::get_last_command_ident_for_reflect, - State::mut_last_command_ident_for_reflect, + |m: &State| { &m.last_command_ident }, + |m: &mut State| { &mut m.last_command_ident }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "last_command_msgid", - State::get_last_command_msgid_for_reflect, - State::mut_last_command_msgid_for_reflect, + |m: &State| { &m.last_command_msgid }, + |m: &mut State| { &mut m.last_command_msgid }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "playing_from_fallback", - State::get_playing_from_fallback_for_reflect, - State::mut_playing_from_fallback_for_reflect, + |m: &State| { &m.playing_from_fallback }, + |m: &mut State| { &mut m.playing_from_fallback }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "row", - State::get_row_for_reflect, - State::mut_row_for_reflect, + |m: &State| { &m.row }, + |m: &mut State| { &mut m.row }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeUint32>( "playing_track_index", - State::get_playing_track_index_for_reflect, - State::mut_playing_track_index_for_reflect, + |m: &State| { &m.playing_track_index }, + |m: &mut State| { &mut m.playing_track_index }, )); fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "track", - State::get_track_for_reflect, - State::mut_track_for_reflect, + |m: &State| { &m.track }, + |m: &mut State| { &mut m.track }, )); fields.push(::protobuf::reflect::accessor::make_singular_ptr_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( "ad", - State::get_ad_for_reflect, - State::mut_ad_for_reflect, + |m: &State| { &m.ad }, + |m: &mut State| { &mut m.ad }, )); ::protobuf::reflect::MessageDescriptor::new::( "State", @@ -2973,6 +2606,16 @@ impl ::protobuf::MessageStatic for State { }) } } + + fn default_instance() -> &'static State { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const State, + }; + unsafe { + instance.get(State::new) + } + } } impl ::protobuf::Clear for State { @@ -3020,24 +2663,11 @@ pub struct TrackRef { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for TrackRef {} - impl TrackRef { pub fn new() -> TrackRef { ::std::default::Default::default() } - pub fn default_instance() -> &'static TrackRef { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const TrackRef, - }; - unsafe { - instance.get(TrackRef::new) - } - } - // optional bytes gid = 1; pub fn clear_gid(&mut self) { @@ -3058,7 +2688,7 @@ impl TrackRef { pub fn mut_gid(&mut self) -> &mut ::std::vec::Vec { if self.gid.is_none() { self.gid.set_default(); - }; + } self.gid.as_mut().unwrap() } @@ -3074,14 +2704,6 @@ impl TrackRef { } } - fn get_gid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gid - } - - fn mut_gid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gid - } - // optional string uri = 2; pub fn clear_uri(&mut self) { @@ -3102,7 +2724,7 @@ impl TrackRef { pub fn mut_uri(&mut self) -> &mut ::std::string::String { if self.uri.is_none() { self.uri.set_default(); - }; + } self.uri.as_mut().unwrap() } @@ -3118,14 +2740,6 @@ impl TrackRef { } } - fn get_uri_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.uri - } - - fn mut_uri_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.uri - } - // optional bool queued = 3; pub fn clear_queued(&mut self) { @@ -3145,14 +2759,6 @@ impl TrackRef { self.queued.unwrap_or(false) } - fn get_queued_for_reflect(&self) -> &::std::option::Option { - &self.queued - } - - fn mut_queued_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.queued - } - // optional string context = 4; pub fn clear_context(&mut self) { @@ -3173,7 +2779,7 @@ impl TrackRef { pub fn mut_context(&mut self) -> &mut ::std::string::String { if self.context.is_none() { self.context.set_default(); - }; + } self.context.as_mut().unwrap() } @@ -3188,14 +2794,6 @@ impl TrackRef { None => "", } } - - fn get_context_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.context - } - - fn mut_context_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.context - } } impl ::protobuf::Message for TrackRef { @@ -3216,7 +2814,7 @@ impl ::protobuf::Message for TrackRef { 3 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_bool()?; self.queued = ::std::option::Option::Some(tmp); }, @@ -3235,36 +2833,36 @@ impl ::protobuf::Message for TrackRef { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { my_size += ::protobuf::rt::bytes_size(1, &v); - }; - if let Some(v) = self.uri.as_ref() { + } + if let Some(ref v) = self.uri.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } if let Some(v) = self.queued { my_size += 2; - }; - if let Some(v) = self.context.as_ref() { + } + if let Some(ref v) = self.context.as_ref() { my_size += ::protobuf::rt::string_size(4, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.gid.as_ref() { + if let Some(ref v) = self.gid.as_ref() { os.write_bytes(1, &v)?; - }; - if let Some(v) = self.uri.as_ref() { + } + if let Some(ref v) = self.uri.as_ref() { os.write_string(2, &v)?; - }; + } if let Some(v) = self.queued { os.write_bool(3, v)?; - }; - if let Some(v) = self.context.as_ref() { + } + if let Some(ref v) = self.context.as_ref() { os.write_string(4, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3292,16 +2890,14 @@ impl ::protobuf::Message for TrackRef { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for TrackRef { fn new() -> TrackRef { TrackRef::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3311,23 +2907,23 @@ impl ::protobuf::MessageStatic for TrackRef { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gid", - TrackRef::get_gid_for_reflect, - TrackRef::mut_gid_for_reflect, + |m: &TrackRef| { &m.gid }, + |m: &mut TrackRef| { &mut m.gid }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "uri", - TrackRef::get_uri_for_reflect, - TrackRef::mut_uri_for_reflect, + |m: &TrackRef| { &m.uri }, + |m: &mut TrackRef| { &mut m.uri }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeBool>( "queued", - TrackRef::get_queued_for_reflect, - TrackRef::mut_queued_for_reflect, + |m: &TrackRef| { &m.queued }, + |m: &mut TrackRef| { &mut m.queued }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "context", - TrackRef::get_context_for_reflect, - TrackRef::mut_context_for_reflect, + |m: &TrackRef| { &m.context }, + |m: &mut TrackRef| { &mut m.context }, )); ::protobuf::reflect::MessageDescriptor::new::( "TrackRef", @@ -3337,6 +2933,16 @@ impl ::protobuf::MessageStatic for TrackRef { }) } } + + fn default_instance() -> &'static TrackRef { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const TrackRef, + }; + unsafe { + instance.get(TrackRef::new) + } + } } impl ::protobuf::Clear for TrackRef { @@ -3378,24 +2984,11 @@ pub struct Ad { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Ad {} - impl Ad { pub fn new() -> Ad { ::std::default::Default::default() } - pub fn default_instance() -> &'static Ad { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Ad, - }; - unsafe { - instance.get(Ad::new) - } - } - // optional int32 next = 1; pub fn clear_next(&mut self) { @@ -3415,14 +3008,6 @@ impl Ad { self.next.unwrap_or(0) } - fn get_next_for_reflect(&self) -> &::std::option::Option { - &self.next - } - - fn mut_next_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.next - } - // optional bytes ogg_fid = 2; pub fn clear_ogg_fid(&mut self) { @@ -3443,7 +3028,7 @@ impl Ad { pub fn mut_ogg_fid(&mut self) -> &mut ::std::vec::Vec { if self.ogg_fid.is_none() { self.ogg_fid.set_default(); - }; + } self.ogg_fid.as_mut().unwrap() } @@ -3459,14 +3044,6 @@ impl Ad { } } - fn get_ogg_fid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.ogg_fid - } - - fn mut_ogg_fid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.ogg_fid - } - // optional bytes image_fid = 3; pub fn clear_image_fid(&mut self) { @@ -3487,7 +3064,7 @@ impl Ad { pub fn mut_image_fid(&mut self) -> &mut ::std::vec::Vec { if self.image_fid.is_none() { self.image_fid.set_default(); - }; + } self.image_fid.as_mut().unwrap() } @@ -3503,14 +3080,6 @@ impl Ad { } } - fn get_image_fid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.image_fid - } - - fn mut_image_fid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.image_fid - } - // optional int32 duration = 4; pub fn clear_duration(&mut self) { @@ -3530,14 +3099,6 @@ impl Ad { self.duration.unwrap_or(0) } - fn get_duration_for_reflect(&self) -> &::std::option::Option { - &self.duration - } - - fn mut_duration_for_reflect(&mut self) -> &mut ::std::option::Option { - &mut self.duration - } - // optional string click_url = 5; pub fn clear_click_url(&mut self) { @@ -3558,7 +3119,7 @@ impl Ad { pub fn mut_click_url(&mut self) -> &mut ::std::string::String { if self.click_url.is_none() { self.click_url.set_default(); - }; + } self.click_url.as_mut().unwrap() } @@ -3574,14 +3135,6 @@ impl Ad { } } - fn get_click_url_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.click_url - } - - fn mut_click_url_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.click_url - } - // optional string impression_url = 6; pub fn clear_impression_url(&mut self) { @@ -3602,7 +3155,7 @@ impl Ad { pub fn mut_impression_url(&mut self) -> &mut ::std::string::String { if self.impression_url.is_none() { self.impression_url.set_default(); - }; + } self.impression_url.as_mut().unwrap() } @@ -3618,14 +3171,6 @@ impl Ad { } } - fn get_impression_url_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.impression_url - } - - fn mut_impression_url_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.impression_url - } - // optional string product = 7; pub fn clear_product(&mut self) { @@ -3646,7 +3191,7 @@ impl Ad { pub fn mut_product(&mut self) -> &mut ::std::string::String { if self.product.is_none() { self.product.set_default(); - }; + } self.product.as_mut().unwrap() } @@ -3662,14 +3207,6 @@ impl Ad { } } - fn get_product_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.product - } - - fn mut_product_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.product - } - // optional string advertiser = 8; pub fn clear_advertiser(&mut self) { @@ -3690,7 +3227,7 @@ impl Ad { pub fn mut_advertiser(&mut self) -> &mut ::std::string::String { if self.advertiser.is_none() { self.advertiser.set_default(); - }; + } self.advertiser.as_mut().unwrap() } @@ -3706,14 +3243,6 @@ impl Ad { } } - fn get_advertiser_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.advertiser - } - - fn mut_advertiser_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.advertiser - } - // optional bytes gid = 9; pub fn clear_gid(&mut self) { @@ -3734,7 +3263,7 @@ impl Ad { pub fn mut_gid(&mut self) -> &mut ::std::vec::Vec { if self.gid.is_none() { self.gid.set_default(); - }; + } self.gid.as_mut().unwrap() } @@ -3749,14 +3278,6 @@ impl Ad { None => &[], } } - - fn get_gid_for_reflect(&self) -> &::protobuf::SingularField<::std::vec::Vec> { - &self.gid - } - - fn mut_gid_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::vec::Vec> { - &mut self.gid - } } impl ::protobuf::Message for Ad { @@ -3771,7 +3292,7 @@ impl ::protobuf::Message for Ad { 1 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.next = ::std::option::Option::Some(tmp); }, @@ -3784,7 +3305,7 @@ impl ::protobuf::Message for Ad { 4 => { if wire_type != ::protobuf::wire_format::WireTypeVarint { return ::std::result::Result::Err(::protobuf::rt::unexpected_wire_type(wire_type)); - }; + } let tmp = is.read_int32()?; self.duration = ::std::option::Option::Some(tmp); }, @@ -3817,31 +3338,31 @@ impl ::protobuf::Message for Ad { let mut my_size = 0; if let Some(v) = self.next { my_size += ::protobuf::rt::value_size(1, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.ogg_fid.as_ref() { + } + if let Some(ref v) = self.ogg_fid.as_ref() { my_size += ::protobuf::rt::bytes_size(2, &v); - }; - if let Some(v) = self.image_fid.as_ref() { + } + if let Some(ref v) = self.image_fid.as_ref() { my_size += ::protobuf::rt::bytes_size(3, &v); - }; + } if let Some(v) = self.duration { my_size += ::protobuf::rt::value_size(4, v, ::protobuf::wire_format::WireTypeVarint); - }; - if let Some(v) = self.click_url.as_ref() { + } + if let Some(ref v) = self.click_url.as_ref() { my_size += ::protobuf::rt::string_size(5, &v); - }; - if let Some(v) = self.impression_url.as_ref() { + } + if let Some(ref v) = self.impression_url.as_ref() { my_size += ::protobuf::rt::string_size(6, &v); - }; - if let Some(v) = self.product.as_ref() { + } + if let Some(ref v) = self.product.as_ref() { my_size += ::protobuf::rt::string_size(7, &v); - }; - if let Some(v) = self.advertiser.as_ref() { + } + if let Some(ref v) = self.advertiser.as_ref() { my_size += ::protobuf::rt::string_size(8, &v); - }; - if let Some(v) = self.gid.as_ref() { + } + if let Some(ref v) = self.gid.as_ref() { my_size += ::protobuf::rt::bytes_size(9, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size @@ -3850,31 +3371,31 @@ impl ::protobuf::Message for Ad { fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { if let Some(v) = self.next { os.write_int32(1, v)?; - }; - if let Some(v) = self.ogg_fid.as_ref() { + } + if let Some(ref v) = self.ogg_fid.as_ref() { os.write_bytes(2, &v)?; - }; - if let Some(v) = self.image_fid.as_ref() { + } + if let Some(ref v) = self.image_fid.as_ref() { os.write_bytes(3, &v)?; - }; + } if let Some(v) = self.duration { os.write_int32(4, v)?; - }; - if let Some(v) = self.click_url.as_ref() { + } + if let Some(ref v) = self.click_url.as_ref() { os.write_string(5, &v)?; - }; - if let Some(v) = self.impression_url.as_ref() { + } + if let Some(ref v) = self.impression_url.as_ref() { os.write_string(6, &v)?; - }; - if let Some(v) = self.product.as_ref() { + } + if let Some(ref v) = self.product.as_ref() { os.write_string(7, &v)?; - }; - if let Some(v) = self.advertiser.as_ref() { + } + if let Some(ref v) = self.advertiser.as_ref() { os.write_string(8, &v)?; - }; - if let Some(v) = self.gid.as_ref() { + } + if let Some(ref v) = self.gid.as_ref() { os.write_bytes(9, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -3902,16 +3423,14 @@ impl ::protobuf::Message for Ad { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Ad { fn new() -> Ad { Ad::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -3921,48 +3440,48 @@ impl ::protobuf::MessageStatic for Ad { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "next", - Ad::get_next_for_reflect, - Ad::mut_next_for_reflect, + |m: &Ad| { &m.next }, + |m: &mut Ad| { &mut m.next }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "ogg_fid", - Ad::get_ogg_fid_for_reflect, - Ad::mut_ogg_fid_for_reflect, + |m: &Ad| { &m.ogg_fid }, + |m: &mut Ad| { &mut m.ogg_fid }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "image_fid", - Ad::get_image_fid_for_reflect, - Ad::mut_image_fid_for_reflect, + |m: &Ad| { &m.image_fid }, + |m: &mut Ad| { &mut m.image_fid }, )); fields.push(::protobuf::reflect::accessor::make_option_accessor::<_, ::protobuf::types::ProtobufTypeInt32>( "duration", - Ad::get_duration_for_reflect, - Ad::mut_duration_for_reflect, + |m: &Ad| { &m.duration }, + |m: &mut Ad| { &mut m.duration }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "click_url", - Ad::get_click_url_for_reflect, - Ad::mut_click_url_for_reflect, + |m: &Ad| { &m.click_url }, + |m: &mut Ad| { &mut m.click_url }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "impression_url", - Ad::get_impression_url_for_reflect, - Ad::mut_impression_url_for_reflect, + |m: &Ad| { &m.impression_url }, + |m: &mut Ad| { &mut m.impression_url }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "product", - Ad::get_product_for_reflect, - Ad::mut_product_for_reflect, + |m: &Ad| { &m.product }, + |m: &mut Ad| { &mut m.product }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "advertiser", - Ad::get_advertiser_for_reflect, - Ad::mut_advertiser_for_reflect, + |m: &Ad| { &m.advertiser }, + |m: &mut Ad| { &mut m.advertiser }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeBytes>( "gid", - Ad::get_gid_for_reflect, - Ad::mut_gid_for_reflect, + |m: &Ad| { &m.gid }, + |m: &mut Ad| { &mut m.gid }, )); ::protobuf::reflect::MessageDescriptor::new::( "Ad", @@ -3972,6 +3491,16 @@ impl ::protobuf::MessageStatic for Ad { }) } } + + fn default_instance() -> &'static Ad { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Ad, + }; + unsafe { + instance.get(Ad::new) + } + } } impl ::protobuf::Clear for Ad { @@ -4011,24 +3540,11 @@ pub struct Metadata { cached_size: ::protobuf::CachedSize, } -// see codegen.rs for the explanation why impl Sync explicitly -unsafe impl ::std::marker::Sync for Metadata {} - impl Metadata { pub fn new() -> Metadata { ::std::default::Default::default() } - pub fn default_instance() -> &'static Metadata { - static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { - lock: ::protobuf::lazy::ONCE_INIT, - ptr: 0 as *const Metadata, - }; - unsafe { - instance.get(Metadata::new) - } - } - // optional string type = 1; pub fn clear_field_type(&mut self) { @@ -4049,7 +3565,7 @@ impl Metadata { pub fn mut_field_type(&mut self) -> &mut ::std::string::String { if self.field_type.is_none() { self.field_type.set_default(); - }; + } self.field_type.as_mut().unwrap() } @@ -4065,14 +3581,6 @@ impl Metadata { } } - fn get_field_type_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.field_type - } - - fn mut_field_type_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.field_type - } - // optional string metadata = 2; pub fn clear_metadata(&mut self) { @@ -4093,7 +3601,7 @@ impl Metadata { pub fn mut_metadata(&mut self) -> &mut ::std::string::String { if self.metadata.is_none() { self.metadata.set_default(); - }; + } self.metadata.as_mut().unwrap() } @@ -4108,14 +3616,6 @@ impl Metadata { None => "", } } - - fn get_metadata_for_reflect(&self) -> &::protobuf::SingularField<::std::string::String> { - &self.metadata - } - - fn mut_metadata_for_reflect(&mut self) -> &mut ::protobuf::SingularField<::std::string::String> { - &mut self.metadata - } } impl ::protobuf::Message for Metadata { @@ -4145,24 +3645,24 @@ impl ::protobuf::Message for Metadata { #[allow(unused_variables)] fn compute_size(&self) -> u32 { let mut my_size = 0; - if let Some(v) = self.field_type.as_ref() { + if let Some(ref v) = self.field_type.as_ref() { my_size += ::protobuf::rt::string_size(1, &v); - }; - if let Some(v) = self.metadata.as_ref() { + } + if let Some(ref v) = self.metadata.as_ref() { my_size += ::protobuf::rt::string_size(2, &v); - }; + } my_size += ::protobuf::rt::unknown_fields_size(self.get_unknown_fields()); self.cached_size.set(my_size); my_size } fn write_to_with_cached_sizes(&self, os: &mut ::protobuf::CodedOutputStream) -> ::protobuf::ProtobufResult<()> { - if let Some(v) = self.field_type.as_ref() { + if let Some(ref v) = self.field_type.as_ref() { os.write_string(1, &v)?; - }; - if let Some(v) = self.metadata.as_ref() { + } + if let Some(ref v) = self.metadata.as_ref() { os.write_string(2, &v)?; - }; + } os.write_unknown_fields(self.get_unknown_fields())?; ::std::result::Result::Ok(()) } @@ -4190,16 +3690,14 @@ impl ::protobuf::Message for Metadata { } fn descriptor(&self) -> &'static ::protobuf::reflect::MessageDescriptor { - ::protobuf::MessageStatic::descriptor_static(None::) + Self::descriptor_static() } -} -impl ::protobuf::MessageStatic for Metadata { fn new() -> Metadata { Metadata::new() } - fn descriptor_static(_: ::std::option::Option) -> &'static ::protobuf::reflect::MessageDescriptor { + fn descriptor_static() -> &'static ::protobuf::reflect::MessageDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::MessageDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::MessageDescriptor, @@ -4209,13 +3707,13 @@ impl ::protobuf::MessageStatic for Metadata { let mut fields = ::std::vec::Vec::new(); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "type", - Metadata::get_field_type_for_reflect, - Metadata::mut_field_type_for_reflect, + |m: &Metadata| { &m.field_type }, + |m: &mut Metadata| { &mut m.field_type }, )); fields.push(::protobuf::reflect::accessor::make_singular_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( "metadata", - Metadata::get_metadata_for_reflect, - Metadata::mut_metadata_for_reflect, + |m: &Metadata| { &m.metadata }, + |m: &mut Metadata| { &mut m.metadata }, )); ::protobuf::reflect::MessageDescriptor::new::( "Metadata", @@ -4225,6 +3723,16 @@ impl ::protobuf::MessageStatic for Metadata { }) } } + + fn default_instance() -> &'static Metadata { + static mut instance: ::protobuf::lazy::Lazy = ::protobuf::lazy::Lazy { + lock: ::protobuf::lazy::ONCE_INIT, + ptr: 0 as *const Metadata, + }; + unsafe { + instance.get(Metadata::new) + } + } } impl ::protobuf::Clear for Metadata { @@ -4331,7 +3839,7 @@ impl ::protobuf::ProtobufEnum for MessageType { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -4368,7 +3876,7 @@ pub enum CapabilityType { kSupportsRename = 11, kHidden = 12, kSupportsPlaylistV2 = 13, - kUnknown = 14, + kSupportsExternalEpisodes = 14, } impl ::protobuf::ProtobufEnum for CapabilityType { @@ -4391,7 +3899,7 @@ impl ::protobuf::ProtobufEnum for CapabilityType { 11 => ::std::option::Option::Some(CapabilityType::kSupportsRename), 12 => ::std::option::Option::Some(CapabilityType::kHidden), 13 => ::std::option::Option::Some(CapabilityType::kSupportsPlaylistV2), - 14 => ::std::option::Option::Some(CapabilityType::kUnknown), + 14 => ::std::option::Option::Some(CapabilityType::kSupportsExternalEpisodes), _ => ::std::option::Option::None } } @@ -4411,12 +3919,12 @@ impl ::protobuf::ProtobufEnum for CapabilityType { CapabilityType::kSupportsRename, CapabilityType::kHidden, CapabilityType::kSupportsPlaylistV2, - CapabilityType::kUnknown, + CapabilityType::kSupportsExternalEpisodes, ]; values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -4471,7 +3979,7 @@ impl ::protobuf::ProtobufEnum for PlayStatus { values } - fn enum_descriptor_static(_: Option) -> &'static ::protobuf::reflect::EnumDescriptor { + fn enum_descriptor_static() -> &'static ::protobuf::reflect::EnumDescriptor { static mut descriptor: ::protobuf::lazy::Lazy<::protobuf::reflect::EnumDescriptor> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, ptr: 0 as *const ::protobuf::reflect::EnumDescriptor, @@ -4493,570 +4001,81 @@ impl ::protobuf::reflect::ProtobufValue for PlayStatus { } } -static file_descriptor_proto_data: &'static [u8] = &[ - 0x0a, 0x0b, 0x73, 0x70, 0x69, 0x72, 0x63, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xfa, 0x03, - 0x0a, 0x05, 0x46, 0x72, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, - 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x63, 0x6f, 0x6c, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x56, 0x65, 0x72, 0x73, 0x69, - 0x6f, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x73, 0x65, 0x71, 0x5f, 0x6e, 0x72, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x05, 0x73, 0x65, 0x71, 0x4e, 0x72, 0x12, 0x1e, 0x0a, 0x03, 0x74, 0x79, 0x70, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0c, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x2f, 0x0a, 0x0c, 0x64, 0x65, 0x76, - 0x69, 0x63, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0c, 0x2e, 0x44, 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x0b, 0x64, - 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x22, 0x0a, 0x07, 0x67, 0x6f, - 0x6f, 0x64, 0x62, 0x79, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x08, 0x2e, 0x47, 0x6f, - 0x6f, 0x64, 0x62, 0x79, 0x65, 0x52, 0x07, 0x67, 0x6f, 0x6f, 0x64, 0x62, 0x79, 0x65, 0x12, 0x1c, - 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x06, 0x2e, - 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x08, - 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, - 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, - 0x12, 0x26, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, - 0x5f, 0x69, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x65, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x65, 0x63, 0x69, - 0x70, 0x69, 0x65, 0x6e, 0x74, 0x18, 0x12, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x63, - 0x69, 0x70, 0x69, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, - 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x13, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x50, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x6e, 0x65, 0x77, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x65, 0x77, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x19, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x88, 0x03, 0x0a, 0x0b, 0x44, - 0x65, 0x76, 0x69, 0x63, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x77, - 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x73, 0x77, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x73, 0x5f, - 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, - 0x41, 0x63, 0x74, 0x69, 0x76, 0x65, 0x12, 0x19, 0x0a, 0x08, 0x63, 0x61, 0x6e, 0x5f, 0x70, 0x6c, - 0x61, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63, 0x61, 0x6e, 0x50, 0x6c, 0x61, - 0x79, 0x12, 0x16, 0x0a, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x06, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, - 0x0a, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x09, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x28, 0x0a, 0x10, - 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x74, - 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0e, 0x62, 0x65, 0x63, 0x61, 0x6d, 0x65, 0x41, 0x63, - 0x74, 0x69, 0x76, 0x65, 0x41, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, - 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x2f, 0x0a, 0x0c, 0x63, - 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x11, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x0b, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x52, 0x0c, - 0x63, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x30, 0x0a, 0x14, - 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x5f, 0x65, - 0x72, 0x72, 0x6f, 0x72, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x63, 0x6f, 0x6e, 0x74, - 0x65, 0x78, 0x74, 0x50, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x25, - 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x19, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x09, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x52, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x6d, 0x0a, 0x0a, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, - 0x69, 0x74, 0x79, 0x12, 0x21, 0x0a, 0x03, 0x74, 0x79, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x0f, 0x2e, 0x43, 0x61, 0x70, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, - 0x65, 0x52, 0x03, 0x74, 0x79, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x03, 0x28, 0x03, 0x52, 0x08, 0x69, 0x6e, 0x74, 0x56, 0x61, 0x6c, - 0x75, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x22, 0x21, 0x0a, 0x07, 0x47, 0x6f, 0x6f, 0x64, 0x62, 0x79, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0xa1, 0x04, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, - 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x75, 0x72, 0x69, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x55, - 0x72, 0x69, 0x12, 0x14, 0x0a, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x0b, 0x70, 0x6f, 0x73, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x70, - 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x73, 0x12, 0x23, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x0b, 0x2e, 0x50, 0x6c, 0x61, 0x79, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x30, - 0x0a, 0x14, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x61, 0x73, 0x75, - 0x72, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x12, 0x70, 0x6f, - 0x73, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x61, 0x73, 0x75, 0x72, 0x65, 0x64, 0x41, 0x74, - 0x12, 0x2f, 0x0a, 0x13, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x64, 0x65, 0x73, 0x63, - 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x12, 0x63, - 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x44, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, - 0x6e, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x07, 0x73, 0x68, 0x75, 0x66, 0x66, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, - 0x65, 0x70, 0x65, 0x61, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x72, 0x65, 0x70, - 0x65, 0x61, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, - 0x61, 0x6e, 0x64, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x10, 0x6c, 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x61, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, - 0x64, 0x5f, 0x6d, 0x73, 0x67, 0x69, 0x64, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x10, 0x6c, - 0x61, 0x73, 0x74, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x4d, 0x73, 0x67, 0x69, 0x64, 0x12, - 0x32, 0x0a, 0x15, 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x72, 0x6f, 0x6d, 0x5f, - 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x18, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, - 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x46, 0x72, 0x6f, 0x6d, 0x46, 0x61, 0x6c, 0x6c, 0x62, - 0x61, 0x63, 0x6b, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x6f, 0x77, 0x18, 0x19, 0x20, 0x01, 0x28, 0x0d, - 0x52, 0x03, 0x72, 0x6f, 0x77, 0x12, 0x2e, 0x0a, 0x13, 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, - 0x5f, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x1a, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x11, 0x70, 0x6c, 0x61, 0x79, 0x69, 0x6e, 0x67, 0x54, 0x72, 0x61, 0x63, 0x6b, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x1f, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x1b, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x09, 0x2e, 0x54, 0x72, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x52, - 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x13, 0x0a, 0x02, 0x61, 0x64, 0x18, 0x1c, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x03, 0x2e, 0x41, 0x64, 0x52, 0x02, 0x61, 0x64, 0x22, 0x60, 0x0a, 0x08, 0x54, - 0x72, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x66, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x67, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x16, 0x0a, 0x06, 0x71, - 0x75, 0x65, 0x75, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x71, 0x75, 0x65, - 0x75, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0xfa, 0x01, - 0x0a, 0x02, 0x41, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x6e, 0x65, 0x78, 0x74, 0x12, 0x17, 0x0a, 0x07, 0x6f, 0x67, 0x67, 0x5f, - 0x66, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x06, 0x6f, 0x67, 0x67, 0x46, 0x69, - 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x69, 0x64, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0c, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x46, 0x69, 0x64, 0x12, 0x1a, - 0x0a, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x09, 0x63, 0x6c, - 0x69, 0x63, 0x6b, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x63, - 0x6c, 0x69, 0x63, 0x6b, 0x55, 0x72, 0x6c, 0x12, 0x25, 0x0a, 0x0e, 0x69, 0x6d, 0x70, 0x72, 0x65, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0d, 0x69, 0x6d, 0x70, 0x72, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x72, 0x6c, 0x12, 0x18, - 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x61, 0x64, 0x76, 0x65, - 0x72, 0x74, 0x69, 0x73, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x64, - 0x76, 0x65, 0x72, 0x74, 0x69, 0x73, 0x65, 0x72, 0x12, 0x10, 0x0a, 0x03, 0x67, 0x69, 0x64, 0x18, - 0x09, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x03, 0x67, 0x69, 0x64, 0x22, 0x3a, 0x0a, 0x08, 0x4d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x2a, 0x8d, 0x04, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x48, 0x65, 0x6c, 0x6c, 0x6f, 0x10, 0x01, 0x12, 0x17, 0x0a, - 0x13, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x47, 0x6f, 0x6f, - 0x64, 0x62, 0x79, 0x65, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x50, 0x72, 0x6f, 0x62, 0x65, 0x10, 0x03, 0x12, 0x16, 0x0a, - 0x12, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x6f, 0x74, - 0x69, 0x66, 0x79, 0x10, 0x0a, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x6f, 0x61, 0x64, 0x10, 0x14, 0x12, 0x14, 0x0a, 0x10, 0x6b, - 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x10, - 0x15, 0x12, 0x15, 0x0a, 0x11, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, - 0x65, 0x50, 0x61, 0x75, 0x73, 0x65, 0x10, 0x16, 0x12, 0x19, 0x0a, 0x15, 0x6b, 0x4d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x50, 0x61, 0x75, 0x73, - 0x65, 0x10, 0x17, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, - 0x79, 0x70, 0x65, 0x53, 0x65, 0x65, 0x6b, 0x10, 0x18, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x4d, 0x65, - 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x50, 0x72, 0x65, 0x76, 0x10, 0x19, 0x12, - 0x14, 0x0a, 0x10, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4e, - 0x65, 0x78, 0x74, 0x10, 0x1a, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x10, 0x1b, 0x12, 0x17, 0x0a, - 0x13, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x53, 0x68, 0x75, - 0x66, 0x66, 0x6c, 0x65, 0x10, 0x1c, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x70, 0x65, 0x61, 0x74, 0x10, 0x1d, 0x12, 0x1a, - 0x0a, 0x16, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x56, 0x6f, - 0x6c, 0x75, 0x6d, 0x65, 0x44, 0x6f, 0x77, 0x6e, 0x10, 0x1f, 0x12, 0x18, 0x0a, 0x14, 0x6b, 0x4d, - 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x56, 0x6f, 0x6c, 0x75, 0x6d, 0x65, - 0x55, 0x70, 0x10, 0x20, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x10, 0x21, 0x12, 0x16, 0x0a, - 0x12, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x4c, 0x6f, 0x67, - 0x6f, 0x75, 0x74, 0x10, 0x22, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x10, 0x23, 0x12, 0x16, 0x0a, - 0x12, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x10, 0x24, 0x12, 0x1f, 0x0a, 0x1a, 0x6b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, - 0x65, 0x54, 0x79, 0x70, 0x65, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x10, 0x80, 0x01, 0x2a, 0xa1, 0x02, 0x0a, 0x0e, 0x43, 0x61, 0x70, 0x61, 0x62, - 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x53, 0x75, - 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x10, - 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x43, 0x61, 0x6e, 0x42, 0x65, 0x50, 0x6c, 0x61, 0x79, 0x65, - 0x72, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, - 0x54, 0x6f, 0x4c, 0x6f, 0x63, 0x61, 0x6c, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x6b, 0x44, 0x65, - 0x76, 0x69, 0x63, 0x65, 0x54, 0x79, 0x70, 0x65, 0x10, 0x04, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x47, - 0x61, 0x69, 0x61, 0x45, 0x71, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x49, 0x64, 0x10, 0x05, - 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x4c, 0x6f, 0x67, - 0x6f, 0x75, 0x74, 0x10, 0x06, 0x12, 0x11, 0x0a, 0x0d, 0x6b, 0x49, 0x73, 0x4f, 0x62, 0x73, 0x65, - 0x72, 0x76, 0x61, 0x62, 0x6c, 0x65, 0x10, 0x07, 0x12, 0x10, 0x0a, 0x0c, 0x6b, 0x56, 0x6f, 0x6c, - 0x75, 0x6d, 0x65, 0x53, 0x74, 0x65, 0x70, 0x73, 0x10, 0x08, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x53, - 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x54, 0x79, 0x70, 0x65, 0x73, 0x10, 0x09, 0x12, - 0x10, 0x0a, 0x0c, 0x6b, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x41, 0x63, 0x6b, 0x73, 0x10, - 0x0a, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x52, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x10, 0x0b, 0x12, 0x0b, 0x0a, 0x07, 0x6b, 0x48, 0x69, 0x64, 0x64, 0x65, - 0x6e, 0x10, 0x0c, 0x12, 0x17, 0x0a, 0x13, 0x6b, 0x53, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x73, - 0x50, 0x6c, 0x61, 0x79, 0x6c, 0x69, 0x73, 0x74, 0x56, 0x32, 0x10, 0x0d, 0x12, 0x0c, 0x0a, 0x08, - 0x6b, 0x55, 0x6e, 0x6b, 0x6e, 0x6f, 0x77, 0x6e, 0x10, 0x0e, 0x2a, 0x64, 0x0a, 0x0a, 0x50, 0x6c, - 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x13, 0x0a, 0x0f, 0x6b, 0x50, 0x6c, 0x61, - 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x53, 0x74, 0x6f, 0x70, 0x10, 0x00, 0x12, 0x13, 0x0a, - 0x0f, 0x6b, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x50, 0x6c, 0x61, 0x79, - 0x10, 0x01, 0x12, 0x14, 0x0a, 0x10, 0x6b, 0x50, 0x6c, 0x61, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x50, 0x61, 0x75, 0x73, 0x65, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12, 0x6b, 0x50, 0x6c, 0x61, - 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4c, 0x6f, 0x61, 0x64, 0x69, 0x6e, 0x67, 0x10, 0x03, - 0x4a, 0x93, 0x2f, 0x0a, 0x07, 0x12, 0x05, 0x00, 0x00, 0x84, 0x01, 0x01, 0x0a, 0x08, 0x0a, 0x01, - 0x0c, 0x12, 0x03, 0x00, 0x00, 0x12, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x00, 0x12, 0x04, 0x02, 0x00, - 0x12, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x00, 0x01, 0x12, 0x03, 0x02, 0x08, 0x0d, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x00, 0x02, 0x00, 0x12, 0x03, 0x03, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x00, 0x04, 0x12, 0x03, 0x03, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x00, 0x05, 0x12, 0x03, 0x03, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x01, - 0x12, 0x03, 0x03, 0x14, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x00, 0x03, 0x12, 0x03, - 0x03, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x01, 0x12, 0x03, 0x04, 0x04, 0x20, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x04, 0x12, 0x03, 0x04, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x01, 0x05, 0x12, 0x03, 0x04, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x01, 0x01, 0x12, 0x03, 0x04, 0x14, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x01, 0x03, 0x12, 0x03, 0x04, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x02, - 0x12, 0x03, 0x05, 0x04, 0x2b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x04, 0x12, 0x03, - 0x05, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x05, 0x12, 0x03, 0x05, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x01, 0x12, 0x03, 0x05, 0x14, 0x24, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x02, 0x03, 0x12, 0x03, 0x05, 0x27, 0x2a, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x00, 0x02, 0x03, 0x12, 0x03, 0x06, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x03, 0x04, 0x12, 0x03, 0x06, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, - 0x05, 0x12, 0x03, 0x06, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x01, 0x12, - 0x03, 0x06, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x03, 0x03, 0x12, 0x03, 0x06, - 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x04, 0x12, 0x03, 0x07, 0x04, 0x23, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x04, 0x04, 0x12, 0x03, 0x07, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x04, 0x06, 0x12, 0x03, 0x07, 0x0d, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x04, 0x01, 0x12, 0x03, 0x07, 0x19, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x04, 0x03, 0x12, 0x03, 0x07, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x05, 0x12, - 0x03, 0x08, 0x04, 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x04, 0x12, 0x03, 0x08, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x06, 0x12, 0x03, 0x08, 0x0d, 0x18, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x01, 0x12, 0x03, 0x08, 0x19, 0x25, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x05, 0x03, 0x12, 0x03, 0x08, 0x28, 0x2b, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x00, 0x02, 0x06, 0x12, 0x03, 0x09, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x06, 0x04, 0x12, 0x03, 0x09, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x06, - 0x12, 0x03, 0x09, 0x0d, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x01, 0x12, 0x03, - 0x09, 0x15, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x06, 0x03, 0x12, 0x03, 0x09, 0x1f, - 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x07, 0x12, 0x03, 0x0a, 0x04, 0x1f, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x07, 0x04, 0x12, 0x03, 0x0a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x07, 0x06, 0x12, 0x03, 0x0a, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x07, 0x01, 0x12, 0x03, 0x0a, 0x13, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x07, - 0x03, 0x12, 0x03, 0x0a, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x08, 0x12, 0x03, - 0x0b, 0x04, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x04, 0x12, 0x03, 0x0b, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x05, 0x12, 0x03, 0x0b, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x08, 0x01, 0x12, 0x03, 0x0b, 0x14, 0x1c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x08, 0x03, 0x12, 0x03, 0x0b, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x00, 0x02, 0x09, 0x12, 0x03, 0x0c, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x09, - 0x04, 0x12, 0x03, 0x0c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x09, 0x05, 0x12, - 0x03, 0x0c, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x09, 0x01, 0x12, 0x03, 0x0c, - 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x09, 0x03, 0x12, 0x03, 0x0c, 0x1d, 0x20, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x0a, 0x12, 0x03, 0x0d, 0x04, 0x2a, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x0a, 0x04, 0x12, 0x03, 0x0d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x0a, 0x05, 0x12, 0x03, 0x0d, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, - 0x0a, 0x01, 0x12, 0x03, 0x0d, 0x13, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0a, 0x03, - 0x12, 0x03, 0x0d, 0x25, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x0b, 0x12, 0x03, 0x0e, - 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0b, 0x04, 0x12, 0x03, 0x0e, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0b, 0x05, 0x12, 0x03, 0x0e, 0x0d, 0x13, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x0e, 0x14, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x0b, 0x03, 0x12, 0x03, 0x0e, 0x20, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, - 0x02, 0x0c, 0x12, 0x03, 0x0f, 0x04, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0c, 0x04, - 0x12, 0x03, 0x0f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0c, 0x05, 0x12, 0x03, - 0x0f, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0c, 0x01, 0x12, 0x03, 0x0f, 0x13, - 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0c, 0x03, 0x12, 0x03, 0x0f, 0x2a, 0x2e, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x0d, 0x12, 0x03, 0x10, 0x04, 0x24, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x00, 0x02, 0x0d, 0x04, 0x12, 0x03, 0x10, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, - 0x02, 0x0d, 0x05, 0x12, 0x03, 0x10, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0d, - 0x01, 0x12, 0x03, 0x10, 0x14, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0d, 0x03, 0x12, - 0x03, 0x10, 0x1f, 0x23, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x00, 0x02, 0x0e, 0x12, 0x03, 0x11, 0x04, - 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0e, 0x04, 0x12, 0x03, 0x11, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x00, 0x02, 0x0e, 0x06, 0x12, 0x03, 0x11, 0x0d, 0x15, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x00, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x11, 0x16, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x00, 0x02, 0x0e, 0x03, 0x12, 0x03, 0x11, 0x21, 0x25, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x00, 0x12, - 0x04, 0x14, 0x00, 0x2a, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x00, 0x01, 0x12, 0x03, 0x14, 0x05, - 0x10, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x00, 0x12, 0x03, 0x15, 0x04, 0x1c, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x00, 0x02, 0x00, 0x01, 0x12, 0x03, 0x15, 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x00, 0x02, 0x00, 0x02, 0x12, 0x03, 0x15, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, - 0x02, 0x01, 0x12, 0x03, 0x16, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x01, 0x01, - 0x12, 0x03, 0x16, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x01, 0x02, 0x12, 0x03, - 0x16, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x02, 0x12, 0x03, 0x17, 0x04, 0x1c, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x02, 0x01, 0x12, 0x03, 0x17, 0x04, 0x15, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x00, 0x02, 0x02, 0x02, 0x12, 0x03, 0x17, 0x18, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x00, 0x02, 0x03, 0x12, 0x03, 0x18, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, - 0x03, 0x01, 0x12, 0x03, 0x18, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x03, 0x02, - 0x12, 0x03, 0x18, 0x19, 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x04, 0x12, 0x03, 0x19, - 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x04, 0x01, 0x12, 0x03, 0x19, 0x04, 0x14, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x04, 0x02, 0x12, 0x03, 0x19, 0x17, 0x1b, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x00, 0x02, 0x05, 0x12, 0x03, 0x1a, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x00, 0x02, 0x05, 0x01, 0x12, 0x03, 0x1a, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, - 0x05, 0x02, 0x12, 0x03, 0x1a, 0x17, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x06, 0x12, - 0x03, 0x1b, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x06, 0x01, 0x12, 0x03, 0x1b, - 0x04, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x06, 0x02, 0x12, 0x03, 0x1b, 0x18, 0x1c, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x07, 0x12, 0x03, 0x1c, 0x04, 0x21, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x00, 0x02, 0x07, 0x01, 0x12, 0x03, 0x1c, 0x04, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x00, 0x02, 0x07, 0x02, 0x12, 0x03, 0x1c, 0x1c, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, - 0x08, 0x12, 0x03, 0x1d, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x08, 0x01, 0x12, - 0x03, 0x1d, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x08, 0x02, 0x12, 0x03, 0x1d, - 0x17, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x09, 0x12, 0x03, 0x1e, 0x04, 0x1c, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x09, 0x01, 0x12, 0x03, 0x1e, 0x04, 0x14, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x00, 0x02, 0x09, 0x02, 0x12, 0x03, 0x1e, 0x17, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x00, 0x02, 0x0a, 0x12, 0x03, 0x1f, 0x04, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0a, - 0x01, 0x12, 0x03, 0x1f, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0a, 0x02, 0x12, - 0x03, 0x1f, 0x17, 0x1b, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x0b, 0x12, 0x03, 0x20, 0x04, - 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x20, 0x04, 0x16, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0b, 0x02, 0x12, 0x03, 0x20, 0x19, 0x1d, 0x0a, 0x0b, 0x0a, - 0x04, 0x05, 0x00, 0x02, 0x0c, 0x12, 0x03, 0x21, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, - 0x02, 0x0c, 0x01, 0x12, 0x03, 0x21, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0c, - 0x02, 0x12, 0x03, 0x21, 0x1a, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x0d, 0x12, 0x03, - 0x22, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0d, 0x01, 0x12, 0x03, 0x22, 0x04, - 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0d, 0x02, 0x12, 0x03, 0x22, 0x19, 0x1d, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x0e, 0x12, 0x03, 0x23, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x00, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x23, 0x04, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, - 0x02, 0x0e, 0x02, 0x12, 0x03, 0x23, 0x1d, 0x21, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x0f, - 0x12, 0x03, 0x24, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0f, 0x01, 0x12, 0x03, - 0x24, 0x04, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x0f, 0x02, 0x12, 0x03, 0x24, 0x1b, - 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x10, 0x12, 0x03, 0x25, 0x04, 0x1f, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x00, 0x02, 0x10, 0x01, 0x12, 0x03, 0x25, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x00, 0x02, 0x10, 0x02, 0x12, 0x03, 0x25, 0x1a, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, - 0x02, 0x11, 0x12, 0x03, 0x26, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x11, 0x01, - 0x12, 0x03, 0x26, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x11, 0x02, 0x12, 0x03, - 0x26, 0x19, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x12, 0x12, 0x03, 0x27, 0x04, 0x1e, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x12, 0x01, 0x12, 0x03, 0x27, 0x04, 0x16, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x00, 0x02, 0x12, 0x02, 0x12, 0x03, 0x27, 0x19, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x00, 0x02, 0x13, 0x12, 0x03, 0x28, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, - 0x13, 0x01, 0x12, 0x03, 0x28, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x13, 0x02, - 0x12, 0x03, 0x28, 0x19, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x00, 0x02, 0x14, 0x12, 0x03, 0x29, - 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x14, 0x01, 0x12, 0x03, 0x29, 0x04, 0x1e, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x00, 0x02, 0x14, 0x02, 0x12, 0x03, 0x29, 0x21, 0x25, 0x0a, 0x0a, - 0x0a, 0x02, 0x04, 0x01, 0x12, 0x04, 0x2c, 0x00, 0x38, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x01, - 0x01, 0x12, 0x03, 0x2c, 0x08, 0x13, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x00, 0x12, 0x03, - 0x2d, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x04, 0x12, 0x03, 0x2d, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x05, 0x12, 0x03, 0x2d, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x00, 0x01, 0x12, 0x03, 0x2d, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x00, 0x03, 0x12, 0x03, 0x2d, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x01, 0x02, 0x01, 0x12, 0x03, 0x2e, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, - 0x04, 0x12, 0x03, 0x2e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x05, 0x12, - 0x03, 0x2e, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x01, 0x12, 0x03, 0x2e, - 0x12, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x01, 0x03, 0x12, 0x03, 0x2e, 0x1e, 0x21, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x02, 0x12, 0x03, 0x2f, 0x04, 0x21, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x02, 0x04, 0x12, 0x03, 0x2f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x01, 0x02, 0x02, 0x05, 0x12, 0x03, 0x2f, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, - 0x02, 0x01, 0x12, 0x03, 0x2f, 0x12, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x02, 0x03, - 0x12, 0x03, 0x2f, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x03, 0x12, 0x03, 0x30, - 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x04, 0x12, 0x03, 0x30, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x05, 0x12, 0x03, 0x30, 0x0d, 0x13, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x01, 0x02, 0x03, 0x01, 0x12, 0x03, 0x30, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x01, 0x02, 0x03, 0x03, 0x12, 0x03, 0x30, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, - 0x02, 0x04, 0x12, 0x03, 0x31, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x04, 0x04, - 0x12, 0x03, 0x31, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x04, 0x05, 0x12, 0x03, - 0x31, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x04, 0x01, 0x12, 0x03, 0x31, 0x14, - 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x04, 0x03, 0x12, 0x03, 0x31, 0x1b, 0x1e, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x05, 0x12, 0x03, 0x32, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x01, 0x02, 0x05, 0x04, 0x12, 0x03, 0x32, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, - 0x02, 0x05, 0x05, 0x12, 0x03, 0x32, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x05, - 0x01, 0x12, 0x03, 0x32, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x05, 0x03, 0x12, - 0x03, 0x32, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x06, 0x12, 0x03, 0x33, 0x04, - 0x2a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x06, 0x04, 0x12, 0x03, 0x33, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x06, 0x05, 0x12, 0x03, 0x33, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x01, 0x02, 0x06, 0x01, 0x12, 0x03, 0x33, 0x13, 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x01, 0x02, 0x06, 0x03, 0x12, 0x03, 0x33, 0x26, 0x29, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, - 0x07, 0x12, 0x03, 0x34, 0x04, 0x29, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x04, 0x12, - 0x03, 0x34, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x05, 0x12, 0x03, 0x34, - 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x01, 0x12, 0x03, 0x34, 0x14, 0x21, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x07, 0x03, 0x12, 0x03, 0x34, 0x24, 0x28, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x01, 0x02, 0x08, 0x12, 0x03, 0x35, 0x04, 0x2c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x01, 0x02, 0x08, 0x04, 0x12, 0x03, 0x35, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, - 0x08, 0x06, 0x12, 0x03, 0x35, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x08, 0x01, - 0x12, 0x03, 0x35, 0x18, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x08, 0x03, 0x12, 0x03, - 0x35, 0x27, 0x2b, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x09, 0x12, 0x03, 0x36, 0x04, 0x30, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x09, 0x04, 0x12, 0x03, 0x36, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x01, 0x02, 0x09, 0x05, 0x12, 0x03, 0x36, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x01, 0x02, 0x09, 0x01, 0x12, 0x03, 0x36, 0x14, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, - 0x02, 0x09, 0x03, 0x12, 0x03, 0x36, 0x2b, 0x2f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x01, 0x02, 0x0a, - 0x12, 0x03, 0x37, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x0a, 0x04, 0x12, 0x03, - 0x37, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x0a, 0x06, 0x12, 0x03, 0x37, 0x0d, - 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x37, 0x16, 0x1e, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x01, 0x02, 0x0a, 0x03, 0x12, 0x03, 0x37, 0x21, 0x25, 0x0a, 0x0a, 0x0a, - 0x02, 0x04, 0x02, 0x12, 0x04, 0x3a, 0x00, 0x3e, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x02, 0x01, - 0x12, 0x03, 0x3a, 0x08, 0x12, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x00, 0x12, 0x03, 0x3b, - 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x04, 0x12, 0x03, 0x3b, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x06, 0x12, 0x03, 0x3b, 0x0d, 0x1b, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x3b, 0x1c, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x00, 0x03, 0x12, 0x03, 0x3b, 0x22, 0x25, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x02, - 0x02, 0x01, 0x12, 0x03, 0x3c, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x04, - 0x12, 0x03, 0x3c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x05, 0x12, 0x03, - 0x3c, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x01, 0x12, 0x03, 0x3c, 0x13, - 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x01, 0x03, 0x12, 0x03, 0x3c, 0x1e, 0x21, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x02, 0x02, 0x02, 0x12, 0x03, 0x3d, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x02, 0x02, 0x02, 0x04, 0x12, 0x03, 0x3d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, - 0x02, 0x02, 0x05, 0x12, 0x03, 0x3d, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, - 0x01, 0x12, 0x03, 0x3d, 0x14, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x02, 0x02, 0x02, 0x03, 0x12, - 0x03, 0x3d, 0x22, 0x25, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x01, 0x12, 0x04, 0x40, 0x00, 0x4f, 0x01, - 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x01, 0x01, 0x12, 0x03, 0x40, 0x05, 0x13, 0x0a, 0x0b, 0x0a, 0x04, - 0x05, 0x01, 0x02, 0x00, 0x12, 0x03, 0x41, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, - 0x00, 0x01, 0x12, 0x03, 0x41, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x00, 0x02, - 0x12, 0x03, 0x41, 0x19, 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x01, 0x12, 0x03, 0x42, - 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x01, 0x01, 0x12, 0x03, 0x42, 0x04, 0x10, - 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x01, 0x02, 0x12, 0x03, 0x42, 0x13, 0x16, 0x0a, 0x0b, - 0x0a, 0x04, 0x05, 0x01, 0x02, 0x02, 0x12, 0x03, 0x43, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x01, 0x02, 0x02, 0x01, 0x12, 0x03, 0x43, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, - 0x02, 0x02, 0x12, 0x03, 0x43, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x03, 0x12, - 0x03, 0x44, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x03, 0x01, 0x12, 0x03, 0x44, - 0x04, 0x0f, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x03, 0x02, 0x12, 0x03, 0x44, 0x12, 0x15, - 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x04, 0x12, 0x03, 0x45, 0x04, 0x1b, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x01, 0x02, 0x04, 0x01, 0x12, 0x03, 0x45, 0x04, 0x14, 0x0a, 0x0c, 0x0a, 0x05, 0x05, - 0x01, 0x02, 0x04, 0x02, 0x12, 0x03, 0x45, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, - 0x05, 0x12, 0x03, 0x46, 0x04, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x05, 0x01, 0x12, - 0x03, 0x46, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x05, 0x02, 0x12, 0x03, 0x46, - 0x16, 0x19, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x06, 0x12, 0x03, 0x47, 0x04, 0x18, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x06, 0x01, 0x12, 0x03, 0x47, 0x04, 0x11, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x01, 0x02, 0x06, 0x02, 0x12, 0x03, 0x47, 0x14, 0x17, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x01, 0x02, 0x07, 0x12, 0x03, 0x48, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x07, - 0x01, 0x12, 0x03, 0x48, 0x04, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x07, 0x02, 0x12, - 0x03, 0x48, 0x13, 0x16, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x08, 0x12, 0x03, 0x49, 0x04, - 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x08, 0x01, 0x12, 0x03, 0x49, 0x04, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x08, 0x02, 0x12, 0x03, 0x49, 0x16, 0x19, 0x0a, 0x0b, 0x0a, - 0x04, 0x05, 0x01, 0x02, 0x09, 0x12, 0x03, 0x4a, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, - 0x02, 0x09, 0x01, 0x12, 0x03, 0x4a, 0x04, 0x10, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x09, - 0x02, 0x12, 0x03, 0x4a, 0x13, 0x16, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x0a, 0x12, 0x03, - 0x4b, 0x04, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x0a, 0x01, 0x12, 0x03, 0x4b, 0x04, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x0a, 0x02, 0x12, 0x03, 0x4b, 0x16, 0x19, 0x0a, - 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x0b, 0x12, 0x03, 0x4c, 0x04, 0x12, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x01, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x4c, 0x04, 0x0b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, - 0x02, 0x0b, 0x02, 0x12, 0x03, 0x4c, 0x0e, 0x11, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x0c, - 0x12, 0x03, 0x4d, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x0c, 0x01, 0x12, 0x03, - 0x4d, 0x04, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x01, 0x02, 0x0c, 0x02, 0x12, 0x03, 0x4d, 0x1a, - 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x01, 0x02, 0x0d, 0x12, 0x03, 0x4e, 0x04, 0x13, 0x0a, 0x0c, - 0x0a, 0x05, 0x05, 0x01, 0x02, 0x0d, 0x01, 0x12, 0x03, 0x4e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x05, 0x01, 0x02, 0x0d, 0x02, 0x12, 0x03, 0x4e, 0x0f, 0x12, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x03, - 0x12, 0x04, 0x51, 0x00, 0x53, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x03, 0x01, 0x12, 0x03, 0x51, - 0x08, 0x0f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x03, 0x02, 0x00, 0x12, 0x03, 0x52, 0x04, 0x21, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, 0x00, 0x04, 0x12, 0x03, 0x52, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x03, 0x02, 0x00, 0x05, 0x12, 0x03, 0x52, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x03, 0x02, 0x00, 0x01, 0x12, 0x03, 0x52, 0x14, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x03, 0x02, - 0x00, 0x03, 0x12, 0x03, 0x52, 0x1d, 0x20, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x04, 0x12, 0x04, 0x55, - 0x00, 0x65, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x04, 0x01, 0x12, 0x03, 0x55, 0x08, 0x0d, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x00, 0x12, 0x03, 0x56, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x04, 0x02, 0x00, 0x04, 0x12, 0x03, 0x56, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, - 0x02, 0x00, 0x05, 0x12, 0x03, 0x56, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, - 0x01, 0x12, 0x03, 0x56, 0x14, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x00, 0x03, 0x12, - 0x03, 0x56, 0x22, 0x25, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x01, 0x12, 0x03, 0x57, 0x04, - 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x04, 0x12, 0x03, 0x57, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x01, 0x05, 0x12, 0x03, 0x57, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x04, 0x02, 0x01, 0x01, 0x12, 0x03, 0x57, 0x14, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x04, 0x02, 0x01, 0x03, 0x12, 0x03, 0x57, 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, - 0x02, 0x12, 0x03, 0x58, 0x04, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x04, 0x12, - 0x03, 0x58, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x05, 0x12, 0x03, 0x58, - 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x01, 0x12, 0x03, 0x58, 0x14, 0x1f, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x02, 0x03, 0x12, 0x03, 0x58, 0x22, 0x25, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x04, 0x02, 0x03, 0x12, 0x03, 0x59, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x04, 0x02, 0x03, 0x04, 0x12, 0x03, 0x59, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x03, 0x06, 0x12, 0x03, 0x59, 0x0d, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x03, 0x01, - 0x12, 0x03, 0x59, 0x18, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x03, 0x03, 0x12, 0x03, - 0x59, 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x04, 0x12, 0x03, 0x5a, 0x04, 0x2f, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x04, 0x04, 0x12, 0x03, 0x5a, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x04, 0x02, 0x04, 0x05, 0x12, 0x03, 0x5a, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x04, 0x02, 0x04, 0x01, 0x12, 0x03, 0x5a, 0x14, 0x28, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, - 0x02, 0x04, 0x03, 0x12, 0x03, 0x5a, 0x2b, 0x2e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x05, - 0x12, 0x03, 0x5b, 0x04, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x05, 0x04, 0x12, 0x03, - 0x5b, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x05, 0x05, 0x12, 0x03, 0x5b, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x05, 0x01, 0x12, 0x03, 0x5b, 0x14, 0x27, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x05, 0x03, 0x12, 0x03, 0x5b, 0x2a, 0x2d, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x04, 0x02, 0x06, 0x12, 0x03, 0x5c, 0x04, 0x20, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, - 0x02, 0x06, 0x04, 0x12, 0x03, 0x5c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x06, - 0x05, 0x12, 0x03, 0x5c, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x06, 0x01, 0x12, - 0x03, 0x5c, 0x12, 0x19, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x06, 0x03, 0x12, 0x03, 0x5c, - 0x1c, 0x1f, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x07, 0x12, 0x03, 0x5d, 0x04, 0x1f, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x07, 0x04, 0x12, 0x03, 0x5d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x04, 0x02, 0x07, 0x05, 0x12, 0x03, 0x5d, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x04, 0x02, 0x07, 0x01, 0x12, 0x03, 0x5d, 0x12, 0x18, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x07, 0x03, 0x12, 0x03, 0x5d, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x08, 0x12, - 0x03, 0x5e, 0x04, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x08, 0x04, 0x12, 0x03, 0x5e, - 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x08, 0x05, 0x12, 0x03, 0x5e, 0x0d, 0x13, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x08, 0x01, 0x12, 0x03, 0x5e, 0x14, 0x26, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x04, 0x02, 0x08, 0x03, 0x12, 0x03, 0x5e, 0x29, 0x2d, 0x0a, 0x0b, 0x0a, 0x04, - 0x04, 0x04, 0x02, 0x09, 0x12, 0x03, 0x5f, 0x04, 0x2e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x09, 0x04, 0x12, 0x03, 0x5f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x09, 0x05, - 0x12, 0x03, 0x5f, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x09, 0x01, 0x12, 0x03, - 0x5f, 0x14, 0x26, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x09, 0x03, 0x12, 0x03, 0x5f, 0x29, - 0x2d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x0a, 0x12, 0x03, 0x60, 0x04, 0x2f, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0a, 0x04, 0x12, 0x03, 0x60, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x04, 0x02, 0x0a, 0x05, 0x12, 0x03, 0x60, 0x0d, 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, - 0x02, 0x0a, 0x01, 0x12, 0x03, 0x60, 0x12, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0a, - 0x03, 0x12, 0x03, 0x60, 0x2a, 0x2e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x0b, 0x12, 0x03, - 0x61, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0b, 0x04, 0x12, 0x03, 0x61, 0x04, - 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0b, 0x05, 0x12, 0x03, 0x61, 0x0d, 0x13, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0b, 0x01, 0x12, 0x03, 0x61, 0x14, 0x17, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x04, 0x02, 0x0b, 0x03, 0x12, 0x03, 0x61, 0x1a, 0x1e, 0x0a, 0x0b, 0x0a, 0x04, 0x04, - 0x04, 0x02, 0x0c, 0x12, 0x03, 0x62, 0x04, 0x2f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0c, - 0x04, 0x12, 0x03, 0x62, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0c, 0x05, 0x12, - 0x03, 0x62, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0c, 0x01, 0x12, 0x03, 0x62, - 0x14, 0x27, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0c, 0x03, 0x12, 0x03, 0x62, 0x2a, 0x2e, - 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x0d, 0x12, 0x03, 0x63, 0x04, 0x23, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x04, 0x02, 0x0d, 0x04, 0x12, 0x03, 0x63, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x04, 0x02, 0x0d, 0x06, 0x12, 0x03, 0x63, 0x0d, 0x15, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, - 0x0d, 0x01, 0x12, 0x03, 0x63, 0x16, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0d, 0x03, - 0x12, 0x03, 0x63, 0x1e, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x04, 0x02, 0x0e, 0x12, 0x03, 0x64, - 0x04, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0e, 0x04, 0x12, 0x03, 0x64, 0x04, 0x0c, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0e, 0x06, 0x12, 0x03, 0x64, 0x0d, 0x0f, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x04, 0x02, 0x0e, 0x01, 0x12, 0x03, 0x64, 0x10, 0x12, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x04, 0x02, 0x0e, 0x03, 0x12, 0x03, 0x64, 0x15, 0x19, 0x0a, 0x0a, 0x0a, 0x02, 0x05, 0x02, - 0x12, 0x04, 0x67, 0x00, 0x6c, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x05, 0x02, 0x01, 0x12, 0x03, 0x67, - 0x05, 0x0f, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x00, 0x12, 0x03, 0x68, 0x04, 0x1a, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x00, 0x01, 0x12, 0x03, 0x68, 0x04, 0x13, 0x0a, 0x0c, 0x0a, - 0x05, 0x05, 0x02, 0x02, 0x00, 0x02, 0x12, 0x03, 0x68, 0x16, 0x19, 0x0a, 0x0b, 0x0a, 0x04, 0x05, - 0x02, 0x02, 0x01, 0x12, 0x03, 0x69, 0x04, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x01, - 0x01, 0x12, 0x03, 0x69, 0x04, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x01, 0x02, 0x12, - 0x03, 0x69, 0x16, 0x19, 0x0a, 0x0b, 0x0a, 0x04, 0x05, 0x02, 0x02, 0x02, 0x12, 0x03, 0x6a, 0x04, - 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x02, 0x01, 0x12, 0x03, 0x6a, 0x04, 0x14, 0x0a, - 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x02, 0x02, 0x12, 0x03, 0x6a, 0x17, 0x1a, 0x0a, 0x0b, 0x0a, - 0x04, 0x05, 0x02, 0x02, 0x03, 0x12, 0x03, 0x6b, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, - 0x02, 0x03, 0x01, 0x12, 0x03, 0x6b, 0x04, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x05, 0x02, 0x02, 0x03, - 0x02, 0x12, 0x03, 0x6b, 0x19, 0x1c, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x05, 0x12, 0x04, 0x6e, 0x00, - 0x73, 0x01, 0x0a, 0x0a, 0x0a, 0x03, 0x04, 0x05, 0x01, 0x12, 0x03, 0x6e, 0x08, 0x10, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x05, 0x02, 0x00, 0x12, 0x03, 0x6f, 0x04, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x05, 0x02, 0x00, 0x04, 0x12, 0x03, 0x6f, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, - 0x00, 0x05, 0x12, 0x03, 0x6f, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x01, - 0x12, 0x03, 0x6f, 0x13, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x00, 0x03, 0x12, 0x03, - 0x6f, 0x19, 0x1c, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x01, 0x12, 0x03, 0x70, 0x04, 0x1e, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x04, 0x12, 0x03, 0x70, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x05, 0x02, 0x01, 0x05, 0x12, 0x03, 0x70, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x05, 0x02, 0x01, 0x01, 0x12, 0x03, 0x70, 0x14, 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x01, 0x03, 0x12, 0x03, 0x70, 0x1a, 0x1d, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x05, 0x02, 0x02, - 0x12, 0x03, 0x71, 0x04, 0x1f, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x04, 0x12, 0x03, - 0x71, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x05, 0x12, 0x03, 0x71, 0x0d, - 0x11, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x01, 0x12, 0x03, 0x71, 0x12, 0x18, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x02, 0x03, 0x12, 0x03, 0x71, 0x1b, 0x1e, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x05, 0x02, 0x03, 0x12, 0x03, 0x72, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, - 0x02, 0x03, 0x04, 0x12, 0x03, 0x72, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, - 0x05, 0x12, 0x03, 0x72, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, 0x01, 0x12, - 0x03, 0x72, 0x14, 0x1b, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x05, 0x02, 0x03, 0x03, 0x12, 0x03, 0x72, - 0x1e, 0x21, 0x0a, 0x0a, 0x0a, 0x02, 0x04, 0x06, 0x12, 0x04, 0x75, 0x00, 0x7f, 0x01, 0x0a, 0x0a, - 0x0a, 0x03, 0x04, 0x06, 0x01, 0x12, 0x03, 0x75, 0x08, 0x0a, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, - 0x02, 0x00, 0x12, 0x03, 0x76, 0x04, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x04, - 0x12, 0x03, 0x76, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x05, 0x12, 0x03, - 0x76, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x01, 0x12, 0x03, 0x76, 0x13, - 0x17, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x00, 0x03, 0x12, 0x03, 0x76, 0x1a, 0x1d, 0x0a, - 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x01, 0x12, 0x03, 0x77, 0x04, 0x21, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x01, 0x04, 0x12, 0x03, 0x77, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x01, 0x05, 0x12, 0x03, 0x77, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, - 0x01, 0x12, 0x03, 0x77, 0x13, 0x1a, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x01, 0x03, 0x12, - 0x03, 0x77, 0x1d, 0x20, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x02, 0x12, 0x03, 0x78, 0x04, - 0x23, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x04, 0x12, 0x03, 0x78, 0x04, 0x0c, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x02, 0x05, 0x12, 0x03, 0x78, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x02, 0x01, 0x12, 0x03, 0x78, 0x13, 0x1c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x02, 0x03, 0x12, 0x03, 0x78, 0x1f, 0x22, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, - 0x03, 0x12, 0x03, 0x79, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x04, 0x12, - 0x03, 0x79, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x05, 0x12, 0x03, 0x79, - 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x01, 0x12, 0x03, 0x79, 0x13, 0x1b, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x03, 0x03, 0x12, 0x03, 0x79, 0x1e, 0x21, 0x0a, 0x0b, - 0x0a, 0x04, 0x04, 0x06, 0x02, 0x04, 0x12, 0x03, 0x7a, 0x04, 0x24, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x04, 0x04, 0x12, 0x03, 0x7a, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x04, 0x05, 0x12, 0x03, 0x7a, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x01, - 0x12, 0x03, 0x7a, 0x14, 0x1d, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x04, 0x03, 0x12, 0x03, - 0x7a, 0x20, 0x23, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x05, 0x12, 0x03, 0x7b, 0x04, 0x29, - 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x04, 0x12, 0x03, 0x7b, 0x04, 0x0c, 0x0a, 0x0c, - 0x0a, 0x05, 0x04, 0x06, 0x02, 0x05, 0x05, 0x12, 0x03, 0x7b, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, - 0x04, 0x06, 0x02, 0x05, 0x01, 0x12, 0x03, 0x7b, 0x14, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x05, 0x03, 0x12, 0x03, 0x7b, 0x25, 0x28, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x06, - 0x12, 0x03, 0x7c, 0x04, 0x22, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x04, 0x12, 0x03, - 0x7c, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x05, 0x12, 0x03, 0x7c, 0x0d, - 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x01, 0x12, 0x03, 0x7c, 0x14, 0x1b, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x06, 0x03, 0x12, 0x03, 0x7c, 0x1e, 0x21, 0x0a, 0x0b, 0x0a, - 0x04, 0x04, 0x06, 0x02, 0x07, 0x12, 0x03, 0x7d, 0x04, 0x25, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, - 0x02, 0x07, 0x04, 0x12, 0x03, 0x7d, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x07, - 0x05, 0x12, 0x03, 0x7d, 0x0d, 0x13, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x07, 0x01, 0x12, - 0x03, 0x7d, 0x14, 0x1e, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x07, 0x03, 0x12, 0x03, 0x7d, - 0x21, 0x24, 0x0a, 0x0b, 0x0a, 0x04, 0x04, 0x06, 0x02, 0x08, 0x12, 0x03, 0x7e, 0x04, 0x1d, 0x0a, - 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, 0x08, 0x04, 0x12, 0x03, 0x7e, 0x04, 0x0c, 0x0a, 0x0c, 0x0a, - 0x05, 0x04, 0x06, 0x02, 0x08, 0x05, 0x12, 0x03, 0x7e, 0x0d, 0x12, 0x0a, 0x0c, 0x0a, 0x05, 0x04, - 0x06, 0x02, 0x08, 0x01, 0x12, 0x03, 0x7e, 0x13, 0x16, 0x0a, 0x0c, 0x0a, 0x05, 0x04, 0x06, 0x02, - 0x08, 0x03, 0x12, 0x03, 0x7e, 0x19, 0x1c, 0x0a, 0x0c, 0x0a, 0x02, 0x04, 0x07, 0x12, 0x06, 0x81, - 0x01, 0x00, 0x84, 0x01, 0x01, 0x0a, 0x0b, 0x0a, 0x03, 0x04, 0x07, 0x01, 0x12, 0x04, 0x81, 0x01, - 0x08, 0x10, 0x0a, 0x0c, 0x0a, 0x04, 0x04, 0x07, 0x02, 0x00, 0x12, 0x04, 0x82, 0x01, 0x04, 0x1f, - 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x04, 0x12, 0x04, 0x82, 0x01, 0x04, 0x0c, 0x0a, - 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x05, 0x12, 0x04, 0x82, 0x01, 0x0d, 0x13, 0x0a, 0x0d, - 0x0a, 0x05, 0x04, 0x07, 0x02, 0x00, 0x01, 0x12, 0x04, 0x82, 0x01, 0x14, 0x18, 0x0a, 0x0d, 0x0a, - 0x05, 0x04, 0x07, 0x02, 0x00, 0x03, 0x12, 0x04, 0x82, 0x01, 0x1b, 0x1e, 0x0a, 0x0c, 0x0a, 0x04, - 0x04, 0x07, 0x02, 0x01, 0x12, 0x04, 0x83, 0x01, 0x04, 0x23, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, - 0x02, 0x01, 0x04, 0x12, 0x04, 0x83, 0x01, 0x04, 0x0c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, - 0x01, 0x05, 0x12, 0x04, 0x83, 0x01, 0x0d, 0x13, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, - 0x01, 0x12, 0x04, 0x83, 0x01, 0x14, 0x1c, 0x0a, 0x0d, 0x0a, 0x05, 0x04, 0x07, 0x02, 0x01, 0x03, - 0x12, 0x04, 0x83, 0x01, 0x1f, 0x22, -]; +static file_descriptor_proto_data: &'static [u8] = b"\ + \n\x0bspirc.proto\"\xfa\x03\n\x05Frame\x12\x18\n\x07version\x18\x01\x20\ + \x01(\rR\x07version\x12\x14\n\x05ident\x18\x02\x20\x01(\tR\x05ident\x12)\ + \n\x10protocol_version\x18\x03\x20\x01(\tR\x0fprotocolVersion\x12\x15\n\ + \x06seq_nr\x18\x04\x20\x01(\rR\x05seqNr\x12\x1e\n\x03typ\x18\x05\x20\x01\ + (\x0e2\x0c.MessageTypeR\x03typ\x12/\n\x0cdevice_state\x18\x07\x20\x01(\ + \x0b2\x0c.DeviceStateR\x0bdeviceState\x12\"\n\x07goodbye\x18\x0b\x20\x01\ + (\x0b2\x08.GoodbyeR\x07goodbye\x12\x1c\n\x05state\x18\x0c\x20\x01(\x0b2\ + \x06.StateR\x05state\x12\x1a\n\x08position\x18\r\x20\x01(\rR\x08position\ + \x12\x16\n\x06volume\x18\x0e\x20\x01(\rR\x06volume\x12&\n\x0fstate_updat\ + e_id\x18\x11\x20\x01(\x03R\rstateUpdateId\x12\x1c\n\trecipient\x18\x12\ + \x20\x03(\tR\trecipient\x120\n\x14context_player_state\x18\x13\x20\x01(\ + \x0cR\x12contextPlayerState\x12\x19\n\x08new_name\x18\x14\x20\x01(\tR\ + \x07newName\x12%\n\x08metadata\x18\x19\x20\x01(\x0b2\t.MetadataR\x08meta\ + data\"\x88\x03\n\x0bDeviceState\x12\x1d\n\nsw_version\x18\x01\x20\x01(\t\ + R\tswVersion\x12\x1b\n\tis_active\x18\n\x20\x01(\x08R\x08isActive\x12\ + \x19\n\x08can_play\x18\x0b\x20\x01(\x08R\x07canPlay\x12\x16\n\x06volume\ + \x18\x0c\x20\x01(\rR\x06volume\x12\x12\n\x04name\x18\r\x20\x01(\tR\x04na\ + me\x12\x1d\n\nerror_code\x18\x0e\x20\x01(\rR\terrorCode\x12(\n\x10became\ + _active_at\x18\x0f\x20\x01(\x03R\x0ebecameActiveAt\x12#\n\rerror_message\ + \x18\x10\x20\x01(\tR\x0cerrorMessage\x12/\n\x0ccapabilities\x18\x11\x20\ + \x03(\x0b2\x0b.CapabilityR\x0ccapabilities\x120\n\x14context_player_erro\ + r\x18\x14\x20\x01(\tR\x12contextPlayerError\x12%\n\x08metadata\x18\x19\ + \x20\x03(\x0b2\t.MetadataR\x08metadata\"m\n\nCapability\x12!\n\x03typ\ + \x18\x01\x20\x01(\x0e2\x0f.CapabilityTypeR\x03typ\x12\x1a\n\x08intValue\ + \x18\x02\x20\x03(\x03R\x08intValue\x12\x20\n\x0bstringValue\x18\x03\x20\ + \x03(\tR\x0bstringValue\"!\n\x07Goodbye\x12\x16\n\x06reason\x18\x01\x20\ + \x01(\tR\x06reason\"\xa1\x04\n\x05State\x12\x1f\n\x0bcontext_uri\x18\x02\ + \x20\x01(\tR\ncontextUri\x12\x14\n\x05index\x18\x03\x20\x01(\rR\x05index\ + \x12\x1f\n\x0bposition_ms\x18\x04\x20\x01(\rR\npositionMs\x12#\n\x06stat\ + us\x18\x05\x20\x01(\x0e2\x0b.PlayStatusR\x06status\x120\n\x14position_me\ + asured_at\x18\x07\x20\x01(\x04R\x12positionMeasuredAt\x12/\n\x13context_\ + description\x18\x08\x20\x01(\tR\x12contextDescription\x12\x18\n\x07shuff\ + le\x18\r\x20\x01(\x08R\x07shuffle\x12\x16\n\x06repeat\x18\x0e\x20\x01(\ + \x08R\x06repeat\x12,\n\x12last_command_ident\x18\x14\x20\x01(\tR\x10last\ + CommandIdent\x12,\n\x12last_command_msgid\x18\x15\x20\x01(\rR\x10lastCom\ + mandMsgid\x122\n\x15playing_from_fallback\x18\x18\x20\x01(\x08R\x13playi\ + ngFromFallback\x12\x10\n\x03row\x18\x19\x20\x01(\rR\x03row\x12.\n\x13pla\ + ying_track_index\x18\x1a\x20\x01(\rR\x11playingTrackIndex\x12\x1f\n\x05t\ + rack\x18\x1b\x20\x03(\x0b2\t.TrackRefR\x05track\x12\x13\n\x02ad\x18\x1c\ + \x20\x01(\x0b2\x03.AdR\x02ad\"`\n\x08TrackRef\x12\x10\n\x03gid\x18\x01\ + \x20\x01(\x0cR\x03gid\x12\x10\n\x03uri\x18\x02\x20\x01(\tR\x03uri\x12\ + \x16\n\x06queued\x18\x03\x20\x01(\x08R\x06queued\x12\x18\n\x07context\ + \x18\x04\x20\x01(\tR\x07context\"\xfa\x01\n\x02Ad\x12\x12\n\x04next\x18\ + \x01\x20\x01(\x05R\x04next\x12\x17\n\x07ogg_fid\x18\x02\x20\x01(\x0cR\ + \x06oggFid\x12\x1b\n\timage_fid\x18\x03\x20\x01(\x0cR\x08imageFid\x12\ + \x1a\n\x08duration\x18\x04\x20\x01(\x05R\x08duration\x12\x1b\n\tclick_ur\ + l\x18\x05\x20\x01(\tR\x08clickUrl\x12%\n\x0eimpression_url\x18\x06\x20\ + \x01(\tR\rimpressionUrl\x12\x18\n\x07product\x18\x07\x20\x01(\tR\x07prod\ + uct\x12\x1e\n\nadvertiser\x18\x08\x20\x01(\tR\nadvertiser\x12\x10\n\x03g\ + id\x18\t\x20\x01(\x0cR\x03gid\":\n\x08Metadata\x12\x12\n\x04type\x18\x01\ + \x20\x01(\tR\x04type\x12\x1a\n\x08metadata\x18\x02\x20\x01(\tR\x08metada\ + ta*\x8d\x04\n\x0bMessageType\x12\x15\n\x11kMessageTypeHello\x10\x01\x12\ + \x17\n\x13kMessageTypeGoodbye\x10\x02\x12\x15\n\x11kMessageTypeProbe\x10\ + \x03\x12\x16\n\x12kMessageTypeNotify\x10\n\x12\x14\n\x10kMessageTypeLoad\ + \x10\x14\x12\x14\n\x10kMessageTypePlay\x10\x15\x12\x15\n\x11kMessageType\ + Pause\x10\x16\x12\x19\n\x15kMessageTypePlayPause\x10\x17\x12\x14\n\x10kM\ + essageTypeSeek\x10\x18\x12\x14\n\x10kMessageTypePrev\x10\x19\x12\x14\n\ + \x10kMessageTypeNext\x10\x1a\x12\x16\n\x12kMessageTypeVolume\x10\x1b\x12\ + \x17\n\x13kMessageTypeShuffle\x10\x1c\x12\x16\n\x12kMessageTypeRepeat\ + \x10\x1d\x12\x1a\n\x16kMessageTypeVolumeDown\x10\x1f\x12\x18\n\x14kMessa\ + geTypeVolumeUp\x10\x20\x12\x17\n\x13kMessageTypeReplace\x10!\x12\x16\n\ + \x12kMessageTypeLogout\x10\"\x12\x16\n\x12kMessageTypeAction\x10#\x12\ + \x16\n\x12kMessageTypeRename\x10$\x12\x1f\n\x1akMessageTypeUpdateMetadat\ + a\x10\x80\x01*\xb2\x02\n\x0eCapabilityType\x12\x16\n\x12kSupportedContex\ + ts\x10\x01\x12\x10\n\x0ckCanBePlayer\x10\x02\x12\x14\n\x10kRestrictToLoc\ + al\x10\x03\x12\x0f\n\x0bkDeviceType\x10\x04\x12\x14\n\x10kGaiaEqConnectI\ + d\x10\x05\x12\x13\n\x0fkSupportsLogout\x10\x06\x12\x11\n\rkIsObservable\ + \x10\x07\x12\x10\n\x0ckVolumeSteps\x10\x08\x12\x13\n\x0fkSupportedTypes\ + \x10\t\x12\x10\n\x0ckCommandAcks\x10\n\x12\x13\n\x0fkSupportsRename\x10\ + \x0b\x12\x0b\n\x07kHidden\x10\x0c\x12\x17\n\x13kSupportsPlaylistV2\x10\r\ + \x12\x1d\n\x19kSupportsExternalEpisodes\x10\x0e*d\n\nPlayStatus\x12\x13\ + \n\x0fkPlayStatusStop\x10\0\x12\x13\n\x0fkPlayStatusPlay\x10\x01\x12\x14\ + \n\x10kPlayStatusPause\x10\x02\x12\x16\n\x12kPlayStatusLoading\x10\x03\ +"; static mut file_descriptor_proto_lazy: ::protobuf::lazy::Lazy<::protobuf::descriptor::FileDescriptorProto> = ::protobuf::lazy::Lazy { lock: ::protobuf::lazy::ONCE_INIT, diff --git a/src/main.rs b/src/main.rs index 4427afbe..06e8d098 100644 --- a/src/main.rs +++ b/src/main.rs @@ -7,6 +7,7 @@ extern crate log; extern crate rpassword; extern crate tokio_core; extern crate tokio_io; +extern crate tokio_process; extern crate tokio_signal; extern crate url; extern crate sha1; @@ -127,6 +128,7 @@ fn setup(args: &[String]) -> Setup { .optopt("u", "username", "Username to sign in with", "USERNAME") .optopt("p", "password", "Password", "PASSWORD") .optopt("", "proxy", "HTTP proxy to use when connecting", "PROXY") + .optopt("", "ap-port", "Connect to AP with specified port. If no AP with that port are present fallback AP will be used. Available ports are usually 80, 443 and 4070", "AP_PORT") .optflag("", "disable-discovery", "Disable discovery mode") .optopt( "", @@ -253,20 +255,23 @@ fn setup(args: &[String]) -> Setup { proxy: matches.opt_str("proxy").or(std::env::var("http_proxy").ok()).map( |s| { match Url::parse(&s) { - Ok(url) => { - if url.host().is_none() || url.port().is_none() { - panic!("Invalid proxy url, only urls on the format \"http://host:port\" are allowed"); - } + Ok(url) => { + if url.host().is_none() || url.port().is_none() { + panic!("Invalid proxy url, only urls on the format \"http://host:port\" are allowed"); + } - if url.scheme() != "http" { - panic!("Only unsecure http:// proxies are supported"); + if url.scheme() != "http" { + panic!("Only unsecure http:// proxies are supported"); + } + url + }, + Err(err) => panic!("Invalid proxy url: {}, only urls on the format \"http://host:port\" are allowed", err) } - url - }, - Err(err) => panic!("Invalid proxy url: {}, only urls on the format \"http://host:port\" are allowed", err) - } }, ), + ap_port: matches + .opt_str("ap-port") + .map(|port| port.parse::().expect("Invalid port")), } }; @@ -460,7 +465,15 @@ impl Future for Main { if let Some(ref mut player_event_channel) = self.player_event_channel { if let Async::Ready(Some(event)) = player_event_channel.poll().unwrap() { if let Some(ref program) = self.player_event_program { - run_program_on_events(event, program); + let child = run_program_on_events(event, program) + .expect("program failed to start") + .map(|status| if !status.success() { + error!("child exited with status {:?}", status.code()); + }) + .map_err(|e| error!("failed to wait on child process: {}", e)); + + self.handle.spawn(child); + } } } diff --git a/src/player_event_handler.rs b/src/player_event_handler.rs index b6a653dd..1e682b98 100644 --- a/src/player_event_handler.rs +++ b/src/player_event_handler.rs @@ -1,18 +1,19 @@ use librespot::playback::player::PlayerEvent; +use tokio_process::{Child, CommandExt}; use std::collections::HashMap; +use std::io; use std::process::Command; -fn run_program(program: &str, env_vars: HashMap<&str, String>) { +fn run_program(program: &str, env_vars: HashMap<&str, String>) -> io::Result { let mut v: Vec<&str> = program.split_whitespace().collect(); info!("Running {:?} with environment variables {:?}", v, env_vars); Command::new(&v.remove(0)) .args(&v) .envs(env_vars.iter()) - .spawn() - .expect("program failed to start"); + .spawn_async() } -pub fn run_program_on_events(event: PlayerEvent, onevent: &str) { +pub fn run_program_on_events(event: PlayerEvent, onevent: &str) -> io::Result { let mut env_vars = HashMap::new(); match event { PlayerEvent::Changed { @@ -20,17 +21,17 @@ pub fn run_program_on_events(event: PlayerEvent, onevent: &str) { new_track_id, } => { env_vars.insert("PLAYER_EVENT", "change".to_string()); - env_vars.insert("OLD_TRACK_ID", old_track_id.to_base16()); - env_vars.insert("TRACK_ID", new_track_id.to_base16()); + env_vars.insert("OLD_TRACK_ID", old_track_id.to_base62()); + env_vars.insert("TRACK_ID", new_track_id.to_base62()); } PlayerEvent::Started { track_id } => { env_vars.insert("PLAYER_EVENT", "start".to_string()); - env_vars.insert("TRACK_ID", track_id.to_base16()); + env_vars.insert("TRACK_ID", track_id.to_base62()); } PlayerEvent::Stopped { track_id } => { env_vars.insert("PLAYER_EVENT", "stop".to_string()); - env_vars.insert("TRACK_ID", track_id.to_base16()); + env_vars.insert("TRACK_ID", track_id.to_base62()); } } - run_program(onevent, env_vars); + run_program(onevent, env_vars) }