Skip to main content

cloudflare_quick_tunnel/proto_gen/
tunnelrpc_capnp.rs

1// @generated by the capnpc-rust plugin to the Cap'n Proto schema compiler.
2// DO NOT EDIT.
3// source: tunnelrpc.capnp
4
5
6pub mod authentication {
7  #[derive(Copy, Clone)]
8  pub struct Owned(());
9  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
10  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
11  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
12  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
13
14  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
15  impl <> ::core::marker::Copy for Reader<'_,>  {}
16  impl <> ::core::clone::Clone for Reader<'_,>  {
17    fn clone(&self) -> Self { *self }
18  }
19
20  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
21    const TYPE_ID: u64 = _private::TYPE_ID;
22  }
23  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
24    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
25      Self { reader,  }
26    }
27  }
28
29  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
30    fn from(reader: Reader<'a,>) -> Self {
31      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
32    }
33  }
34
35  impl <> ::core::fmt::Debug for Reader<'_,>  {
36    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
37      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
38    }
39  }
40
41  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
42    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
43      ::core::result::Result::Ok(reader.get_struct(default)?.into())
44    }
45  }
46
47  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
48    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
49      self.reader
50    }
51  }
52
53  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
54    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
55      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
56    }
57  }
58
59  impl <'a,> Reader<'a,>  {
60    pub fn reborrow(&self) -> Reader<'_,> {
61      Self { .. *self }
62    }
63
64    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
65      self.reader.total_size()
66    }
67    #[inline]
68    pub fn get_key(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
69      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
70    }
71    #[inline]
72    pub fn has_key(&self) -> bool {
73      !self.reader.get_pointer_field(0).is_null()
74    }
75    #[inline]
76    pub fn get_email(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
77      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
78    }
79    #[inline]
80    pub fn has_email(&self) -> bool {
81      !self.reader.get_pointer_field(1).is_null()
82    }
83    #[inline]
84    pub fn get_origin_c_a_key(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
85      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
86    }
87    #[inline]
88    pub fn has_origin_c_a_key(&self) -> bool {
89      !self.reader.get_pointer_field(2).is_null()
90    }
91  }
92
93  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
94  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
95    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 3 };
96  }
97  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
98    const TYPE_ID: u64 = _private::TYPE_ID;
99  }
100  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
101    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
102      Self { builder,  }
103    }
104  }
105
106  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
107    fn from(builder: Builder<'a,>) -> Self {
108      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
109    }
110  }
111
112  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
113    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
114      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
115    }
116  }
117
118  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
119    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
120      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
121    }
122    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
123      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
124    }
125  }
126
127  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
128    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
129  }
130
131  impl <'a,> Builder<'a,>  {
132    pub fn into_reader(self) -> Reader<'a,> {
133      self.builder.into_reader().into()
134    }
135    pub fn reborrow(&mut self) -> Builder<'_,> {
136      Builder { builder: self.builder.reborrow() }
137    }
138    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
139      self.builder.as_reader().into()
140    }
141
142    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
143      self.builder.as_reader().total_size()
144    }
145    #[inline]
146    pub fn get_key(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
147      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
148    }
149    #[inline]
150    pub fn set_key(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
151      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
152    }
153    #[inline]
154    pub fn init_key(self, size: u32) -> ::capnp::text::Builder<'a> {
155      self.builder.get_pointer_field(0).init_text(size)
156    }
157    #[inline]
158    pub fn has_key(&self) -> bool {
159      !self.builder.is_pointer_field_null(0)
160    }
161    #[inline]
162    pub fn get_email(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
163      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
164    }
165    #[inline]
166    pub fn set_email(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
167      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
168    }
169    #[inline]
170    pub fn init_email(self, size: u32) -> ::capnp::text::Builder<'a> {
171      self.builder.get_pointer_field(1).init_text(size)
172    }
173    #[inline]
174    pub fn has_email(&self) -> bool {
175      !self.builder.is_pointer_field_null(1)
176    }
177    #[inline]
178    pub fn get_origin_c_a_key(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
179      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
180    }
181    #[inline]
182    pub fn set_origin_c_a_key(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
183      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false).unwrap()
184    }
185    #[inline]
186    pub fn init_origin_c_a_key(self, size: u32) -> ::capnp::text::Builder<'a> {
187      self.builder.get_pointer_field(2).init_text(size)
188    }
189    #[inline]
190    pub fn has_origin_c_a_key(&self) -> bool {
191      !self.builder.is_pointer_field_null(2)
192    }
193  }
194
195  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
196  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
197    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
198      Self { _typeless: typeless,  }
199    }
200  }
201  impl Pipeline  {
202  }
203  mod _private {
204    pub static ENCODED_NODE: [::capnp::Word; 64] = [
205      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
206      ::capnp::word(29, 237, 66, 13, 110, 239, 130, 192),
207      ::capnp::word(16, 0, 0, 0, 1, 0, 0, 0),
208      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
209      ::capnp::word(3, 0, 7, 0, 0, 0, 0, 0),
210      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
211      ::capnp::word(21, 0, 0, 0, 250, 0, 0, 0),
212      ::capnp::word(33, 0, 0, 0, 7, 0, 0, 0),
213      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
214      ::capnp::word(29, 0, 0, 0, 175, 0, 0, 0),
215      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
216      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
217      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
218      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
219      ::capnp::word(65, 117, 116, 104, 101, 110, 116, 105),
220      ::capnp::word(99, 97, 116, 105, 111, 110, 0, 0),
221      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
222      ::capnp::word(12, 0, 0, 0, 3, 0, 4, 0),
223      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
224      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
225      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
226      ::capnp::word(69, 0, 0, 0, 34, 0, 0, 0),
227      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
228      ::capnp::word(64, 0, 0, 0, 3, 0, 1, 0),
229      ::capnp::word(76, 0, 0, 0, 2, 0, 1, 0),
230      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
231      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
232      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
233      ::capnp::word(73, 0, 0, 0, 50, 0, 0, 0),
234      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
235      ::capnp::word(68, 0, 0, 0, 3, 0, 1, 0),
236      ::capnp::word(80, 0, 0, 0, 2, 0, 1, 0),
237      ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
238      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
239      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
240      ::capnp::word(77, 0, 0, 0, 98, 0, 0, 0),
241      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
242      ::capnp::word(76, 0, 0, 0, 3, 0, 1, 0),
243      ::capnp::word(88, 0, 0, 0, 2, 0, 1, 0),
244      ::capnp::word(107, 101, 121, 0, 0, 0, 0, 0),
245      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
246      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
247      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
248      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
249      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
250      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
251      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
252      ::capnp::word(101, 109, 97, 105, 108, 0, 0, 0),
253      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
254      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
255      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
256      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
257      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
258      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
259      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
260      ::capnp::word(111, 114, 105, 103, 105, 110, 67, 65),
261      ::capnp::word(75, 101, 121, 0, 0, 0, 0, 0),
262      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
263      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
264      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
265      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
266      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
267      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
268      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
269    ];
270    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
271      match index {
272        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
273        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
274        2 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
275        _ => panic!("invalid field index {}", index),
276      }
277    }
278    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
279      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
280    }
281    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
282      encoded_node: &ENCODED_NODE,
283      nonunion_members: NONUNION_MEMBERS,
284      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
285      members_by_name: MEMBERS_BY_NAME,
286    };
287    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2];
288    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
289    pub static MEMBERS_BY_NAME : &[u16] = &[1,0,2];
290    pub const TYPE_ID: u64 = 0xc082_ef6e_0d42_ed1d;
291  }
292}
293
294pub mod tunnel_registration {
295  #[derive(Copy, Clone)]
296  pub struct Owned(());
297  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
298  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
299  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
300  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
301
302  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
303  impl <> ::core::marker::Copy for Reader<'_,>  {}
304  impl <> ::core::clone::Clone for Reader<'_,>  {
305    fn clone(&self) -> Self { *self }
306  }
307
308  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
309    const TYPE_ID: u64 = _private::TYPE_ID;
310  }
311  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
312    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
313      Self { reader,  }
314    }
315  }
316
317  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
318    fn from(reader: Reader<'a,>) -> Self {
319      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
320    }
321  }
322
323  impl <> ::core::fmt::Debug for Reader<'_,>  {
324    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
325      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
326    }
327  }
328
329  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
330    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
331      ::core::result::Result::Ok(reader.get_struct(default)?.into())
332    }
333  }
334
335  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
336    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
337      self.reader
338    }
339  }
340
341  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
342    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
343      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
344    }
345  }
346
347  impl <'a,> Reader<'a,>  {
348    pub fn reborrow(&self) -> Reader<'_,> {
349      Self { .. *self }
350    }
351
352    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
353      self.reader.total_size()
354    }
355    #[inline]
356    pub fn get_err(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
357      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
358    }
359    #[inline]
360    pub fn has_err(&self) -> bool {
361      !self.reader.get_pointer_field(0).is_null()
362    }
363    #[inline]
364    pub fn get_url(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
365      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
366    }
367    #[inline]
368    pub fn has_url(&self) -> bool {
369      !self.reader.get_pointer_field(1).is_null()
370    }
371    #[inline]
372    pub fn get_log_lines(self) -> ::capnp::Result<::capnp::text_list::Reader<'a>> {
373      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
374    }
375    #[inline]
376    pub fn has_log_lines(&self) -> bool {
377      !self.reader.get_pointer_field(2).is_null()
378    }
379    #[inline]
380    pub fn get_permanent_failure(self) -> bool {
381      self.reader.get_bool_field(0)
382    }
383    #[inline]
384    pub fn get_tunnel_i_d(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
385      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(3), ::core::option::Option::None)
386    }
387    #[inline]
388    pub fn has_tunnel_i_d(&self) -> bool {
389      !self.reader.get_pointer_field(3).is_null()
390    }
391    #[inline]
392    pub fn get_retry_after_seconds(self) -> u16 {
393      self.reader.get_data_field::<u16>(1)
394    }
395    #[inline]
396    pub fn get_event_digest(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
397      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(4), ::core::option::Option::None)
398    }
399    #[inline]
400    pub fn has_event_digest(&self) -> bool {
401      !self.reader.get_pointer_field(4).is_null()
402    }
403    #[inline]
404    pub fn get_conn_digest(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
405      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(5), ::core::option::Option::None)
406    }
407    #[inline]
408    pub fn has_conn_digest(&self) -> bool {
409      !self.reader.get_pointer_field(5).is_null()
410    }
411  }
412
413  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
414  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
415    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 6 };
416  }
417  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
418    const TYPE_ID: u64 = _private::TYPE_ID;
419  }
420  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
421    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
422      Self { builder,  }
423    }
424  }
425
426  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
427    fn from(builder: Builder<'a,>) -> Self {
428      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
429    }
430  }
431
432  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
433    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
434      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
435    }
436  }
437
438  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
439    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
440      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
441    }
442    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
443      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
444    }
445  }
446
447  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
448    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
449  }
450
451  impl <'a,> Builder<'a,>  {
452    pub fn into_reader(self) -> Reader<'a,> {
453      self.builder.into_reader().into()
454    }
455    pub fn reborrow(&mut self) -> Builder<'_,> {
456      Builder { builder: self.builder.reborrow() }
457    }
458    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
459      self.builder.as_reader().into()
460    }
461
462    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
463      self.builder.as_reader().total_size()
464    }
465    #[inline]
466    pub fn get_err(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
467      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
468    }
469    #[inline]
470    pub fn set_err(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
471      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
472    }
473    #[inline]
474    pub fn init_err(self, size: u32) -> ::capnp::text::Builder<'a> {
475      self.builder.get_pointer_field(0).init_text(size)
476    }
477    #[inline]
478    pub fn has_err(&self) -> bool {
479      !self.builder.is_pointer_field_null(0)
480    }
481    #[inline]
482    pub fn get_url(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
483      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
484    }
485    #[inline]
486    pub fn set_url(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
487      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
488    }
489    #[inline]
490    pub fn init_url(self, size: u32) -> ::capnp::text::Builder<'a> {
491      self.builder.get_pointer_field(1).init_text(size)
492    }
493    #[inline]
494    pub fn has_url(&self) -> bool {
495      !self.builder.is_pointer_field_null(1)
496    }
497    #[inline]
498    pub fn get_log_lines(self) -> ::capnp::Result<::capnp::text_list::Builder<'a>> {
499      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
500    }
501    #[inline]
502    pub fn set_log_lines(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text_list::Owned>) -> ::capnp::Result<()> {
503      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false)
504    }
505    #[inline]
506    pub fn init_log_lines(self, size: u32) -> ::capnp::text_list::Builder<'a> {
507      ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(2), size)
508    }
509    #[inline]
510    pub fn has_log_lines(&self) -> bool {
511      !self.builder.is_pointer_field_null(2)
512    }
513    #[inline]
514    pub fn get_permanent_failure(self) -> bool {
515      self.builder.get_bool_field(0)
516    }
517    #[inline]
518    pub fn set_permanent_failure(&mut self, value: bool)  {
519      self.builder.set_bool_field(0, value);
520    }
521    #[inline]
522    pub fn get_tunnel_i_d(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
523      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(3), ::core::option::Option::None)
524    }
525    #[inline]
526    pub fn set_tunnel_i_d(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
527      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(3), value, false).unwrap()
528    }
529    #[inline]
530    pub fn init_tunnel_i_d(self, size: u32) -> ::capnp::text::Builder<'a> {
531      self.builder.get_pointer_field(3).init_text(size)
532    }
533    #[inline]
534    pub fn has_tunnel_i_d(&self) -> bool {
535      !self.builder.is_pointer_field_null(3)
536    }
537    #[inline]
538    pub fn get_retry_after_seconds(self) -> u16 {
539      self.builder.get_data_field::<u16>(1)
540    }
541    #[inline]
542    pub fn set_retry_after_seconds(&mut self, value: u16)  {
543      self.builder.set_data_field::<u16>(1, value);
544    }
545    #[inline]
546    pub fn get_event_digest(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
547      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(4), ::core::option::Option::None)
548    }
549    #[inline]
550    pub fn set_event_digest(&mut self, value: ::capnp::data::Reader<'_>)  {
551      self.builder.reborrow().get_pointer_field(4).set_data(value);
552    }
553    #[inline]
554    pub fn init_event_digest(self, size: u32) -> ::capnp::data::Builder<'a> {
555      self.builder.get_pointer_field(4).init_data(size)
556    }
557    #[inline]
558    pub fn has_event_digest(&self) -> bool {
559      !self.builder.is_pointer_field_null(4)
560    }
561    #[inline]
562    pub fn get_conn_digest(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
563      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(5), ::core::option::Option::None)
564    }
565    #[inline]
566    pub fn set_conn_digest(&mut self, value: ::capnp::data::Reader<'_>)  {
567      self.builder.reborrow().get_pointer_field(5).set_data(value);
568    }
569    #[inline]
570    pub fn init_conn_digest(self, size: u32) -> ::capnp::data::Builder<'a> {
571      self.builder.get_pointer_field(5).init_data(size)
572    }
573    #[inline]
574    pub fn has_conn_digest(&self) -> bool {
575      !self.builder.is_pointer_field_null(5)
576    }
577  }
578
579  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
580  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
581    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
582      Self { _typeless: typeless,  }
583    }
584  }
585  impl Pipeline  {
586  }
587  mod _private {
588    pub static ENCODED_NODE: [::capnp::Word; 151] = [
589      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
590      ::capnp::word(70, 158, 212, 26, 0, 15, 26, 244),
591      ::capnp::word(16, 0, 0, 0, 1, 0, 1, 0),
592      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
593      ::capnp::word(6, 0, 7, 0, 0, 0, 0, 0),
594      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
595      ::capnp::word(21, 0, 0, 0, 26, 1, 0, 0),
596      ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
597      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
598      ::capnp::word(33, 0, 0, 0, 199, 1, 0, 0),
599      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
600      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
601      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
602      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
603      ::capnp::word(84, 117, 110, 110, 101, 108, 82, 101),
604      ::capnp::word(103, 105, 115, 116, 114, 97, 116, 105),
605      ::capnp::word(111, 110, 0, 0, 0, 0, 0, 0),
606      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
607      ::capnp::word(32, 0, 0, 0, 3, 0, 4, 0),
608      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
609      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
610      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
611      ::capnp::word(209, 0, 0, 0, 34, 0, 0, 0),
612      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
613      ::capnp::word(204, 0, 0, 0, 3, 0, 1, 0),
614      ::capnp::word(216, 0, 0, 0, 2, 0, 1, 0),
615      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
616      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
617      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
618      ::capnp::word(213, 0, 0, 0, 34, 0, 0, 0),
619      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
620      ::capnp::word(208, 0, 0, 0, 3, 0, 1, 0),
621      ::capnp::word(220, 0, 0, 0, 2, 0, 1, 0),
622      ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
623      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
624      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
625      ::capnp::word(217, 0, 0, 0, 74, 0, 0, 0),
626      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
627      ::capnp::word(216, 0, 0, 0, 3, 0, 1, 0),
628      ::capnp::word(244, 0, 0, 0, 2, 0, 1, 0),
629      ::capnp::word(3, 0, 0, 0, 0, 0, 0, 0),
630      ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
631      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
632      ::capnp::word(241, 0, 0, 0, 138, 0, 0, 0),
633      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
634      ::capnp::word(244, 0, 0, 0, 3, 0, 1, 0),
635      ::capnp::word(0, 1, 0, 0, 2, 0, 1, 0),
636      ::capnp::word(4, 0, 0, 0, 3, 0, 0, 0),
637      ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
638      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
639      ::capnp::word(253, 0, 0, 0, 74, 0, 0, 0),
640      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
641      ::capnp::word(252, 0, 0, 0, 3, 0, 1, 0),
642      ::capnp::word(8, 1, 0, 0, 2, 0, 1, 0),
643      ::capnp::word(5, 0, 0, 0, 1, 0, 0, 0),
644      ::capnp::word(0, 0, 1, 0, 5, 0, 0, 0),
645      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
646      ::capnp::word(5, 1, 0, 0, 146, 0, 0, 0),
647      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
648      ::capnp::word(8, 1, 0, 0, 3, 0, 1, 0),
649      ::capnp::word(20, 1, 0, 0, 2, 0, 1, 0),
650      ::capnp::word(6, 0, 0, 0, 4, 0, 0, 0),
651      ::capnp::word(0, 0, 1, 0, 6, 0, 0, 0),
652      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
653      ::capnp::word(17, 1, 0, 0, 98, 0, 0, 0),
654      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
655      ::capnp::word(16, 1, 0, 0, 3, 0, 1, 0),
656      ::capnp::word(28, 1, 0, 0, 2, 0, 1, 0),
657      ::capnp::word(7, 0, 0, 0, 5, 0, 0, 0),
658      ::capnp::word(0, 0, 1, 0, 7, 0, 0, 0),
659      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
660      ::capnp::word(25, 1, 0, 0, 90, 0, 0, 0),
661      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
662      ::capnp::word(24, 1, 0, 0, 3, 0, 1, 0),
663      ::capnp::word(36, 1, 0, 0, 2, 0, 1, 0),
664      ::capnp::word(101, 114, 114, 0, 0, 0, 0, 0),
665      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
666      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
667      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
668      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
669      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
670      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
671      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
672      ::capnp::word(117, 114, 108, 0, 0, 0, 0, 0),
673      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
674      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
675      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
676      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
677      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
678      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
679      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
680      ::capnp::word(108, 111, 103, 76, 105, 110, 101, 115),
681      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
682      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
683      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
684      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
685      ::capnp::word(0, 0, 0, 0, 3, 0, 1, 0),
686      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
687      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
688      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
689      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
690      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
691      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
692      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
693      ::capnp::word(112, 101, 114, 109, 97, 110, 101, 110),
694      ::capnp::word(116, 70, 97, 105, 108, 117, 114, 101),
695      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
696      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
697      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
698      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
699      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
700      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
701      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
702      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
703      ::capnp::word(116, 117, 110, 110, 101, 108, 73, 68),
704      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
705      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
706      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
707      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
708      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
709      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
710      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
711      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
712      ::capnp::word(114, 101, 116, 114, 121, 65, 102, 116),
713      ::capnp::word(101, 114, 83, 101, 99, 111, 110, 100),
714      ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
715      ::capnp::word(7, 0, 0, 0, 0, 0, 0, 0),
716      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
717      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
718      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
719      ::capnp::word(7, 0, 0, 0, 0, 0, 0, 0),
720      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
721      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
722      ::capnp::word(101, 118, 101, 110, 116, 68, 105, 103),
723      ::capnp::word(101, 115, 116, 0, 0, 0, 0, 0),
724      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
725      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
726      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
727      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
728      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
729      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
730      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
731      ::capnp::word(99, 111, 110, 110, 68, 105, 103, 101),
732      ::capnp::word(115, 116, 0, 0, 0, 0, 0, 0),
733      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
734      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
735      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
736      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
737      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
738      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
739      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
740    ];
741    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
742      match index {
743        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
744        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
745        2 => <::capnp::text_list::Owned as ::capnp::introspect::Introspect>::introspect(),
746        3 => <bool as ::capnp::introspect::Introspect>::introspect(),
747        4 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
748        5 => <u16 as ::capnp::introspect::Introspect>::introspect(),
749        6 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
750        7 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
751        _ => panic!("invalid field index {}", index),
752      }
753    }
754    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
755      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
756    }
757    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
758      encoded_node: &ENCODED_NODE,
759      nonunion_members: NONUNION_MEMBERS,
760      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
761      members_by_name: MEMBERS_BY_NAME,
762    };
763    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4,5,6,7];
764    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
765    pub static MEMBERS_BY_NAME : &[u16] = &[7,0,6,2,3,5,4,1];
766    pub const TYPE_ID: u64 = 0xf41a_0f00_1ad4_9e46;
767  }
768}
769
770pub mod registration_options {
771  #[derive(Copy, Clone)]
772  pub struct Owned(());
773  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
774  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
775  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
776  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
777
778  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
779  impl <> ::core::marker::Copy for Reader<'_,>  {}
780  impl <> ::core::clone::Clone for Reader<'_,>  {
781    fn clone(&self) -> Self { *self }
782  }
783
784  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
785    const TYPE_ID: u64 = _private::TYPE_ID;
786  }
787  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
788    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
789      Self { reader,  }
790    }
791  }
792
793  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
794    fn from(reader: Reader<'a,>) -> Self {
795      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
796    }
797  }
798
799  impl <> ::core::fmt::Debug for Reader<'_,>  {
800    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
801      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
802    }
803  }
804
805  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
806    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
807      ::core::result::Result::Ok(reader.get_struct(default)?.into())
808    }
809  }
810
811  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
812    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
813      self.reader
814    }
815  }
816
817  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
818    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
819      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
820    }
821  }
822
823  impl <'a,> Reader<'a,>  {
824    pub fn reborrow(&self) -> Reader<'_,> {
825      Self { .. *self }
826    }
827
828    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
829      self.reader.total_size()
830    }
831    #[inline]
832    pub fn get_client_id(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
833      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
834    }
835    #[inline]
836    pub fn has_client_id(&self) -> bool {
837      !self.reader.get_pointer_field(0).is_null()
838    }
839    #[inline]
840    pub fn get_version(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
841      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
842    }
843    #[inline]
844    pub fn has_version(&self) -> bool {
845      !self.reader.get_pointer_field(1).is_null()
846    }
847    #[inline]
848    pub fn get_os(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
849      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
850    }
851    #[inline]
852    pub fn has_os(&self) -> bool {
853      !self.reader.get_pointer_field(2).is_null()
854    }
855    #[inline]
856    pub fn get_existing_tunnel_policy(self) -> ::core::result::Result<crate::tunnelrpc_capnp::ExistingTunnelPolicy,::capnp::NotInSchema> {
857      ::core::convert::TryInto::try_into(self.reader.get_data_field::<u16>(0))
858    }
859    #[inline]
860    pub fn get_pool_name(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
861      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(3), ::core::option::Option::None)
862    }
863    #[inline]
864    pub fn has_pool_name(&self) -> bool {
865      !self.reader.get_pointer_field(3).is_null()
866    }
867    #[inline]
868    pub fn get_tags(self) -> ::capnp::Result<::capnp::struct_list::Reader<'a,crate::tunnelrpc_capnp::tag::Owned>> {
869      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(4), ::core::option::Option::None)
870    }
871    #[inline]
872    pub fn has_tags(&self) -> bool {
873      !self.reader.get_pointer_field(4).is_null()
874    }
875    #[inline]
876    pub fn get_connection_id(self) -> u8 {
877      self.reader.get_data_field::<u8>(2)
878    }
879    #[inline]
880    pub fn get_origin_local_ip(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
881      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(5), ::core::option::Option::None)
882    }
883    #[inline]
884    pub fn has_origin_local_ip(&self) -> bool {
885      !self.reader.get_pointer_field(5).is_null()
886    }
887    #[inline]
888    pub fn get_is_autoupdated(self) -> bool {
889      self.reader.get_bool_field(24)
890    }
891    #[inline]
892    pub fn get_run_from_terminal(self) -> bool {
893      self.reader.get_bool_field(25)
894    }
895    #[inline]
896    pub fn get_compression_quality(self) -> u64 {
897      self.reader.get_data_field::<u64>(1)
898    }
899    #[inline]
900    pub fn get_uuid(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
901      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(6), ::core::option::Option::None)
902    }
903    #[inline]
904    pub fn has_uuid(&self) -> bool {
905      !self.reader.get_pointer_field(6).is_null()
906    }
907    #[inline]
908    pub fn get_num_previous_attempts(self) -> u8 {
909      self.reader.get_data_field::<u8>(4)
910    }
911    #[inline]
912    pub fn get_features(self) -> ::capnp::Result<::capnp::text_list::Reader<'a>> {
913      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(7), ::core::option::Option::None)
914    }
915    #[inline]
916    pub fn has_features(&self) -> bool {
917      !self.reader.get_pointer_field(7).is_null()
918    }
919  }
920
921  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
922  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
923    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 2, pointers: 8 };
924  }
925  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
926    const TYPE_ID: u64 = _private::TYPE_ID;
927  }
928  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
929    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
930      Self { builder,  }
931    }
932  }
933
934  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
935    fn from(builder: Builder<'a,>) -> Self {
936      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
937    }
938  }
939
940  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
941    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
942      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
943    }
944  }
945
946  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
947    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
948      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
949    }
950    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
951      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
952    }
953  }
954
955  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
956    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
957  }
958
959  impl <'a,> Builder<'a,>  {
960    pub fn into_reader(self) -> Reader<'a,> {
961      self.builder.into_reader().into()
962    }
963    pub fn reborrow(&mut self) -> Builder<'_,> {
964      Builder { builder: self.builder.reborrow() }
965    }
966    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
967      self.builder.as_reader().into()
968    }
969
970    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
971      self.builder.as_reader().total_size()
972    }
973    #[inline]
974    pub fn get_client_id(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
975      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
976    }
977    #[inline]
978    pub fn set_client_id(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
979      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
980    }
981    #[inline]
982    pub fn init_client_id(self, size: u32) -> ::capnp::text::Builder<'a> {
983      self.builder.get_pointer_field(0).init_text(size)
984    }
985    #[inline]
986    pub fn has_client_id(&self) -> bool {
987      !self.builder.is_pointer_field_null(0)
988    }
989    #[inline]
990    pub fn get_version(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
991      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
992    }
993    #[inline]
994    pub fn set_version(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
995      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
996    }
997    #[inline]
998    pub fn init_version(self, size: u32) -> ::capnp::text::Builder<'a> {
999      self.builder.get_pointer_field(1).init_text(size)
1000    }
1001    #[inline]
1002    pub fn has_version(&self) -> bool {
1003      !self.builder.is_pointer_field_null(1)
1004    }
1005    #[inline]
1006    pub fn get_os(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1007      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
1008    }
1009    #[inline]
1010    pub fn set_os(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1011      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false).unwrap()
1012    }
1013    #[inline]
1014    pub fn init_os(self, size: u32) -> ::capnp::text::Builder<'a> {
1015      self.builder.get_pointer_field(2).init_text(size)
1016    }
1017    #[inline]
1018    pub fn has_os(&self) -> bool {
1019      !self.builder.is_pointer_field_null(2)
1020    }
1021    #[inline]
1022    pub fn get_existing_tunnel_policy(self) -> ::core::result::Result<crate::tunnelrpc_capnp::ExistingTunnelPolicy,::capnp::NotInSchema> {
1023      ::core::convert::TryInto::try_into(self.builder.get_data_field::<u16>(0))
1024    }
1025    #[inline]
1026    pub fn set_existing_tunnel_policy(&mut self, value: crate::tunnelrpc_capnp::ExistingTunnelPolicy)  {
1027      self.builder.set_data_field::<u16>(0, value as u16);
1028    }
1029    #[inline]
1030    pub fn get_pool_name(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1031      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(3), ::core::option::Option::None)
1032    }
1033    #[inline]
1034    pub fn set_pool_name(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1035      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(3), value, false).unwrap()
1036    }
1037    #[inline]
1038    pub fn init_pool_name(self, size: u32) -> ::capnp::text::Builder<'a> {
1039      self.builder.get_pointer_field(3).init_text(size)
1040    }
1041    #[inline]
1042    pub fn has_pool_name(&self) -> bool {
1043      !self.builder.is_pointer_field_null(3)
1044    }
1045    #[inline]
1046    pub fn get_tags(self) -> ::capnp::Result<::capnp::struct_list::Builder<'a,crate::tunnelrpc_capnp::tag::Owned>> {
1047      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(4), ::core::option::Option::None)
1048    }
1049    #[inline]
1050    pub fn set_tags(&mut self, value: ::capnp::struct_list::Reader<'_,crate::tunnelrpc_capnp::tag::Owned>) -> ::capnp::Result<()> {
1051      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(4), value, false)
1052    }
1053    #[inline]
1054    pub fn init_tags(self, size: u32) -> ::capnp::struct_list::Builder<'a,crate::tunnelrpc_capnp::tag::Owned> {
1055      ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(4), size)
1056    }
1057    #[inline]
1058    pub fn has_tags(&self) -> bool {
1059      !self.builder.is_pointer_field_null(4)
1060    }
1061    #[inline]
1062    pub fn get_connection_id(self) -> u8 {
1063      self.builder.get_data_field::<u8>(2)
1064    }
1065    #[inline]
1066    pub fn set_connection_id(&mut self, value: u8)  {
1067      self.builder.set_data_field::<u8>(2, value);
1068    }
1069    #[inline]
1070    pub fn get_origin_local_ip(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1071      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(5), ::core::option::Option::None)
1072    }
1073    #[inline]
1074    pub fn set_origin_local_ip(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1075      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(5), value, false).unwrap()
1076    }
1077    #[inline]
1078    pub fn init_origin_local_ip(self, size: u32) -> ::capnp::text::Builder<'a> {
1079      self.builder.get_pointer_field(5).init_text(size)
1080    }
1081    #[inline]
1082    pub fn has_origin_local_ip(&self) -> bool {
1083      !self.builder.is_pointer_field_null(5)
1084    }
1085    #[inline]
1086    pub fn get_is_autoupdated(self) -> bool {
1087      self.builder.get_bool_field(24)
1088    }
1089    #[inline]
1090    pub fn set_is_autoupdated(&mut self, value: bool)  {
1091      self.builder.set_bool_field(24, value);
1092    }
1093    #[inline]
1094    pub fn get_run_from_terminal(self) -> bool {
1095      self.builder.get_bool_field(25)
1096    }
1097    #[inline]
1098    pub fn set_run_from_terminal(&mut self, value: bool)  {
1099      self.builder.set_bool_field(25, value);
1100    }
1101    #[inline]
1102    pub fn get_compression_quality(self) -> u64 {
1103      self.builder.get_data_field::<u64>(1)
1104    }
1105    #[inline]
1106    pub fn set_compression_quality(&mut self, value: u64)  {
1107      self.builder.set_data_field::<u64>(1, value);
1108    }
1109    #[inline]
1110    pub fn get_uuid(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1111      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(6), ::core::option::Option::None)
1112    }
1113    #[inline]
1114    pub fn set_uuid(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1115      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(6), value, false).unwrap()
1116    }
1117    #[inline]
1118    pub fn init_uuid(self, size: u32) -> ::capnp::text::Builder<'a> {
1119      self.builder.get_pointer_field(6).init_text(size)
1120    }
1121    #[inline]
1122    pub fn has_uuid(&self) -> bool {
1123      !self.builder.is_pointer_field_null(6)
1124    }
1125    #[inline]
1126    pub fn get_num_previous_attempts(self) -> u8 {
1127      self.builder.get_data_field::<u8>(4)
1128    }
1129    #[inline]
1130    pub fn set_num_previous_attempts(&mut self, value: u8)  {
1131      self.builder.set_data_field::<u8>(4, value);
1132    }
1133    #[inline]
1134    pub fn get_features(self) -> ::capnp::Result<::capnp::text_list::Builder<'a>> {
1135      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(7), ::core::option::Option::None)
1136    }
1137    #[inline]
1138    pub fn set_features(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text_list::Owned>) -> ::capnp::Result<()> {
1139      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(7), value, false)
1140    }
1141    #[inline]
1142    pub fn init_features(self, size: u32) -> ::capnp::text_list::Builder<'a> {
1143      ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(7), size)
1144    }
1145    #[inline]
1146    pub fn has_features(&self) -> bool {
1147      !self.builder.is_pointer_field_null(7)
1148    }
1149  }
1150
1151  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
1152  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
1153    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
1154      Self { _typeless: typeless,  }
1155    }
1156  }
1157  impl Pipeline  {
1158  }
1159  mod _private {
1160    pub static ENCODED_NODE: [::capnp::Word; 250] = [
1161      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
1162      ::capnp::word(74, 91, 147, 146, 5, 229, 147, 199),
1163      ::capnp::word(16, 0, 0, 0, 1, 0, 2, 0),
1164      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
1165      ::capnp::word(8, 0, 7, 0, 0, 0, 0, 0),
1166      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1167      ::capnp::word(21, 0, 0, 0, 34, 1, 0, 0),
1168      ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
1169      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1170      ::capnp::word(33, 0, 0, 0, 23, 3, 0, 0),
1171      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1172      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1173      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
1174      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
1175      ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
1176      ::capnp::word(116, 105, 111, 110, 79, 112, 116, 105),
1177      ::capnp::word(111, 110, 115, 0, 0, 0, 0, 0),
1178      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
1179      ::capnp::word(56, 0, 0, 0, 3, 0, 4, 0),
1180      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1181      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
1182      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1183      ::capnp::word(121, 1, 0, 0, 74, 0, 0, 0),
1184      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1185      ::capnp::word(120, 1, 0, 0, 3, 0, 1, 0),
1186      ::capnp::word(132, 1, 0, 0, 2, 0, 1, 0),
1187      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
1188      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
1189      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1190      ::capnp::word(129, 1, 0, 0, 66, 0, 0, 0),
1191      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1192      ::capnp::word(124, 1, 0, 0, 3, 0, 1, 0),
1193      ::capnp::word(136, 1, 0, 0, 2, 0, 1, 0),
1194      ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
1195      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
1196      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1197      ::capnp::word(133, 1, 0, 0, 26, 0, 0, 0),
1198      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1199      ::capnp::word(128, 1, 0, 0, 3, 0, 1, 0),
1200      ::capnp::word(140, 1, 0, 0, 2, 0, 1, 0),
1201      ::capnp::word(3, 0, 0, 0, 0, 0, 0, 0),
1202      ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
1203      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1204      ::capnp::word(137, 1, 0, 0, 170, 0, 0, 0),
1205      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1206      ::capnp::word(140, 1, 0, 0, 3, 0, 1, 0),
1207      ::capnp::word(152, 1, 0, 0, 2, 0, 1, 0),
1208      ::capnp::word(4, 0, 0, 0, 3, 0, 0, 0),
1209      ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
1210      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1211      ::capnp::word(149, 1, 0, 0, 74, 0, 0, 0),
1212      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1213      ::capnp::word(148, 1, 0, 0, 3, 0, 1, 0),
1214      ::capnp::word(160, 1, 0, 0, 2, 0, 1, 0),
1215      ::capnp::word(5, 0, 0, 0, 4, 0, 0, 0),
1216      ::capnp::word(0, 0, 1, 0, 5, 0, 0, 0),
1217      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1218      ::capnp::word(157, 1, 0, 0, 42, 0, 0, 0),
1219      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1220      ::capnp::word(152, 1, 0, 0, 3, 0, 1, 0),
1221      ::capnp::word(180, 1, 0, 0, 2, 0, 1, 0),
1222      ::capnp::word(6, 0, 0, 0, 2, 0, 0, 0),
1223      ::capnp::word(0, 0, 1, 0, 6, 0, 0, 0),
1224      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1225      ::capnp::word(177, 1, 0, 0, 106, 0, 0, 0),
1226      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1227      ::capnp::word(176, 1, 0, 0, 3, 0, 1, 0),
1228      ::capnp::word(188, 1, 0, 0, 2, 0, 1, 0),
1229      ::capnp::word(7, 0, 0, 0, 5, 0, 0, 0),
1230      ::capnp::word(0, 0, 1, 0, 7, 0, 0, 0),
1231      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1232      ::capnp::word(185, 1, 0, 0, 114, 0, 0, 0),
1233      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1234      ::capnp::word(184, 1, 0, 0, 3, 0, 1, 0),
1235      ::capnp::word(196, 1, 0, 0, 2, 0, 1, 0),
1236      ::capnp::word(8, 0, 0, 0, 24, 0, 0, 0),
1237      ::capnp::word(0, 0, 1, 0, 8, 0, 0, 0),
1238      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1239      ::capnp::word(193, 1, 0, 0, 114, 0, 0, 0),
1240      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1241      ::capnp::word(192, 1, 0, 0, 3, 0, 1, 0),
1242      ::capnp::word(204, 1, 0, 0, 2, 0, 1, 0),
1243      ::capnp::word(9, 0, 0, 0, 25, 0, 0, 0),
1244      ::capnp::word(0, 0, 1, 0, 9, 0, 0, 0),
1245      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1246      ::capnp::word(201, 1, 0, 0, 130, 0, 0, 0),
1247      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1248      ::capnp::word(200, 1, 0, 0, 3, 0, 1, 0),
1249      ::capnp::word(212, 1, 0, 0, 2, 0, 1, 0),
1250      ::capnp::word(10, 0, 0, 0, 1, 0, 0, 0),
1251      ::capnp::word(0, 0, 1, 0, 10, 0, 0, 0),
1252      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1253      ::capnp::word(209, 1, 0, 0, 154, 0, 0, 0),
1254      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1255      ::capnp::word(212, 1, 0, 0, 3, 0, 1, 0),
1256      ::capnp::word(224, 1, 0, 0, 2, 0, 1, 0),
1257      ::capnp::word(11, 0, 0, 0, 6, 0, 0, 0),
1258      ::capnp::word(0, 0, 1, 0, 11, 0, 0, 0),
1259      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1260      ::capnp::word(221, 1, 0, 0, 42, 0, 0, 0),
1261      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1262      ::capnp::word(216, 1, 0, 0, 3, 0, 1, 0),
1263      ::capnp::word(228, 1, 0, 0, 2, 0, 1, 0),
1264      ::capnp::word(12, 0, 0, 0, 4, 0, 0, 0),
1265      ::capnp::word(0, 0, 1, 0, 12, 0, 0, 0),
1266      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1267      ::capnp::word(225, 1, 0, 0, 162, 0, 0, 0),
1268      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1269      ::capnp::word(228, 1, 0, 0, 3, 0, 1, 0),
1270      ::capnp::word(240, 1, 0, 0, 2, 0, 1, 0),
1271      ::capnp::word(13, 0, 0, 0, 7, 0, 0, 0),
1272      ::capnp::word(0, 0, 1, 0, 13, 0, 0, 0),
1273      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1274      ::capnp::word(237, 1, 0, 0, 74, 0, 0, 0),
1275      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1276      ::capnp::word(236, 1, 0, 0, 3, 0, 1, 0),
1277      ::capnp::word(8, 2, 0, 0, 2, 0, 1, 0),
1278      ::capnp::word(99, 108, 105, 101, 110, 116, 73, 100),
1279      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1280      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1281      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1282      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1283      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1284      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1285      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1286      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1287      ::capnp::word(118, 101, 114, 115, 105, 111, 110, 0),
1288      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1289      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1290      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1291      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1292      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1293      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1294      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1295      ::capnp::word(111, 115, 0, 0, 0, 0, 0, 0),
1296      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1297      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1298      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1299      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1300      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1301      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1302      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1303      ::capnp::word(101, 120, 105, 115, 116, 105, 110, 103),
1304      ::capnp::word(84, 117, 110, 110, 101, 108, 80, 111),
1305      ::capnp::word(108, 105, 99, 121, 0, 0, 0, 0),
1306      ::capnp::word(15, 0, 0, 0, 0, 0, 0, 0),
1307      ::capnp::word(60, 109, 207, 162, 54, 149, 203, 132),
1308      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1309      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1310      ::capnp::word(15, 0, 0, 0, 0, 0, 0, 0),
1311      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1312      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1313      ::capnp::word(112, 111, 111, 108, 78, 97, 109, 101),
1314      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1315      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1316      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1317      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1318      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1319      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1320      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1321      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1322      ::capnp::word(116, 97, 103, 115, 0, 0, 0, 0),
1323      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
1324      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1325      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1326      ::capnp::word(0, 0, 0, 0, 3, 0, 1, 0),
1327      ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
1328      ::capnp::word(26, 176, 59, 174, 66, 100, 217, 203),
1329      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1330      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1331      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
1332      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1333      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1334      ::capnp::word(99, 111, 110, 110, 101, 99, 116, 105),
1335      ::capnp::word(111, 110, 73, 100, 0, 0, 0, 0),
1336      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
1337      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1338      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1339      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1340      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
1341      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1342      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1343      ::capnp::word(111, 114, 105, 103, 105, 110, 76, 111),
1344      ::capnp::word(99, 97, 108, 73, 112, 0, 0, 0),
1345      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1346      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1347      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1348      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1349      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1350      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1351      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1352      ::capnp::word(105, 115, 65, 117, 116, 111, 117, 112),
1353      ::capnp::word(100, 97, 116, 101, 100, 0, 0, 0),
1354      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
1355      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1356      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1357      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1358      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
1359      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1360      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1361      ::capnp::word(114, 117, 110, 70, 114, 111, 109, 84),
1362      ::capnp::word(101, 114, 109, 105, 110, 97, 108, 0),
1363      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
1364      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1365      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1366      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1367      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
1368      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1369      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1370      ::capnp::word(99, 111, 109, 112, 114, 101, 115, 115),
1371      ::capnp::word(105, 111, 110, 81, 117, 97, 108, 105),
1372      ::capnp::word(116, 121, 0, 0, 0, 0, 0, 0),
1373      ::capnp::word(9, 0, 0, 0, 0, 0, 0, 0),
1374      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1375      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1376      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1377      ::capnp::word(9, 0, 0, 0, 0, 0, 0, 0),
1378      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1379      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1380      ::capnp::word(117, 117, 105, 100, 0, 0, 0, 0),
1381      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1382      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1383      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1384      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1385      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1386      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1387      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1388      ::capnp::word(110, 117, 109, 80, 114, 101, 118, 105),
1389      ::capnp::word(111, 117, 115, 65, 116, 116, 101, 109),
1390      ::capnp::word(112, 116, 115, 0, 0, 0, 0, 0),
1391      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
1392      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1393      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1394      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1395      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
1396      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1397      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1398      ::capnp::word(102, 101, 97, 116, 117, 114, 101, 115),
1399      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1400      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
1401      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1402      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1403      ::capnp::word(0, 0, 0, 0, 3, 0, 1, 0),
1404      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1405      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1406      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1407      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1408      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
1409      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1410      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1411    ];
1412    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
1413      match index {
1414        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1415        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1416        2 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1417        3 => <crate::tunnelrpc_capnp::ExistingTunnelPolicy as ::capnp::introspect::Introspect>::introspect(),
1418        4 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1419        5 => <::capnp::struct_list::Owned<crate::tunnelrpc_capnp::tag::Owned> as ::capnp::introspect::Introspect>::introspect(),
1420        6 => <u8 as ::capnp::introspect::Introspect>::introspect(),
1421        7 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1422        8 => <bool as ::capnp::introspect::Introspect>::introspect(),
1423        9 => <bool as ::capnp::introspect::Introspect>::introspect(),
1424        10 => <u64 as ::capnp::introspect::Introspect>::introspect(),
1425        11 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1426        12 => <u8 as ::capnp::introspect::Introspect>::introspect(),
1427        13 => <::capnp::text_list::Owned as ::capnp::introspect::Introspect>::introspect(),
1428        _ => panic!("invalid field index {}", index),
1429      }
1430    }
1431    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
1432      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
1433    }
1434    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
1435      encoded_node: &ENCODED_NODE,
1436      nonunion_members: NONUNION_MEMBERS,
1437      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
1438      members_by_name: MEMBERS_BY_NAME,
1439    };
1440    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4,5,6,7,8,9,10,11,12,13];
1441    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
1442    pub static MEMBERS_BY_NAME : &[u16] = &[0,10,6,3,13,8,12,7,2,4,9,5,11,1];
1443    pub const TYPE_ID: u64 = 0xc793_e505_9293_5b4a;
1444  }
1445}
1446
1447#[repr(u16)]
1448#[derive(Clone, Copy, Debug, PartialEq, Eq)]
1449pub enum ExistingTunnelPolicy {
1450  Ignore = 0,
1451  Disconnect = 1,
1452  Balance = 2,
1453}
1454
1455impl ::capnp::introspect::Introspect for ExistingTunnelPolicy {
1456  fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Enum(::capnp::introspect::RawEnumSchema { encoded_node: &existing_tunnel_policy::ENCODED_NODE, annotation_types: existing_tunnel_policy::get_annotation_types }).into() }
1457}
1458impl ::core::convert::From<ExistingTunnelPolicy> for ::capnp::dynamic_value::Reader<'_> {
1459  fn from(e: ExistingTunnelPolicy) -> Self { ::capnp::dynamic_value::Enum::new(e.into(), ::capnp::introspect::RawEnumSchema { encoded_node: &existing_tunnel_policy::ENCODED_NODE, annotation_types: existing_tunnel_policy::get_annotation_types }.into()).into() }
1460}
1461impl ::core::convert::TryFrom<u16> for ExistingTunnelPolicy {
1462  type Error = ::capnp::NotInSchema;
1463  fn try_from(value: u16) -> ::core::result::Result<Self, <ExistingTunnelPolicy as ::core::convert::TryFrom<u16>>::Error> {
1464    match value {
1465      0 => ::core::result::Result::Ok(Self::Ignore),
1466      1 => ::core::result::Result::Ok(Self::Disconnect),
1467      2 => ::core::result::Result::Ok(Self::Balance),
1468      n => ::core::result::Result::Err(::capnp::NotInSchema(n)),
1469    }
1470  }
1471}
1472impl From<ExistingTunnelPolicy> for u16 {
1473  #[inline]
1474  fn from(x: ExistingTunnelPolicy) -> u16 { x as u16 }
1475}
1476impl ::capnp::traits::HasTypeId for ExistingTunnelPolicy {
1477  const TYPE_ID: u64 = 0x84cb_9536_a2cf_6d3cu64;
1478}
1479mod existing_tunnel_policy {
1480pub static ENCODED_NODE: [::capnp::Word; 32] = [
1481  ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
1482  ::capnp::word(60, 109, 207, 162, 54, 149, 203, 132),
1483  ::capnp::word(16, 0, 0, 0, 2, 0, 0, 0),
1484  ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
1485  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1486  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1487  ::capnp::word(21, 0, 0, 0, 42, 1, 0, 0),
1488  ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
1489  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1490  ::capnp::word(33, 0, 0, 0, 79, 0, 0, 0),
1491  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1492  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1493  ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
1494  ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
1495  ::capnp::word(69, 120, 105, 115, 116, 105, 110, 103),
1496  ::capnp::word(84, 117, 110, 110, 101, 108, 80, 111),
1497  ::capnp::word(108, 105, 99, 121, 0, 0, 0, 0),
1498  ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
1499  ::capnp::word(12, 0, 0, 0, 1, 0, 2, 0),
1500  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1501  ::capnp::word(29, 0, 0, 0, 58, 0, 0, 0),
1502  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1503  ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
1504  ::capnp::word(21, 0, 0, 0, 90, 0, 0, 0),
1505  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1506  ::capnp::word(2, 0, 0, 0, 0, 0, 0, 0),
1507  ::capnp::word(17, 0, 0, 0, 66, 0, 0, 0),
1508  ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1509  ::capnp::word(105, 103, 110, 111, 114, 101, 0, 0),
1510  ::capnp::word(100, 105, 115, 99, 111, 110, 110, 101),
1511  ::capnp::word(99, 116, 0, 0, 0, 0, 0, 0),
1512  ::capnp::word(98, 97, 108, 97, 110, 99, 101, 0),
1513];
1514pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
1515  panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
1516}
1517}
1518
1519pub mod server_info {
1520  #[derive(Copy, Clone)]
1521  pub struct Owned(());
1522  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
1523  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
1524  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
1525  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
1526
1527  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
1528  impl <> ::core::marker::Copy for Reader<'_,>  {}
1529  impl <> ::core::clone::Clone for Reader<'_,>  {
1530    fn clone(&self) -> Self { *self }
1531  }
1532
1533  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
1534    const TYPE_ID: u64 = _private::TYPE_ID;
1535  }
1536  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
1537    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
1538      Self { reader,  }
1539    }
1540  }
1541
1542  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
1543    fn from(reader: Reader<'a,>) -> Self {
1544      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
1545    }
1546  }
1547
1548  impl <> ::core::fmt::Debug for Reader<'_,>  {
1549    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
1550      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
1551    }
1552  }
1553
1554  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
1555    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
1556      ::core::result::Result::Ok(reader.get_struct(default)?.into())
1557    }
1558  }
1559
1560  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
1561    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
1562      self.reader
1563    }
1564  }
1565
1566  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
1567    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
1568      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
1569    }
1570  }
1571
1572  impl <'a,> Reader<'a,>  {
1573    pub fn reborrow(&self) -> Reader<'_,> {
1574      Self { .. *self }
1575    }
1576
1577    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
1578      self.reader.total_size()
1579    }
1580    #[inline]
1581    pub fn get_location_name(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
1582      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
1583    }
1584    #[inline]
1585    pub fn has_location_name(&self) -> bool {
1586      !self.reader.get_pointer_field(0).is_null()
1587    }
1588  }
1589
1590  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
1591  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
1592    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
1593  }
1594  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
1595    const TYPE_ID: u64 = _private::TYPE_ID;
1596  }
1597  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
1598    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
1599      Self { builder,  }
1600    }
1601  }
1602
1603  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
1604    fn from(builder: Builder<'a,>) -> Self {
1605      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
1606    }
1607  }
1608
1609  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
1610    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
1611      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
1612    }
1613  }
1614
1615  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
1616    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
1617      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
1618    }
1619    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
1620      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
1621    }
1622  }
1623
1624  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
1625    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
1626  }
1627
1628  impl <'a,> Builder<'a,>  {
1629    pub fn into_reader(self) -> Reader<'a,> {
1630      self.builder.into_reader().into()
1631    }
1632    pub fn reborrow(&mut self) -> Builder<'_,> {
1633      Builder { builder: self.builder.reborrow() }
1634    }
1635    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
1636      self.builder.as_reader().into()
1637    }
1638
1639    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
1640      self.builder.as_reader().total_size()
1641    }
1642    #[inline]
1643    pub fn get_location_name(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1644      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
1645    }
1646    #[inline]
1647    pub fn set_location_name(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1648      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
1649    }
1650    #[inline]
1651    pub fn init_location_name(self, size: u32) -> ::capnp::text::Builder<'a> {
1652      self.builder.get_pointer_field(0).init_text(size)
1653    }
1654    #[inline]
1655    pub fn has_location_name(&self) -> bool {
1656      !self.builder.is_pointer_field_null(0)
1657    }
1658  }
1659
1660  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
1661  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
1662    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
1663      Self { _typeless: typeless,  }
1664    }
1665  }
1666  impl Pipeline  {
1667  }
1668  mod _private {
1669    pub static ENCODED_NODE: [::capnp::Word; 34] = [
1670      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
1671      ::capnp::word(102, 56, 236, 71, 37, 142, 198, 242),
1672      ::capnp::word(16, 0, 0, 0, 1, 0, 0, 0),
1673      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
1674      ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
1675      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1676      ::capnp::word(21, 0, 0, 0, 218, 0, 0, 0),
1677      ::capnp::word(33, 0, 0, 0, 7, 0, 0, 0),
1678      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1679      ::capnp::word(29, 0, 0, 0, 63, 0, 0, 0),
1680      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1681      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1682      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
1683      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
1684      ::capnp::word(83, 101, 114, 118, 101, 114, 73, 110),
1685      ::capnp::word(102, 111, 0, 0, 0, 0, 0, 0),
1686      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
1687      ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
1688      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1689      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
1690      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1691      ::capnp::word(13, 0, 0, 0, 106, 0, 0, 0),
1692      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1693      ::capnp::word(12, 0, 0, 0, 3, 0, 1, 0),
1694      ::capnp::word(24, 0, 0, 0, 2, 0, 1, 0),
1695      ::capnp::word(108, 111, 99, 97, 116, 105, 111, 110),
1696      ::capnp::word(78, 97, 109, 101, 0, 0, 0, 0),
1697      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1698      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1699      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1700      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1701      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1702      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1703      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1704    ];
1705    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
1706      match index {
1707        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
1708        _ => panic!("invalid field index {}", index),
1709      }
1710    }
1711    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
1712      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
1713    }
1714    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
1715      encoded_node: &ENCODED_NODE,
1716      nonunion_members: NONUNION_MEMBERS,
1717      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
1718      members_by_name: MEMBERS_BY_NAME,
1719    };
1720    pub static NONUNION_MEMBERS : &[u16] = &[0];
1721    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
1722    pub static MEMBERS_BY_NAME : &[u16] = &[0];
1723    pub const TYPE_ID: u64 = 0xf2c6_8e25_47ec_3866;
1724  }
1725}
1726
1727pub mod authenticate_response {
1728  #[derive(Copy, Clone)]
1729  pub struct Owned(());
1730  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
1731  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
1732  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
1733  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
1734
1735  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
1736  impl <> ::core::marker::Copy for Reader<'_,>  {}
1737  impl <> ::core::clone::Clone for Reader<'_,>  {
1738    fn clone(&self) -> Self { *self }
1739  }
1740
1741  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
1742    const TYPE_ID: u64 = _private::TYPE_ID;
1743  }
1744  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
1745    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
1746      Self { reader,  }
1747    }
1748  }
1749
1750  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
1751    fn from(reader: Reader<'a,>) -> Self {
1752      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
1753    }
1754  }
1755
1756  impl <> ::core::fmt::Debug for Reader<'_,>  {
1757    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
1758      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
1759    }
1760  }
1761
1762  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
1763    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
1764      ::core::result::Result::Ok(reader.get_struct(default)?.into())
1765    }
1766  }
1767
1768  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
1769    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
1770      self.reader
1771    }
1772  }
1773
1774  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
1775    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
1776      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
1777    }
1778  }
1779
1780  impl <'a,> Reader<'a,>  {
1781    pub fn reborrow(&self) -> Reader<'_,> {
1782      Self { .. *self }
1783    }
1784
1785    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
1786      self.reader.total_size()
1787    }
1788    #[inline]
1789    pub fn get_permanent_err(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
1790      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
1791    }
1792    #[inline]
1793    pub fn has_permanent_err(&self) -> bool {
1794      !self.reader.get_pointer_field(0).is_null()
1795    }
1796    #[inline]
1797    pub fn get_retryable_err(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
1798      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
1799    }
1800    #[inline]
1801    pub fn has_retryable_err(&self) -> bool {
1802      !self.reader.get_pointer_field(1).is_null()
1803    }
1804    #[inline]
1805    pub fn get_jwt(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
1806      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
1807    }
1808    #[inline]
1809    pub fn has_jwt(&self) -> bool {
1810      !self.reader.get_pointer_field(2).is_null()
1811    }
1812    #[inline]
1813    pub fn get_hours_until_refresh(self) -> u8 {
1814      self.reader.get_data_field::<u8>(0)
1815    }
1816  }
1817
1818  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
1819  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
1820    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 3 };
1821  }
1822  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
1823    const TYPE_ID: u64 = _private::TYPE_ID;
1824  }
1825  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
1826    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
1827      Self { builder,  }
1828    }
1829  }
1830
1831  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
1832    fn from(builder: Builder<'a,>) -> Self {
1833      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
1834    }
1835  }
1836
1837  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
1838    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
1839      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
1840    }
1841  }
1842
1843  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
1844    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
1845      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
1846    }
1847    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
1848      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
1849    }
1850  }
1851
1852  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
1853    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
1854  }
1855
1856  impl <'a,> Builder<'a,>  {
1857    pub fn into_reader(self) -> Reader<'a,> {
1858      self.builder.into_reader().into()
1859    }
1860    pub fn reborrow(&mut self) -> Builder<'_,> {
1861      Builder { builder: self.builder.reborrow() }
1862    }
1863    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
1864      self.builder.as_reader().into()
1865    }
1866
1867    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
1868      self.builder.as_reader().total_size()
1869    }
1870    #[inline]
1871    pub fn get_permanent_err(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1872      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
1873    }
1874    #[inline]
1875    pub fn set_permanent_err(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1876      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
1877    }
1878    #[inline]
1879    pub fn init_permanent_err(self, size: u32) -> ::capnp::text::Builder<'a> {
1880      self.builder.get_pointer_field(0).init_text(size)
1881    }
1882    #[inline]
1883    pub fn has_permanent_err(&self) -> bool {
1884      !self.builder.is_pointer_field_null(0)
1885    }
1886    #[inline]
1887    pub fn get_retryable_err(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
1888      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
1889    }
1890    #[inline]
1891    pub fn set_retryable_err(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
1892      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
1893    }
1894    #[inline]
1895    pub fn init_retryable_err(self, size: u32) -> ::capnp::text::Builder<'a> {
1896      self.builder.get_pointer_field(1).init_text(size)
1897    }
1898    #[inline]
1899    pub fn has_retryable_err(&self) -> bool {
1900      !self.builder.is_pointer_field_null(1)
1901    }
1902    #[inline]
1903    pub fn get_jwt(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
1904      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
1905    }
1906    #[inline]
1907    pub fn set_jwt(&mut self, value: ::capnp::data::Reader<'_>)  {
1908      self.builder.reborrow().get_pointer_field(2).set_data(value);
1909    }
1910    #[inline]
1911    pub fn init_jwt(self, size: u32) -> ::capnp::data::Builder<'a> {
1912      self.builder.get_pointer_field(2).init_data(size)
1913    }
1914    #[inline]
1915    pub fn has_jwt(&self) -> bool {
1916      !self.builder.is_pointer_field_null(2)
1917    }
1918    #[inline]
1919    pub fn get_hours_until_refresh(self) -> u8 {
1920      self.builder.get_data_field::<u8>(0)
1921    }
1922    #[inline]
1923    pub fn set_hours_until_refresh(&mut self, value: u8)  {
1924      self.builder.set_data_field::<u8>(0, value);
1925    }
1926  }
1927
1928  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
1929  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
1930    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
1931      Self { _typeless: typeless,  }
1932    }
1933  }
1934  impl Pipeline  {
1935  }
1936  mod _private {
1937    pub static ENCODED_NODE: [::capnp::Word; 83] = [
1938      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
1939      ::capnp::word(101, 42, 210, 122, 160, 37, 195, 130),
1940      ::capnp::word(16, 0, 0, 0, 1, 0, 1, 0),
1941      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
1942      ::capnp::word(3, 0, 7, 0, 0, 0, 0, 0),
1943      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1944      ::capnp::word(21, 0, 0, 0, 42, 1, 0, 0),
1945      ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
1946      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1947      ::capnp::word(33, 0, 0, 0, 231, 0, 0, 0),
1948      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1949      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1950      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
1951      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
1952      ::capnp::word(65, 117, 116, 104, 101, 110, 116, 105),
1953      ::capnp::word(99, 97, 116, 101, 82, 101, 115, 112),
1954      ::capnp::word(111, 110, 115, 101, 0, 0, 0, 0),
1955      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
1956      ::capnp::word(16, 0, 0, 0, 3, 0, 4, 0),
1957      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1958      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
1959      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1960      ::capnp::word(97, 0, 0, 0, 106, 0, 0, 0),
1961      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1962      ::capnp::word(96, 0, 0, 0, 3, 0, 1, 0),
1963      ::capnp::word(108, 0, 0, 0, 2, 0, 1, 0),
1964      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
1965      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
1966      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1967      ::capnp::word(105, 0, 0, 0, 106, 0, 0, 0),
1968      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1969      ::capnp::word(104, 0, 0, 0, 3, 0, 1, 0),
1970      ::capnp::word(116, 0, 0, 0, 2, 0, 1, 0),
1971      ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
1972      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
1973      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1974      ::capnp::word(113, 0, 0, 0, 34, 0, 0, 0),
1975      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1976      ::capnp::word(108, 0, 0, 0, 3, 0, 1, 0),
1977      ::capnp::word(120, 0, 0, 0, 2, 0, 1, 0),
1978      ::capnp::word(3, 0, 0, 0, 0, 0, 0, 0),
1979      ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
1980      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1981      ::capnp::word(117, 0, 0, 0, 146, 0, 0, 0),
1982      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1983      ::capnp::word(120, 0, 0, 0, 3, 0, 1, 0),
1984      ::capnp::word(132, 0, 0, 0, 2, 0, 1, 0),
1985      ::capnp::word(112, 101, 114, 109, 97, 110, 101, 110),
1986      ::capnp::word(116, 69, 114, 114, 0, 0, 0, 0),
1987      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1988      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1989      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1990      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1991      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1992      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1993      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1994      ::capnp::word(114, 101, 116, 114, 121, 97, 98, 108),
1995      ::capnp::word(101, 69, 114, 114, 0, 0, 0, 0),
1996      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
1997      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1998      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
1999      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2000      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
2001      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2002      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2003      ::capnp::word(106, 119, 116, 0, 0, 0, 0, 0),
2004      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
2005      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2006      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2007      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2008      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
2009      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2010      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2011      ::capnp::word(104, 111, 117, 114, 115, 85, 110, 116),
2012      ::capnp::word(105, 108, 82, 101, 102, 114, 101, 115),
2013      ::capnp::word(104, 0, 0, 0, 0, 0, 0, 0),
2014      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
2015      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2016      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2017      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2018      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
2019      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2020      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2021    ];
2022    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
2023      match index {
2024        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
2025        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
2026        2 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
2027        3 => <u8 as ::capnp::introspect::Introspect>::introspect(),
2028        _ => panic!("invalid field index {}", index),
2029      }
2030    }
2031    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
2032      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
2033    }
2034    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
2035      encoded_node: &ENCODED_NODE,
2036      nonunion_members: NONUNION_MEMBERS,
2037      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
2038      members_by_name: MEMBERS_BY_NAME,
2039    };
2040    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3];
2041    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
2042    pub static MEMBERS_BY_NAME : &[u16] = &[3,2,0,1];
2043    pub const TYPE_ID: u64 = 0x82c3_25a0_7ad2_2a65;
2044  }
2045}
2046
2047
2048pub mod tunnel_server {
2049  #![allow(unused_variables)]
2050  pub type RegisterTunnelParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::tunnel_server::register_tunnel_params::Owned>;
2051  pub type RegisterTunnelResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::tunnel_server::register_tunnel_results::Owned>;
2052  pub type GetServerInfoParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::tunnel_server::get_server_info_params::Owned>;
2053  pub type GetServerInfoResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::tunnel_server::get_server_info_results::Owned>;
2054  pub type UnregisterTunnelParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::tunnel_server::unregister_tunnel_params::Owned>;
2055  pub type UnregisterTunnelResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::tunnel_server::unregister_tunnel_results::Owned>;
2056  pub type ObsoleteDeclarativeTunnelConnectParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::tunnel_server::obsolete_declarative_tunnel_connect_params::Owned>;
2057  pub type ObsoleteDeclarativeTunnelConnectResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::tunnel_server::obsolete_declarative_tunnel_connect_results::Owned>;
2058  pub type AuthenticateParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::tunnel_server::authenticate_params::Owned>;
2059  pub type AuthenticateResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::tunnel_server::authenticate_results::Owned>;
2060  pub type ReconnectTunnelParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::tunnel_server::reconnect_tunnel_params::Owned>;
2061  pub type ReconnectTunnelResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::tunnel_server::reconnect_tunnel_results::Owned>;
2062
2063  pub struct Client {
2064    pub client: ::capnp::capability::Client,
2065  }
2066  impl  ::capnp::capability::FromClientHook for Client {
2067    fn new(hook: Box<dyn (::capnp::private::capability::ClientHook)>) -> Self {
2068      Self { client: ::capnp::capability::Client::new(hook),  }
2069    }
2070    fn into_client_hook(self) -> Box<dyn (::capnp::private::capability::ClientHook)> {
2071      self.client.hook
2072    }
2073    fn as_client_hook(&self) -> &dyn (::capnp::private::capability::ClientHook) {
2074      &*self.client.hook
2075    }
2076  }
2077  #[derive(Copy, Clone)]
2078  pub struct Owned(());
2079  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Capability.into() } }
2080  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Client; type Builder<'a> = Client; }
2081  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Client; }
2082  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Client<>  {
2083    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2084      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(reader.get_capability()?))
2085    }
2086  }
2087  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Client<>  {
2088    fn init_pointer(_builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
2089      unimplemented!()
2090    }
2091    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2092      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(builder.get_capability()?))
2093    }
2094  }
2095
2096  impl <> ::capnp::traits::SetterInput<Owned<>> for Client<>  {
2097    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, from: Self, _canonicalize: bool) -> ::capnp::Result<()> {
2098      pointer.set_capability(from.client.hook);
2099      ::core::result::Result::Ok(())
2100    }
2101  }
2102  impl  ::capnp::traits::HasTypeId for Client {
2103    const TYPE_ID: u64 = _private::TYPE_ID;
2104  }
2105  impl  Clone for Client {
2106    fn clone(&self) -> Self {
2107      Self { client: ::capnp::capability::Client::new(self.client.hook.add_ref()),  }
2108    }
2109  }
2110  impl  Client {
2111    pub fn register_tunnel_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::tunnel_server::register_tunnel_params::Owned,crate::tunnelrpc_capnp::tunnel_server::register_tunnel_results::Owned> {
2112      self.client.new_call(_private::TYPE_ID, 0, ::core::option::Option::None)
2113    }
2114    pub fn get_server_info_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::tunnel_server::get_server_info_params::Owned,crate::tunnelrpc_capnp::tunnel_server::get_server_info_results::Owned> {
2115      self.client.new_call(_private::TYPE_ID, 1, ::core::option::Option::None)
2116    }
2117    pub fn unregister_tunnel_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::tunnel_server::unregister_tunnel_params::Owned,crate::tunnelrpc_capnp::tunnel_server::unregister_tunnel_results::Owned> {
2118      self.client.new_call(_private::TYPE_ID, 2, ::core::option::Option::None)
2119    }
2120    pub fn obsolete_declarative_tunnel_connect_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::tunnel_server::obsolete_declarative_tunnel_connect_params::Owned,crate::tunnelrpc_capnp::tunnel_server::obsolete_declarative_tunnel_connect_results::Owned> {
2121      self.client.new_call(_private::TYPE_ID, 3, ::core::option::Option::None)
2122    }
2123    pub fn authenticate_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::tunnel_server::authenticate_params::Owned,crate::tunnelrpc_capnp::tunnel_server::authenticate_results::Owned> {
2124      self.client.new_call(_private::TYPE_ID, 4, ::core::option::Option::None)
2125    }
2126    pub fn reconnect_tunnel_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::tunnel_server::reconnect_tunnel_params::Owned,crate::tunnelrpc_capnp::tunnel_server::reconnect_tunnel_results::Owned> {
2127      self.client.new_call(_private::TYPE_ID, 5, ::core::option::Option::None)
2128    }
2129  }
2130  pub trait Server<> : crate::tunnelrpc_capnp::registration_server::Server  {
2131    fn register_tunnel(&mut self, _: RegisterTunnelParams<>, _: RegisterTunnelResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method tunnel_server::Server::register_tunnel not implemented".to_string())) }
2132    fn get_server_info(&mut self, _: GetServerInfoParams<>, _: GetServerInfoResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method tunnel_server::Server::get_server_info not implemented".to_string())) }
2133    fn unregister_tunnel(&mut self, _: UnregisterTunnelParams<>, _: UnregisterTunnelResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method tunnel_server::Server::unregister_tunnel not implemented".to_string())) }
2134    fn obsolete_declarative_tunnel_connect(&mut self, _: ObsoleteDeclarativeTunnelConnectParams<>, _: ObsoleteDeclarativeTunnelConnectResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method tunnel_server::Server::obsolete_declarative_tunnel_connect not implemented".to_string())) }
2135    fn authenticate(&mut self, _: AuthenticateParams<>, _: AuthenticateResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method tunnel_server::Server::authenticate not implemented".to_string())) }
2136    fn reconnect_tunnel(&mut self, _: ReconnectTunnelParams<>, _: ReconnectTunnelResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method tunnel_server::Server::reconnect_tunnel not implemented".to_string())) }
2137  }
2138  pub struct ServerDispatch<_T,> {
2139    pub server: _T,
2140  }
2141  impl <_S: Server + 'static, > ::capnp::capability::FromServer<_S> for Client   {
2142    type Dispatch = ServerDispatch<_S, >;
2143    fn from_server(s: _S) -> ServerDispatch<_S, > {
2144      ServerDispatch { server: s,  }
2145    }
2146  }
2147  impl <_T: Server> ::core::ops::Deref for ServerDispatch<_T> {
2148    type Target = _T;
2149    fn deref(&self) -> &_T { &self.server}
2150  }
2151  impl <_T: Server> ::core::ops::DerefMut for ServerDispatch<_T> {
2152    fn deref_mut(&mut self) -> &mut _T { &mut self.server}
2153  }
2154  impl <_T: Server> ::capnp::capability::Server for ServerDispatch<_T> {
2155    fn dispatch_call(&mut self, interface_id: u64, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
2156      match interface_id {
2157        _private::TYPE_ID => Self::dispatch_call_internal(&mut self.server, method_id, params, results),
2158        0xf71695ec7fe85497 => crate::tunnelrpc_capnp::registration_server::ServerDispatch::<_T>::dispatch_call_internal(&mut self.server, method_id, params, results),
2159        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
2160      }
2161    }
2162  }
2163  impl <_T :Server> ServerDispatch<_T> {
2164    pub fn dispatch_call_internal(server: &mut _T, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
2165      match method_id {
2166        0 => ::capnp::capability::DispatchCallResult::new(server.register_tunnel(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
2167        1 => ::capnp::capability::DispatchCallResult::new(server.get_server_info(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
2168        2 => ::capnp::capability::DispatchCallResult::new(server.unregister_tunnel(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
2169        3 => ::capnp::capability::DispatchCallResult::new(server.obsolete_declarative_tunnel_connect(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
2170        4 => ::capnp::capability::DispatchCallResult::new(server.authenticate(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
2171        5 => ::capnp::capability::DispatchCallResult::new(server.reconnect_tunnel(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
2172        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
2173      }
2174    }
2175  }
2176  pub mod _private {
2177    pub const TYPE_ID: u64 = 0xea58_385c_6541_6035;
2178  }
2179
2180  pub mod register_tunnel_params {
2181    #[derive(Copy, Clone)]
2182    pub struct Owned(());
2183    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
2184    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2185    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2186    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
2187
2188    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
2189    impl <> ::core::marker::Copy for Reader<'_,>  {}
2190    impl <> ::core::clone::Clone for Reader<'_,>  {
2191      fn clone(&self) -> Self { *self }
2192    }
2193
2194    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
2195      const TYPE_ID: u64 = _private::TYPE_ID;
2196    }
2197    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
2198      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
2199        Self { reader,  }
2200      }
2201    }
2202
2203    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
2204      fn from(reader: Reader<'a,>) -> Self {
2205        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2206      }
2207    }
2208
2209    impl <> ::core::fmt::Debug for Reader<'_,>  {
2210      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
2211        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
2212      }
2213    }
2214
2215    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
2216      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2217        ::core::result::Result::Ok(reader.get_struct(default)?.into())
2218      }
2219    }
2220
2221    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
2222      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
2223        self.reader
2224      }
2225    }
2226
2227    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
2228      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
2229        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
2230      }
2231    }
2232
2233    impl <'a,> Reader<'a,>  {
2234      pub fn reborrow(&self) -> Reader<'_,> {
2235        Self { .. *self }
2236      }
2237
2238      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2239        self.reader.total_size()
2240      }
2241      #[inline]
2242      pub fn get_origin_cert(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
2243        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
2244      }
2245      #[inline]
2246      pub fn has_origin_cert(&self) -> bool {
2247        !self.reader.get_pointer_field(0).is_null()
2248      }
2249      #[inline]
2250      pub fn get_hostname(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
2251        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
2252      }
2253      #[inline]
2254      pub fn has_hostname(&self) -> bool {
2255        !self.reader.get_pointer_field(1).is_null()
2256      }
2257      #[inline]
2258      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::registration_options::Reader<'a>> {
2259        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
2260      }
2261      #[inline]
2262      pub fn has_options(&self) -> bool {
2263        !self.reader.get_pointer_field(2).is_null()
2264      }
2265    }
2266
2267    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
2268    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
2269      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 3 };
2270    }
2271    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
2272      const TYPE_ID: u64 = _private::TYPE_ID;
2273    }
2274    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
2275      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
2276        Self { builder,  }
2277      }
2278    }
2279
2280    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
2281      fn from(builder: Builder<'a,>) -> Self {
2282        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2283      }
2284    }
2285
2286    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
2287      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
2288        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
2289      }
2290    }
2291
2292    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
2293      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
2294        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
2295      }
2296      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2297        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
2298      }
2299    }
2300
2301    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
2302      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
2303    }
2304
2305    impl <'a,> Builder<'a,>  {
2306      pub fn into_reader(self) -> Reader<'a,> {
2307        self.builder.into_reader().into()
2308      }
2309      pub fn reborrow(&mut self) -> Builder<'_,> {
2310        Builder { builder: self.builder.reborrow() }
2311      }
2312      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
2313        self.builder.as_reader().into()
2314      }
2315
2316      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2317        self.builder.as_reader().total_size()
2318      }
2319      #[inline]
2320      pub fn get_origin_cert(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
2321        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
2322      }
2323      #[inline]
2324      pub fn set_origin_cert(&mut self, value: ::capnp::data::Reader<'_>)  {
2325        self.builder.reborrow().get_pointer_field(0).set_data(value);
2326      }
2327      #[inline]
2328      pub fn init_origin_cert(self, size: u32) -> ::capnp::data::Builder<'a> {
2329        self.builder.get_pointer_field(0).init_data(size)
2330      }
2331      #[inline]
2332      pub fn has_origin_cert(&self) -> bool {
2333        !self.builder.is_pointer_field_null(0)
2334      }
2335      #[inline]
2336      pub fn get_hostname(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
2337        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
2338      }
2339      #[inline]
2340      pub fn set_hostname(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
2341        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
2342      }
2343      #[inline]
2344      pub fn init_hostname(self, size: u32) -> ::capnp::text::Builder<'a> {
2345        self.builder.get_pointer_field(1).init_text(size)
2346      }
2347      #[inline]
2348      pub fn has_hostname(&self) -> bool {
2349        !self.builder.is_pointer_field_null(1)
2350      }
2351      #[inline]
2352      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::registration_options::Builder<'a>> {
2353        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
2354      }
2355      #[inline]
2356      pub fn set_options(&mut self, value: crate::tunnelrpc_capnp::registration_options::Reader<'_>) -> ::capnp::Result<()> {
2357        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false)
2358      }
2359      #[inline]
2360      pub fn init_options(self, ) -> crate::tunnelrpc_capnp::registration_options::Builder<'a> {
2361        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(2), 0)
2362      }
2363      #[inline]
2364      pub fn has_options(&self) -> bool {
2365        !self.builder.is_pointer_field_null(2)
2366      }
2367    }
2368
2369    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
2370    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
2371      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
2372        Self { _typeless: typeless,  }
2373      }
2374    }
2375    impl Pipeline  {
2376      pub fn get_options(&self) -> crate::tunnelrpc_capnp::registration_options::Pipeline {
2377        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(2))
2378      }
2379    }
2380    mod _private {
2381      pub static ENCODED_NODE: [::capnp::Word; 67] = [
2382        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
2383        ::capnp::word(21, 73, 1, 220, 192, 49, 4, 183),
2384        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
2385        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2386        ::capnp::word(3, 0, 7, 0, 0, 0, 0, 0),
2387        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2388        ::capnp::word(21, 0, 0, 0, 154, 1, 0, 0),
2389        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2390        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2391        ::capnp::word(37, 0, 0, 0, 175, 0, 0, 0),
2392        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2393        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2394        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
2395        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
2396        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
2397        ::capnp::word(114, 118, 101, 114, 46, 114, 101, 103),
2398        ::capnp::word(105, 115, 116, 101, 114, 84, 117, 110),
2399        ::capnp::word(110, 101, 108, 36, 80, 97, 114, 97),
2400        ::capnp::word(109, 115, 0, 0, 0, 0, 0, 0),
2401        ::capnp::word(12, 0, 0, 0, 3, 0, 4, 0),
2402        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2403        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
2404        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2405        ::capnp::word(69, 0, 0, 0, 90, 0, 0, 0),
2406        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2407        ::capnp::word(68, 0, 0, 0, 3, 0, 1, 0),
2408        ::capnp::word(80, 0, 0, 0, 2, 0, 1, 0),
2409        ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
2410        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
2411        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2412        ::capnp::word(77, 0, 0, 0, 74, 0, 0, 0),
2413        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2414        ::capnp::word(76, 0, 0, 0, 3, 0, 1, 0),
2415        ::capnp::word(88, 0, 0, 0, 2, 0, 1, 0),
2416        ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
2417        ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
2418        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2419        ::capnp::word(85, 0, 0, 0, 66, 0, 0, 0),
2420        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2421        ::capnp::word(80, 0, 0, 0, 3, 0, 1, 0),
2422        ::capnp::word(92, 0, 0, 0, 2, 0, 1, 0),
2423        ::capnp::word(111, 114, 105, 103, 105, 110, 67, 101),
2424        ::capnp::word(114, 116, 0, 0, 0, 0, 0, 0),
2425        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
2426        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2427        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2428        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2429        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
2430        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2431        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2432        ::capnp::word(104, 111, 115, 116, 110, 97, 109, 101),
2433        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2434        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
2435        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2436        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2437        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2438        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
2439        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2440        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2441        ::capnp::word(111, 112, 116, 105, 111, 110, 115, 0),
2442        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
2443        ::capnp::word(74, 91, 147, 146, 5, 229, 147, 199),
2444        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2445        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2446        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
2447        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2448        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2449      ];
2450      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
2451        match index {
2452          0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
2453          1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
2454          2 => <crate::tunnelrpc_capnp::registration_options::Owned as ::capnp::introspect::Introspect>::introspect(),
2455          _ => panic!("invalid field index {}", index),
2456        }
2457      }
2458      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
2459        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
2460      }
2461      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
2462        encoded_node: &ENCODED_NODE,
2463        nonunion_members: NONUNION_MEMBERS,
2464        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
2465        members_by_name: MEMBERS_BY_NAME,
2466      };
2467      pub static NONUNION_MEMBERS : &[u16] = &[0,1,2];
2468      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
2469      pub static MEMBERS_BY_NAME : &[u16] = &[1,2,0];
2470      pub const TYPE_ID: u64 = 0xb704_31c0_dc01_4915;
2471    }
2472  }
2473
2474  pub mod register_tunnel_results {
2475    #[derive(Copy, Clone)]
2476    pub struct Owned(());
2477    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
2478    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2479    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2480    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
2481
2482    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
2483    impl <> ::core::marker::Copy for Reader<'_,>  {}
2484    impl <> ::core::clone::Clone for Reader<'_,>  {
2485      fn clone(&self) -> Self { *self }
2486    }
2487
2488    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
2489      const TYPE_ID: u64 = _private::TYPE_ID;
2490    }
2491    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
2492      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
2493        Self { reader,  }
2494      }
2495    }
2496
2497    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
2498      fn from(reader: Reader<'a,>) -> Self {
2499        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2500      }
2501    }
2502
2503    impl <> ::core::fmt::Debug for Reader<'_,>  {
2504      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
2505        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
2506      }
2507    }
2508
2509    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
2510      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2511        ::core::result::Result::Ok(reader.get_struct(default)?.into())
2512      }
2513    }
2514
2515    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
2516      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
2517        self.reader
2518      }
2519    }
2520
2521    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
2522      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
2523        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
2524      }
2525    }
2526
2527    impl <'a,> Reader<'a,>  {
2528      pub fn reborrow(&self) -> Reader<'_,> {
2529        Self { .. *self }
2530      }
2531
2532      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2533        self.reader.total_size()
2534      }
2535      #[inline]
2536      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::tunnel_registration::Reader<'a>> {
2537        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
2538      }
2539      #[inline]
2540      pub fn has_result(&self) -> bool {
2541        !self.reader.get_pointer_field(0).is_null()
2542      }
2543    }
2544
2545    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
2546    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
2547      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
2548    }
2549    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
2550      const TYPE_ID: u64 = _private::TYPE_ID;
2551    }
2552    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
2553      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
2554        Self { builder,  }
2555      }
2556    }
2557
2558    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
2559      fn from(builder: Builder<'a,>) -> Self {
2560        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2561      }
2562    }
2563
2564    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
2565      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
2566        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
2567      }
2568    }
2569
2570    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
2571      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
2572        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
2573      }
2574      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2575        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
2576      }
2577    }
2578
2579    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
2580      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
2581    }
2582
2583    impl <'a,> Builder<'a,>  {
2584      pub fn into_reader(self) -> Reader<'a,> {
2585        self.builder.into_reader().into()
2586      }
2587      pub fn reborrow(&mut self) -> Builder<'_,> {
2588        Builder { builder: self.builder.reborrow() }
2589      }
2590      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
2591        self.builder.as_reader().into()
2592      }
2593
2594      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2595        self.builder.as_reader().total_size()
2596      }
2597      #[inline]
2598      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::tunnel_registration::Builder<'a>> {
2599        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
2600      }
2601      #[inline]
2602      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::tunnel_registration::Reader<'_>) -> ::capnp::Result<()> {
2603        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
2604      }
2605      #[inline]
2606      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::tunnel_registration::Builder<'a> {
2607        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
2608      }
2609      #[inline]
2610      pub fn has_result(&self) -> bool {
2611        !self.builder.is_pointer_field_null(0)
2612      }
2613    }
2614
2615    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
2616    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
2617      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
2618        Self { _typeless: typeless,  }
2619      }
2620    }
2621    impl Pipeline  {
2622      pub fn get_result(&self) -> crate::tunnelrpc_capnp::tunnel_registration::Pipeline {
2623        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
2624      }
2625    }
2626    mod _private {
2627      pub static ENCODED_NODE: [::capnp::Word; 35] = [
2628        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
2629        ::capnp::word(142, 126, 68, 79, 57, 34, 193, 242),
2630        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
2631        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2632        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
2633        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2634        ::capnp::word(21, 0, 0, 0, 162, 1, 0, 0),
2635        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2636        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2637        ::capnp::word(37, 0, 0, 0, 63, 0, 0, 0),
2638        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2639        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2640        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
2641        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
2642        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
2643        ::capnp::word(114, 118, 101, 114, 46, 114, 101, 103),
2644        ::capnp::word(105, 115, 116, 101, 114, 84, 117, 110),
2645        ::capnp::word(110, 101, 108, 36, 82, 101, 115, 117),
2646        ::capnp::word(108, 116, 115, 0, 0, 0, 0, 0),
2647        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
2648        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2649        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
2650        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2651        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
2652        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2653        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
2654        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
2655        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
2656        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
2657        ::capnp::word(70, 158, 212, 26, 0, 15, 26, 244),
2658        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2659        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2660        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
2661        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2662        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2663      ];
2664      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
2665        match index {
2666          0 => <crate::tunnelrpc_capnp::tunnel_registration::Owned as ::capnp::introspect::Introspect>::introspect(),
2667          _ => panic!("invalid field index {}", index),
2668        }
2669      }
2670      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
2671        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
2672      }
2673      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
2674        encoded_node: &ENCODED_NODE,
2675        nonunion_members: NONUNION_MEMBERS,
2676        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
2677        members_by_name: MEMBERS_BY_NAME,
2678      };
2679      pub static NONUNION_MEMBERS : &[u16] = &[0];
2680      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
2681      pub static MEMBERS_BY_NAME : &[u16] = &[0];
2682      pub const TYPE_ID: u64 = 0xf2c1_2239_4f44_7e8e;
2683    }
2684  }
2685
2686  pub mod get_server_info_params {
2687    #[derive(Copy, Clone)]
2688    pub struct Owned(());
2689    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
2690    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2691    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2692    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
2693
2694    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
2695    impl <> ::core::marker::Copy for Reader<'_,>  {}
2696    impl <> ::core::clone::Clone for Reader<'_,>  {
2697      fn clone(&self) -> Self { *self }
2698    }
2699
2700    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
2701      const TYPE_ID: u64 = _private::TYPE_ID;
2702    }
2703    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
2704      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
2705        Self { reader,  }
2706      }
2707    }
2708
2709    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
2710      fn from(reader: Reader<'a,>) -> Self {
2711        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2712      }
2713    }
2714
2715    impl <> ::core::fmt::Debug for Reader<'_,>  {
2716      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
2717        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
2718      }
2719    }
2720
2721    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
2722      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2723        ::core::result::Result::Ok(reader.get_struct(default)?.into())
2724      }
2725    }
2726
2727    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
2728      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
2729        self.reader
2730      }
2731    }
2732
2733    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
2734      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
2735        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
2736      }
2737    }
2738
2739    impl <> Reader<'_,>  {
2740      pub fn reborrow(&self) -> Reader<'_,> {
2741        Self { .. *self }
2742      }
2743
2744      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2745        self.reader.total_size()
2746      }
2747    }
2748
2749    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
2750    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
2751      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
2752    }
2753    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
2754      const TYPE_ID: u64 = _private::TYPE_ID;
2755    }
2756    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
2757      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
2758        Self { builder,  }
2759      }
2760    }
2761
2762    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
2763      fn from(builder: Builder<'a,>) -> Self {
2764        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2765      }
2766    }
2767
2768    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
2769      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
2770        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
2771      }
2772    }
2773
2774    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
2775      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
2776        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
2777      }
2778      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2779        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
2780      }
2781    }
2782
2783    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
2784      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
2785    }
2786
2787    impl <'a,> Builder<'a,>  {
2788      pub fn into_reader(self) -> Reader<'a,> {
2789        self.builder.into_reader().into()
2790      }
2791      pub fn reborrow(&mut self) -> Builder<'_,> {
2792        Builder { builder: self.builder.reborrow() }
2793      }
2794      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
2795        self.builder.as_reader().into()
2796      }
2797
2798      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2799        self.builder.as_reader().total_size()
2800      }
2801    }
2802
2803    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
2804    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
2805      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
2806        Self { _typeless: typeless,  }
2807      }
2808    }
2809    impl Pipeline  {
2810    }
2811    mod _private {
2812      pub static ENCODED_NODE: [::capnp::Word; 19] = [
2813        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
2814        ::capnp::word(2, 229, 97, 25, 128, 214, 62, 220),
2815        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
2816        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2817        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
2818        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2819        ::capnp::word(21, 0, 0, 0, 146, 1, 0, 0),
2820        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2821        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2822        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2823        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2824        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
2825        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
2826        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
2827        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
2828        ::capnp::word(114, 118, 101, 114, 46, 103, 101, 116),
2829        ::capnp::word(83, 101, 114, 118, 101, 114, 73, 110),
2830        ::capnp::word(102, 111, 36, 80, 97, 114, 97, 109),
2831        ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
2832      ];
2833      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
2834        panic!("invalid field index {}", index)
2835      }
2836      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
2837        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
2838      }
2839      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
2840        encoded_node: &ENCODED_NODE,
2841        nonunion_members: NONUNION_MEMBERS,
2842        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
2843        members_by_name: MEMBERS_BY_NAME,
2844      };
2845      pub static NONUNION_MEMBERS : &[u16] = &[];
2846      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
2847      pub static MEMBERS_BY_NAME : &[u16] = &[];
2848      pub const TYPE_ID: u64 = 0xdc3e_d680_1961_e502;
2849    }
2850  }
2851
2852  pub mod get_server_info_results {
2853    #[derive(Copy, Clone)]
2854    pub struct Owned(());
2855    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
2856    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2857    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
2858    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
2859
2860    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
2861    impl <> ::core::marker::Copy for Reader<'_,>  {}
2862    impl <> ::core::clone::Clone for Reader<'_,>  {
2863      fn clone(&self) -> Self { *self }
2864    }
2865
2866    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
2867      const TYPE_ID: u64 = _private::TYPE_ID;
2868    }
2869    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
2870      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
2871        Self { reader,  }
2872      }
2873    }
2874
2875    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
2876      fn from(reader: Reader<'a,>) -> Self {
2877        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2878      }
2879    }
2880
2881    impl <> ::core::fmt::Debug for Reader<'_,>  {
2882      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
2883        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
2884      }
2885    }
2886
2887    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
2888      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2889        ::core::result::Result::Ok(reader.get_struct(default)?.into())
2890      }
2891    }
2892
2893    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
2894      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
2895        self.reader
2896      }
2897    }
2898
2899    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
2900      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
2901        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
2902      }
2903    }
2904
2905    impl <'a,> Reader<'a,>  {
2906      pub fn reborrow(&self) -> Reader<'_,> {
2907        Self { .. *self }
2908      }
2909
2910      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2911        self.reader.total_size()
2912      }
2913      #[inline]
2914      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::server_info::Reader<'a>> {
2915        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
2916      }
2917      #[inline]
2918      pub fn has_result(&self) -> bool {
2919        !self.reader.get_pointer_field(0).is_null()
2920      }
2921    }
2922
2923    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
2924    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
2925      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
2926    }
2927    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
2928      const TYPE_ID: u64 = _private::TYPE_ID;
2929    }
2930    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
2931      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
2932        Self { builder,  }
2933      }
2934    }
2935
2936    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
2937      fn from(builder: Builder<'a,>) -> Self {
2938        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
2939      }
2940    }
2941
2942    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
2943      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
2944        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
2945      }
2946    }
2947
2948    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
2949      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
2950        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
2951      }
2952      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
2953        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
2954      }
2955    }
2956
2957    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
2958      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
2959    }
2960
2961    impl <'a,> Builder<'a,>  {
2962      pub fn into_reader(self) -> Reader<'a,> {
2963        self.builder.into_reader().into()
2964      }
2965      pub fn reborrow(&mut self) -> Builder<'_,> {
2966        Builder { builder: self.builder.reborrow() }
2967      }
2968      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
2969        self.builder.as_reader().into()
2970      }
2971
2972      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
2973        self.builder.as_reader().total_size()
2974      }
2975      #[inline]
2976      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::server_info::Builder<'a>> {
2977        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
2978      }
2979      #[inline]
2980      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::server_info::Reader<'_>) -> ::capnp::Result<()> {
2981        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
2982      }
2983      #[inline]
2984      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::server_info::Builder<'a> {
2985        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
2986      }
2987      #[inline]
2988      pub fn has_result(&self) -> bool {
2989        !self.builder.is_pointer_field_null(0)
2990      }
2991    }
2992
2993    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
2994    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
2995      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
2996        Self { _typeless: typeless,  }
2997      }
2998    }
2999    impl Pipeline  {
3000      pub fn get_result(&self) -> crate::tunnelrpc_capnp::server_info::Pipeline {
3001        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
3002      }
3003    }
3004    mod _private {
3005      pub static ENCODED_NODE: [::capnp::Word; 35] = [
3006        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
3007        ::capnp::word(78, 86, 91, 106, 9, 125, 227, 227),
3008        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
3009        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3010        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
3011        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3012        ::capnp::word(21, 0, 0, 0, 154, 1, 0, 0),
3013        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3014        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3015        ::capnp::word(37, 0, 0, 0, 63, 0, 0, 0),
3016        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3017        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3018        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
3019        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
3020        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
3021        ::capnp::word(114, 118, 101, 114, 46, 103, 101, 116),
3022        ::capnp::word(83, 101, 114, 118, 101, 114, 73, 110),
3023        ::capnp::word(102, 111, 36, 82, 101, 115, 117, 108),
3024        ::capnp::word(116, 115, 0, 0, 0, 0, 0, 0),
3025        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
3026        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3027        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
3028        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3029        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
3030        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3031        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
3032        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
3033        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
3034        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
3035        ::capnp::word(102, 56, 236, 71, 37, 142, 198, 242),
3036        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3037        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3038        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
3039        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3040        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3041      ];
3042      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
3043        match index {
3044          0 => <crate::tunnelrpc_capnp::server_info::Owned as ::capnp::introspect::Introspect>::introspect(),
3045          _ => panic!("invalid field index {}", index),
3046        }
3047      }
3048      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
3049        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
3050      }
3051      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
3052        encoded_node: &ENCODED_NODE,
3053        nonunion_members: NONUNION_MEMBERS,
3054        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
3055        members_by_name: MEMBERS_BY_NAME,
3056      };
3057      pub static NONUNION_MEMBERS : &[u16] = &[0];
3058      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
3059      pub static MEMBERS_BY_NAME : &[u16] = &[0];
3060      pub const TYPE_ID: u64 = 0xe3e3_7d09_6a5b_564e;
3061    }
3062  }
3063
3064  pub mod unregister_tunnel_params {
3065    #[derive(Copy, Clone)]
3066    pub struct Owned(());
3067    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
3068    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3069    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3070    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
3071
3072    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
3073    impl <> ::core::marker::Copy for Reader<'_,>  {}
3074    impl <> ::core::clone::Clone for Reader<'_,>  {
3075      fn clone(&self) -> Self { *self }
3076    }
3077
3078    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
3079      const TYPE_ID: u64 = _private::TYPE_ID;
3080    }
3081    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
3082      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
3083        Self { reader,  }
3084      }
3085    }
3086
3087    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
3088      fn from(reader: Reader<'a,>) -> Self {
3089        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3090      }
3091    }
3092
3093    impl <> ::core::fmt::Debug for Reader<'_,>  {
3094      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
3095        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
3096      }
3097    }
3098
3099    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
3100      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3101        ::core::result::Result::Ok(reader.get_struct(default)?.into())
3102      }
3103    }
3104
3105    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
3106      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
3107        self.reader
3108      }
3109    }
3110
3111    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
3112      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
3113        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
3114      }
3115    }
3116
3117    impl <> Reader<'_,>  {
3118      pub fn reborrow(&self) -> Reader<'_,> {
3119        Self { .. *self }
3120      }
3121
3122      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3123        self.reader.total_size()
3124      }
3125      #[inline]
3126      pub fn get_grace_period_nano_sec(self) -> i64 {
3127        self.reader.get_data_field::<i64>(0)
3128      }
3129    }
3130
3131    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
3132    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
3133      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 0 };
3134    }
3135    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
3136      const TYPE_ID: u64 = _private::TYPE_ID;
3137    }
3138    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
3139      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
3140        Self { builder,  }
3141      }
3142    }
3143
3144    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
3145      fn from(builder: Builder<'a,>) -> Self {
3146        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3147      }
3148    }
3149
3150    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
3151      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
3152        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
3153      }
3154    }
3155
3156    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
3157      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
3158        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
3159      }
3160      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3161        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
3162      }
3163    }
3164
3165    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
3166      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
3167    }
3168
3169    impl <'a,> Builder<'a,>  {
3170      pub fn into_reader(self) -> Reader<'a,> {
3171        self.builder.into_reader().into()
3172      }
3173      pub fn reborrow(&mut self) -> Builder<'_,> {
3174        Builder { builder: self.builder.reborrow() }
3175      }
3176      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
3177        self.builder.as_reader().into()
3178      }
3179
3180      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3181        self.builder.as_reader().total_size()
3182      }
3183      #[inline]
3184      pub fn get_grace_period_nano_sec(self) -> i64 {
3185        self.builder.get_data_field::<i64>(0)
3186      }
3187      #[inline]
3188      pub fn set_grace_period_nano_sec(&mut self, value: i64)  {
3189        self.builder.set_data_field::<i64>(0, value);
3190      }
3191    }
3192
3193    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
3194    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
3195      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
3196        Self { _typeless: typeless,  }
3197      }
3198    }
3199    impl Pipeline  {
3200    }
3201    mod _private {
3202      pub static ENCODED_NODE: [::capnp::Word; 37] = [
3203        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
3204        ::capnp::word(207, 44, 188, 186, 144, 179, 135, 155),
3205        ::capnp::word(29, 0, 0, 0, 1, 0, 1, 0),
3206        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3207        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
3208        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3209        ::capnp::word(21, 0, 0, 0, 170, 1, 0, 0),
3210        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3211        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3212        ::capnp::word(37, 0, 0, 0, 63, 0, 0, 0),
3213        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3214        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3215        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
3216        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
3217        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
3218        ::capnp::word(114, 118, 101, 114, 46, 117, 110, 114),
3219        ::capnp::word(101, 103, 105, 115, 116, 101, 114, 84),
3220        ::capnp::word(117, 110, 110, 101, 108, 36, 80, 97),
3221        ::capnp::word(114, 97, 109, 115, 0, 0, 0, 0),
3222        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
3223        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3224        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
3225        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3226        ::capnp::word(13, 0, 0, 0, 154, 0, 0, 0),
3227        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3228        ::capnp::word(16, 0, 0, 0, 3, 0, 1, 0),
3229        ::capnp::word(28, 0, 0, 0, 2, 0, 1, 0),
3230        ::capnp::word(103, 114, 97, 99, 101, 80, 101, 114),
3231        ::capnp::word(105, 111, 100, 78, 97, 110, 111, 83),
3232        ::capnp::word(101, 99, 0, 0, 0, 0, 0, 0),
3233        ::capnp::word(5, 0, 0, 0, 0, 0, 0, 0),
3234        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3235        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3236        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3237        ::capnp::word(5, 0, 0, 0, 0, 0, 0, 0),
3238        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3239        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3240      ];
3241      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
3242        match index {
3243          0 => <i64 as ::capnp::introspect::Introspect>::introspect(),
3244          _ => panic!("invalid field index {}", index),
3245        }
3246      }
3247      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
3248        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
3249      }
3250      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
3251        encoded_node: &ENCODED_NODE,
3252        nonunion_members: NONUNION_MEMBERS,
3253        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
3254        members_by_name: MEMBERS_BY_NAME,
3255      };
3256      pub static NONUNION_MEMBERS : &[u16] = &[0];
3257      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
3258      pub static MEMBERS_BY_NAME : &[u16] = &[0];
3259      pub const TYPE_ID: u64 = 0x9b87_b390_babc_2ccf;
3260    }
3261  }
3262
3263  pub mod unregister_tunnel_results {
3264    #[derive(Copy, Clone)]
3265    pub struct Owned(());
3266    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
3267    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3268    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3269    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
3270
3271    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
3272    impl <> ::core::marker::Copy for Reader<'_,>  {}
3273    impl <> ::core::clone::Clone for Reader<'_,>  {
3274      fn clone(&self) -> Self { *self }
3275    }
3276
3277    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
3278      const TYPE_ID: u64 = _private::TYPE_ID;
3279    }
3280    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
3281      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
3282        Self { reader,  }
3283      }
3284    }
3285
3286    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
3287      fn from(reader: Reader<'a,>) -> Self {
3288        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3289      }
3290    }
3291
3292    impl <> ::core::fmt::Debug for Reader<'_,>  {
3293      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
3294        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
3295      }
3296    }
3297
3298    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
3299      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3300        ::core::result::Result::Ok(reader.get_struct(default)?.into())
3301      }
3302    }
3303
3304    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
3305      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
3306        self.reader
3307      }
3308    }
3309
3310    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
3311      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
3312        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
3313      }
3314    }
3315
3316    impl <> Reader<'_,>  {
3317      pub fn reborrow(&self) -> Reader<'_,> {
3318        Self { .. *self }
3319      }
3320
3321      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3322        self.reader.total_size()
3323      }
3324    }
3325
3326    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
3327    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
3328      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
3329    }
3330    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
3331      const TYPE_ID: u64 = _private::TYPE_ID;
3332    }
3333    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
3334      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
3335        Self { builder,  }
3336      }
3337    }
3338
3339    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
3340      fn from(builder: Builder<'a,>) -> Self {
3341        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3342      }
3343    }
3344
3345    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
3346      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
3347        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
3348      }
3349    }
3350
3351    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
3352      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
3353        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
3354      }
3355      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3356        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
3357      }
3358    }
3359
3360    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
3361      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
3362    }
3363
3364    impl <'a,> Builder<'a,>  {
3365      pub fn into_reader(self) -> Reader<'a,> {
3366        self.builder.into_reader().into()
3367      }
3368      pub fn reborrow(&mut self) -> Builder<'_,> {
3369        Builder { builder: self.builder.reborrow() }
3370      }
3371      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
3372        self.builder.as_reader().into()
3373      }
3374
3375      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3376        self.builder.as_reader().total_size()
3377      }
3378    }
3379
3380    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
3381    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
3382      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
3383        Self { _typeless: typeless,  }
3384      }
3385    }
3386    impl Pipeline  {
3387    }
3388    mod _private {
3389      pub static ENCODED_NODE: [::capnp::Word; 19] = [
3390        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
3391        ::capnp::word(148, 216, 189, 78, 109, 145, 154, 162),
3392        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
3393        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3394        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
3395        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3396        ::capnp::word(21, 0, 0, 0, 178, 1, 0, 0),
3397        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3398        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3399        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3400        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3401        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3402        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
3403        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
3404        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
3405        ::capnp::word(114, 118, 101, 114, 46, 117, 110, 114),
3406        ::capnp::word(101, 103, 105, 115, 116, 101, 114, 84),
3407        ::capnp::word(117, 110, 110, 101, 108, 36, 82, 101),
3408        ::capnp::word(115, 117, 108, 116, 115, 0, 0, 0),
3409      ];
3410      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
3411        panic!("invalid field index {}", index)
3412      }
3413      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
3414        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
3415      }
3416      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
3417        encoded_node: &ENCODED_NODE,
3418        nonunion_members: NONUNION_MEMBERS,
3419        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
3420        members_by_name: MEMBERS_BY_NAME,
3421      };
3422      pub static NONUNION_MEMBERS : &[u16] = &[];
3423      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
3424      pub static MEMBERS_BY_NAME : &[u16] = &[];
3425      pub const TYPE_ID: u64 = 0xa29a_916d_4ebd_d894;
3426    }
3427  }
3428
3429  pub mod obsolete_declarative_tunnel_connect_params {
3430    #[derive(Copy, Clone)]
3431    pub struct Owned(());
3432    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
3433    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3434    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3435    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
3436
3437    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
3438    impl <> ::core::marker::Copy for Reader<'_,>  {}
3439    impl <> ::core::clone::Clone for Reader<'_,>  {
3440      fn clone(&self) -> Self { *self }
3441    }
3442
3443    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
3444      const TYPE_ID: u64 = _private::TYPE_ID;
3445    }
3446    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
3447      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
3448        Self { reader,  }
3449      }
3450    }
3451
3452    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
3453      fn from(reader: Reader<'a,>) -> Self {
3454        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3455      }
3456    }
3457
3458    impl <> ::core::fmt::Debug for Reader<'_,>  {
3459      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
3460        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
3461      }
3462    }
3463
3464    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
3465      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3466        ::core::result::Result::Ok(reader.get_struct(default)?.into())
3467      }
3468    }
3469
3470    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
3471      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
3472        self.reader
3473      }
3474    }
3475
3476    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
3477      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
3478        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
3479      }
3480    }
3481
3482    impl <> Reader<'_,>  {
3483      pub fn reborrow(&self) -> Reader<'_,> {
3484        Self { .. *self }
3485      }
3486
3487      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3488        self.reader.total_size()
3489      }
3490    }
3491
3492    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
3493    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
3494      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
3495    }
3496    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
3497      const TYPE_ID: u64 = _private::TYPE_ID;
3498    }
3499    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
3500      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
3501        Self { builder,  }
3502      }
3503    }
3504
3505    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
3506      fn from(builder: Builder<'a,>) -> Self {
3507        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3508      }
3509    }
3510
3511    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
3512      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
3513        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
3514      }
3515    }
3516
3517    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
3518      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
3519        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
3520      }
3521      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3522        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
3523      }
3524    }
3525
3526    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
3527      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
3528    }
3529
3530    impl <'a,> Builder<'a,>  {
3531      pub fn into_reader(self) -> Reader<'a,> {
3532        self.builder.into_reader().into()
3533      }
3534      pub fn reborrow(&mut self) -> Builder<'_,> {
3535        Builder { builder: self.builder.reborrow() }
3536      }
3537      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
3538        self.builder.as_reader().into()
3539      }
3540
3541      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3542        self.builder.as_reader().total_size()
3543      }
3544    }
3545
3546    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
3547    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
3548      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
3549        Self { _typeless: typeless,  }
3550      }
3551    }
3552    impl Pipeline  {
3553    }
3554    mod _private {
3555      pub static ENCODED_NODE: [::capnp::Word; 21] = [
3556        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
3557        ::capnp::word(53, 218, 229, 79, 77, 178, 102, 167),
3558        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
3559        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3560        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
3561        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3562        ::capnp::word(21, 0, 0, 0, 42, 2, 0, 0),
3563        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3564        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3565        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3566        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3567        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3568        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
3569        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
3570        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
3571        ::capnp::word(114, 118, 101, 114, 46, 111, 98, 115),
3572        ::capnp::word(111, 108, 101, 116, 101, 68, 101, 99),
3573        ::capnp::word(108, 97, 114, 97, 116, 105, 118, 101),
3574        ::capnp::word(84, 117, 110, 110, 101, 108, 67, 111),
3575        ::capnp::word(110, 110, 101, 99, 116, 36, 80, 97),
3576        ::capnp::word(114, 97, 109, 115, 0, 0, 0, 0),
3577      ];
3578      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
3579        panic!("invalid field index {}", index)
3580      }
3581      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
3582        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
3583      }
3584      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
3585        encoded_node: &ENCODED_NODE,
3586        nonunion_members: NONUNION_MEMBERS,
3587        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
3588        members_by_name: MEMBERS_BY_NAME,
3589      };
3590      pub static NONUNION_MEMBERS : &[u16] = &[];
3591      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
3592      pub static MEMBERS_BY_NAME : &[u16] = &[];
3593      pub const TYPE_ID: u64 = 0xa766_b24d_4fe5_da35;
3594    }
3595  }
3596
3597  pub mod obsolete_declarative_tunnel_connect_results {
3598    #[derive(Copy, Clone)]
3599    pub struct Owned(());
3600    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
3601    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3602    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3603    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
3604
3605    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
3606    impl <> ::core::marker::Copy for Reader<'_,>  {}
3607    impl <> ::core::clone::Clone for Reader<'_,>  {
3608      fn clone(&self) -> Self { *self }
3609    }
3610
3611    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
3612      const TYPE_ID: u64 = _private::TYPE_ID;
3613    }
3614    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
3615      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
3616        Self { reader,  }
3617      }
3618    }
3619
3620    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
3621      fn from(reader: Reader<'a,>) -> Self {
3622        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3623      }
3624    }
3625
3626    impl <> ::core::fmt::Debug for Reader<'_,>  {
3627      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
3628        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
3629      }
3630    }
3631
3632    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
3633      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3634        ::core::result::Result::Ok(reader.get_struct(default)?.into())
3635      }
3636    }
3637
3638    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
3639      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
3640        self.reader
3641      }
3642    }
3643
3644    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
3645      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
3646        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
3647      }
3648    }
3649
3650    impl <> Reader<'_,>  {
3651      pub fn reborrow(&self) -> Reader<'_,> {
3652        Self { .. *self }
3653      }
3654
3655      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3656        self.reader.total_size()
3657      }
3658    }
3659
3660    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
3661    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
3662      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
3663    }
3664    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
3665      const TYPE_ID: u64 = _private::TYPE_ID;
3666    }
3667    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
3668      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
3669        Self { builder,  }
3670      }
3671    }
3672
3673    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
3674      fn from(builder: Builder<'a,>) -> Self {
3675        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3676      }
3677    }
3678
3679    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
3680      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
3681        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
3682      }
3683    }
3684
3685    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
3686      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
3687        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
3688      }
3689      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3690        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
3691      }
3692    }
3693
3694    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
3695      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
3696    }
3697
3698    impl <'a,> Builder<'a,>  {
3699      pub fn into_reader(self) -> Reader<'a,> {
3700        self.builder.into_reader().into()
3701      }
3702      pub fn reborrow(&mut self) -> Builder<'_,> {
3703        Builder { builder: self.builder.reborrow() }
3704      }
3705      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
3706        self.builder.as_reader().into()
3707      }
3708
3709      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3710        self.builder.as_reader().total_size()
3711      }
3712    }
3713
3714    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
3715    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
3716      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
3717        Self { _typeless: typeless,  }
3718      }
3719    }
3720    impl Pipeline  {
3721    }
3722    mod _private {
3723      pub static ENCODED_NODE: [::capnp::Word; 21] = [
3724        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
3725        ::capnp::word(124, 239, 153, 72, 143, 92, 172, 254),
3726        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
3727        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3728        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
3729        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3730        ::capnp::word(21, 0, 0, 0, 50, 2, 0, 0),
3731        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3732        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3733        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3734        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3735        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3736        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
3737        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
3738        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
3739        ::capnp::word(114, 118, 101, 114, 46, 111, 98, 115),
3740        ::capnp::word(111, 108, 101, 116, 101, 68, 101, 99),
3741        ::capnp::word(108, 97, 114, 97, 116, 105, 118, 101),
3742        ::capnp::word(84, 117, 110, 110, 101, 108, 67, 111),
3743        ::capnp::word(110, 110, 101, 99, 116, 36, 82, 101),
3744        ::capnp::word(115, 117, 108, 116, 115, 0, 0, 0),
3745      ];
3746      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
3747        panic!("invalid field index {}", index)
3748      }
3749      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
3750        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
3751      }
3752      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
3753        encoded_node: &ENCODED_NODE,
3754        nonunion_members: NONUNION_MEMBERS,
3755        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
3756        members_by_name: MEMBERS_BY_NAME,
3757      };
3758      pub static NONUNION_MEMBERS : &[u16] = &[];
3759      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
3760      pub static MEMBERS_BY_NAME : &[u16] = &[];
3761      pub const TYPE_ID: u64 = 0xfeac_5c8f_4899_ef7c;
3762    }
3763  }
3764
3765  pub mod authenticate_params {
3766    #[derive(Copy, Clone)]
3767    pub struct Owned(());
3768    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
3769    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3770    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
3771    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
3772
3773    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
3774    impl <> ::core::marker::Copy for Reader<'_,>  {}
3775    impl <> ::core::clone::Clone for Reader<'_,>  {
3776      fn clone(&self) -> Self { *self }
3777    }
3778
3779    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
3780      const TYPE_ID: u64 = _private::TYPE_ID;
3781    }
3782    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
3783      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
3784        Self { reader,  }
3785      }
3786    }
3787
3788    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
3789      fn from(reader: Reader<'a,>) -> Self {
3790        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3791      }
3792    }
3793
3794    impl <> ::core::fmt::Debug for Reader<'_,>  {
3795      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
3796        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
3797      }
3798    }
3799
3800    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
3801      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3802        ::core::result::Result::Ok(reader.get_struct(default)?.into())
3803      }
3804    }
3805
3806    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
3807      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
3808        self.reader
3809      }
3810    }
3811
3812    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
3813      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
3814        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
3815      }
3816    }
3817
3818    impl <'a,> Reader<'a,>  {
3819      pub fn reborrow(&self) -> Reader<'_,> {
3820        Self { .. *self }
3821      }
3822
3823      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3824        self.reader.total_size()
3825      }
3826      #[inline]
3827      pub fn get_origin_cert(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
3828        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
3829      }
3830      #[inline]
3831      pub fn has_origin_cert(&self) -> bool {
3832        !self.reader.get_pointer_field(0).is_null()
3833      }
3834      #[inline]
3835      pub fn get_hostname(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
3836        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
3837      }
3838      #[inline]
3839      pub fn has_hostname(&self) -> bool {
3840        !self.reader.get_pointer_field(1).is_null()
3841      }
3842      #[inline]
3843      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::registration_options::Reader<'a>> {
3844        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
3845      }
3846      #[inline]
3847      pub fn has_options(&self) -> bool {
3848        !self.reader.get_pointer_field(2).is_null()
3849      }
3850    }
3851
3852    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
3853    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
3854      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 3 };
3855    }
3856    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
3857      const TYPE_ID: u64 = _private::TYPE_ID;
3858    }
3859    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
3860      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
3861        Self { builder,  }
3862      }
3863    }
3864
3865    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
3866      fn from(builder: Builder<'a,>) -> Self {
3867        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
3868      }
3869    }
3870
3871    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
3872      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
3873        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
3874      }
3875    }
3876
3877    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
3878      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
3879        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
3880      }
3881      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
3882        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
3883      }
3884    }
3885
3886    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
3887      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
3888    }
3889
3890    impl <'a,> Builder<'a,>  {
3891      pub fn into_reader(self) -> Reader<'a,> {
3892        self.builder.into_reader().into()
3893      }
3894      pub fn reborrow(&mut self) -> Builder<'_,> {
3895        Builder { builder: self.builder.reborrow() }
3896      }
3897      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
3898        self.builder.as_reader().into()
3899      }
3900
3901      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
3902        self.builder.as_reader().total_size()
3903      }
3904      #[inline]
3905      pub fn get_origin_cert(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
3906        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
3907      }
3908      #[inline]
3909      pub fn set_origin_cert(&mut self, value: ::capnp::data::Reader<'_>)  {
3910        self.builder.reborrow().get_pointer_field(0).set_data(value);
3911      }
3912      #[inline]
3913      pub fn init_origin_cert(self, size: u32) -> ::capnp::data::Builder<'a> {
3914        self.builder.get_pointer_field(0).init_data(size)
3915      }
3916      #[inline]
3917      pub fn has_origin_cert(&self) -> bool {
3918        !self.builder.is_pointer_field_null(0)
3919      }
3920      #[inline]
3921      pub fn get_hostname(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
3922        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
3923      }
3924      #[inline]
3925      pub fn set_hostname(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
3926        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
3927      }
3928      #[inline]
3929      pub fn init_hostname(self, size: u32) -> ::capnp::text::Builder<'a> {
3930        self.builder.get_pointer_field(1).init_text(size)
3931      }
3932      #[inline]
3933      pub fn has_hostname(&self) -> bool {
3934        !self.builder.is_pointer_field_null(1)
3935      }
3936      #[inline]
3937      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::registration_options::Builder<'a>> {
3938        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
3939      }
3940      #[inline]
3941      pub fn set_options(&mut self, value: crate::tunnelrpc_capnp::registration_options::Reader<'_>) -> ::capnp::Result<()> {
3942        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false)
3943      }
3944      #[inline]
3945      pub fn init_options(self, ) -> crate::tunnelrpc_capnp::registration_options::Builder<'a> {
3946        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(2), 0)
3947      }
3948      #[inline]
3949      pub fn has_options(&self) -> bool {
3950        !self.builder.is_pointer_field_null(2)
3951      }
3952    }
3953
3954    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
3955    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
3956      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
3957        Self { _typeless: typeless,  }
3958      }
3959    }
3960    impl Pipeline  {
3961      pub fn get_options(&self) -> crate::tunnelrpc_capnp::registration_options::Pipeline {
3962        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(2))
3963      }
3964    }
3965    mod _private {
3966      pub static ENCODED_NODE: [::capnp::Word; 67] = [
3967        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
3968        ::capnp::word(243, 148, 24, 171, 161, 206, 200, 133),
3969        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
3970        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3971        ::capnp::word(3, 0, 7, 0, 0, 0, 0, 0),
3972        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3973        ::capnp::word(21, 0, 0, 0, 138, 1, 0, 0),
3974        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3975        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3976        ::capnp::word(37, 0, 0, 0, 175, 0, 0, 0),
3977        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3978        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3979        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
3980        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
3981        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
3982        ::capnp::word(114, 118, 101, 114, 46, 97, 117, 116),
3983        ::capnp::word(104, 101, 110, 116, 105, 99, 97, 116),
3984        ::capnp::word(101, 36, 80, 97, 114, 97, 109, 115),
3985        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3986        ::capnp::word(12, 0, 0, 0, 3, 0, 4, 0),
3987        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3988        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
3989        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3990        ::capnp::word(69, 0, 0, 0, 90, 0, 0, 0),
3991        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3992        ::capnp::word(68, 0, 0, 0, 3, 0, 1, 0),
3993        ::capnp::word(80, 0, 0, 0, 2, 0, 1, 0),
3994        ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
3995        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
3996        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3997        ::capnp::word(77, 0, 0, 0, 74, 0, 0, 0),
3998        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
3999        ::capnp::word(76, 0, 0, 0, 3, 0, 1, 0),
4000        ::capnp::word(88, 0, 0, 0, 2, 0, 1, 0),
4001        ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
4002        ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
4003        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4004        ::capnp::word(85, 0, 0, 0, 66, 0, 0, 0),
4005        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4006        ::capnp::word(80, 0, 0, 0, 3, 0, 1, 0),
4007        ::capnp::word(92, 0, 0, 0, 2, 0, 1, 0),
4008        ::capnp::word(111, 114, 105, 103, 105, 110, 67, 101),
4009        ::capnp::word(114, 116, 0, 0, 0, 0, 0, 0),
4010        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4011        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4012        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4013        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4014        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4015        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4016        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4017        ::capnp::word(104, 111, 115, 116, 110, 97, 109, 101),
4018        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4019        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
4020        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4021        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4022        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4023        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
4024        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4025        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4026        ::capnp::word(111, 112, 116, 105, 111, 110, 115, 0),
4027        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4028        ::capnp::word(74, 91, 147, 146, 5, 229, 147, 199),
4029        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4030        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4031        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4032        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4033        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4034      ];
4035      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
4036        match index {
4037          0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
4038          1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
4039          2 => <crate::tunnelrpc_capnp::registration_options::Owned as ::capnp::introspect::Introspect>::introspect(),
4040          _ => panic!("invalid field index {}", index),
4041        }
4042      }
4043      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
4044        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
4045      }
4046      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
4047        encoded_node: &ENCODED_NODE,
4048        nonunion_members: NONUNION_MEMBERS,
4049        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
4050        members_by_name: MEMBERS_BY_NAME,
4051      };
4052      pub static NONUNION_MEMBERS : &[u16] = &[0,1,2];
4053      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
4054      pub static MEMBERS_BY_NAME : &[u16] = &[1,2,0];
4055      pub const TYPE_ID: u64 = 0x85c8_cea1_ab18_94f3;
4056    }
4057  }
4058
4059  pub mod authenticate_results {
4060    #[derive(Copy, Clone)]
4061    pub struct Owned(());
4062    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
4063    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4064    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4065    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
4066
4067    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
4068    impl <> ::core::marker::Copy for Reader<'_,>  {}
4069    impl <> ::core::clone::Clone for Reader<'_,>  {
4070      fn clone(&self) -> Self { *self }
4071    }
4072
4073    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
4074      const TYPE_ID: u64 = _private::TYPE_ID;
4075    }
4076    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
4077      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
4078        Self { reader,  }
4079      }
4080    }
4081
4082    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
4083      fn from(reader: Reader<'a,>) -> Self {
4084        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4085      }
4086    }
4087
4088    impl <> ::core::fmt::Debug for Reader<'_,>  {
4089      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
4090        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
4091      }
4092    }
4093
4094    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
4095      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4096        ::core::result::Result::Ok(reader.get_struct(default)?.into())
4097      }
4098    }
4099
4100    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
4101      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
4102        self.reader
4103      }
4104    }
4105
4106    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
4107      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
4108        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
4109      }
4110    }
4111
4112    impl <'a,> Reader<'a,>  {
4113      pub fn reborrow(&self) -> Reader<'_,> {
4114        Self { .. *self }
4115      }
4116
4117      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4118        self.reader.total_size()
4119      }
4120      #[inline]
4121      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::authenticate_response::Reader<'a>> {
4122        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
4123      }
4124      #[inline]
4125      pub fn has_result(&self) -> bool {
4126        !self.reader.get_pointer_field(0).is_null()
4127      }
4128    }
4129
4130    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
4131    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
4132      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
4133    }
4134    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
4135      const TYPE_ID: u64 = _private::TYPE_ID;
4136    }
4137    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
4138      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
4139        Self { builder,  }
4140      }
4141    }
4142
4143    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
4144      fn from(builder: Builder<'a,>) -> Self {
4145        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4146      }
4147    }
4148
4149    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
4150      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
4151        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
4152      }
4153    }
4154
4155    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
4156      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
4157        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
4158      }
4159      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4160        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
4161      }
4162    }
4163
4164    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
4165      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
4166    }
4167
4168    impl <'a,> Builder<'a,>  {
4169      pub fn into_reader(self) -> Reader<'a,> {
4170        self.builder.into_reader().into()
4171      }
4172      pub fn reborrow(&mut self) -> Builder<'_,> {
4173        Builder { builder: self.builder.reborrow() }
4174      }
4175      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
4176        self.builder.as_reader().into()
4177      }
4178
4179      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4180        self.builder.as_reader().total_size()
4181      }
4182      #[inline]
4183      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::authenticate_response::Builder<'a>> {
4184        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
4185      }
4186      #[inline]
4187      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::authenticate_response::Reader<'_>) -> ::capnp::Result<()> {
4188        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
4189      }
4190      #[inline]
4191      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::authenticate_response::Builder<'a> {
4192        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
4193      }
4194      #[inline]
4195      pub fn has_result(&self) -> bool {
4196        !self.builder.is_pointer_field_null(0)
4197      }
4198    }
4199
4200    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
4201    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
4202      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
4203        Self { _typeless: typeless,  }
4204      }
4205    }
4206    impl Pipeline  {
4207      pub fn get_result(&self) -> crate::tunnelrpc_capnp::authenticate_response::Pipeline {
4208        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
4209      }
4210    }
4211    mod _private {
4212      pub static ENCODED_NODE: [::capnp::Word; 35] = [
4213        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
4214        ::capnp::word(150, 7, 156, 227, 128, 223, 94, 252),
4215        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
4216        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4217        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
4218        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4219        ::capnp::word(21, 0, 0, 0, 146, 1, 0, 0),
4220        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4221        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4222        ::capnp::word(37, 0, 0, 0, 63, 0, 0, 0),
4223        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4224        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4225        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
4226        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
4227        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
4228        ::capnp::word(114, 118, 101, 114, 46, 97, 117, 116),
4229        ::capnp::word(104, 101, 110, 116, 105, 99, 97, 116),
4230        ::capnp::word(101, 36, 82, 101, 115, 117, 108, 116),
4231        ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
4232        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
4233        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4234        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
4235        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4236        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
4237        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4238        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
4239        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
4240        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
4241        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4242        ::capnp::word(101, 42, 210, 122, 160, 37, 195, 130),
4243        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4244        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4245        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4246        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4247        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4248      ];
4249      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
4250        match index {
4251          0 => <crate::tunnelrpc_capnp::authenticate_response::Owned as ::capnp::introspect::Introspect>::introspect(),
4252          _ => panic!("invalid field index {}", index),
4253        }
4254      }
4255      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
4256        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
4257      }
4258      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
4259        encoded_node: &ENCODED_NODE,
4260        nonunion_members: NONUNION_MEMBERS,
4261        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
4262        members_by_name: MEMBERS_BY_NAME,
4263      };
4264      pub static NONUNION_MEMBERS : &[u16] = &[0];
4265      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
4266      pub static MEMBERS_BY_NAME : &[u16] = &[0];
4267      pub const TYPE_ID: u64 = 0xfc5e_df80_e39c_0796;
4268    }
4269  }
4270
4271  pub mod reconnect_tunnel_params {
4272    #[derive(Copy, Clone)]
4273    pub struct Owned(());
4274    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
4275    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4276    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4277    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
4278
4279    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
4280    impl <> ::core::marker::Copy for Reader<'_,>  {}
4281    impl <> ::core::clone::Clone for Reader<'_,>  {
4282      fn clone(&self) -> Self { *self }
4283    }
4284
4285    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
4286      const TYPE_ID: u64 = _private::TYPE_ID;
4287    }
4288    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
4289      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
4290        Self { reader,  }
4291      }
4292    }
4293
4294    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
4295      fn from(reader: Reader<'a,>) -> Self {
4296        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4297      }
4298    }
4299
4300    impl <> ::core::fmt::Debug for Reader<'_,>  {
4301      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
4302        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
4303      }
4304    }
4305
4306    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
4307      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4308        ::core::result::Result::Ok(reader.get_struct(default)?.into())
4309      }
4310    }
4311
4312    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
4313      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
4314        self.reader
4315      }
4316    }
4317
4318    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
4319      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
4320        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
4321      }
4322    }
4323
4324    impl <'a,> Reader<'a,>  {
4325      pub fn reborrow(&self) -> Reader<'_,> {
4326        Self { .. *self }
4327      }
4328
4329      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4330        self.reader.total_size()
4331      }
4332      #[inline]
4333      pub fn get_jwt(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
4334        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
4335      }
4336      #[inline]
4337      pub fn has_jwt(&self) -> bool {
4338        !self.reader.get_pointer_field(0).is_null()
4339      }
4340      #[inline]
4341      pub fn get_event_digest(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
4342        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
4343      }
4344      #[inline]
4345      pub fn has_event_digest(&self) -> bool {
4346        !self.reader.get_pointer_field(1).is_null()
4347      }
4348      #[inline]
4349      pub fn get_conn_digest(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
4350        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
4351      }
4352      #[inline]
4353      pub fn has_conn_digest(&self) -> bool {
4354        !self.reader.get_pointer_field(2).is_null()
4355      }
4356      #[inline]
4357      pub fn get_hostname(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
4358        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(3), ::core::option::Option::None)
4359      }
4360      #[inline]
4361      pub fn has_hostname(&self) -> bool {
4362        !self.reader.get_pointer_field(3).is_null()
4363      }
4364      #[inline]
4365      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::registration_options::Reader<'a>> {
4366        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(4), ::core::option::Option::None)
4367      }
4368      #[inline]
4369      pub fn has_options(&self) -> bool {
4370        !self.reader.get_pointer_field(4).is_null()
4371      }
4372    }
4373
4374    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
4375    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
4376      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 5 };
4377    }
4378    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
4379      const TYPE_ID: u64 = _private::TYPE_ID;
4380    }
4381    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
4382      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
4383        Self { builder,  }
4384      }
4385    }
4386
4387    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
4388      fn from(builder: Builder<'a,>) -> Self {
4389        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4390      }
4391    }
4392
4393    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
4394      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
4395        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
4396      }
4397    }
4398
4399    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
4400      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
4401        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
4402      }
4403      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4404        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
4405      }
4406    }
4407
4408    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
4409      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
4410    }
4411
4412    impl <'a,> Builder<'a,>  {
4413      pub fn into_reader(self) -> Reader<'a,> {
4414        self.builder.into_reader().into()
4415      }
4416      pub fn reborrow(&mut self) -> Builder<'_,> {
4417        Builder { builder: self.builder.reborrow() }
4418      }
4419      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
4420        self.builder.as_reader().into()
4421      }
4422
4423      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4424        self.builder.as_reader().total_size()
4425      }
4426      #[inline]
4427      pub fn get_jwt(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
4428        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
4429      }
4430      #[inline]
4431      pub fn set_jwt(&mut self, value: ::capnp::data::Reader<'_>)  {
4432        self.builder.reborrow().get_pointer_field(0).set_data(value);
4433      }
4434      #[inline]
4435      pub fn init_jwt(self, size: u32) -> ::capnp::data::Builder<'a> {
4436        self.builder.get_pointer_field(0).init_data(size)
4437      }
4438      #[inline]
4439      pub fn has_jwt(&self) -> bool {
4440        !self.builder.is_pointer_field_null(0)
4441      }
4442      #[inline]
4443      pub fn get_event_digest(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
4444        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
4445      }
4446      #[inline]
4447      pub fn set_event_digest(&mut self, value: ::capnp::data::Reader<'_>)  {
4448        self.builder.reborrow().get_pointer_field(1).set_data(value);
4449      }
4450      #[inline]
4451      pub fn init_event_digest(self, size: u32) -> ::capnp::data::Builder<'a> {
4452        self.builder.get_pointer_field(1).init_data(size)
4453      }
4454      #[inline]
4455      pub fn has_event_digest(&self) -> bool {
4456        !self.builder.is_pointer_field_null(1)
4457      }
4458      #[inline]
4459      pub fn get_conn_digest(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
4460        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
4461      }
4462      #[inline]
4463      pub fn set_conn_digest(&mut self, value: ::capnp::data::Reader<'_>)  {
4464        self.builder.reborrow().get_pointer_field(2).set_data(value);
4465      }
4466      #[inline]
4467      pub fn init_conn_digest(self, size: u32) -> ::capnp::data::Builder<'a> {
4468        self.builder.get_pointer_field(2).init_data(size)
4469      }
4470      #[inline]
4471      pub fn has_conn_digest(&self) -> bool {
4472        !self.builder.is_pointer_field_null(2)
4473      }
4474      #[inline]
4475      pub fn get_hostname(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
4476        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(3), ::core::option::Option::None)
4477      }
4478      #[inline]
4479      pub fn set_hostname(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
4480        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(3), value, false).unwrap()
4481      }
4482      #[inline]
4483      pub fn init_hostname(self, size: u32) -> ::capnp::text::Builder<'a> {
4484        self.builder.get_pointer_field(3).init_text(size)
4485      }
4486      #[inline]
4487      pub fn has_hostname(&self) -> bool {
4488        !self.builder.is_pointer_field_null(3)
4489      }
4490      #[inline]
4491      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::registration_options::Builder<'a>> {
4492        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(4), ::core::option::Option::None)
4493      }
4494      #[inline]
4495      pub fn set_options(&mut self, value: crate::tunnelrpc_capnp::registration_options::Reader<'_>) -> ::capnp::Result<()> {
4496        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(4), value, false)
4497      }
4498      #[inline]
4499      pub fn init_options(self, ) -> crate::tunnelrpc_capnp::registration_options::Builder<'a> {
4500        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(4), 0)
4501      }
4502      #[inline]
4503      pub fn has_options(&self) -> bool {
4504        !self.builder.is_pointer_field_null(4)
4505      }
4506    }
4507
4508    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
4509    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
4510      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
4511        Self { _typeless: typeless,  }
4512      }
4513    }
4514    impl Pipeline  {
4515      pub fn get_options(&self) -> crate::tunnelrpc_capnp::registration_options::Pipeline {
4516        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(4))
4517      }
4518    }
4519    mod _private {
4520      pub static ENCODED_NODE: [::capnp::Word; 98] = [
4521        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
4522        ::capnp::word(132, 73, 247, 109, 85, 163, 83, 163),
4523        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
4524        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4525        ::capnp::word(5, 0, 7, 0, 0, 0, 0, 0),
4526        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4527        ::capnp::word(21, 0, 0, 0, 162, 1, 0, 0),
4528        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4529        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4530        ::capnp::word(37, 0, 0, 0, 31, 1, 0, 0),
4531        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4532        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4533        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
4534        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
4535        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
4536        ::capnp::word(114, 118, 101, 114, 46, 114, 101, 99),
4537        ::capnp::word(111, 110, 110, 101, 99, 116, 84, 117),
4538        ::capnp::word(110, 110, 101, 108, 36, 80, 97, 114),
4539        ::capnp::word(97, 109, 115, 0, 0, 0, 0, 0),
4540        ::capnp::word(20, 0, 0, 0, 3, 0, 4, 0),
4541        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4542        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
4543        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4544        ::capnp::word(125, 0, 0, 0, 34, 0, 0, 0),
4545        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4546        ::capnp::word(120, 0, 0, 0, 3, 0, 1, 0),
4547        ::capnp::word(132, 0, 0, 0, 2, 0, 1, 0),
4548        ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
4549        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
4550        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4551        ::capnp::word(129, 0, 0, 0, 98, 0, 0, 0),
4552        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4553        ::capnp::word(128, 0, 0, 0, 3, 0, 1, 0),
4554        ::capnp::word(140, 0, 0, 0, 2, 0, 1, 0),
4555        ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
4556        ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
4557        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4558        ::capnp::word(137, 0, 0, 0, 90, 0, 0, 0),
4559        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4560        ::capnp::word(136, 0, 0, 0, 3, 0, 1, 0),
4561        ::capnp::word(148, 0, 0, 0, 2, 0, 1, 0),
4562        ::capnp::word(3, 0, 0, 0, 3, 0, 0, 0),
4563        ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
4564        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4565        ::capnp::word(145, 0, 0, 0, 74, 0, 0, 0),
4566        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4567        ::capnp::word(144, 0, 0, 0, 3, 0, 1, 0),
4568        ::capnp::word(156, 0, 0, 0, 2, 0, 1, 0),
4569        ::capnp::word(4, 0, 0, 0, 4, 0, 0, 0),
4570        ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
4571        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4572        ::capnp::word(153, 0, 0, 0, 66, 0, 0, 0),
4573        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4574        ::capnp::word(148, 0, 0, 0, 3, 0, 1, 0),
4575        ::capnp::word(160, 0, 0, 0, 2, 0, 1, 0),
4576        ::capnp::word(106, 119, 116, 0, 0, 0, 0, 0),
4577        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4578        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4579        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4580        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4581        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4582        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4583        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4584        ::capnp::word(101, 118, 101, 110, 116, 68, 105, 103),
4585        ::capnp::word(101, 115, 116, 0, 0, 0, 0, 0),
4586        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4587        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4588        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4589        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4590        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4591        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4592        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4593        ::capnp::word(99, 111, 110, 110, 68, 105, 103, 101),
4594        ::capnp::word(115, 116, 0, 0, 0, 0, 0, 0),
4595        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4596        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4597        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4598        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4599        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
4600        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4601        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4602        ::capnp::word(104, 111, 115, 116, 110, 97, 109, 101),
4603        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4604        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
4605        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4606        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4607        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4608        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
4609        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4610        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4611        ::capnp::word(111, 112, 116, 105, 111, 110, 115, 0),
4612        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4613        ::capnp::word(74, 91, 147, 146, 5, 229, 147, 199),
4614        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4615        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4616        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4617        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4618        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4619      ];
4620      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
4621        match index {
4622          0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
4623          1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
4624          2 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
4625          3 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
4626          4 => <crate::tunnelrpc_capnp::registration_options::Owned as ::capnp::introspect::Introspect>::introspect(),
4627          _ => panic!("invalid field index {}", index),
4628        }
4629      }
4630      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
4631        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
4632      }
4633      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
4634        encoded_node: &ENCODED_NODE,
4635        nonunion_members: NONUNION_MEMBERS,
4636        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
4637        members_by_name: MEMBERS_BY_NAME,
4638      };
4639      pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4];
4640      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
4641      pub static MEMBERS_BY_NAME : &[u16] = &[2,1,3,0,4];
4642      pub const TYPE_ID: u64 = 0xa353_a355_6df7_4984;
4643    }
4644  }
4645
4646  pub mod reconnect_tunnel_results {
4647    #[derive(Copy, Clone)]
4648    pub struct Owned(());
4649    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
4650    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4651    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4652    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
4653
4654    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
4655    impl <> ::core::marker::Copy for Reader<'_,>  {}
4656    impl <> ::core::clone::Clone for Reader<'_,>  {
4657      fn clone(&self) -> Self { *self }
4658    }
4659
4660    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
4661      const TYPE_ID: u64 = _private::TYPE_ID;
4662    }
4663    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
4664      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
4665        Self { reader,  }
4666      }
4667    }
4668
4669    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
4670      fn from(reader: Reader<'a,>) -> Self {
4671        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4672      }
4673    }
4674
4675    impl <> ::core::fmt::Debug for Reader<'_,>  {
4676      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
4677        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
4678      }
4679    }
4680
4681    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
4682      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4683        ::core::result::Result::Ok(reader.get_struct(default)?.into())
4684      }
4685    }
4686
4687    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
4688      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
4689        self.reader
4690      }
4691    }
4692
4693    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
4694      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
4695        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
4696      }
4697    }
4698
4699    impl <'a,> Reader<'a,>  {
4700      pub fn reborrow(&self) -> Reader<'_,> {
4701        Self { .. *self }
4702      }
4703
4704      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4705        self.reader.total_size()
4706      }
4707      #[inline]
4708      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::tunnel_registration::Reader<'a>> {
4709        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
4710      }
4711      #[inline]
4712      pub fn has_result(&self) -> bool {
4713        !self.reader.get_pointer_field(0).is_null()
4714      }
4715    }
4716
4717    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
4718    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
4719      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
4720    }
4721    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
4722      const TYPE_ID: u64 = _private::TYPE_ID;
4723    }
4724    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
4725      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
4726        Self { builder,  }
4727      }
4728    }
4729
4730    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
4731      fn from(builder: Builder<'a,>) -> Self {
4732        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4733      }
4734    }
4735
4736    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
4737      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
4738        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
4739      }
4740    }
4741
4742    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
4743      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
4744        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
4745      }
4746      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4747        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
4748      }
4749    }
4750
4751    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
4752      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
4753    }
4754
4755    impl <'a,> Builder<'a,>  {
4756      pub fn into_reader(self) -> Reader<'a,> {
4757        self.builder.into_reader().into()
4758      }
4759      pub fn reborrow(&mut self) -> Builder<'_,> {
4760        Builder { builder: self.builder.reborrow() }
4761      }
4762      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
4763        self.builder.as_reader().into()
4764      }
4765
4766      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4767        self.builder.as_reader().total_size()
4768      }
4769      #[inline]
4770      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::tunnel_registration::Builder<'a>> {
4771        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
4772      }
4773      #[inline]
4774      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::tunnel_registration::Reader<'_>) -> ::capnp::Result<()> {
4775        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
4776      }
4777      #[inline]
4778      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::tunnel_registration::Builder<'a> {
4779        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
4780      }
4781      #[inline]
4782      pub fn has_result(&self) -> bool {
4783        !self.builder.is_pointer_field_null(0)
4784      }
4785    }
4786
4787    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
4788    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
4789      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
4790        Self { _typeless: typeless,  }
4791      }
4792    }
4793    impl Pipeline  {
4794      pub fn get_result(&self) -> crate::tunnelrpc_capnp::tunnel_registration::Pipeline {
4795        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
4796      }
4797    }
4798    mod _private {
4799      pub static ENCODED_NODE: [::capnp::Word; 35] = [
4800        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
4801        ::capnp::word(227, 45, 177, 123, 233, 141, 209, 212),
4802        ::capnp::word(29, 0, 0, 0, 1, 0, 0, 0),
4803        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4804        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
4805        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4806        ::capnp::word(21, 0, 0, 0, 170, 1, 0, 0),
4807        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4808        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4809        ::capnp::word(37, 0, 0, 0, 63, 0, 0, 0),
4810        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4811        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4812        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
4813        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
4814        ::capnp::word(84, 117, 110, 110, 101, 108, 83, 101),
4815        ::capnp::word(114, 118, 101, 114, 46, 114, 101, 99),
4816        ::capnp::word(111, 110, 110, 101, 99, 116, 84, 117),
4817        ::capnp::word(110, 110, 101, 108, 36, 82, 101, 115),
4818        ::capnp::word(117, 108, 116, 115, 0, 0, 0, 0),
4819        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
4820        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4821        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
4822        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4823        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
4824        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4825        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
4826        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
4827        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
4828        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4829        ::capnp::word(70, 158, 212, 26, 0, 15, 26, 244),
4830        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4831        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4832        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
4833        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4834        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
4835      ];
4836      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
4837        match index {
4838          0 => <crate::tunnelrpc_capnp::tunnel_registration::Owned as ::capnp::introspect::Introspect>::introspect(),
4839          _ => panic!("invalid field index {}", index),
4840        }
4841      }
4842      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
4843        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
4844      }
4845      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
4846        encoded_node: &ENCODED_NODE,
4847        nonunion_members: NONUNION_MEMBERS,
4848        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
4849        members_by_name: MEMBERS_BY_NAME,
4850      };
4851      pub static NONUNION_MEMBERS : &[u16] = &[0];
4852      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
4853      pub static MEMBERS_BY_NAME : &[u16] = &[0];
4854      pub const TYPE_ID: u64 = 0xd4d1_8de9_7bb1_2de3;
4855    }
4856  }
4857}
4858
4859pub mod tag {
4860  #[derive(Copy, Clone)]
4861  pub struct Owned(());
4862  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
4863  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4864  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
4865  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
4866
4867  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
4868  impl <> ::core::marker::Copy for Reader<'_,>  {}
4869  impl <> ::core::clone::Clone for Reader<'_,>  {
4870    fn clone(&self) -> Self { *self }
4871  }
4872
4873  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
4874    const TYPE_ID: u64 = _private::TYPE_ID;
4875  }
4876  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
4877    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
4878      Self { reader,  }
4879    }
4880  }
4881
4882  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
4883    fn from(reader: Reader<'a,>) -> Self {
4884      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4885    }
4886  }
4887
4888  impl <> ::core::fmt::Debug for Reader<'_,>  {
4889    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
4890      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
4891    }
4892  }
4893
4894  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
4895    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4896      ::core::result::Result::Ok(reader.get_struct(default)?.into())
4897    }
4898  }
4899
4900  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
4901    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
4902      self.reader
4903    }
4904  }
4905
4906  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
4907    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
4908      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
4909    }
4910  }
4911
4912  impl <'a,> Reader<'a,>  {
4913    pub fn reborrow(&self) -> Reader<'_,> {
4914      Self { .. *self }
4915    }
4916
4917    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4918      self.reader.total_size()
4919    }
4920    #[inline]
4921    pub fn get_name(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
4922      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
4923    }
4924    #[inline]
4925    pub fn has_name(&self) -> bool {
4926      !self.reader.get_pointer_field(0).is_null()
4927    }
4928    #[inline]
4929    pub fn get_value(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
4930      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
4931    }
4932    #[inline]
4933    pub fn has_value(&self) -> bool {
4934      !self.reader.get_pointer_field(1).is_null()
4935    }
4936  }
4937
4938  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
4939  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
4940    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 2 };
4941  }
4942  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
4943    const TYPE_ID: u64 = _private::TYPE_ID;
4944  }
4945  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
4946    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
4947      Self { builder,  }
4948    }
4949  }
4950
4951  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
4952    fn from(builder: Builder<'a,>) -> Self {
4953      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
4954    }
4955  }
4956
4957  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
4958    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
4959      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
4960    }
4961  }
4962
4963  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
4964    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
4965      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
4966    }
4967    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
4968      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
4969    }
4970  }
4971
4972  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
4973    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
4974  }
4975
4976  impl <'a,> Builder<'a,>  {
4977    pub fn into_reader(self) -> Reader<'a,> {
4978      self.builder.into_reader().into()
4979    }
4980    pub fn reborrow(&mut self) -> Builder<'_,> {
4981      Builder { builder: self.builder.reborrow() }
4982    }
4983    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
4984      self.builder.as_reader().into()
4985    }
4986
4987    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
4988      self.builder.as_reader().total_size()
4989    }
4990    #[inline]
4991    pub fn get_name(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
4992      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
4993    }
4994    #[inline]
4995    pub fn set_name(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
4996      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
4997    }
4998    #[inline]
4999    pub fn init_name(self, size: u32) -> ::capnp::text::Builder<'a> {
5000      self.builder.get_pointer_field(0).init_text(size)
5001    }
5002    #[inline]
5003    pub fn has_name(&self) -> bool {
5004      !self.builder.is_pointer_field_null(0)
5005    }
5006    #[inline]
5007    pub fn get_value(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
5008      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
5009    }
5010    #[inline]
5011    pub fn set_value(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
5012      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
5013    }
5014    #[inline]
5015    pub fn init_value(self, size: u32) -> ::capnp::text::Builder<'a> {
5016      self.builder.get_pointer_field(1).init_text(size)
5017    }
5018    #[inline]
5019    pub fn has_value(&self) -> bool {
5020      !self.builder.is_pointer_field_null(1)
5021    }
5022  }
5023
5024  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
5025  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
5026    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
5027      Self { _typeless: typeless,  }
5028    }
5029  }
5030  impl Pipeline  {
5031  }
5032  mod _private {
5033    pub static ENCODED_NODE: [::capnp::Word; 47] = [
5034      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
5035      ::capnp::word(26, 176, 59, 174, 66, 100, 217, 203),
5036      ::capnp::word(16, 0, 0, 0, 1, 0, 0, 0),
5037      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
5038      ::capnp::word(2, 0, 7, 0, 0, 0, 0, 0),
5039      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5040      ::capnp::word(21, 0, 0, 0, 162, 0, 0, 0),
5041      ::capnp::word(29, 0, 0, 0, 7, 0, 0, 0),
5042      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5043      ::capnp::word(25, 0, 0, 0, 119, 0, 0, 0),
5044      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5045      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5046      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
5047      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
5048      ::capnp::word(84, 97, 103, 0, 0, 0, 0, 0),
5049      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
5050      ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
5051      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5052      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
5053      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5054      ::capnp::word(41, 0, 0, 0, 42, 0, 0, 0),
5055      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5056      ::capnp::word(36, 0, 0, 0, 3, 0, 1, 0),
5057      ::capnp::word(48, 0, 0, 0, 2, 0, 1, 0),
5058      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
5059      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
5060      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5061      ::capnp::word(45, 0, 0, 0, 50, 0, 0, 0),
5062      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5063      ::capnp::word(40, 0, 0, 0, 3, 0, 1, 0),
5064      ::capnp::word(52, 0, 0, 0, 2, 0, 1, 0),
5065      ::capnp::word(110, 97, 109, 101, 0, 0, 0, 0),
5066      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5067      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5068      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5069      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5070      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5071      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5072      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5073      ::capnp::word(118, 97, 108, 117, 101, 0, 0, 0),
5074      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5075      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5076      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5077      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5078      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5079      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5080      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5081    ];
5082    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
5083      match index {
5084        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
5085        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
5086        _ => panic!("invalid field index {}", index),
5087      }
5088    }
5089    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
5090      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
5091    }
5092    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
5093      encoded_node: &ENCODED_NODE,
5094      nonunion_members: NONUNION_MEMBERS,
5095      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
5096      members_by_name: MEMBERS_BY_NAME,
5097    };
5098    pub static NONUNION_MEMBERS : &[u16] = &[0,1];
5099    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
5100    pub static MEMBERS_BY_NAME : &[u16] = &[0,1];
5101    pub const TYPE_ID: u64 = 0xcbd9_6442_ae3b_b01a;
5102  }
5103}
5104
5105pub mod client_info {
5106  #[derive(Copy, Clone)]
5107  pub struct Owned(());
5108  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
5109  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5110  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5111  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
5112
5113  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
5114  impl <> ::core::marker::Copy for Reader<'_,>  {}
5115  impl <> ::core::clone::Clone for Reader<'_,>  {
5116    fn clone(&self) -> Self { *self }
5117  }
5118
5119  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
5120    const TYPE_ID: u64 = _private::TYPE_ID;
5121  }
5122  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
5123    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
5124      Self { reader,  }
5125    }
5126  }
5127
5128  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
5129    fn from(reader: Reader<'a,>) -> Self {
5130      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
5131    }
5132  }
5133
5134  impl <> ::core::fmt::Debug for Reader<'_,>  {
5135    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
5136      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
5137    }
5138  }
5139
5140  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
5141    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
5142      ::core::result::Result::Ok(reader.get_struct(default)?.into())
5143    }
5144  }
5145
5146  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
5147    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
5148      self.reader
5149    }
5150  }
5151
5152  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
5153    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
5154      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
5155    }
5156  }
5157
5158  impl <'a,> Reader<'a,>  {
5159    pub fn reborrow(&self) -> Reader<'_,> {
5160      Self { .. *self }
5161    }
5162
5163    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
5164      self.reader.total_size()
5165    }
5166    #[inline]
5167    pub fn get_client_id(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
5168      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
5169    }
5170    #[inline]
5171    pub fn has_client_id(&self) -> bool {
5172      !self.reader.get_pointer_field(0).is_null()
5173    }
5174    #[inline]
5175    pub fn get_features(self) -> ::capnp::Result<::capnp::text_list::Reader<'a>> {
5176      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
5177    }
5178    #[inline]
5179    pub fn has_features(&self) -> bool {
5180      !self.reader.get_pointer_field(1).is_null()
5181    }
5182    #[inline]
5183    pub fn get_version(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
5184      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
5185    }
5186    #[inline]
5187    pub fn has_version(&self) -> bool {
5188      !self.reader.get_pointer_field(2).is_null()
5189    }
5190    #[inline]
5191    pub fn get_arch(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
5192      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(3), ::core::option::Option::None)
5193    }
5194    #[inline]
5195    pub fn has_arch(&self) -> bool {
5196      !self.reader.get_pointer_field(3).is_null()
5197    }
5198  }
5199
5200  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
5201  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
5202    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 4 };
5203  }
5204  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
5205    const TYPE_ID: u64 = _private::TYPE_ID;
5206  }
5207  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
5208    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
5209      Self { builder,  }
5210    }
5211  }
5212
5213  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
5214    fn from(builder: Builder<'a,>) -> Self {
5215      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
5216    }
5217  }
5218
5219  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
5220    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
5221      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
5222    }
5223  }
5224
5225  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
5226    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
5227      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
5228    }
5229    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
5230      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
5231    }
5232  }
5233
5234  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
5235    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
5236  }
5237
5238  impl <'a,> Builder<'a,>  {
5239    pub fn into_reader(self) -> Reader<'a,> {
5240      self.builder.into_reader().into()
5241    }
5242    pub fn reborrow(&mut self) -> Builder<'_,> {
5243      Builder { builder: self.builder.reborrow() }
5244    }
5245    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
5246      self.builder.as_reader().into()
5247    }
5248
5249    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
5250      self.builder.as_reader().total_size()
5251    }
5252    #[inline]
5253    pub fn get_client_id(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
5254      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
5255    }
5256    #[inline]
5257    pub fn set_client_id(&mut self, value: ::capnp::data::Reader<'_>)  {
5258      self.builder.reborrow().get_pointer_field(0).set_data(value);
5259    }
5260    #[inline]
5261    pub fn init_client_id(self, size: u32) -> ::capnp::data::Builder<'a> {
5262      self.builder.get_pointer_field(0).init_data(size)
5263    }
5264    #[inline]
5265    pub fn has_client_id(&self) -> bool {
5266      !self.builder.is_pointer_field_null(0)
5267    }
5268    #[inline]
5269    pub fn get_features(self) -> ::capnp::Result<::capnp::text_list::Builder<'a>> {
5270      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
5271    }
5272    #[inline]
5273    pub fn set_features(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text_list::Owned>) -> ::capnp::Result<()> {
5274      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false)
5275    }
5276    #[inline]
5277    pub fn init_features(self, size: u32) -> ::capnp::text_list::Builder<'a> {
5278      ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(1), size)
5279    }
5280    #[inline]
5281    pub fn has_features(&self) -> bool {
5282      !self.builder.is_pointer_field_null(1)
5283    }
5284    #[inline]
5285    pub fn get_version(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
5286      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
5287    }
5288    #[inline]
5289    pub fn set_version(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
5290      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false).unwrap()
5291    }
5292    #[inline]
5293    pub fn init_version(self, size: u32) -> ::capnp::text::Builder<'a> {
5294      self.builder.get_pointer_field(2).init_text(size)
5295    }
5296    #[inline]
5297    pub fn has_version(&self) -> bool {
5298      !self.builder.is_pointer_field_null(2)
5299    }
5300    #[inline]
5301    pub fn get_arch(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
5302      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(3), ::core::option::Option::None)
5303    }
5304    #[inline]
5305    pub fn set_arch(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
5306      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(3), value, false).unwrap()
5307    }
5308    #[inline]
5309    pub fn init_arch(self, size: u32) -> ::capnp::text::Builder<'a> {
5310      self.builder.get_pointer_field(3).init_text(size)
5311    }
5312    #[inline]
5313    pub fn has_arch(&self) -> bool {
5314      !self.builder.is_pointer_field_null(3)
5315    }
5316  }
5317
5318  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
5319  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
5320    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
5321      Self { _typeless: typeless,  }
5322    }
5323  }
5324  impl Pipeline  {
5325  }
5326  mod _private {
5327    pub static ENCODED_NODE: [::capnp::Word; 84] = [
5328      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
5329      ::capnp::word(75, 17, 47, 91, 20, 208, 206, 131),
5330      ::capnp::word(16, 0, 0, 0, 1, 0, 0, 0),
5331      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
5332      ::capnp::word(4, 0, 7, 0, 0, 0, 0, 0),
5333      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5334      ::capnp::word(21, 0, 0, 0, 218, 0, 0, 0),
5335      ::capnp::word(33, 0, 0, 0, 7, 0, 0, 0),
5336      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5337      ::capnp::word(29, 0, 0, 0, 231, 0, 0, 0),
5338      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5339      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5340      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
5341      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
5342      ::capnp::word(67, 108, 105, 101, 110, 116, 73, 110),
5343      ::capnp::word(102, 111, 0, 0, 0, 0, 0, 0),
5344      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
5345      ::capnp::word(16, 0, 0, 0, 3, 0, 4, 0),
5346      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5347      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
5348      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5349      ::capnp::word(97, 0, 0, 0, 74, 0, 0, 0),
5350      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5351      ::capnp::word(96, 0, 0, 0, 3, 0, 1, 0),
5352      ::capnp::word(108, 0, 0, 0, 2, 0, 1, 0),
5353      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
5354      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
5355      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5356      ::capnp::word(105, 0, 0, 0, 74, 0, 0, 0),
5357      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5358      ::capnp::word(104, 0, 0, 0, 3, 0, 1, 0),
5359      ::capnp::word(132, 0, 0, 0, 2, 0, 1, 0),
5360      ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
5361      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
5362      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5363      ::capnp::word(129, 0, 0, 0, 66, 0, 0, 0),
5364      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5365      ::capnp::word(124, 0, 0, 0, 3, 0, 1, 0),
5366      ::capnp::word(136, 0, 0, 0, 2, 0, 1, 0),
5367      ::capnp::word(3, 0, 0, 0, 3, 0, 0, 0),
5368      ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
5369      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5370      ::capnp::word(133, 0, 0, 0, 42, 0, 0, 0),
5371      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5372      ::capnp::word(128, 0, 0, 0, 3, 0, 1, 0),
5373      ::capnp::word(140, 0, 0, 0, 2, 0, 1, 0),
5374      ::capnp::word(99, 108, 105, 101, 110, 116, 73, 100),
5375      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5376      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
5377      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5378      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5379      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5380      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
5381      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5382      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5383      ::capnp::word(102, 101, 97, 116, 117, 114, 101, 115),
5384      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5385      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
5386      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5387      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5388      ::capnp::word(0, 0, 0, 0, 3, 0, 1, 0),
5389      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5390      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5391      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5392      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5393      ::capnp::word(14, 0, 0, 0, 0, 0, 0, 0),
5394      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5395      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5396      ::capnp::word(118, 101, 114, 115, 105, 111, 110, 0),
5397      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5398      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5399      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5400      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5401      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5402      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5403      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5404      ::capnp::word(97, 114, 99, 104, 0, 0, 0, 0),
5405      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5406      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5407      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5408      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5409      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
5410      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5411      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5412    ];
5413    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
5414      match index {
5415        0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
5416        1 => <::capnp::text_list::Owned as ::capnp::introspect::Introspect>::introspect(),
5417        2 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
5418        3 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
5419        _ => panic!("invalid field index {}", index),
5420      }
5421    }
5422    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
5423      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
5424    }
5425    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
5426      encoded_node: &ENCODED_NODE,
5427      nonunion_members: NONUNION_MEMBERS,
5428      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
5429      members_by_name: MEMBERS_BY_NAME,
5430    };
5431    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3];
5432    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
5433    pub static MEMBERS_BY_NAME : &[u16] = &[3,0,1,2];
5434    pub const TYPE_ID: u64 = 0x83ce_d014_5b2f_114b;
5435  }
5436}
5437
5438pub mod connection_options {
5439  #[derive(Copy, Clone)]
5440  pub struct Owned(());
5441  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
5442  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5443  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5444  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
5445
5446  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
5447  impl <> ::core::marker::Copy for Reader<'_,>  {}
5448  impl <> ::core::clone::Clone for Reader<'_,>  {
5449    fn clone(&self) -> Self { *self }
5450  }
5451
5452  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
5453    const TYPE_ID: u64 = _private::TYPE_ID;
5454  }
5455  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
5456    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
5457      Self { reader,  }
5458    }
5459  }
5460
5461  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
5462    fn from(reader: Reader<'a,>) -> Self {
5463      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
5464    }
5465  }
5466
5467  impl <> ::core::fmt::Debug for Reader<'_,>  {
5468    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
5469      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
5470    }
5471  }
5472
5473  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
5474    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
5475      ::core::result::Result::Ok(reader.get_struct(default)?.into())
5476    }
5477  }
5478
5479  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
5480    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
5481      self.reader
5482    }
5483  }
5484
5485  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
5486    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
5487      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
5488    }
5489  }
5490
5491  impl <'a,> Reader<'a,>  {
5492    pub fn reborrow(&self) -> Reader<'_,> {
5493      Self { .. *self }
5494    }
5495
5496    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
5497      self.reader.total_size()
5498    }
5499    #[inline]
5500    pub fn get_client(self) -> ::capnp::Result<crate::tunnelrpc_capnp::client_info::Reader<'a>> {
5501      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
5502    }
5503    #[inline]
5504    pub fn has_client(&self) -> bool {
5505      !self.reader.get_pointer_field(0).is_null()
5506    }
5507    #[inline]
5508    pub fn get_origin_local_ip(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
5509      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
5510    }
5511    #[inline]
5512    pub fn has_origin_local_ip(&self) -> bool {
5513      !self.reader.get_pointer_field(1).is_null()
5514    }
5515    #[inline]
5516    pub fn get_replace_existing(self) -> bool {
5517      self.reader.get_bool_field(0)
5518    }
5519    #[inline]
5520    pub fn get_compression_quality(self) -> u8 {
5521      self.reader.get_data_field::<u8>(1)
5522    }
5523    #[inline]
5524    pub fn get_num_previous_attempts(self) -> u8 {
5525      self.reader.get_data_field::<u8>(2)
5526    }
5527  }
5528
5529  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
5530  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
5531    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 2 };
5532  }
5533  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
5534    const TYPE_ID: u64 = _private::TYPE_ID;
5535  }
5536  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
5537    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
5538      Self { builder,  }
5539    }
5540  }
5541
5542  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
5543    fn from(builder: Builder<'a,>) -> Self {
5544      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
5545    }
5546  }
5547
5548  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
5549    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
5550      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
5551    }
5552  }
5553
5554  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
5555    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
5556      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
5557    }
5558    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
5559      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
5560    }
5561  }
5562
5563  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
5564    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
5565  }
5566
5567  impl <'a,> Builder<'a,>  {
5568    pub fn into_reader(self) -> Reader<'a,> {
5569      self.builder.into_reader().into()
5570    }
5571    pub fn reborrow(&mut self) -> Builder<'_,> {
5572      Builder { builder: self.builder.reborrow() }
5573    }
5574    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
5575      self.builder.as_reader().into()
5576    }
5577
5578    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
5579      self.builder.as_reader().total_size()
5580    }
5581    #[inline]
5582    pub fn get_client(self) -> ::capnp::Result<crate::tunnelrpc_capnp::client_info::Builder<'a>> {
5583      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
5584    }
5585    #[inline]
5586    pub fn set_client(&mut self, value: crate::tunnelrpc_capnp::client_info::Reader<'_>) -> ::capnp::Result<()> {
5587      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
5588    }
5589    #[inline]
5590    pub fn init_client(self, ) -> crate::tunnelrpc_capnp::client_info::Builder<'a> {
5591      ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
5592    }
5593    #[inline]
5594    pub fn has_client(&self) -> bool {
5595      !self.builder.is_pointer_field_null(0)
5596    }
5597    #[inline]
5598    pub fn get_origin_local_ip(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
5599      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
5600    }
5601    #[inline]
5602    pub fn set_origin_local_ip(&mut self, value: ::capnp::data::Reader<'_>)  {
5603      self.builder.reborrow().get_pointer_field(1).set_data(value);
5604    }
5605    #[inline]
5606    pub fn init_origin_local_ip(self, size: u32) -> ::capnp::data::Builder<'a> {
5607      self.builder.get_pointer_field(1).init_data(size)
5608    }
5609    #[inline]
5610    pub fn has_origin_local_ip(&self) -> bool {
5611      !self.builder.is_pointer_field_null(1)
5612    }
5613    #[inline]
5614    pub fn get_replace_existing(self) -> bool {
5615      self.builder.get_bool_field(0)
5616    }
5617    #[inline]
5618    pub fn set_replace_existing(&mut self, value: bool)  {
5619      self.builder.set_bool_field(0, value);
5620    }
5621    #[inline]
5622    pub fn get_compression_quality(self) -> u8 {
5623      self.builder.get_data_field::<u8>(1)
5624    }
5625    #[inline]
5626    pub fn set_compression_quality(&mut self, value: u8)  {
5627      self.builder.set_data_field::<u8>(1, value);
5628    }
5629    #[inline]
5630    pub fn get_num_previous_attempts(self) -> u8 {
5631      self.builder.get_data_field::<u8>(2)
5632    }
5633    #[inline]
5634    pub fn set_num_previous_attempts(&mut self, value: u8)  {
5635      self.builder.set_data_field::<u8>(2, value);
5636    }
5637  }
5638
5639  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
5640  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
5641    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
5642      Self { _typeless: typeless,  }
5643    }
5644  }
5645  impl Pipeline  {
5646    pub fn get_client(&self) -> crate::tunnelrpc_capnp::client_info::Pipeline {
5647      ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
5648    }
5649  }
5650  mod _private {
5651    pub static ENCODED_NODE: [::capnp::Word; 100] = [
5652      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
5653      ::capnp::word(4, 93, 3, 254, 97, 152, 191, 180),
5654      ::capnp::word(16, 0, 0, 0, 1, 0, 1, 0),
5655      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
5656      ::capnp::word(2, 0, 7, 0, 0, 0, 0, 0),
5657      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5658      ::capnp::word(21, 0, 0, 0, 18, 1, 0, 0),
5659      ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
5660      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5661      ::capnp::word(33, 0, 0, 0, 31, 1, 0, 0),
5662      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5663      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5664      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
5665      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
5666      ::capnp::word(67, 111, 110, 110, 101, 99, 116, 105),
5667      ::capnp::word(111, 110, 79, 112, 116, 105, 111, 110),
5668      ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
5669      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
5670      ::capnp::word(20, 0, 0, 0, 3, 0, 4, 0),
5671      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5672      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
5673      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5674      ::capnp::word(125, 0, 0, 0, 58, 0, 0, 0),
5675      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5676      ::capnp::word(120, 0, 0, 0, 3, 0, 1, 0),
5677      ::capnp::word(132, 0, 0, 0, 2, 0, 1, 0),
5678      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
5679      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
5680      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5681      ::capnp::word(129, 0, 0, 0, 114, 0, 0, 0),
5682      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5683      ::capnp::word(128, 0, 0, 0, 3, 0, 1, 0),
5684      ::capnp::word(140, 0, 0, 0, 2, 0, 1, 0),
5685      ::capnp::word(2, 0, 0, 0, 0, 0, 0, 0),
5686      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
5687      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5688      ::capnp::word(137, 0, 0, 0, 130, 0, 0, 0),
5689      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5690      ::capnp::word(136, 0, 0, 0, 3, 0, 1, 0),
5691      ::capnp::word(148, 0, 0, 0, 2, 0, 1, 0),
5692      ::capnp::word(3, 0, 0, 0, 1, 0, 0, 0),
5693      ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
5694      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5695      ::capnp::word(145, 0, 0, 0, 154, 0, 0, 0),
5696      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5697      ::capnp::word(148, 0, 0, 0, 3, 0, 1, 0),
5698      ::capnp::word(160, 0, 0, 0, 2, 0, 1, 0),
5699      ::capnp::word(4, 0, 0, 0, 2, 0, 0, 0),
5700      ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
5701      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5702      ::capnp::word(157, 0, 0, 0, 162, 0, 0, 0),
5703      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5704      ::capnp::word(160, 0, 0, 0, 3, 0, 1, 0),
5705      ::capnp::word(172, 0, 0, 0, 2, 0, 1, 0),
5706      ::capnp::word(99, 108, 105, 101, 110, 116, 0, 0),
5707      ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
5708      ::capnp::word(75, 17, 47, 91, 20, 208, 206, 131),
5709      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5710      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5711      ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
5712      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5713      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5714      ::capnp::word(111, 114, 105, 103, 105, 110, 76, 111),
5715      ::capnp::word(99, 97, 108, 73, 112, 0, 0, 0),
5716      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
5717      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5718      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5719      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5720      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
5721      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5722      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5723      ::capnp::word(114, 101, 112, 108, 97, 99, 101, 69),
5724      ::capnp::word(120, 105, 115, 116, 105, 110, 103, 0),
5725      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
5726      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5727      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5728      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5729      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
5730      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5731      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5732      ::capnp::word(99, 111, 109, 112, 114, 101, 115, 115),
5733      ::capnp::word(105, 111, 110, 81, 117, 97, 108, 105),
5734      ::capnp::word(116, 121, 0, 0, 0, 0, 0, 0),
5735      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
5736      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5737      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5738      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5739      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
5740      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5741      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5742      ::capnp::word(110, 117, 109, 80, 114, 101, 118, 105),
5743      ::capnp::word(111, 117, 115, 65, 116, 116, 101, 109),
5744      ::capnp::word(112, 116, 115, 0, 0, 0, 0, 0),
5745      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
5746      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5747      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5748      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5749      ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
5750      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5751      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5752    ];
5753    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
5754      match index {
5755        0 => <crate::tunnelrpc_capnp::client_info::Owned as ::capnp::introspect::Introspect>::introspect(),
5756        1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
5757        2 => <bool as ::capnp::introspect::Introspect>::introspect(),
5758        3 => <u8 as ::capnp::introspect::Introspect>::introspect(),
5759        4 => <u8 as ::capnp::introspect::Introspect>::introspect(),
5760        _ => panic!("invalid field index {}", index),
5761      }
5762    }
5763    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
5764      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
5765    }
5766    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
5767      encoded_node: &ENCODED_NODE,
5768      nonunion_members: NONUNION_MEMBERS,
5769      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
5770      members_by_name: MEMBERS_BY_NAME,
5771    };
5772    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4];
5773    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
5774    pub static MEMBERS_BY_NAME : &[u16] = &[0,3,4,1,2];
5775    pub const TYPE_ID: u64 = 0xb4bf_9861_fe03_5d04;
5776  }
5777}
5778
5779pub mod connection_response {
5780  #[derive(Copy, Clone)]
5781  pub struct Owned(());
5782  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
5783  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5784  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5785  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
5786
5787  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
5788  impl <> ::core::marker::Copy for Reader<'_,>  {}
5789  impl <> ::core::clone::Clone for Reader<'_,>  {
5790    fn clone(&self) -> Self { *self }
5791  }
5792
5793  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
5794    const TYPE_ID: u64 = _private::TYPE_ID;
5795  }
5796  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
5797    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
5798      Self { reader,  }
5799    }
5800  }
5801
5802  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
5803    fn from(reader: Reader<'a,>) -> Self {
5804      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
5805    }
5806  }
5807
5808  impl <> ::core::fmt::Debug for Reader<'_,>  {
5809    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
5810      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
5811    }
5812  }
5813
5814  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
5815    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
5816      ::core::result::Result::Ok(reader.get_struct(default)?.into())
5817    }
5818  }
5819
5820  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
5821    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
5822      self.reader
5823    }
5824  }
5825
5826  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
5827    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
5828      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
5829    }
5830  }
5831
5832  impl <'a,> Reader<'a,>  {
5833    pub fn reborrow(&self) -> Reader<'_,> {
5834      Self { .. *self }
5835    }
5836
5837    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
5838      self.reader.total_size()
5839    }
5840    #[inline]
5841    pub fn get_result(self) -> crate::tunnelrpc_capnp::connection_response::result::Reader<'a> {
5842      self.reader.into()
5843    }
5844  }
5845
5846  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
5847  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
5848    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 1 };
5849  }
5850  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
5851    const TYPE_ID: u64 = _private::TYPE_ID;
5852  }
5853  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
5854    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
5855      Self { builder,  }
5856    }
5857  }
5858
5859  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
5860    fn from(builder: Builder<'a,>) -> Self {
5861      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
5862    }
5863  }
5864
5865  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
5866    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
5867      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
5868    }
5869  }
5870
5871  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
5872    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
5873      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
5874    }
5875    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
5876      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
5877    }
5878  }
5879
5880  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
5881    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
5882  }
5883
5884  impl <'a,> Builder<'a,>  {
5885    pub fn into_reader(self) -> Reader<'a,> {
5886      self.builder.into_reader().into()
5887    }
5888    pub fn reborrow(&mut self) -> Builder<'_,> {
5889      Builder { builder: self.builder.reborrow() }
5890    }
5891    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
5892      self.builder.as_reader().into()
5893    }
5894
5895    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
5896      self.builder.as_reader().total_size()
5897    }
5898    #[inline]
5899    pub fn get_result(self) -> crate::tunnelrpc_capnp::connection_response::result::Builder<'a> {
5900      self.builder.into()
5901    }
5902    #[inline]
5903    pub fn init_result(mut self, ) -> crate::tunnelrpc_capnp::connection_response::result::Builder<'a> {
5904      self.builder.set_data_field::<u16>(0, 0);
5905      self.builder.reborrow().get_pointer_field(0).clear();
5906      self.builder.into()
5907    }
5908  }
5909
5910  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
5911  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
5912    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
5913      Self { _typeless: typeless,  }
5914    }
5915  }
5916  impl Pipeline  {
5917    pub fn get_result(&self) -> crate::tunnelrpc_capnp::connection_response::result::Pipeline {
5918      ::capnp::capability::FromTypelessPipeline::new(self._typeless.noop())
5919    }
5920  }
5921  mod _private {
5922    pub static ENCODED_NODE: [::capnp::Word; 27] = [
5923      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
5924      ::capnp::word(220, 98, 43, 213, 3, 157, 170, 219),
5925      ::capnp::word(16, 0, 0, 0, 1, 0, 1, 0),
5926      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
5927      ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
5928      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5929      ::capnp::word(21, 0, 0, 0, 26, 1, 0, 0),
5930      ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
5931      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5932      ::capnp::word(33, 0, 0, 0, 63, 0, 0, 0),
5933      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5934      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5935      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
5936      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
5937      ::capnp::word(67, 111, 110, 110, 101, 99, 116, 105),
5938      ::capnp::word(111, 110, 82, 101, 115, 112, 111, 110),
5939      ::capnp::word(115, 101, 0, 0, 0, 0, 0, 0),
5940      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
5941      ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
5942      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5943      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
5944      ::capnp::word(34, 118, 37, 96, 194, 197, 179, 151),
5945      ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
5946      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5947      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5948      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
5949      ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
5950    ];
5951    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
5952      match index {
5953        0 => <crate::tunnelrpc_capnp::connection_response::result::Owned as ::capnp::introspect::Introspect>::introspect(),
5954        _ => panic!("invalid field index {}", index),
5955      }
5956    }
5957    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
5958      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
5959    }
5960    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
5961      encoded_node: &ENCODED_NODE,
5962      nonunion_members: NONUNION_MEMBERS,
5963      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
5964      members_by_name: MEMBERS_BY_NAME,
5965    };
5966    pub static NONUNION_MEMBERS : &[u16] = &[0];
5967    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
5968    pub static MEMBERS_BY_NAME : &[u16] = &[0];
5969    pub const TYPE_ID: u64 = 0xdbaa_9d03_d52b_62dc;
5970  }
5971
5972  pub mod result {
5973    pub use self::Which::{Error,ConnectionDetails};
5974
5975    #[derive(Copy, Clone)]
5976    pub struct Owned(());
5977    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
5978    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5979    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
5980    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
5981
5982    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
5983    impl <> ::core::marker::Copy for Reader<'_,>  {}
5984    impl <> ::core::clone::Clone for Reader<'_,>  {
5985      fn clone(&self) -> Self { *self }
5986    }
5987
5988    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
5989      const TYPE_ID: u64 = _private::TYPE_ID;
5990    }
5991    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
5992      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
5993        Self { reader,  }
5994      }
5995    }
5996
5997    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
5998      fn from(reader: Reader<'a,>) -> Self {
5999        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6000      }
6001    }
6002
6003    impl <> ::core::fmt::Debug for Reader<'_,>  {
6004      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
6005        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
6006      }
6007    }
6008
6009    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
6010      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6011        ::core::result::Result::Ok(reader.get_struct(default)?.into())
6012      }
6013    }
6014
6015    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
6016      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
6017        self.reader
6018      }
6019    }
6020
6021    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
6022      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
6023        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
6024      }
6025    }
6026
6027    impl <'a,> Reader<'a,>  {
6028      pub fn reborrow(&self) -> Reader<'_,> {
6029        Self { .. *self }
6030      }
6031
6032      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6033        self.reader.total_size()
6034      }
6035      #[inline]
6036      pub fn has_error(&self) -> bool {
6037        if self.reader.get_data_field::<u16>(0) != 0 { return false; }
6038        !self.reader.get_pointer_field(0).is_null()
6039      }
6040      #[inline]
6041      pub fn has_connection_details(&self) -> bool {
6042        if self.reader.get_data_field::<u16>(0) != 1 { return false; }
6043        !self.reader.get_pointer_field(0).is_null()
6044      }
6045      #[inline]
6046      pub fn which(self) -> ::core::result::Result<WhichReader<'a,>, ::capnp::NotInSchema> {
6047        match self.reader.get_data_field::<u16>(0) {
6048          0 => {
6049            ::core::result::Result::Ok(Error(
6050              ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
6051            ))
6052          }
6053          1 => {
6054            ::core::result::Result::Ok(ConnectionDetails(
6055              ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
6056            ))
6057          }
6058          x => ::core::result::Result::Err(::capnp::NotInSchema(x))
6059        }
6060      }
6061    }
6062
6063    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
6064    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
6065      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 1 };
6066    }
6067    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
6068      const TYPE_ID: u64 = _private::TYPE_ID;
6069    }
6070    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
6071      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
6072        Self { builder,  }
6073      }
6074    }
6075
6076    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
6077      fn from(builder: Builder<'a,>) -> Self {
6078        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6079      }
6080    }
6081
6082    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
6083      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
6084        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
6085      }
6086    }
6087
6088    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
6089      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
6090        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
6091      }
6092      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6093        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
6094      }
6095    }
6096
6097    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
6098      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
6099    }
6100
6101    impl <'a,> Builder<'a,>  {
6102      pub fn into_reader(self) -> Reader<'a,> {
6103        self.builder.into_reader().into()
6104      }
6105      pub fn reborrow(&mut self) -> Builder<'_,> {
6106        Builder { builder: self.builder.reborrow() }
6107      }
6108      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
6109        self.builder.as_reader().into()
6110      }
6111
6112      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6113        self.builder.as_reader().total_size()
6114      }
6115      #[inline]
6116      pub fn set_error(&mut self, value: crate::tunnelrpc_capnp::connection_error::Reader<'_>) -> ::capnp::Result<()> {
6117        self.builder.set_data_field::<u16>(0, 0);
6118        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
6119      }
6120      #[inline]
6121      pub fn init_error(self, ) -> crate::tunnelrpc_capnp::connection_error::Builder<'a> {
6122        self.builder.set_data_field::<u16>(0, 0);
6123        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
6124      }
6125      #[inline]
6126      pub fn has_error(&self) -> bool {
6127        if self.builder.get_data_field::<u16>(0) != 0 { return false; }
6128        !self.builder.is_pointer_field_null(0)
6129      }
6130      #[inline]
6131      pub fn set_connection_details(&mut self, value: crate::tunnelrpc_capnp::connection_details::Reader<'_>) -> ::capnp::Result<()> {
6132        self.builder.set_data_field::<u16>(0, 1);
6133        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
6134      }
6135      #[inline]
6136      pub fn init_connection_details(self, ) -> crate::tunnelrpc_capnp::connection_details::Builder<'a> {
6137        self.builder.set_data_field::<u16>(0, 1);
6138        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
6139      }
6140      #[inline]
6141      pub fn has_connection_details(&self) -> bool {
6142        if self.builder.get_data_field::<u16>(0) != 1 { return false; }
6143        !self.builder.is_pointer_field_null(0)
6144      }
6145      #[inline]
6146      pub fn which(self) -> ::core::result::Result<WhichBuilder<'a,>, ::capnp::NotInSchema> {
6147        match self.builder.get_data_field::<u16>(0) {
6148          0 => {
6149            ::core::result::Result::Ok(Error(
6150              ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
6151            ))
6152          }
6153          1 => {
6154            ::core::result::Result::Ok(ConnectionDetails(
6155              ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
6156            ))
6157          }
6158          x => ::core::result::Result::Err(::capnp::NotInSchema(x))
6159        }
6160      }
6161    }
6162
6163    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
6164    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
6165      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
6166        Self { _typeless: typeless,  }
6167      }
6168    }
6169    impl Pipeline  {
6170    }
6171    mod _private {
6172      pub static ENCODED_NODE: [::capnp::Word; 51] = [
6173        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
6174        ::capnp::word(34, 118, 37, 96, 194, 197, 179, 151),
6175        ::capnp::word(35, 0, 0, 0, 1, 0, 1, 0),
6176        ::capnp::word(220, 98, 43, 213, 3, 157, 170, 219),
6177        ::capnp::word(1, 0, 7, 0, 1, 0, 2, 0),
6178        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6179        ::capnp::word(21, 0, 0, 0, 82, 1, 0, 0),
6180        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6181        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6182        ::capnp::word(33, 0, 0, 0, 119, 0, 0, 0),
6183        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6184        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6185        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
6186        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
6187        ::capnp::word(67, 111, 110, 110, 101, 99, 116, 105),
6188        ::capnp::word(111, 110, 82, 101, 115, 112, 111, 110),
6189        ::capnp::word(115, 101, 46, 114, 101, 115, 117, 108),
6190        ::capnp::word(116, 0, 0, 0, 0, 0, 0, 0),
6191        ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
6192        ::capnp::word(0, 0, 255, 255, 0, 0, 0, 0),
6193        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
6194        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6195        ::capnp::word(41, 0, 0, 0, 50, 0, 0, 0),
6196        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6197        ::capnp::word(36, 0, 0, 0, 3, 0, 1, 0),
6198        ::capnp::word(48, 0, 0, 0, 2, 0, 1, 0),
6199        ::capnp::word(1, 0, 254, 255, 0, 0, 0, 0),
6200        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
6201        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6202        ::capnp::word(45, 0, 0, 0, 146, 0, 0, 0),
6203        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6204        ::capnp::word(48, 0, 0, 0, 3, 0, 1, 0),
6205        ::capnp::word(60, 0, 0, 0, 2, 0, 1, 0),
6206        ::capnp::word(101, 114, 114, 111, 114, 0, 0, 0),
6207        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
6208        ::capnp::word(134, 219, 94, 120, 210, 131, 243, 245),
6209        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6210        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6211        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
6212        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6213        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6214        ::capnp::word(99, 111, 110, 110, 101, 99, 116, 105),
6215        ::capnp::word(111, 110, 68, 101, 116, 97, 105, 108),
6216        ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
6217        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
6218        ::capnp::word(138, 193, 154, 43, 8, 159, 243, 181),
6219        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6220        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6221        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
6222        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6223        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6224      ];
6225      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
6226        match index {
6227          0 => <crate::tunnelrpc_capnp::connection_error::Owned as ::capnp::introspect::Introspect>::introspect(),
6228          1 => <crate::tunnelrpc_capnp::connection_details::Owned as ::capnp::introspect::Introspect>::introspect(),
6229          _ => panic!("invalid field index {}", index),
6230        }
6231      }
6232      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
6233        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
6234      }
6235      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
6236        encoded_node: &ENCODED_NODE,
6237        nonunion_members: NONUNION_MEMBERS,
6238        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
6239        members_by_name: MEMBERS_BY_NAME,
6240      };
6241      pub static NONUNION_MEMBERS : &[u16] = &[];
6242      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[0,1];
6243      pub static MEMBERS_BY_NAME : &[u16] = &[1,0];
6244      pub const TYPE_ID: u64 = 0x97b3_c5c2_6025_7622;
6245    }
6246    pub enum Which<A0,A1> {
6247      Error(A0),
6248      ConnectionDetails(A1),
6249    }
6250    pub type WhichReader<'a,> = Which<::capnp::Result<crate::tunnelrpc_capnp::connection_error::Reader<'a>>,::capnp::Result<crate::tunnelrpc_capnp::connection_details::Reader<'a>>>;
6251    pub type WhichBuilder<'a,> = Which<::capnp::Result<crate::tunnelrpc_capnp::connection_error::Builder<'a>>,::capnp::Result<crate::tunnelrpc_capnp::connection_details::Builder<'a>>>;
6252  }
6253}
6254
6255pub mod connection_error {
6256  #[derive(Copy, Clone)]
6257  pub struct Owned(());
6258  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
6259  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
6260  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
6261  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
6262
6263  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
6264  impl <> ::core::marker::Copy for Reader<'_,>  {}
6265  impl <> ::core::clone::Clone for Reader<'_,>  {
6266    fn clone(&self) -> Self { *self }
6267  }
6268
6269  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
6270    const TYPE_ID: u64 = _private::TYPE_ID;
6271  }
6272  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
6273    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
6274      Self { reader,  }
6275    }
6276  }
6277
6278  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
6279    fn from(reader: Reader<'a,>) -> Self {
6280      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6281    }
6282  }
6283
6284  impl <> ::core::fmt::Debug for Reader<'_,>  {
6285    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
6286      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
6287    }
6288  }
6289
6290  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
6291    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6292      ::core::result::Result::Ok(reader.get_struct(default)?.into())
6293    }
6294  }
6295
6296  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
6297    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
6298      self.reader
6299    }
6300  }
6301
6302  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
6303    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
6304      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
6305    }
6306  }
6307
6308  impl <'a,> Reader<'a,>  {
6309    pub fn reborrow(&self) -> Reader<'_,> {
6310      Self { .. *self }
6311    }
6312
6313    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6314      self.reader.total_size()
6315    }
6316    #[inline]
6317    pub fn get_cause(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
6318      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
6319    }
6320    #[inline]
6321    pub fn has_cause(&self) -> bool {
6322      !self.reader.get_pointer_field(0).is_null()
6323    }
6324    #[inline]
6325    pub fn get_retry_after(self) -> i64 {
6326      self.reader.get_data_field::<i64>(0)
6327    }
6328    #[inline]
6329    pub fn get_should_retry(self) -> bool {
6330      self.reader.get_bool_field(64)
6331    }
6332  }
6333
6334  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
6335  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
6336    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 2, pointers: 1 };
6337  }
6338  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
6339    const TYPE_ID: u64 = _private::TYPE_ID;
6340  }
6341  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
6342    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
6343      Self { builder,  }
6344    }
6345  }
6346
6347  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
6348    fn from(builder: Builder<'a,>) -> Self {
6349      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6350    }
6351  }
6352
6353  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
6354    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
6355      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
6356    }
6357  }
6358
6359  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
6360    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
6361      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
6362    }
6363    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6364      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
6365    }
6366  }
6367
6368  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
6369    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
6370  }
6371
6372  impl <'a,> Builder<'a,>  {
6373    pub fn into_reader(self) -> Reader<'a,> {
6374      self.builder.into_reader().into()
6375    }
6376    pub fn reborrow(&mut self) -> Builder<'_,> {
6377      Builder { builder: self.builder.reborrow() }
6378    }
6379    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
6380      self.builder.as_reader().into()
6381    }
6382
6383    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6384      self.builder.as_reader().total_size()
6385    }
6386    #[inline]
6387    pub fn get_cause(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
6388      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
6389    }
6390    #[inline]
6391    pub fn set_cause(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
6392      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
6393    }
6394    #[inline]
6395    pub fn init_cause(self, size: u32) -> ::capnp::text::Builder<'a> {
6396      self.builder.get_pointer_field(0).init_text(size)
6397    }
6398    #[inline]
6399    pub fn has_cause(&self) -> bool {
6400      !self.builder.is_pointer_field_null(0)
6401    }
6402    #[inline]
6403    pub fn get_retry_after(self) -> i64 {
6404      self.builder.get_data_field::<i64>(0)
6405    }
6406    #[inline]
6407    pub fn set_retry_after(&mut self, value: i64)  {
6408      self.builder.set_data_field::<i64>(0, value);
6409    }
6410    #[inline]
6411    pub fn get_should_retry(self) -> bool {
6412      self.builder.get_bool_field(64)
6413    }
6414    #[inline]
6415    pub fn set_should_retry(&mut self, value: bool)  {
6416      self.builder.set_bool_field(64, value);
6417    }
6418  }
6419
6420  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
6421  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
6422    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
6423      Self { _typeless: typeless,  }
6424    }
6425  }
6426  impl Pipeline  {
6427  }
6428  mod _private {
6429    pub static ENCODED_NODE: [::capnp::Word; 65] = [
6430      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
6431      ::capnp::word(134, 219, 94, 120, 210, 131, 243, 245),
6432      ::capnp::word(16, 0, 0, 0, 1, 0, 2, 0),
6433      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
6434      ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
6435      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6436      ::capnp::word(21, 0, 0, 0, 2, 1, 0, 0),
6437      ::capnp::word(33, 0, 0, 0, 7, 0, 0, 0),
6438      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6439      ::capnp::word(29, 0, 0, 0, 175, 0, 0, 0),
6440      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6441      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6442      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
6443      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
6444      ::capnp::word(67, 111, 110, 110, 101, 99, 116, 105),
6445      ::capnp::word(111, 110, 69, 114, 114, 111, 114, 0),
6446      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
6447      ::capnp::word(12, 0, 0, 0, 3, 0, 4, 0),
6448      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6449      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
6450      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6451      ::capnp::word(69, 0, 0, 0, 50, 0, 0, 0),
6452      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6453      ::capnp::word(64, 0, 0, 0, 3, 0, 1, 0),
6454      ::capnp::word(76, 0, 0, 0, 2, 0, 1, 0),
6455      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
6456      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
6457      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6458      ::capnp::word(73, 0, 0, 0, 90, 0, 0, 0),
6459      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6460      ::capnp::word(72, 0, 0, 0, 3, 0, 1, 0),
6461      ::capnp::word(84, 0, 0, 0, 2, 0, 1, 0),
6462      ::capnp::word(2, 0, 0, 0, 64, 0, 0, 0),
6463      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
6464      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6465      ::capnp::word(81, 0, 0, 0, 98, 0, 0, 0),
6466      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6467      ::capnp::word(80, 0, 0, 0, 3, 0, 1, 0),
6468      ::capnp::word(92, 0, 0, 0, 2, 0, 1, 0),
6469      ::capnp::word(99, 97, 117, 115, 101, 0, 0, 0),
6470      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
6471      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6472      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6473      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6474      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
6475      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6476      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6477      ::capnp::word(114, 101, 116, 114, 121, 65, 102, 116),
6478      ::capnp::word(101, 114, 0, 0, 0, 0, 0, 0),
6479      ::capnp::word(5, 0, 0, 0, 0, 0, 0, 0),
6480      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6481      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6482      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6483      ::capnp::word(5, 0, 0, 0, 0, 0, 0, 0),
6484      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6485      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6486      ::capnp::word(115, 104, 111, 117, 108, 100, 82, 101),
6487      ::capnp::word(116, 114, 121, 0, 0, 0, 0, 0),
6488      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
6489      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6490      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6491      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6492      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
6493      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6494      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6495    ];
6496    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
6497      match index {
6498        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
6499        1 => <i64 as ::capnp::introspect::Introspect>::introspect(),
6500        2 => <bool as ::capnp::introspect::Introspect>::introspect(),
6501        _ => panic!("invalid field index {}", index),
6502      }
6503    }
6504    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
6505      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
6506    }
6507    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
6508      encoded_node: &ENCODED_NODE,
6509      nonunion_members: NONUNION_MEMBERS,
6510      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
6511      members_by_name: MEMBERS_BY_NAME,
6512    };
6513    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2];
6514    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
6515    pub static MEMBERS_BY_NAME : &[u16] = &[0,1,2];
6516    pub const TYPE_ID: u64 = 0xf5f3_83d2_785e_db86;
6517  }
6518}
6519
6520pub mod connection_details {
6521  #[derive(Copy, Clone)]
6522  pub struct Owned(());
6523  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
6524  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
6525  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
6526  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
6527
6528  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
6529  impl <> ::core::marker::Copy for Reader<'_,>  {}
6530  impl <> ::core::clone::Clone for Reader<'_,>  {
6531    fn clone(&self) -> Self { *self }
6532  }
6533
6534  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
6535    const TYPE_ID: u64 = _private::TYPE_ID;
6536  }
6537  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
6538    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
6539      Self { reader,  }
6540    }
6541  }
6542
6543  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
6544    fn from(reader: Reader<'a,>) -> Self {
6545      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6546    }
6547  }
6548
6549  impl <> ::core::fmt::Debug for Reader<'_,>  {
6550    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
6551      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
6552    }
6553  }
6554
6555  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
6556    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6557      ::core::result::Result::Ok(reader.get_struct(default)?.into())
6558    }
6559  }
6560
6561  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
6562    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
6563      self.reader
6564    }
6565  }
6566
6567  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
6568    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
6569      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
6570    }
6571  }
6572
6573  impl <'a,> Reader<'a,>  {
6574    pub fn reborrow(&self) -> Reader<'_,> {
6575      Self { .. *self }
6576    }
6577
6578    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6579      self.reader.total_size()
6580    }
6581    #[inline]
6582    pub fn get_uuid(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
6583      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
6584    }
6585    #[inline]
6586    pub fn has_uuid(&self) -> bool {
6587      !self.reader.get_pointer_field(0).is_null()
6588    }
6589    #[inline]
6590    pub fn get_location_name(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
6591      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
6592    }
6593    #[inline]
6594    pub fn has_location_name(&self) -> bool {
6595      !self.reader.get_pointer_field(1).is_null()
6596    }
6597    #[inline]
6598    pub fn get_tunnel_is_remotely_managed(self) -> bool {
6599      self.reader.get_bool_field(0)
6600    }
6601  }
6602
6603  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
6604  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
6605    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 2 };
6606  }
6607  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
6608    const TYPE_ID: u64 = _private::TYPE_ID;
6609  }
6610  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
6611    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
6612      Self { builder,  }
6613    }
6614  }
6615
6616  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
6617    fn from(builder: Builder<'a,>) -> Self {
6618      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6619    }
6620  }
6621
6622  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
6623    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
6624      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
6625    }
6626  }
6627
6628  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
6629    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
6630      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
6631    }
6632    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6633      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
6634    }
6635  }
6636
6637  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
6638    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
6639  }
6640
6641  impl <'a,> Builder<'a,>  {
6642    pub fn into_reader(self) -> Reader<'a,> {
6643      self.builder.into_reader().into()
6644    }
6645    pub fn reborrow(&mut self) -> Builder<'_,> {
6646      Builder { builder: self.builder.reborrow() }
6647    }
6648    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
6649      self.builder.as_reader().into()
6650    }
6651
6652    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6653      self.builder.as_reader().total_size()
6654    }
6655    #[inline]
6656    pub fn get_uuid(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
6657      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
6658    }
6659    #[inline]
6660    pub fn set_uuid(&mut self, value: ::capnp::data::Reader<'_>)  {
6661      self.builder.reborrow().get_pointer_field(0).set_data(value);
6662    }
6663    #[inline]
6664    pub fn init_uuid(self, size: u32) -> ::capnp::data::Builder<'a> {
6665      self.builder.get_pointer_field(0).init_data(size)
6666    }
6667    #[inline]
6668    pub fn has_uuid(&self) -> bool {
6669      !self.builder.is_pointer_field_null(0)
6670    }
6671    #[inline]
6672    pub fn get_location_name(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
6673      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
6674    }
6675    #[inline]
6676    pub fn set_location_name(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
6677      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
6678    }
6679    #[inline]
6680    pub fn init_location_name(self, size: u32) -> ::capnp::text::Builder<'a> {
6681      self.builder.get_pointer_field(1).init_text(size)
6682    }
6683    #[inline]
6684    pub fn has_location_name(&self) -> bool {
6685      !self.builder.is_pointer_field_null(1)
6686    }
6687    #[inline]
6688    pub fn get_tunnel_is_remotely_managed(self) -> bool {
6689      self.builder.get_bool_field(0)
6690    }
6691    #[inline]
6692    pub fn set_tunnel_is_remotely_managed(&mut self, value: bool)  {
6693      self.builder.set_bool_field(0, value);
6694    }
6695  }
6696
6697  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
6698  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
6699    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
6700      Self { _typeless: typeless,  }
6701    }
6702  }
6703  impl Pipeline  {
6704  }
6705  mod _private {
6706    pub static ENCODED_NODE: [::capnp::Word; 67] = [
6707      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
6708      ::capnp::word(138, 193, 154, 43, 8, 159, 243, 181),
6709      ::capnp::word(16, 0, 0, 0, 1, 0, 1, 0),
6710      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
6711      ::capnp::word(2, 0, 7, 0, 0, 0, 0, 0),
6712      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6713      ::capnp::word(21, 0, 0, 0, 18, 1, 0, 0),
6714      ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
6715      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6716      ::capnp::word(33, 0, 0, 0, 175, 0, 0, 0),
6717      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6718      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6719      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
6720      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
6721      ::capnp::word(67, 111, 110, 110, 101, 99, 116, 105),
6722      ::capnp::word(111, 110, 68, 101, 116, 97, 105, 108),
6723      ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
6724      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
6725      ::capnp::word(12, 0, 0, 0, 3, 0, 4, 0),
6726      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6727      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
6728      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6729      ::capnp::word(69, 0, 0, 0, 42, 0, 0, 0),
6730      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6731      ::capnp::word(64, 0, 0, 0, 3, 0, 1, 0),
6732      ::capnp::word(76, 0, 0, 0, 2, 0, 1, 0),
6733      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
6734      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
6735      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6736      ::capnp::word(73, 0, 0, 0, 106, 0, 0, 0),
6737      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6738      ::capnp::word(72, 0, 0, 0, 3, 0, 1, 0),
6739      ::capnp::word(84, 0, 0, 0, 2, 0, 1, 0),
6740      ::capnp::word(2, 0, 0, 0, 0, 0, 0, 0),
6741      ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
6742      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6743      ::capnp::word(81, 0, 0, 0, 194, 0, 0, 0),
6744      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6745      ::capnp::word(84, 0, 0, 0, 3, 0, 1, 0),
6746      ::capnp::word(96, 0, 0, 0, 2, 0, 1, 0),
6747      ::capnp::word(117, 117, 105, 100, 0, 0, 0, 0),
6748      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
6749      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6750      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6751      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6752      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
6753      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6754      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6755      ::capnp::word(108, 111, 99, 97, 116, 105, 111, 110),
6756      ::capnp::word(78, 97, 109, 101, 0, 0, 0, 0),
6757      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
6758      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6759      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6760      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6761      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
6762      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6763      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6764      ::capnp::word(116, 117, 110, 110, 101, 108, 73, 115),
6765      ::capnp::word(82, 101, 109, 111, 116, 101, 108, 121),
6766      ::capnp::word(77, 97, 110, 97, 103, 101, 100, 0),
6767      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
6768      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6769      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6770      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6771      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
6772      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6773      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6774    ];
6775    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
6776      match index {
6777        0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
6778        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
6779        2 => <bool as ::capnp::introspect::Introspect>::introspect(),
6780        _ => panic!("invalid field index {}", index),
6781      }
6782    }
6783    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
6784      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
6785    }
6786    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
6787      encoded_node: &ENCODED_NODE,
6788      nonunion_members: NONUNION_MEMBERS,
6789      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
6790      members_by_name: MEMBERS_BY_NAME,
6791    };
6792    pub static NONUNION_MEMBERS : &[u16] = &[0,1,2];
6793    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
6794    pub static MEMBERS_BY_NAME : &[u16] = &[1,2,0];
6795    pub const TYPE_ID: u64 = 0xb5f3_9f08_2b9a_c18a;
6796  }
6797}
6798
6799pub mod tunnel_auth {
6800  #[derive(Copy, Clone)]
6801  pub struct Owned(());
6802  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
6803  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
6804  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
6805  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
6806
6807  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
6808  impl <> ::core::marker::Copy for Reader<'_,>  {}
6809  impl <> ::core::clone::Clone for Reader<'_,>  {
6810    fn clone(&self) -> Self { *self }
6811  }
6812
6813  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
6814    const TYPE_ID: u64 = _private::TYPE_ID;
6815  }
6816  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
6817    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
6818      Self { reader,  }
6819    }
6820  }
6821
6822  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
6823    fn from(reader: Reader<'a,>) -> Self {
6824      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6825    }
6826  }
6827
6828  impl <> ::core::fmt::Debug for Reader<'_,>  {
6829    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
6830      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
6831    }
6832  }
6833
6834  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
6835    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6836      ::core::result::Result::Ok(reader.get_struct(default)?.into())
6837    }
6838  }
6839
6840  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
6841    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
6842      self.reader
6843    }
6844  }
6845
6846  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
6847    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
6848      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
6849    }
6850  }
6851
6852  impl <'a,> Reader<'a,>  {
6853    pub fn reborrow(&self) -> Reader<'_,> {
6854      Self { .. *self }
6855    }
6856
6857    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6858      self.reader.total_size()
6859    }
6860    #[inline]
6861    pub fn get_account_tag(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
6862      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
6863    }
6864    #[inline]
6865    pub fn has_account_tag(&self) -> bool {
6866      !self.reader.get_pointer_field(0).is_null()
6867    }
6868    #[inline]
6869    pub fn get_tunnel_secret(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
6870      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
6871    }
6872    #[inline]
6873    pub fn has_tunnel_secret(&self) -> bool {
6874      !self.reader.get_pointer_field(1).is_null()
6875    }
6876  }
6877
6878  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
6879  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
6880    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 2 };
6881  }
6882  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
6883    const TYPE_ID: u64 = _private::TYPE_ID;
6884  }
6885  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
6886    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
6887      Self { builder,  }
6888    }
6889  }
6890
6891  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
6892    fn from(builder: Builder<'a,>) -> Self {
6893      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
6894    }
6895  }
6896
6897  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
6898    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
6899      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
6900    }
6901  }
6902
6903  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
6904    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
6905      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
6906    }
6907    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
6908      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
6909    }
6910  }
6911
6912  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
6913    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
6914  }
6915
6916  impl <'a,> Builder<'a,>  {
6917    pub fn into_reader(self) -> Reader<'a,> {
6918      self.builder.into_reader().into()
6919    }
6920    pub fn reborrow(&mut self) -> Builder<'_,> {
6921      Builder { builder: self.builder.reborrow() }
6922    }
6923    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
6924      self.builder.as_reader().into()
6925    }
6926
6927    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
6928      self.builder.as_reader().total_size()
6929    }
6930    #[inline]
6931    pub fn get_account_tag(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
6932      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
6933    }
6934    #[inline]
6935    pub fn set_account_tag(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
6936      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
6937    }
6938    #[inline]
6939    pub fn init_account_tag(self, size: u32) -> ::capnp::text::Builder<'a> {
6940      self.builder.get_pointer_field(0).init_text(size)
6941    }
6942    #[inline]
6943    pub fn has_account_tag(&self) -> bool {
6944      !self.builder.is_pointer_field_null(0)
6945    }
6946    #[inline]
6947    pub fn get_tunnel_secret(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
6948      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
6949    }
6950    #[inline]
6951    pub fn set_tunnel_secret(&mut self, value: ::capnp::data::Reader<'_>)  {
6952      self.builder.reborrow().get_pointer_field(1).set_data(value);
6953    }
6954    #[inline]
6955    pub fn init_tunnel_secret(self, size: u32) -> ::capnp::data::Builder<'a> {
6956      self.builder.get_pointer_field(1).init_data(size)
6957    }
6958    #[inline]
6959    pub fn has_tunnel_secret(&self) -> bool {
6960      !self.builder.is_pointer_field_null(1)
6961    }
6962  }
6963
6964  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
6965  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
6966    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
6967      Self { _typeless: typeless,  }
6968    }
6969  }
6970  impl Pipeline  {
6971  }
6972  mod _private {
6973    pub static ENCODED_NODE: [::capnp::Word; 50] = [
6974      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
6975      ::capnp::word(63, 70, 205, 185, 26, 51, 150, 148),
6976      ::capnp::word(16, 0, 0, 0, 1, 0, 0, 0),
6977      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
6978      ::capnp::word(2, 0, 7, 0, 0, 0, 0, 0),
6979      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6980      ::capnp::word(21, 0, 0, 0, 218, 0, 0, 0),
6981      ::capnp::word(33, 0, 0, 0, 7, 0, 0, 0),
6982      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6983      ::capnp::word(29, 0, 0, 0, 119, 0, 0, 0),
6984      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6985      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6986      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
6987      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
6988      ::capnp::word(84, 117, 110, 110, 101, 108, 65, 117),
6989      ::capnp::word(116, 104, 0, 0, 0, 0, 0, 0),
6990      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
6991      ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
6992      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6993      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
6994      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6995      ::capnp::word(41, 0, 0, 0, 90, 0, 0, 0),
6996      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
6997      ::capnp::word(40, 0, 0, 0, 3, 0, 1, 0),
6998      ::capnp::word(52, 0, 0, 0, 2, 0, 1, 0),
6999      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
7000      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
7001      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7002      ::capnp::word(49, 0, 0, 0, 106, 0, 0, 0),
7003      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7004      ::capnp::word(48, 0, 0, 0, 3, 0, 1, 0),
7005      ::capnp::word(60, 0, 0, 0, 2, 0, 1, 0),
7006      ::capnp::word(97, 99, 99, 111, 117, 110, 116, 84),
7007      ::capnp::word(97, 103, 0, 0, 0, 0, 0, 0),
7008      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
7009      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7010      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7011      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7012      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
7013      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7014      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7015      ::capnp::word(116, 117, 110, 110, 101, 108, 83, 101),
7016      ::capnp::word(99, 114, 101, 116, 0, 0, 0, 0),
7017      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
7018      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7019      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7020      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7021      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
7022      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7023      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7024    ];
7025    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
7026      match index {
7027        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
7028        1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
7029        _ => panic!("invalid field index {}", index),
7030      }
7031    }
7032    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
7033      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
7034    }
7035    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
7036      encoded_node: &ENCODED_NODE,
7037      nonunion_members: NONUNION_MEMBERS,
7038      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
7039      members_by_name: MEMBERS_BY_NAME,
7040    };
7041    pub static NONUNION_MEMBERS : &[u16] = &[0,1];
7042    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
7043    pub static MEMBERS_BY_NAME : &[u16] = &[0,1];
7044    pub const TYPE_ID: u64 = 0x9496_331a_b9cd_463f;
7045  }
7046}
7047
7048
7049pub mod registration_server {
7050  #![allow(unused_variables)]
7051  pub type RegisterConnectionParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::registration_server::register_connection_params::Owned>;
7052  pub type RegisterConnectionResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::registration_server::register_connection_results::Owned>;
7053  pub type UnregisterConnectionParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::registration_server::unregister_connection_params::Owned>;
7054  pub type UnregisterConnectionResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::registration_server::unregister_connection_results::Owned>;
7055  pub type UpdateLocalConfigurationParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::registration_server::update_local_configuration_params::Owned>;
7056  pub type UpdateLocalConfigurationResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::registration_server::update_local_configuration_results::Owned>;
7057
7058  pub struct Client {
7059    pub client: ::capnp::capability::Client,
7060  }
7061  impl  ::capnp::capability::FromClientHook for Client {
7062    fn new(hook: Box<dyn (::capnp::private::capability::ClientHook)>) -> Self {
7063      Self { client: ::capnp::capability::Client::new(hook),  }
7064    }
7065    fn into_client_hook(self) -> Box<dyn (::capnp::private::capability::ClientHook)> {
7066      self.client.hook
7067    }
7068    fn as_client_hook(&self) -> &dyn (::capnp::private::capability::ClientHook) {
7069      &*self.client.hook
7070    }
7071  }
7072  #[derive(Copy, Clone)]
7073  pub struct Owned(());
7074  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Capability.into() } }
7075  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Client; type Builder<'a> = Client; }
7076  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Client; }
7077  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Client<>  {
7078    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7079      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(reader.get_capability()?))
7080    }
7081  }
7082  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Client<>  {
7083    fn init_pointer(_builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
7084      unimplemented!()
7085    }
7086    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7087      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(builder.get_capability()?))
7088    }
7089  }
7090
7091  impl <> ::capnp::traits::SetterInput<Owned<>> for Client<>  {
7092    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, from: Self, _canonicalize: bool) -> ::capnp::Result<()> {
7093      pointer.set_capability(from.client.hook);
7094      ::core::result::Result::Ok(())
7095    }
7096  }
7097  impl  ::capnp::traits::HasTypeId for Client {
7098    const TYPE_ID: u64 = _private::TYPE_ID;
7099  }
7100  impl  Clone for Client {
7101    fn clone(&self) -> Self {
7102      Self { client: ::capnp::capability::Client::new(self.client.hook.add_ref()),  }
7103    }
7104  }
7105  impl  Client {
7106    pub fn register_connection_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::registration_server::register_connection_params::Owned,crate::tunnelrpc_capnp::registration_server::register_connection_results::Owned> {
7107      self.client.new_call(_private::TYPE_ID, 0, ::core::option::Option::None)
7108    }
7109    pub fn unregister_connection_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::registration_server::unregister_connection_params::Owned,crate::tunnelrpc_capnp::registration_server::unregister_connection_results::Owned> {
7110      self.client.new_call(_private::TYPE_ID, 1, ::core::option::Option::None)
7111    }
7112    pub fn update_local_configuration_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::registration_server::update_local_configuration_params::Owned,crate::tunnelrpc_capnp::registration_server::update_local_configuration_results::Owned> {
7113      self.client.new_call(_private::TYPE_ID, 2, ::core::option::Option::None)
7114    }
7115  }
7116  pub trait Server<>   {
7117    fn register_connection(&mut self, _: RegisterConnectionParams<>, _: RegisterConnectionResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method registration_server::Server::register_connection not implemented".to_string())) }
7118    fn unregister_connection(&mut self, _: UnregisterConnectionParams<>, _: UnregisterConnectionResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method registration_server::Server::unregister_connection not implemented".to_string())) }
7119    fn update_local_configuration(&mut self, _: UpdateLocalConfigurationParams<>, _: UpdateLocalConfigurationResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method registration_server::Server::update_local_configuration not implemented".to_string())) }
7120  }
7121  pub struct ServerDispatch<_T,> {
7122    pub server: _T,
7123  }
7124  impl <_S: Server + 'static, > ::capnp::capability::FromServer<_S> for Client   {
7125    type Dispatch = ServerDispatch<_S, >;
7126    fn from_server(s: _S) -> ServerDispatch<_S, > {
7127      ServerDispatch { server: s,  }
7128    }
7129  }
7130  impl <_T: Server> ::core::ops::Deref for ServerDispatch<_T> {
7131    type Target = _T;
7132    fn deref(&self) -> &_T { &self.server}
7133  }
7134  impl <_T: Server> ::core::ops::DerefMut for ServerDispatch<_T> {
7135    fn deref_mut(&mut self) -> &mut _T { &mut self.server}
7136  }
7137  impl <_T: Server> ::capnp::capability::Server for ServerDispatch<_T> {
7138    fn dispatch_call(&mut self, interface_id: u64, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
7139      match interface_id {
7140        _private::TYPE_ID => Self::dispatch_call_internal(&mut self.server, method_id, params, results),
7141        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
7142      }
7143    }
7144  }
7145  impl <_T :Server> ServerDispatch<_T> {
7146    pub fn dispatch_call_internal(server: &mut _T, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
7147      match method_id {
7148        0 => ::capnp::capability::DispatchCallResult::new(server.register_connection(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
7149        1 => ::capnp::capability::DispatchCallResult::new(server.unregister_connection(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
7150        2 => ::capnp::capability::DispatchCallResult::new(server.update_local_configuration(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
7151        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
7152      }
7153    }
7154  }
7155  pub mod _private {
7156    pub const TYPE_ID: u64 = 0xf716_95ec_7fe8_5497;
7157  }
7158
7159  pub mod register_connection_params {
7160    #[derive(Copy, Clone)]
7161    pub struct Owned(());
7162    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
7163    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7164    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7165    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
7166
7167    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
7168    impl <> ::core::marker::Copy for Reader<'_,>  {}
7169    impl <> ::core::clone::Clone for Reader<'_,>  {
7170      fn clone(&self) -> Self { *self }
7171    }
7172
7173    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
7174      const TYPE_ID: u64 = _private::TYPE_ID;
7175    }
7176    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
7177      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
7178        Self { reader,  }
7179      }
7180    }
7181
7182    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
7183      fn from(reader: Reader<'a,>) -> Self {
7184        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7185      }
7186    }
7187
7188    impl <> ::core::fmt::Debug for Reader<'_,>  {
7189      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
7190        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
7191      }
7192    }
7193
7194    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
7195      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7196        ::core::result::Result::Ok(reader.get_struct(default)?.into())
7197      }
7198    }
7199
7200    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
7201      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
7202        self.reader
7203      }
7204    }
7205
7206    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
7207      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
7208        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
7209      }
7210    }
7211
7212    impl <'a,> Reader<'a,>  {
7213      pub fn reborrow(&self) -> Reader<'_,> {
7214        Self { .. *self }
7215      }
7216
7217      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7218        self.reader.total_size()
7219      }
7220      #[inline]
7221      pub fn get_auth(self) -> ::capnp::Result<crate::tunnelrpc_capnp::tunnel_auth::Reader<'a>> {
7222        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
7223      }
7224      #[inline]
7225      pub fn has_auth(&self) -> bool {
7226        !self.reader.get_pointer_field(0).is_null()
7227      }
7228      #[inline]
7229      pub fn get_tunnel_id(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
7230        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
7231      }
7232      #[inline]
7233      pub fn has_tunnel_id(&self) -> bool {
7234        !self.reader.get_pointer_field(1).is_null()
7235      }
7236      #[inline]
7237      pub fn get_conn_index(self) -> u8 {
7238        self.reader.get_data_field::<u8>(0)
7239      }
7240      #[inline]
7241      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::connection_options::Reader<'a>> {
7242        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
7243      }
7244      #[inline]
7245      pub fn has_options(&self) -> bool {
7246        !self.reader.get_pointer_field(2).is_null()
7247      }
7248    }
7249
7250    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
7251    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
7252      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 3 };
7253    }
7254    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
7255      const TYPE_ID: u64 = _private::TYPE_ID;
7256    }
7257    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
7258      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
7259        Self { builder,  }
7260      }
7261    }
7262
7263    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
7264      fn from(builder: Builder<'a,>) -> Self {
7265        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7266      }
7267    }
7268
7269    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
7270      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
7271        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
7272      }
7273    }
7274
7275    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
7276      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
7277        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
7278      }
7279      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7280        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
7281      }
7282    }
7283
7284    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
7285      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
7286    }
7287
7288    impl <'a,> Builder<'a,>  {
7289      pub fn into_reader(self) -> Reader<'a,> {
7290        self.builder.into_reader().into()
7291      }
7292      pub fn reborrow(&mut self) -> Builder<'_,> {
7293        Builder { builder: self.builder.reborrow() }
7294      }
7295      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
7296        self.builder.as_reader().into()
7297      }
7298
7299      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7300        self.builder.as_reader().total_size()
7301      }
7302      #[inline]
7303      pub fn get_auth(self) -> ::capnp::Result<crate::tunnelrpc_capnp::tunnel_auth::Builder<'a>> {
7304        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
7305      }
7306      #[inline]
7307      pub fn set_auth(&mut self, value: crate::tunnelrpc_capnp::tunnel_auth::Reader<'_>) -> ::capnp::Result<()> {
7308        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
7309      }
7310      #[inline]
7311      pub fn init_auth(self, ) -> crate::tunnelrpc_capnp::tunnel_auth::Builder<'a> {
7312        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
7313      }
7314      #[inline]
7315      pub fn has_auth(&self) -> bool {
7316        !self.builder.is_pointer_field_null(0)
7317      }
7318      #[inline]
7319      pub fn get_tunnel_id(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
7320        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
7321      }
7322      #[inline]
7323      pub fn set_tunnel_id(&mut self, value: ::capnp::data::Reader<'_>)  {
7324        self.builder.reborrow().get_pointer_field(1).set_data(value);
7325      }
7326      #[inline]
7327      pub fn init_tunnel_id(self, size: u32) -> ::capnp::data::Builder<'a> {
7328        self.builder.get_pointer_field(1).init_data(size)
7329      }
7330      #[inline]
7331      pub fn has_tunnel_id(&self) -> bool {
7332        !self.builder.is_pointer_field_null(1)
7333      }
7334      #[inline]
7335      pub fn get_conn_index(self) -> u8 {
7336        self.builder.get_data_field::<u8>(0)
7337      }
7338      #[inline]
7339      pub fn set_conn_index(&mut self, value: u8)  {
7340        self.builder.set_data_field::<u8>(0, value);
7341      }
7342      #[inline]
7343      pub fn get_options(self) -> ::capnp::Result<crate::tunnelrpc_capnp::connection_options::Builder<'a>> {
7344        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
7345      }
7346      #[inline]
7347      pub fn set_options(&mut self, value: crate::tunnelrpc_capnp::connection_options::Reader<'_>) -> ::capnp::Result<()> {
7348        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false)
7349      }
7350      #[inline]
7351      pub fn init_options(self, ) -> crate::tunnelrpc_capnp::connection_options::Builder<'a> {
7352        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(2), 0)
7353      }
7354      #[inline]
7355      pub fn has_options(&self) -> bool {
7356        !self.builder.is_pointer_field_null(2)
7357      }
7358    }
7359
7360    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
7361    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
7362      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
7363        Self { _typeless: typeless,  }
7364      }
7365    }
7366    impl Pipeline  {
7367      pub fn get_auth(&self) -> crate::tunnelrpc_capnp::tunnel_auth::Pipeline {
7368        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
7369      }
7370      pub fn get_options(&self) -> crate::tunnelrpc_capnp::connection_options::Pipeline {
7371        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(2))
7372      }
7373    }
7374    mod _private {
7375      pub static ENCODED_NODE: [::capnp::Word; 83] = [
7376        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
7377        ::capnp::word(238, 166, 234, 143, 236, 109, 100, 230),
7378        ::capnp::word(35, 0, 0, 0, 1, 0, 1, 0),
7379        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7380        ::capnp::word(3, 0, 7, 0, 0, 0, 0, 0),
7381        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7382        ::capnp::word(21, 0, 0, 0, 234, 1, 0, 0),
7383        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7384        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7385        ::capnp::word(41, 0, 0, 0, 231, 0, 0, 0),
7386        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7387        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7388        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
7389        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
7390        ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
7391        ::capnp::word(116, 105, 111, 110, 83, 101, 114, 118),
7392        ::capnp::word(101, 114, 46, 114, 101, 103, 105, 115),
7393        ::capnp::word(116, 101, 114, 67, 111, 110, 110, 101),
7394        ::capnp::word(99, 116, 105, 111, 110, 36, 80, 97),
7395        ::capnp::word(114, 97, 109, 115, 0, 0, 0, 0),
7396        ::capnp::word(16, 0, 0, 0, 3, 0, 4, 0),
7397        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7398        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
7399        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7400        ::capnp::word(97, 0, 0, 0, 42, 0, 0, 0),
7401        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7402        ::capnp::word(92, 0, 0, 0, 3, 0, 1, 0),
7403        ::capnp::word(104, 0, 0, 0, 2, 0, 1, 0),
7404        ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
7405        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
7406        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7407        ::capnp::word(101, 0, 0, 0, 74, 0, 0, 0),
7408        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7409        ::capnp::word(100, 0, 0, 0, 3, 0, 1, 0),
7410        ::capnp::word(112, 0, 0, 0, 2, 0, 1, 0),
7411        ::capnp::word(2, 0, 0, 0, 0, 0, 0, 0),
7412        ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
7413        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7414        ::capnp::word(109, 0, 0, 0, 82, 0, 0, 0),
7415        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7416        ::capnp::word(108, 0, 0, 0, 3, 0, 1, 0),
7417        ::capnp::word(120, 0, 0, 0, 2, 0, 1, 0),
7418        ::capnp::word(3, 0, 0, 0, 2, 0, 0, 0),
7419        ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
7420        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7421        ::capnp::word(117, 0, 0, 0, 66, 0, 0, 0),
7422        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7423        ::capnp::word(112, 0, 0, 0, 3, 0, 1, 0),
7424        ::capnp::word(124, 0, 0, 0, 2, 0, 1, 0),
7425        ::capnp::word(97, 117, 116, 104, 0, 0, 0, 0),
7426        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
7427        ::capnp::word(63, 70, 205, 185, 26, 51, 150, 148),
7428        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7429        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7430        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
7431        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7432        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7433        ::capnp::word(116, 117, 110, 110, 101, 108, 73, 100),
7434        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7435        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
7436        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7437        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7438        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7439        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
7440        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7441        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7442        ::capnp::word(99, 111, 110, 110, 73, 110, 100, 101),
7443        ::capnp::word(120, 0, 0, 0, 0, 0, 0, 0),
7444        ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
7445        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7446        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7447        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7448        ::capnp::word(6, 0, 0, 0, 0, 0, 0, 0),
7449        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7450        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7451        ::capnp::word(111, 112, 116, 105, 111, 110, 115, 0),
7452        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
7453        ::capnp::word(4, 93, 3, 254, 97, 152, 191, 180),
7454        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7455        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7456        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
7457        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7458        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7459      ];
7460      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
7461        match index {
7462          0 => <crate::tunnelrpc_capnp::tunnel_auth::Owned as ::capnp::introspect::Introspect>::introspect(),
7463          1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
7464          2 => <u8 as ::capnp::introspect::Introspect>::introspect(),
7465          3 => <crate::tunnelrpc_capnp::connection_options::Owned as ::capnp::introspect::Introspect>::introspect(),
7466          _ => panic!("invalid field index {}", index),
7467        }
7468      }
7469      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
7470        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
7471      }
7472      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
7473        encoded_node: &ENCODED_NODE,
7474        nonunion_members: NONUNION_MEMBERS,
7475        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
7476        members_by_name: MEMBERS_BY_NAME,
7477      };
7478      pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3];
7479      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
7480      pub static MEMBERS_BY_NAME : &[u16] = &[0,2,3,1];
7481      pub const TYPE_ID: u64 = 0xe664_6dec_8fea_a6ee;
7482    }
7483  }
7484
7485  pub mod register_connection_results {
7486    #[derive(Copy, Clone)]
7487    pub struct Owned(());
7488    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
7489    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7490    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7491    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
7492
7493    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
7494    impl <> ::core::marker::Copy for Reader<'_,>  {}
7495    impl <> ::core::clone::Clone for Reader<'_,>  {
7496      fn clone(&self) -> Self { *self }
7497    }
7498
7499    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
7500      const TYPE_ID: u64 = _private::TYPE_ID;
7501    }
7502    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
7503      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
7504        Self { reader,  }
7505      }
7506    }
7507
7508    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
7509      fn from(reader: Reader<'a,>) -> Self {
7510        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7511      }
7512    }
7513
7514    impl <> ::core::fmt::Debug for Reader<'_,>  {
7515      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
7516        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
7517      }
7518    }
7519
7520    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
7521      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7522        ::core::result::Result::Ok(reader.get_struct(default)?.into())
7523      }
7524    }
7525
7526    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
7527      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
7528        self.reader
7529      }
7530    }
7531
7532    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
7533      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
7534        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
7535      }
7536    }
7537
7538    impl <'a,> Reader<'a,>  {
7539      pub fn reborrow(&self) -> Reader<'_,> {
7540        Self { .. *self }
7541      }
7542
7543      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7544        self.reader.total_size()
7545      }
7546      #[inline]
7547      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::connection_response::Reader<'a>> {
7548        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
7549      }
7550      #[inline]
7551      pub fn has_result(&self) -> bool {
7552        !self.reader.get_pointer_field(0).is_null()
7553      }
7554    }
7555
7556    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
7557    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
7558      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
7559    }
7560    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
7561      const TYPE_ID: u64 = _private::TYPE_ID;
7562    }
7563    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
7564      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
7565        Self { builder,  }
7566      }
7567    }
7568
7569    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
7570      fn from(builder: Builder<'a,>) -> Self {
7571        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7572      }
7573    }
7574
7575    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
7576      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
7577        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
7578      }
7579    }
7580
7581    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
7582      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
7583        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
7584      }
7585      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7586        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
7587      }
7588    }
7589
7590    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
7591      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
7592    }
7593
7594    impl <'a,> Builder<'a,>  {
7595      pub fn into_reader(self) -> Reader<'a,> {
7596        self.builder.into_reader().into()
7597      }
7598      pub fn reborrow(&mut self) -> Builder<'_,> {
7599        Builder { builder: self.builder.reborrow() }
7600      }
7601      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
7602        self.builder.as_reader().into()
7603      }
7604
7605      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7606        self.builder.as_reader().total_size()
7607      }
7608      #[inline]
7609      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::connection_response::Builder<'a>> {
7610        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
7611      }
7612      #[inline]
7613      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::connection_response::Reader<'_>) -> ::capnp::Result<()> {
7614        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
7615      }
7616      #[inline]
7617      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::connection_response::Builder<'a> {
7618        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
7619      }
7620      #[inline]
7621      pub fn has_result(&self) -> bool {
7622        !self.builder.is_pointer_field_null(0)
7623      }
7624    }
7625
7626    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
7627    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
7628      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
7629        Self { _typeless: typeless,  }
7630      }
7631    }
7632    impl Pipeline  {
7633      pub fn get_result(&self) -> crate::tunnelrpc_capnp::connection_response::Pipeline {
7634        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
7635      }
7636    }
7637    mod _private {
7638      pub static ENCODED_NODE: [::capnp::Word; 36] = [
7639        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
7640        ::capnp::word(23, 31, 13, 69, 34, 216, 80, 234),
7641        ::capnp::word(35, 0, 0, 0, 1, 0, 0, 0),
7642        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7643        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
7644        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7645        ::capnp::word(21, 0, 0, 0, 242, 1, 0, 0),
7646        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7647        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7648        ::capnp::word(41, 0, 0, 0, 63, 0, 0, 0),
7649        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7650        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7651        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
7652        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
7653        ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
7654        ::capnp::word(116, 105, 111, 110, 83, 101, 114, 118),
7655        ::capnp::word(101, 114, 46, 114, 101, 103, 105, 115),
7656        ::capnp::word(116, 101, 114, 67, 111, 110, 110, 101),
7657        ::capnp::word(99, 116, 105, 111, 110, 36, 82, 101),
7658        ::capnp::word(115, 117, 108, 116, 115, 0, 0, 0),
7659        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
7660        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7661        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
7662        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7663        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
7664        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7665        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
7666        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
7667        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
7668        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
7669        ::capnp::word(220, 98, 43, 213, 3, 157, 170, 219),
7670        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7671        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7672        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
7673        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7674        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7675      ];
7676      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
7677        match index {
7678          0 => <crate::tunnelrpc_capnp::connection_response::Owned as ::capnp::introspect::Introspect>::introspect(),
7679          _ => panic!("invalid field index {}", index),
7680        }
7681      }
7682      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
7683        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
7684      }
7685      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
7686        encoded_node: &ENCODED_NODE,
7687        nonunion_members: NONUNION_MEMBERS,
7688        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
7689        members_by_name: MEMBERS_BY_NAME,
7690      };
7691      pub static NONUNION_MEMBERS : &[u16] = &[0];
7692      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
7693      pub static MEMBERS_BY_NAME : &[u16] = &[0];
7694      pub const TYPE_ID: u64 = 0xea50_d822_450d_1f17;
7695    }
7696  }
7697
7698  pub mod unregister_connection_params {
7699    #[derive(Copy, Clone)]
7700    pub struct Owned(());
7701    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
7702    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7703    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7704    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
7705
7706    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
7707    impl <> ::core::marker::Copy for Reader<'_,>  {}
7708    impl <> ::core::clone::Clone for Reader<'_,>  {
7709      fn clone(&self) -> Self { *self }
7710    }
7711
7712    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
7713      const TYPE_ID: u64 = _private::TYPE_ID;
7714    }
7715    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
7716      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
7717        Self { reader,  }
7718      }
7719    }
7720
7721    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
7722      fn from(reader: Reader<'a,>) -> Self {
7723        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7724      }
7725    }
7726
7727    impl <> ::core::fmt::Debug for Reader<'_,>  {
7728      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
7729        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
7730      }
7731    }
7732
7733    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
7734      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7735        ::core::result::Result::Ok(reader.get_struct(default)?.into())
7736      }
7737    }
7738
7739    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
7740      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
7741        self.reader
7742      }
7743    }
7744
7745    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
7746      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
7747        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
7748      }
7749    }
7750
7751    impl <> Reader<'_,>  {
7752      pub fn reborrow(&self) -> Reader<'_,> {
7753        Self { .. *self }
7754      }
7755
7756      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7757        self.reader.total_size()
7758      }
7759    }
7760
7761    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
7762    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
7763      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
7764    }
7765    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
7766      const TYPE_ID: u64 = _private::TYPE_ID;
7767    }
7768    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
7769      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
7770        Self { builder,  }
7771      }
7772    }
7773
7774    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
7775      fn from(builder: Builder<'a,>) -> Self {
7776        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7777      }
7778    }
7779
7780    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
7781      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
7782        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
7783      }
7784    }
7785
7786    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
7787      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
7788        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
7789      }
7790      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7791        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
7792      }
7793    }
7794
7795    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
7796      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
7797    }
7798
7799    impl <'a,> Builder<'a,>  {
7800      pub fn into_reader(self) -> Reader<'a,> {
7801        self.builder.into_reader().into()
7802      }
7803      pub fn reborrow(&mut self) -> Builder<'_,> {
7804        Builder { builder: self.builder.reborrow() }
7805      }
7806      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
7807        self.builder.as_reader().into()
7808      }
7809
7810      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7811        self.builder.as_reader().total_size()
7812      }
7813    }
7814
7815    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
7816    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
7817      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
7818        Self { _typeless: typeless,  }
7819      }
7820    }
7821    impl Pipeline  {
7822    }
7823    mod _private {
7824      pub static ENCODED_NODE: [::capnp::Word; 20] = [
7825        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
7826        ::capnp::word(208, 7, 163, 49, 68, 127, 203, 249),
7827        ::capnp::word(35, 0, 0, 0, 1, 0, 0, 0),
7828        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7829        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
7830        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7831        ::capnp::word(21, 0, 0, 0, 250, 1, 0, 0),
7832        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7833        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7834        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7835        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7836        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7837        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
7838        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
7839        ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
7840        ::capnp::word(116, 105, 111, 110, 83, 101, 114, 118),
7841        ::capnp::word(101, 114, 46, 117, 110, 114, 101, 103),
7842        ::capnp::word(105, 115, 116, 101, 114, 67, 111, 110),
7843        ::capnp::word(110, 101, 99, 116, 105, 111, 110, 36),
7844        ::capnp::word(80, 97, 114, 97, 109, 115, 0, 0),
7845      ];
7846      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
7847        panic!("invalid field index {}", index)
7848      }
7849      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
7850        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
7851      }
7852      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
7853        encoded_node: &ENCODED_NODE,
7854        nonunion_members: NONUNION_MEMBERS,
7855        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
7856        members_by_name: MEMBERS_BY_NAME,
7857      };
7858      pub static NONUNION_MEMBERS : &[u16] = &[];
7859      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
7860      pub static MEMBERS_BY_NAME : &[u16] = &[];
7861      pub const TYPE_ID: u64 = 0xf9cb_7f44_31a3_07d0;
7862    }
7863  }
7864
7865  pub mod unregister_connection_results {
7866    #[derive(Copy, Clone)]
7867    pub struct Owned(());
7868    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
7869    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7870    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
7871    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
7872
7873    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
7874    impl <> ::core::marker::Copy for Reader<'_,>  {}
7875    impl <> ::core::clone::Clone for Reader<'_,>  {
7876      fn clone(&self) -> Self { *self }
7877    }
7878
7879    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
7880      const TYPE_ID: u64 = _private::TYPE_ID;
7881    }
7882    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
7883      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
7884        Self { reader,  }
7885      }
7886    }
7887
7888    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
7889      fn from(reader: Reader<'a,>) -> Self {
7890        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7891      }
7892    }
7893
7894    impl <> ::core::fmt::Debug for Reader<'_,>  {
7895      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
7896        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
7897      }
7898    }
7899
7900    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
7901      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7902        ::core::result::Result::Ok(reader.get_struct(default)?.into())
7903      }
7904    }
7905
7906    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
7907      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
7908        self.reader
7909      }
7910    }
7911
7912    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
7913      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
7914        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
7915      }
7916    }
7917
7918    impl <> Reader<'_,>  {
7919      pub fn reborrow(&self) -> Reader<'_,> {
7920        Self { .. *self }
7921      }
7922
7923      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7924        self.reader.total_size()
7925      }
7926    }
7927
7928    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
7929    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
7930      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
7931    }
7932    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
7933      const TYPE_ID: u64 = _private::TYPE_ID;
7934    }
7935    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
7936      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
7937        Self { builder,  }
7938      }
7939    }
7940
7941    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
7942      fn from(builder: Builder<'a,>) -> Self {
7943        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
7944      }
7945    }
7946
7947    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
7948      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
7949        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
7950      }
7951    }
7952
7953    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
7954      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
7955        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
7956      }
7957      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
7958        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
7959      }
7960    }
7961
7962    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
7963      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
7964    }
7965
7966    impl <'a,> Builder<'a,>  {
7967      pub fn into_reader(self) -> Reader<'a,> {
7968        self.builder.into_reader().into()
7969      }
7970      pub fn reborrow(&mut self) -> Builder<'_,> {
7971        Builder { builder: self.builder.reborrow() }
7972      }
7973      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
7974        self.builder.as_reader().into()
7975      }
7976
7977      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
7978        self.builder.as_reader().total_size()
7979      }
7980    }
7981
7982    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
7983    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
7984      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
7985        Self { _typeless: typeless,  }
7986      }
7987    }
7988    impl Pipeline  {
7989    }
7990    mod _private {
7991      pub static ENCODED_NODE: [::capnp::Word; 20] = [
7992        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
7993        ::capnp::word(173, 30, 75, 9, 120, 229, 70, 176),
7994        ::capnp::word(35, 0, 0, 0, 1, 0, 0, 0),
7995        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7996        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
7997        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
7998        ::capnp::word(21, 0, 0, 0, 2, 2, 0, 0),
7999        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8000        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8001        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8002        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8003        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8004        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
8005        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
8006        ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
8007        ::capnp::word(116, 105, 111, 110, 83, 101, 114, 118),
8008        ::capnp::word(101, 114, 46, 117, 110, 114, 101, 103),
8009        ::capnp::word(105, 115, 116, 101, 114, 67, 111, 110),
8010        ::capnp::word(110, 101, 99, 116, 105, 111, 110, 36),
8011        ::capnp::word(82, 101, 115, 117, 108, 116, 115, 0),
8012      ];
8013      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
8014        panic!("invalid field index {}", index)
8015      }
8016      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
8017        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
8018      }
8019      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
8020        encoded_node: &ENCODED_NODE,
8021        nonunion_members: NONUNION_MEMBERS,
8022        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
8023        members_by_name: MEMBERS_BY_NAME,
8024      };
8025      pub static NONUNION_MEMBERS : &[u16] = &[];
8026      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
8027      pub static MEMBERS_BY_NAME : &[u16] = &[];
8028      pub const TYPE_ID: u64 = 0xb046_e578_094b_1ead;
8029    }
8030  }
8031
8032  pub mod update_local_configuration_params {
8033    #[derive(Copy, Clone)]
8034    pub struct Owned(());
8035    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
8036    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8037    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8038    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
8039
8040    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
8041    impl <> ::core::marker::Copy for Reader<'_,>  {}
8042    impl <> ::core::clone::Clone for Reader<'_,>  {
8043      fn clone(&self) -> Self { *self }
8044    }
8045
8046    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
8047      const TYPE_ID: u64 = _private::TYPE_ID;
8048    }
8049    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
8050      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
8051        Self { reader,  }
8052      }
8053    }
8054
8055    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
8056      fn from(reader: Reader<'a,>) -> Self {
8057        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8058      }
8059    }
8060
8061    impl <> ::core::fmt::Debug for Reader<'_,>  {
8062      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
8063        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
8064      }
8065    }
8066
8067    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
8068      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8069        ::core::result::Result::Ok(reader.get_struct(default)?.into())
8070      }
8071    }
8072
8073    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
8074      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
8075        self.reader
8076      }
8077    }
8078
8079    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
8080      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
8081        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
8082      }
8083    }
8084
8085    impl <'a,> Reader<'a,>  {
8086      pub fn reborrow(&self) -> Reader<'_,> {
8087        Self { .. *self }
8088      }
8089
8090      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8091        self.reader.total_size()
8092      }
8093      #[inline]
8094      pub fn get_config(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
8095        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
8096      }
8097      #[inline]
8098      pub fn has_config(&self) -> bool {
8099        !self.reader.get_pointer_field(0).is_null()
8100      }
8101    }
8102
8103    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
8104    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
8105      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
8106    }
8107    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
8108      const TYPE_ID: u64 = _private::TYPE_ID;
8109    }
8110    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
8111      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
8112        Self { builder,  }
8113      }
8114    }
8115
8116    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
8117      fn from(builder: Builder<'a,>) -> Self {
8118        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8119      }
8120    }
8121
8122    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
8123      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
8124        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
8125      }
8126    }
8127
8128    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
8129      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
8130        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
8131      }
8132      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8133        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
8134      }
8135    }
8136
8137    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
8138      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
8139    }
8140
8141    impl <'a,> Builder<'a,>  {
8142      pub fn into_reader(self) -> Reader<'a,> {
8143        self.builder.into_reader().into()
8144      }
8145      pub fn reborrow(&mut self) -> Builder<'_,> {
8146        Builder { builder: self.builder.reborrow() }
8147      }
8148      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
8149        self.builder.as_reader().into()
8150      }
8151
8152      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8153        self.builder.as_reader().total_size()
8154      }
8155      #[inline]
8156      pub fn get_config(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
8157        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
8158      }
8159      #[inline]
8160      pub fn set_config(&mut self, value: ::capnp::data::Reader<'_>)  {
8161        self.builder.reborrow().get_pointer_field(0).set_data(value);
8162      }
8163      #[inline]
8164      pub fn init_config(self, size: u32) -> ::capnp::data::Builder<'a> {
8165        self.builder.get_pointer_field(0).init_data(size)
8166      }
8167      #[inline]
8168      pub fn has_config(&self) -> bool {
8169        !self.builder.is_pointer_field_null(0)
8170      }
8171    }
8172
8173    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
8174    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
8175      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
8176        Self { _typeless: typeless,  }
8177      }
8178    }
8179    impl Pipeline  {
8180    }
8181    mod _private {
8182      pub static ENCODED_NODE: [::capnp::Word; 37] = [
8183        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
8184        ::capnp::word(4, 54, 106, 135, 17, 227, 214, 197),
8185        ::capnp::word(35, 0, 0, 0, 1, 0, 0, 0),
8186        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8187        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
8188        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8189        ::capnp::word(21, 0, 0, 0, 26, 2, 0, 0),
8190        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8191        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8192        ::capnp::word(45, 0, 0, 0, 63, 0, 0, 0),
8193        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8194        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8195        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
8196        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
8197        ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
8198        ::capnp::word(116, 105, 111, 110, 83, 101, 114, 118),
8199        ::capnp::word(101, 114, 46, 117, 112, 100, 97, 116),
8200        ::capnp::word(101, 76, 111, 99, 97, 108, 67, 111),
8201        ::capnp::word(110, 102, 105, 103, 117, 114, 97, 116),
8202        ::capnp::word(105, 111, 110, 36, 80, 97, 114, 97),
8203        ::capnp::word(109, 115, 0, 0, 0, 0, 0, 0),
8204        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
8205        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8206        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
8207        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8208        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
8209        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8210        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
8211        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
8212        ::capnp::word(99, 111, 110, 102, 105, 103, 0, 0),
8213        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
8214        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8215        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8216        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8217        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
8218        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8219        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8220      ];
8221      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
8222        match index {
8223          0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
8224          _ => panic!("invalid field index {}", index),
8225        }
8226      }
8227      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
8228        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
8229      }
8230      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
8231        encoded_node: &ENCODED_NODE,
8232        nonunion_members: NONUNION_MEMBERS,
8233        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
8234        members_by_name: MEMBERS_BY_NAME,
8235      };
8236      pub static NONUNION_MEMBERS : &[u16] = &[0];
8237      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
8238      pub static MEMBERS_BY_NAME : &[u16] = &[0];
8239      pub const TYPE_ID: u64 = 0xc5d6_e311_876a_3604;
8240    }
8241  }
8242
8243  pub mod update_local_configuration_results {
8244    #[derive(Copy, Clone)]
8245    pub struct Owned(());
8246    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
8247    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8248    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8249    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
8250
8251    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
8252    impl <> ::core::marker::Copy for Reader<'_,>  {}
8253    impl <> ::core::clone::Clone for Reader<'_,>  {
8254      fn clone(&self) -> Self { *self }
8255    }
8256
8257    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
8258      const TYPE_ID: u64 = _private::TYPE_ID;
8259    }
8260    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
8261      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
8262        Self { reader,  }
8263      }
8264    }
8265
8266    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
8267      fn from(reader: Reader<'a,>) -> Self {
8268        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8269      }
8270    }
8271
8272    impl <> ::core::fmt::Debug for Reader<'_,>  {
8273      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
8274        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
8275      }
8276    }
8277
8278    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
8279      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8280        ::core::result::Result::Ok(reader.get_struct(default)?.into())
8281      }
8282    }
8283
8284    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
8285      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
8286        self.reader
8287      }
8288    }
8289
8290    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
8291      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
8292        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
8293      }
8294    }
8295
8296    impl <> Reader<'_,>  {
8297      pub fn reborrow(&self) -> Reader<'_,> {
8298        Self { .. *self }
8299      }
8300
8301      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8302        self.reader.total_size()
8303      }
8304    }
8305
8306    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
8307    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
8308      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
8309    }
8310    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
8311      const TYPE_ID: u64 = _private::TYPE_ID;
8312    }
8313    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
8314      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
8315        Self { builder,  }
8316      }
8317    }
8318
8319    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
8320      fn from(builder: Builder<'a,>) -> Self {
8321        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8322      }
8323    }
8324
8325    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
8326      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
8327        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
8328      }
8329    }
8330
8331    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
8332      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
8333        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
8334      }
8335      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8336        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
8337      }
8338    }
8339
8340    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
8341      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
8342    }
8343
8344    impl <'a,> Builder<'a,>  {
8345      pub fn into_reader(self) -> Reader<'a,> {
8346        self.builder.into_reader().into()
8347      }
8348      pub fn reborrow(&mut self) -> Builder<'_,> {
8349        Builder { builder: self.builder.reborrow() }
8350      }
8351      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
8352        self.builder.as_reader().into()
8353      }
8354
8355      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8356        self.builder.as_reader().total_size()
8357      }
8358    }
8359
8360    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
8361    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
8362      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
8363        Self { _typeless: typeless,  }
8364      }
8365    }
8366    impl Pipeline  {
8367    }
8368    mod _private {
8369      pub static ENCODED_NODE: [::capnp::Word; 21] = [
8370        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
8371        ::capnp::word(190, 215, 151, 104, 93, 174, 206, 229),
8372        ::capnp::word(35, 0, 0, 0, 1, 0, 0, 0),
8373        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8374        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
8375        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8376        ::capnp::word(21, 0, 0, 0, 34, 2, 0, 0),
8377        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8378        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8379        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8380        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8381        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8382        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
8383        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
8384        ::capnp::word(82, 101, 103, 105, 115, 116, 114, 97),
8385        ::capnp::word(116, 105, 111, 110, 83, 101, 114, 118),
8386        ::capnp::word(101, 114, 46, 117, 112, 100, 97, 116),
8387        ::capnp::word(101, 76, 111, 99, 97, 108, 67, 111),
8388        ::capnp::word(110, 102, 105, 103, 117, 114, 97, 116),
8389        ::capnp::word(105, 111, 110, 36, 82, 101, 115, 117),
8390        ::capnp::word(108, 116, 115, 0, 0, 0, 0, 0),
8391      ];
8392      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
8393        panic!("invalid field index {}", index)
8394      }
8395      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
8396        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
8397      }
8398      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
8399        encoded_node: &ENCODED_NODE,
8400        nonunion_members: NONUNION_MEMBERS,
8401        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
8402        members_by_name: MEMBERS_BY_NAME,
8403      };
8404      pub static NONUNION_MEMBERS : &[u16] = &[];
8405      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
8406      pub static MEMBERS_BY_NAME : &[u16] = &[];
8407      pub const TYPE_ID: u64 = 0xe5ce_ae5d_6897_d7be;
8408    }
8409  }
8410}
8411
8412pub mod register_udp_session_response {
8413  #[derive(Copy, Clone)]
8414  pub struct Owned(());
8415  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
8416  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8417  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8418  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
8419
8420  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
8421  impl <> ::core::marker::Copy for Reader<'_,>  {}
8422  impl <> ::core::clone::Clone for Reader<'_,>  {
8423    fn clone(&self) -> Self { *self }
8424  }
8425
8426  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
8427    const TYPE_ID: u64 = _private::TYPE_ID;
8428  }
8429  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
8430    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
8431      Self { reader,  }
8432    }
8433  }
8434
8435  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
8436    fn from(reader: Reader<'a,>) -> Self {
8437      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8438    }
8439  }
8440
8441  impl <> ::core::fmt::Debug for Reader<'_,>  {
8442    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
8443      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
8444    }
8445  }
8446
8447  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
8448    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8449      ::core::result::Result::Ok(reader.get_struct(default)?.into())
8450    }
8451  }
8452
8453  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
8454    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
8455      self.reader
8456    }
8457  }
8458
8459  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
8460    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
8461      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
8462    }
8463  }
8464
8465  impl <'a,> Reader<'a,>  {
8466    pub fn reborrow(&self) -> Reader<'_,> {
8467      Self { .. *self }
8468    }
8469
8470    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8471      self.reader.total_size()
8472    }
8473    #[inline]
8474    pub fn get_err(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
8475      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
8476    }
8477    #[inline]
8478    pub fn has_err(&self) -> bool {
8479      !self.reader.get_pointer_field(0).is_null()
8480    }
8481    #[inline]
8482    pub fn get_spans(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
8483      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
8484    }
8485    #[inline]
8486    pub fn has_spans(&self) -> bool {
8487      !self.reader.get_pointer_field(1).is_null()
8488    }
8489  }
8490
8491  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
8492  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
8493    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 2 };
8494  }
8495  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
8496    const TYPE_ID: u64 = _private::TYPE_ID;
8497  }
8498  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
8499    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
8500      Self { builder,  }
8501    }
8502  }
8503
8504  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
8505    fn from(builder: Builder<'a,>) -> Self {
8506      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8507    }
8508  }
8509
8510  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
8511    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
8512      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
8513    }
8514  }
8515
8516  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
8517    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
8518      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
8519    }
8520    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8521      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
8522    }
8523  }
8524
8525  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
8526    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
8527  }
8528
8529  impl <'a,> Builder<'a,>  {
8530    pub fn into_reader(self) -> Reader<'a,> {
8531      self.builder.into_reader().into()
8532    }
8533    pub fn reborrow(&mut self) -> Builder<'_,> {
8534      Builder { builder: self.builder.reborrow() }
8535    }
8536    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
8537      self.builder.as_reader().into()
8538    }
8539
8540    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8541      self.builder.as_reader().total_size()
8542    }
8543    #[inline]
8544    pub fn get_err(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
8545      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
8546    }
8547    #[inline]
8548    pub fn set_err(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
8549      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
8550    }
8551    #[inline]
8552    pub fn init_err(self, size: u32) -> ::capnp::text::Builder<'a> {
8553      self.builder.get_pointer_field(0).init_text(size)
8554    }
8555    #[inline]
8556    pub fn has_err(&self) -> bool {
8557      !self.builder.is_pointer_field_null(0)
8558    }
8559    #[inline]
8560    pub fn get_spans(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
8561      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
8562    }
8563    #[inline]
8564    pub fn set_spans(&mut self, value: ::capnp::data::Reader<'_>)  {
8565      self.builder.reborrow().get_pointer_field(1).set_data(value);
8566    }
8567    #[inline]
8568    pub fn init_spans(self, size: u32) -> ::capnp::data::Builder<'a> {
8569      self.builder.get_pointer_field(1).init_data(size)
8570    }
8571    #[inline]
8572    pub fn has_spans(&self) -> bool {
8573      !self.builder.is_pointer_field_null(1)
8574    }
8575  }
8576
8577  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
8578  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
8579    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
8580      Self { _typeless: typeless,  }
8581    }
8582  }
8583  impl Pipeline  {
8584  }
8585  mod _private {
8586    pub static ENCODED_NODE: [::capnp::Word; 50] = [
8587      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
8588      ::capnp::word(135, 102, 242, 193, 16, 82, 109, 171),
8589      ::capnp::word(16, 0, 0, 0, 1, 0, 0, 0),
8590      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
8591      ::capnp::word(2, 0, 7, 0, 0, 0, 0, 0),
8592      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8593      ::capnp::word(21, 0, 0, 0, 90, 1, 0, 0),
8594      ::capnp::word(41, 0, 0, 0, 7, 0, 0, 0),
8595      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8596      ::capnp::word(37, 0, 0, 0, 119, 0, 0, 0),
8597      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8598      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8599      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
8600      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
8601      ::capnp::word(82, 101, 103, 105, 115, 116, 101, 114),
8602      ::capnp::word(85, 100, 112, 83, 101, 115, 115, 105),
8603      ::capnp::word(111, 110, 82, 101, 115, 112, 111, 110),
8604      ::capnp::word(115, 101, 0, 0, 0, 0, 0, 0),
8605      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
8606      ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
8607      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8608      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
8609      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8610      ::capnp::word(41, 0, 0, 0, 34, 0, 0, 0),
8611      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8612      ::capnp::word(36, 0, 0, 0, 3, 0, 1, 0),
8613      ::capnp::word(48, 0, 0, 0, 2, 0, 1, 0),
8614      ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
8615      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
8616      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8617      ::capnp::word(45, 0, 0, 0, 50, 0, 0, 0),
8618      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8619      ::capnp::word(40, 0, 0, 0, 3, 0, 1, 0),
8620      ::capnp::word(52, 0, 0, 0, 2, 0, 1, 0),
8621      ::capnp::word(101, 114, 114, 0, 0, 0, 0, 0),
8622      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
8623      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8624      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8625      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8626      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
8627      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8628      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8629      ::capnp::word(115, 112, 97, 110, 115, 0, 0, 0),
8630      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
8631      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8632      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8633      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8634      ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
8635      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8636      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8637    ];
8638    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
8639      match index {
8640        0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
8641        1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
8642        _ => panic!("invalid field index {}", index),
8643      }
8644    }
8645    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
8646      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
8647    }
8648    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
8649      encoded_node: &ENCODED_NODE,
8650      nonunion_members: NONUNION_MEMBERS,
8651      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
8652      members_by_name: MEMBERS_BY_NAME,
8653    };
8654    pub static NONUNION_MEMBERS : &[u16] = &[0,1];
8655    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
8656    pub static MEMBERS_BY_NAME : &[u16] = &[0,1];
8657    pub const TYPE_ID: u64 = 0xab6d_5210_c1f2_6687;
8658  }
8659}
8660
8661
8662pub mod session_manager {
8663  #![allow(unused_variables)]
8664  pub type RegisterUdpSessionParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::session_manager::register_udp_session_params::Owned>;
8665  pub type RegisterUdpSessionResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::session_manager::register_udp_session_results::Owned>;
8666  pub type UnregisterUdpSessionParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::session_manager::unregister_udp_session_params::Owned>;
8667  pub type UnregisterUdpSessionResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::session_manager::unregister_udp_session_results::Owned>;
8668
8669  pub struct Client {
8670    pub client: ::capnp::capability::Client,
8671  }
8672  impl  ::capnp::capability::FromClientHook for Client {
8673    fn new(hook: Box<dyn (::capnp::private::capability::ClientHook)>) -> Self {
8674      Self { client: ::capnp::capability::Client::new(hook),  }
8675    }
8676    fn into_client_hook(self) -> Box<dyn (::capnp::private::capability::ClientHook)> {
8677      self.client.hook
8678    }
8679    fn as_client_hook(&self) -> &dyn (::capnp::private::capability::ClientHook) {
8680      &*self.client.hook
8681    }
8682  }
8683  #[derive(Copy, Clone)]
8684  pub struct Owned(());
8685  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Capability.into() } }
8686  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Client; type Builder<'a> = Client; }
8687  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Client; }
8688  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Client<>  {
8689    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8690      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(reader.get_capability()?))
8691    }
8692  }
8693  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Client<>  {
8694    fn init_pointer(_builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
8695      unimplemented!()
8696    }
8697    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8698      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(builder.get_capability()?))
8699    }
8700  }
8701
8702  impl <> ::capnp::traits::SetterInput<Owned<>> for Client<>  {
8703    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, from: Self, _canonicalize: bool) -> ::capnp::Result<()> {
8704      pointer.set_capability(from.client.hook);
8705      ::core::result::Result::Ok(())
8706    }
8707  }
8708  impl  ::capnp::traits::HasTypeId for Client {
8709    const TYPE_ID: u64 = _private::TYPE_ID;
8710  }
8711  impl  Clone for Client {
8712    fn clone(&self) -> Self {
8713      Self { client: ::capnp::capability::Client::new(self.client.hook.add_ref()),  }
8714    }
8715  }
8716  impl  Client {
8717    pub fn register_udp_session_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::session_manager::register_udp_session_params::Owned,crate::tunnelrpc_capnp::session_manager::register_udp_session_results::Owned> {
8718      self.client.new_call(_private::TYPE_ID, 0, ::core::option::Option::None)
8719    }
8720    pub fn unregister_udp_session_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::session_manager::unregister_udp_session_params::Owned,crate::tunnelrpc_capnp::session_manager::unregister_udp_session_results::Owned> {
8721      self.client.new_call(_private::TYPE_ID, 1, ::core::option::Option::None)
8722    }
8723  }
8724  pub trait Server<>   {
8725    fn register_udp_session(&mut self, _: RegisterUdpSessionParams<>, _: RegisterUdpSessionResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method session_manager::Server::register_udp_session not implemented".to_string())) }
8726    fn unregister_udp_session(&mut self, _: UnregisterUdpSessionParams<>, _: UnregisterUdpSessionResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method session_manager::Server::unregister_udp_session not implemented".to_string())) }
8727  }
8728  pub struct ServerDispatch<_T,> {
8729    pub server: _T,
8730  }
8731  impl <_S: Server + 'static, > ::capnp::capability::FromServer<_S> for Client   {
8732    type Dispatch = ServerDispatch<_S, >;
8733    fn from_server(s: _S) -> ServerDispatch<_S, > {
8734      ServerDispatch { server: s,  }
8735    }
8736  }
8737  impl <_T: Server> ::core::ops::Deref for ServerDispatch<_T> {
8738    type Target = _T;
8739    fn deref(&self) -> &_T { &self.server}
8740  }
8741  impl <_T: Server> ::core::ops::DerefMut for ServerDispatch<_T> {
8742    fn deref_mut(&mut self) -> &mut _T { &mut self.server}
8743  }
8744  impl <_T: Server> ::capnp::capability::Server for ServerDispatch<_T> {
8745    fn dispatch_call(&mut self, interface_id: u64, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
8746      match interface_id {
8747        _private::TYPE_ID => Self::dispatch_call_internal(&mut self.server, method_id, params, results),
8748        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
8749      }
8750    }
8751  }
8752  impl <_T :Server> ServerDispatch<_T> {
8753    pub fn dispatch_call_internal(server: &mut _T, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
8754      match method_id {
8755        0 => ::capnp::capability::DispatchCallResult::new(server.register_udp_session(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
8756        1 => ::capnp::capability::DispatchCallResult::new(server.unregister_udp_session(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
8757        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
8758      }
8759    }
8760  }
8761  pub mod _private {
8762    pub const TYPE_ID: u64 = 0x8394_45a5_9fb0_1686;
8763  }
8764
8765  pub mod register_udp_session_params {
8766    #[derive(Copy, Clone)]
8767    pub struct Owned(());
8768    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
8769    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8770    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
8771    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
8772
8773    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
8774    impl <> ::core::marker::Copy for Reader<'_,>  {}
8775    impl <> ::core::clone::Clone for Reader<'_,>  {
8776      fn clone(&self) -> Self { *self }
8777    }
8778
8779    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
8780      const TYPE_ID: u64 = _private::TYPE_ID;
8781    }
8782    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
8783      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
8784        Self { reader,  }
8785      }
8786    }
8787
8788    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
8789      fn from(reader: Reader<'a,>) -> Self {
8790        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8791      }
8792    }
8793
8794    impl <> ::core::fmt::Debug for Reader<'_,>  {
8795      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
8796        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
8797      }
8798    }
8799
8800    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
8801      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8802        ::core::result::Result::Ok(reader.get_struct(default)?.into())
8803      }
8804    }
8805
8806    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
8807      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
8808        self.reader
8809      }
8810    }
8811
8812    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
8813      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
8814        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
8815      }
8816    }
8817
8818    impl <'a,> Reader<'a,>  {
8819      pub fn reborrow(&self) -> Reader<'_,> {
8820        Self { .. *self }
8821      }
8822
8823      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8824        self.reader.total_size()
8825      }
8826      #[inline]
8827      pub fn get_session_id(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
8828        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
8829      }
8830      #[inline]
8831      pub fn has_session_id(&self) -> bool {
8832        !self.reader.get_pointer_field(0).is_null()
8833      }
8834      #[inline]
8835      pub fn get_dst_ip(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
8836        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
8837      }
8838      #[inline]
8839      pub fn has_dst_ip(&self) -> bool {
8840        !self.reader.get_pointer_field(1).is_null()
8841      }
8842      #[inline]
8843      pub fn get_dst_port(self) -> u16 {
8844        self.reader.get_data_field::<u16>(0)
8845      }
8846      #[inline]
8847      pub fn get_close_after_idle_hint(self) -> i64 {
8848        self.reader.get_data_field::<i64>(1)
8849      }
8850      #[inline]
8851      pub fn get_trace_context(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
8852        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::Some(&_private::DEFAULT_TRACE_CONTEXT[..]))
8853      }
8854      #[inline]
8855      pub fn has_trace_context(&self) -> bool {
8856        !self.reader.get_pointer_field(2).is_null()
8857      }
8858    }
8859
8860    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
8861    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
8862      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 2, pointers: 3 };
8863    }
8864    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
8865      const TYPE_ID: u64 = _private::TYPE_ID;
8866    }
8867    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
8868      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
8869        Self { builder,  }
8870      }
8871    }
8872
8873    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
8874      fn from(builder: Builder<'a,>) -> Self {
8875        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
8876      }
8877    }
8878
8879    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
8880      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
8881        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
8882      }
8883    }
8884
8885    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
8886      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
8887        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
8888      }
8889      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
8890        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
8891      }
8892    }
8893
8894    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
8895      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
8896    }
8897
8898    impl <'a,> Builder<'a,>  {
8899      pub fn into_reader(self) -> Reader<'a,> {
8900        self.builder.into_reader().into()
8901      }
8902      pub fn reborrow(&mut self) -> Builder<'_,> {
8903        Builder { builder: self.builder.reborrow() }
8904      }
8905      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
8906        self.builder.as_reader().into()
8907      }
8908
8909      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
8910        self.builder.as_reader().total_size()
8911      }
8912      #[inline]
8913      pub fn get_session_id(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
8914        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
8915      }
8916      #[inline]
8917      pub fn set_session_id(&mut self, value: ::capnp::data::Reader<'_>)  {
8918        self.builder.reborrow().get_pointer_field(0).set_data(value);
8919      }
8920      #[inline]
8921      pub fn init_session_id(self, size: u32) -> ::capnp::data::Builder<'a> {
8922        self.builder.get_pointer_field(0).init_data(size)
8923      }
8924      #[inline]
8925      pub fn has_session_id(&self) -> bool {
8926        !self.builder.is_pointer_field_null(0)
8927      }
8928      #[inline]
8929      pub fn get_dst_ip(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
8930        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
8931      }
8932      #[inline]
8933      pub fn set_dst_ip(&mut self, value: ::capnp::data::Reader<'_>)  {
8934        self.builder.reborrow().get_pointer_field(1).set_data(value);
8935      }
8936      #[inline]
8937      pub fn init_dst_ip(self, size: u32) -> ::capnp::data::Builder<'a> {
8938        self.builder.get_pointer_field(1).init_data(size)
8939      }
8940      #[inline]
8941      pub fn has_dst_ip(&self) -> bool {
8942        !self.builder.is_pointer_field_null(1)
8943      }
8944      #[inline]
8945      pub fn get_dst_port(self) -> u16 {
8946        self.builder.get_data_field::<u16>(0)
8947      }
8948      #[inline]
8949      pub fn set_dst_port(&mut self, value: u16)  {
8950        self.builder.set_data_field::<u16>(0, value);
8951      }
8952      #[inline]
8953      pub fn get_close_after_idle_hint(self) -> i64 {
8954        self.builder.get_data_field::<i64>(1)
8955      }
8956      #[inline]
8957      pub fn set_close_after_idle_hint(&mut self, value: i64)  {
8958        self.builder.set_data_field::<i64>(1, value);
8959      }
8960      #[inline]
8961      pub fn get_trace_context(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
8962        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::Some(&_private::DEFAULT_TRACE_CONTEXT[..]))
8963      }
8964      #[inline]
8965      pub fn set_trace_context(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
8966        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false).unwrap()
8967      }
8968      #[inline]
8969      pub fn init_trace_context(self, size: u32) -> ::capnp::text::Builder<'a> {
8970        self.builder.get_pointer_field(2).init_text(size)
8971      }
8972      #[inline]
8973      pub fn has_trace_context(&self) -> bool {
8974        !self.builder.is_pointer_field_null(2)
8975      }
8976    }
8977
8978    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
8979    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
8980      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
8981        Self { _typeless: typeless,  }
8982      }
8983    }
8984    impl Pipeline  {
8985    }
8986    mod _private {
8987      pub static ENCODED_NODE: [::capnp::Word; 101] = [
8988        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
8989        ::capnp::word(234, 236, 251, 135, 123, 41, 78, 144),
8990        ::capnp::word(31, 0, 0, 0, 1, 0, 2, 0),
8991        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8992        ::capnp::word(3, 0, 7, 0, 0, 0, 0, 0),
8993        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8994        ::capnp::word(21, 0, 0, 0, 202, 1, 0, 0),
8995        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8996        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8997        ::capnp::word(41, 0, 0, 0, 31, 1, 0, 0),
8998        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
8999        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9000        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
9001        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
9002        ::capnp::word(83, 101, 115, 115, 105, 111, 110, 77),
9003        ::capnp::word(97, 110, 97, 103, 101, 114, 46, 114),
9004        ::capnp::word(101, 103, 105, 115, 116, 101, 114, 85),
9005        ::capnp::word(100, 112, 83, 101, 115, 115, 105, 111),
9006        ::capnp::word(110, 36, 80, 97, 114, 97, 109, 115),
9007        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9008        ::capnp::word(20, 0, 0, 0, 3, 0, 4, 0),
9009        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9010        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
9011        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9012        ::capnp::word(125, 0, 0, 0, 82, 0, 0, 0),
9013        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9014        ::capnp::word(124, 0, 0, 0, 3, 0, 1, 0),
9015        ::capnp::word(136, 0, 0, 0, 2, 0, 1, 0),
9016        ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
9017        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
9018        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9019        ::capnp::word(133, 0, 0, 0, 50, 0, 0, 0),
9020        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9021        ::capnp::word(128, 0, 0, 0, 3, 0, 1, 0),
9022        ::capnp::word(140, 0, 0, 0, 2, 0, 1, 0),
9023        ::capnp::word(2, 0, 0, 0, 0, 0, 0, 0),
9024        ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
9025        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9026        ::capnp::word(137, 0, 0, 0, 66, 0, 0, 0),
9027        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9028        ::capnp::word(132, 0, 0, 0, 3, 0, 1, 0),
9029        ::capnp::word(144, 0, 0, 0, 2, 0, 1, 0),
9030        ::capnp::word(3, 0, 0, 0, 1, 0, 0, 0),
9031        ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
9032        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9033        ::capnp::word(141, 0, 0, 0, 154, 0, 0, 0),
9034        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9035        ::capnp::word(144, 0, 0, 0, 3, 0, 1, 0),
9036        ::capnp::word(156, 0, 0, 0, 2, 0, 1, 0),
9037        ::capnp::word(4, 0, 0, 0, 2, 0, 0, 0),
9038        ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
9039        ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
9040        ::capnp::word(153, 0, 0, 0, 106, 0, 0, 0),
9041        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9042        ::capnp::word(152, 0, 0, 0, 3, 0, 1, 0),
9043        ::capnp::word(164, 0, 0, 0, 2, 0, 1, 0),
9044        ::capnp::word(115, 101, 115, 115, 105, 111, 110, 73),
9045        ::capnp::word(100, 0, 0, 0, 0, 0, 0, 0),
9046        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
9047        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9048        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9049        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9050        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
9051        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9052        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9053        ::capnp::word(100, 115, 116, 73, 112, 0, 0, 0),
9054        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
9055        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9056        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9057        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9058        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
9059        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9060        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9061        ::capnp::word(100, 115, 116, 80, 111, 114, 116, 0),
9062        ::capnp::word(7, 0, 0, 0, 0, 0, 0, 0),
9063        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9064        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9065        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9066        ::capnp::word(7, 0, 0, 0, 0, 0, 0, 0),
9067        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9068        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9069        ::capnp::word(99, 108, 111, 115, 101, 65, 102, 116),
9070        ::capnp::word(101, 114, 73, 100, 108, 101, 72, 105),
9071        ::capnp::word(110, 116, 0, 0, 0, 0, 0, 0),
9072        ::capnp::word(5, 0, 0, 0, 0, 0, 0, 0),
9073        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9074        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9075        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9076        ::capnp::word(5, 0, 0, 0, 0, 0, 0, 0),
9077        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9078        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9079        ::capnp::word(116, 114, 97, 99, 101, 67, 111, 110),
9080        ::capnp::word(116, 101, 120, 116, 0, 0, 0, 0),
9081        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
9082        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9083        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9084        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9085        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
9086        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9087        ::capnp::word(1, 0, 0, 0, 10, 0, 0, 0),
9088        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9089      ];
9090      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
9091        match index {
9092          0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
9093          1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
9094          2 => <u16 as ::capnp::introspect::Introspect>::introspect(),
9095          3 => <i64 as ::capnp::introspect::Introspect>::introspect(),
9096          4 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
9097          _ => panic!("invalid field index {}", index),
9098        }
9099      }
9100      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
9101        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
9102      }
9103      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
9104        encoded_node: &ENCODED_NODE,
9105        nonunion_members: NONUNION_MEMBERS,
9106        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
9107        members_by_name: MEMBERS_BY_NAME,
9108      };
9109      pub static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4];
9110      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
9111      pub static MEMBERS_BY_NAME : &[u16] = &[3,1,2,0,4];
9112      pub static DEFAULT_TRACE_CONTEXT: [::capnp::Word; 2] = [
9113        ::capnp::word(1, 0, 0, 0, 10, 0, 0, 0),
9114        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9115      ];
9116      pub const TYPE_ID: u64 = 0x904e_297b_87fb_ecea;
9117    }
9118  }
9119
9120  pub mod register_udp_session_results {
9121    #[derive(Copy, Clone)]
9122    pub struct Owned(());
9123    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
9124    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9125    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9126    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
9127
9128    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
9129    impl <> ::core::marker::Copy for Reader<'_,>  {}
9130    impl <> ::core::clone::Clone for Reader<'_,>  {
9131      fn clone(&self) -> Self { *self }
9132    }
9133
9134    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
9135      const TYPE_ID: u64 = _private::TYPE_ID;
9136    }
9137    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
9138      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
9139        Self { reader,  }
9140      }
9141    }
9142
9143    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
9144      fn from(reader: Reader<'a,>) -> Self {
9145        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9146      }
9147    }
9148
9149    impl <> ::core::fmt::Debug for Reader<'_,>  {
9150      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
9151        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
9152      }
9153    }
9154
9155    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
9156      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9157        ::core::result::Result::Ok(reader.get_struct(default)?.into())
9158      }
9159    }
9160
9161    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
9162      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
9163        self.reader
9164      }
9165    }
9166
9167    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
9168      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
9169        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
9170      }
9171    }
9172
9173    impl <'a,> Reader<'a,>  {
9174      pub fn reborrow(&self) -> Reader<'_,> {
9175        Self { .. *self }
9176      }
9177
9178      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9179        self.reader.total_size()
9180      }
9181      #[inline]
9182      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::register_udp_session_response::Reader<'a>> {
9183        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
9184      }
9185      #[inline]
9186      pub fn has_result(&self) -> bool {
9187        !self.reader.get_pointer_field(0).is_null()
9188      }
9189    }
9190
9191    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
9192    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
9193      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
9194    }
9195    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
9196      const TYPE_ID: u64 = _private::TYPE_ID;
9197    }
9198    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
9199      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
9200        Self { builder,  }
9201      }
9202    }
9203
9204    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
9205      fn from(builder: Builder<'a,>) -> Self {
9206        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9207      }
9208    }
9209
9210    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
9211      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
9212        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
9213      }
9214    }
9215
9216    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
9217      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
9218        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
9219      }
9220      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9221        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
9222      }
9223    }
9224
9225    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
9226      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
9227    }
9228
9229    impl <'a,> Builder<'a,>  {
9230      pub fn into_reader(self) -> Reader<'a,> {
9231        self.builder.into_reader().into()
9232      }
9233      pub fn reborrow(&mut self) -> Builder<'_,> {
9234        Builder { builder: self.builder.reborrow() }
9235      }
9236      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
9237        self.builder.as_reader().into()
9238      }
9239
9240      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9241        self.builder.as_reader().total_size()
9242      }
9243      #[inline]
9244      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::register_udp_session_response::Builder<'a>> {
9245        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
9246      }
9247      #[inline]
9248      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::register_udp_session_response::Reader<'_>) -> ::capnp::Result<()> {
9249        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
9250      }
9251      #[inline]
9252      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::register_udp_session_response::Builder<'a> {
9253        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
9254      }
9255      #[inline]
9256      pub fn has_result(&self) -> bool {
9257        !self.builder.is_pointer_field_null(0)
9258      }
9259    }
9260
9261    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
9262    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
9263      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
9264        Self { _typeless: typeless,  }
9265      }
9266    }
9267    impl Pipeline  {
9268      pub fn get_result(&self) -> crate::tunnelrpc_capnp::register_udp_session_response::Pipeline {
9269        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
9270      }
9271    }
9272    mod _private {
9273      pub static ENCODED_NODE: [::capnp::Word; 36] = [
9274        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
9275        ::capnp::word(205, 245, 91, 244, 180, 198, 53, 134),
9276        ::capnp::word(31, 0, 0, 0, 1, 0, 0, 0),
9277        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9278        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
9279        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9280        ::capnp::word(21, 0, 0, 0, 210, 1, 0, 0),
9281        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9282        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9283        ::capnp::word(41, 0, 0, 0, 63, 0, 0, 0),
9284        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9285        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9286        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
9287        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
9288        ::capnp::word(83, 101, 115, 115, 105, 111, 110, 77),
9289        ::capnp::word(97, 110, 97, 103, 101, 114, 46, 114),
9290        ::capnp::word(101, 103, 105, 115, 116, 101, 114, 85),
9291        ::capnp::word(100, 112, 83, 101, 115, 115, 105, 111),
9292        ::capnp::word(110, 36, 82, 101, 115, 117, 108, 116),
9293        ::capnp::word(115, 0, 0, 0, 0, 0, 0, 0),
9294        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
9295        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9296        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
9297        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9298        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
9299        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9300        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
9301        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
9302        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
9303        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
9304        ::capnp::word(135, 102, 242, 193, 16, 82, 109, 171),
9305        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9306        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9307        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
9308        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9309        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9310      ];
9311      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
9312        match index {
9313          0 => <crate::tunnelrpc_capnp::register_udp_session_response::Owned as ::capnp::introspect::Introspect>::introspect(),
9314          _ => panic!("invalid field index {}", index),
9315        }
9316      }
9317      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
9318        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
9319      }
9320      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
9321        encoded_node: &ENCODED_NODE,
9322        nonunion_members: NONUNION_MEMBERS,
9323        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
9324        members_by_name: MEMBERS_BY_NAME,
9325      };
9326      pub static NONUNION_MEMBERS : &[u16] = &[0];
9327      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
9328      pub static MEMBERS_BY_NAME : &[u16] = &[0];
9329      pub const TYPE_ID: u64 = 0x8635_c6b4_f45b_f5cd;
9330    }
9331  }
9332
9333  pub mod unregister_udp_session_params {
9334    #[derive(Copy, Clone)]
9335    pub struct Owned(());
9336    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
9337    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9338    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9339    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
9340
9341    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
9342    impl <> ::core::marker::Copy for Reader<'_,>  {}
9343    impl <> ::core::clone::Clone for Reader<'_,>  {
9344      fn clone(&self) -> Self { *self }
9345    }
9346
9347    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
9348      const TYPE_ID: u64 = _private::TYPE_ID;
9349    }
9350    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
9351      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
9352        Self { reader,  }
9353      }
9354    }
9355
9356    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
9357      fn from(reader: Reader<'a,>) -> Self {
9358        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9359      }
9360    }
9361
9362    impl <> ::core::fmt::Debug for Reader<'_,>  {
9363      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
9364        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
9365      }
9366    }
9367
9368    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
9369      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9370        ::core::result::Result::Ok(reader.get_struct(default)?.into())
9371      }
9372    }
9373
9374    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
9375      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
9376        self.reader
9377      }
9378    }
9379
9380    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
9381      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
9382        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
9383      }
9384    }
9385
9386    impl <'a,> Reader<'a,>  {
9387      pub fn reborrow(&self) -> Reader<'_,> {
9388        Self { .. *self }
9389      }
9390
9391      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9392        self.reader.total_size()
9393      }
9394      #[inline]
9395      pub fn get_session_id(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
9396        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
9397      }
9398      #[inline]
9399      pub fn has_session_id(&self) -> bool {
9400        !self.reader.get_pointer_field(0).is_null()
9401      }
9402      #[inline]
9403      pub fn get_message(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
9404        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
9405      }
9406      #[inline]
9407      pub fn has_message(&self) -> bool {
9408        !self.reader.get_pointer_field(1).is_null()
9409      }
9410    }
9411
9412    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
9413    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
9414      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 2 };
9415    }
9416    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
9417      const TYPE_ID: u64 = _private::TYPE_ID;
9418    }
9419    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
9420      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
9421        Self { builder,  }
9422      }
9423    }
9424
9425    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
9426      fn from(builder: Builder<'a,>) -> Self {
9427        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9428      }
9429    }
9430
9431    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
9432      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
9433        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
9434      }
9435    }
9436
9437    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
9438      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
9439        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
9440      }
9441      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9442        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
9443      }
9444    }
9445
9446    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
9447      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
9448    }
9449
9450    impl <'a,> Builder<'a,>  {
9451      pub fn into_reader(self) -> Reader<'a,> {
9452        self.builder.into_reader().into()
9453      }
9454      pub fn reborrow(&mut self) -> Builder<'_,> {
9455        Builder { builder: self.builder.reborrow() }
9456      }
9457      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
9458        self.builder.as_reader().into()
9459      }
9460
9461      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9462        self.builder.as_reader().total_size()
9463      }
9464      #[inline]
9465      pub fn get_session_id(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
9466        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
9467      }
9468      #[inline]
9469      pub fn set_session_id(&mut self, value: ::capnp::data::Reader<'_>)  {
9470        self.builder.reborrow().get_pointer_field(0).set_data(value);
9471      }
9472      #[inline]
9473      pub fn init_session_id(self, size: u32) -> ::capnp::data::Builder<'a> {
9474        self.builder.get_pointer_field(0).init_data(size)
9475      }
9476      #[inline]
9477      pub fn has_session_id(&self) -> bool {
9478        !self.builder.is_pointer_field_null(0)
9479      }
9480      #[inline]
9481      pub fn get_message(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
9482        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
9483      }
9484      #[inline]
9485      pub fn set_message(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
9486        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
9487      }
9488      #[inline]
9489      pub fn init_message(self, size: u32) -> ::capnp::text::Builder<'a> {
9490        self.builder.get_pointer_field(1).init_text(size)
9491      }
9492      #[inline]
9493      pub fn has_message(&self) -> bool {
9494        !self.builder.is_pointer_field_null(1)
9495      }
9496    }
9497
9498    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
9499    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
9500      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
9501        Self { _typeless: typeless,  }
9502      }
9503    }
9504    impl Pipeline  {
9505    }
9506    mod _private {
9507      pub static ENCODED_NODE: [::capnp::Word; 52] = [
9508        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
9509        ::capnp::word(246, 14, 155, 206, 117, 67, 183, 150),
9510        ::capnp::word(31, 0, 0, 0, 1, 0, 0, 0),
9511        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9512        ::capnp::word(2, 0, 7, 0, 0, 0, 0, 0),
9513        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9514        ::capnp::word(21, 0, 0, 0, 218, 1, 0, 0),
9515        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9516        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9517        ::capnp::word(41, 0, 0, 0, 119, 0, 0, 0),
9518        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9519        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9520        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
9521        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
9522        ::capnp::word(83, 101, 115, 115, 105, 111, 110, 77),
9523        ::capnp::word(97, 110, 97, 103, 101, 114, 46, 117),
9524        ::capnp::word(110, 114, 101, 103, 105, 115, 116, 101),
9525        ::capnp::word(114, 85, 100, 112, 83, 101, 115, 115),
9526        ::capnp::word(105, 111, 110, 36, 80, 97, 114, 97),
9527        ::capnp::word(109, 115, 0, 0, 0, 0, 0, 0),
9528        ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
9529        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9530        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
9531        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9532        ::capnp::word(41, 0, 0, 0, 82, 0, 0, 0),
9533        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9534        ::capnp::word(40, 0, 0, 0, 3, 0, 1, 0),
9535        ::capnp::word(52, 0, 0, 0, 2, 0, 1, 0),
9536        ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
9537        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
9538        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9539        ::capnp::word(49, 0, 0, 0, 66, 0, 0, 0),
9540        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9541        ::capnp::word(44, 0, 0, 0, 3, 0, 1, 0),
9542        ::capnp::word(56, 0, 0, 0, 2, 0, 1, 0),
9543        ::capnp::word(115, 101, 115, 115, 105, 111, 110, 73),
9544        ::capnp::word(100, 0, 0, 0, 0, 0, 0, 0),
9545        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
9546        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9547        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9548        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9549        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
9550        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9551        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9552        ::capnp::word(109, 101, 115, 115, 97, 103, 101, 0),
9553        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
9554        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9555        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9556        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9557        ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
9558        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9559        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9560      ];
9561      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
9562        match index {
9563          0 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
9564          1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
9565          _ => panic!("invalid field index {}", index),
9566        }
9567      }
9568      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
9569        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
9570      }
9571      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
9572        encoded_node: &ENCODED_NODE,
9573        nonunion_members: NONUNION_MEMBERS,
9574        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
9575        members_by_name: MEMBERS_BY_NAME,
9576      };
9577      pub static NONUNION_MEMBERS : &[u16] = &[0,1];
9578      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
9579      pub static MEMBERS_BY_NAME : &[u16] = &[1,0];
9580      pub const TYPE_ID: u64 = 0x96b7_4375_ce9b_0ef6;
9581    }
9582  }
9583
9584  pub mod unregister_udp_session_results {
9585    #[derive(Copy, Clone)]
9586    pub struct Owned(());
9587    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
9588    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9589    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9590    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
9591
9592    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
9593    impl <> ::core::marker::Copy for Reader<'_,>  {}
9594    impl <> ::core::clone::Clone for Reader<'_,>  {
9595      fn clone(&self) -> Self { *self }
9596    }
9597
9598    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
9599      const TYPE_ID: u64 = _private::TYPE_ID;
9600    }
9601    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
9602      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
9603        Self { reader,  }
9604      }
9605    }
9606
9607    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
9608      fn from(reader: Reader<'a,>) -> Self {
9609        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9610      }
9611    }
9612
9613    impl <> ::core::fmt::Debug for Reader<'_,>  {
9614      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
9615        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
9616      }
9617    }
9618
9619    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
9620      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9621        ::core::result::Result::Ok(reader.get_struct(default)?.into())
9622      }
9623    }
9624
9625    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
9626      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
9627        self.reader
9628      }
9629    }
9630
9631    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
9632      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
9633        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
9634      }
9635    }
9636
9637    impl <> Reader<'_,>  {
9638      pub fn reborrow(&self) -> Reader<'_,> {
9639        Self { .. *self }
9640      }
9641
9642      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9643        self.reader.total_size()
9644      }
9645    }
9646
9647    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
9648    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
9649      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 0 };
9650    }
9651    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
9652      const TYPE_ID: u64 = _private::TYPE_ID;
9653    }
9654    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
9655      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
9656        Self { builder,  }
9657      }
9658    }
9659
9660    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
9661      fn from(builder: Builder<'a,>) -> Self {
9662        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9663      }
9664    }
9665
9666    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
9667      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
9668        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
9669      }
9670    }
9671
9672    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
9673      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
9674        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
9675      }
9676      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9677        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
9678      }
9679    }
9680
9681    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
9682      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
9683    }
9684
9685    impl <'a,> Builder<'a,>  {
9686      pub fn into_reader(self) -> Reader<'a,> {
9687        self.builder.into_reader().into()
9688      }
9689      pub fn reborrow(&mut self) -> Builder<'_,> {
9690        Builder { builder: self.builder.reborrow() }
9691      }
9692      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
9693        self.builder.as_reader().into()
9694      }
9695
9696      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9697        self.builder.as_reader().total_size()
9698      }
9699    }
9700
9701    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
9702    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
9703      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
9704        Self { _typeless: typeless,  }
9705      }
9706    }
9707    impl Pipeline  {
9708    }
9709    mod _private {
9710      pub static ENCODED_NODE: [::capnp::Word; 20] = [
9711        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
9712        ::capnp::word(118, 182, 145, 88, 171, 196, 78, 242),
9713        ::capnp::word(31, 0, 0, 0, 1, 0, 0, 0),
9714        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9715        ::capnp::word(0, 0, 7, 0, 0, 0, 0, 0),
9716        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9717        ::capnp::word(21, 0, 0, 0, 226, 1, 0, 0),
9718        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9719        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9720        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9721        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9722        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9723        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
9724        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
9725        ::capnp::word(83, 101, 115, 115, 105, 111, 110, 77),
9726        ::capnp::word(97, 110, 97, 103, 101, 114, 46, 117),
9727        ::capnp::word(110, 114, 101, 103, 105, 115, 116, 101),
9728        ::capnp::word(114, 85, 100, 112, 83, 101, 115, 115),
9729        ::capnp::word(105, 111, 110, 36, 82, 101, 115, 117),
9730        ::capnp::word(108, 116, 115, 0, 0, 0, 0, 0),
9731      ];
9732      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
9733        panic!("invalid field index {}", index)
9734      }
9735      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
9736        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
9737      }
9738      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
9739        encoded_node: &ENCODED_NODE,
9740        nonunion_members: NONUNION_MEMBERS,
9741        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
9742        members_by_name: MEMBERS_BY_NAME,
9743      };
9744      pub static NONUNION_MEMBERS : &[u16] = &[];
9745      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
9746      pub static MEMBERS_BY_NAME : &[u16] = &[];
9747      pub const TYPE_ID: u64 = 0xf24e_c4ab_5891_b676;
9748    }
9749  }
9750}
9751
9752pub mod update_configuration_response {
9753  #[derive(Copy, Clone)]
9754  pub struct Owned(());
9755  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
9756  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9757  impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
9758  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
9759
9760  pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
9761  impl <> ::core::marker::Copy for Reader<'_,>  {}
9762  impl <> ::core::clone::Clone for Reader<'_,>  {
9763    fn clone(&self) -> Self { *self }
9764  }
9765
9766  impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
9767    const TYPE_ID: u64 = _private::TYPE_ID;
9768  }
9769  impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
9770    fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
9771      Self { reader,  }
9772    }
9773  }
9774
9775  impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
9776    fn from(reader: Reader<'a,>) -> Self {
9777      Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9778    }
9779  }
9780
9781  impl <> ::core::fmt::Debug for Reader<'_,>  {
9782    fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
9783      core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
9784    }
9785  }
9786
9787  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
9788    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9789      ::core::result::Result::Ok(reader.get_struct(default)?.into())
9790    }
9791  }
9792
9793  impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
9794    fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
9795      self.reader
9796    }
9797  }
9798
9799  impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
9800    fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
9801      self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
9802    }
9803  }
9804
9805  impl <'a,> Reader<'a,>  {
9806    pub fn reborrow(&self) -> Reader<'_,> {
9807      Self { .. *self }
9808    }
9809
9810    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9811      self.reader.total_size()
9812    }
9813    #[inline]
9814    pub fn get_latest_applied_version(self) -> i32 {
9815      self.reader.get_data_field::<i32>(0)
9816    }
9817    #[inline]
9818    pub fn get_err(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
9819      ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
9820    }
9821    #[inline]
9822    pub fn has_err(&self) -> bool {
9823      !self.reader.get_pointer_field(0).is_null()
9824    }
9825  }
9826
9827  pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
9828  impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
9829    const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 1 };
9830  }
9831  impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
9832    const TYPE_ID: u64 = _private::TYPE_ID;
9833  }
9834  impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
9835    fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
9836      Self { builder,  }
9837    }
9838  }
9839
9840  impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
9841    fn from(builder: Builder<'a,>) -> Self {
9842      Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
9843    }
9844  }
9845
9846  impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
9847    fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
9848      self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
9849    }
9850  }
9851
9852  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
9853    fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
9854      builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
9855    }
9856    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
9857      ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
9858    }
9859  }
9860
9861  impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
9862    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
9863  }
9864
9865  impl <'a,> Builder<'a,>  {
9866    pub fn into_reader(self) -> Reader<'a,> {
9867      self.builder.into_reader().into()
9868    }
9869    pub fn reborrow(&mut self) -> Builder<'_,> {
9870      Builder { builder: self.builder.reborrow() }
9871    }
9872    pub fn reborrow_as_reader(&self) -> Reader<'_,> {
9873      self.builder.as_reader().into()
9874    }
9875
9876    pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
9877      self.builder.as_reader().total_size()
9878    }
9879    #[inline]
9880    pub fn get_latest_applied_version(self) -> i32 {
9881      self.builder.get_data_field::<i32>(0)
9882    }
9883    #[inline]
9884    pub fn set_latest_applied_version(&mut self, value: i32)  {
9885      self.builder.set_data_field::<i32>(0, value);
9886    }
9887    #[inline]
9888    pub fn get_err(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
9889      ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
9890    }
9891    #[inline]
9892    pub fn set_err(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
9893      ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
9894    }
9895    #[inline]
9896    pub fn init_err(self, size: u32) -> ::capnp::text::Builder<'a> {
9897      self.builder.get_pointer_field(0).init_text(size)
9898    }
9899    #[inline]
9900    pub fn has_err(&self) -> bool {
9901      !self.builder.is_pointer_field_null(0)
9902    }
9903  }
9904
9905  pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
9906  impl ::capnp::capability::FromTypelessPipeline for Pipeline {
9907    fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
9908      Self { _typeless: typeless,  }
9909    }
9910  }
9911  impl Pipeline  {
9912  }
9913  mod _private {
9914    pub static ENCODED_NODE: [::capnp::Word; 52] = [
9915      ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
9916      ::capnp::word(249, 92, 160, 75, 105, 255, 88, 219),
9917      ::capnp::word(16, 0, 0, 0, 1, 0, 1, 0),
9918      ::capnp::word(126, 188, 74, 20, 249, 116, 130, 219),
9919      ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
9920      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9921      ::capnp::word(21, 0, 0, 0, 98, 1, 0, 0),
9922      ::capnp::word(41, 0, 0, 0, 7, 0, 0, 0),
9923      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9924      ::capnp::word(37, 0, 0, 0, 119, 0, 0, 0),
9925      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9926      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9927      ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
9928      ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
9929      ::capnp::word(85, 112, 100, 97, 116, 101, 67, 111),
9930      ::capnp::word(110, 102, 105, 103, 117, 114, 97, 116),
9931      ::capnp::word(105, 111, 110, 82, 101, 115, 112, 111),
9932      ::capnp::word(110, 115, 101, 0, 0, 0, 0, 0),
9933      ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
9934      ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
9935      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9936      ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
9937      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9938      ::capnp::word(41, 0, 0, 0, 170, 0, 0, 0),
9939      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9940      ::capnp::word(44, 0, 0, 0, 3, 0, 1, 0),
9941      ::capnp::word(56, 0, 0, 0, 2, 0, 1, 0),
9942      ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
9943      ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
9944      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9945      ::capnp::word(53, 0, 0, 0, 34, 0, 0, 0),
9946      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9947      ::capnp::word(48, 0, 0, 0, 3, 0, 1, 0),
9948      ::capnp::word(60, 0, 0, 0, 2, 0, 1, 0),
9949      ::capnp::word(108, 97, 116, 101, 115, 116, 65, 112),
9950      ::capnp::word(112, 108, 105, 101, 100, 86, 101, 114),
9951      ::capnp::word(115, 105, 111, 110, 0, 0, 0, 0),
9952      ::capnp::word(4, 0, 0, 0, 0, 0, 0, 0),
9953      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9954      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9955      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9956      ::capnp::word(4, 0, 0, 0, 0, 0, 0, 0),
9957      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9958      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9959      ::capnp::word(101, 114, 114, 0, 0, 0, 0, 0),
9960      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
9961      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9962      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9963      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9964      ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
9965      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9966      ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
9967    ];
9968    pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
9969      match index {
9970        0 => <i32 as ::capnp::introspect::Introspect>::introspect(),
9971        1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
9972        _ => panic!("invalid field index {}", index),
9973      }
9974    }
9975    pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
9976      panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
9977    }
9978    pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
9979      encoded_node: &ENCODED_NODE,
9980      nonunion_members: NONUNION_MEMBERS,
9981      members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
9982      members_by_name: MEMBERS_BY_NAME,
9983    };
9984    pub static NONUNION_MEMBERS : &[u16] = &[0,1];
9985    pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
9986    pub static MEMBERS_BY_NAME : &[u16] = &[1,0];
9987    pub const TYPE_ID: u64 = 0xdb58_ff69_4ba0_5cf9;
9988  }
9989}
9990
9991
9992pub mod configuration_manager {
9993  #![allow(unused_variables)]
9994  pub type UpdateConfigurationParams<> = ::capnp::capability::Params<crate::tunnelrpc_capnp::configuration_manager::update_configuration_params::Owned>;
9995  pub type UpdateConfigurationResults<> = ::capnp::capability::Results<crate::tunnelrpc_capnp::configuration_manager::update_configuration_results::Owned>;
9996
9997  pub struct Client {
9998    pub client: ::capnp::capability::Client,
9999  }
10000  impl  ::capnp::capability::FromClientHook for Client {
10001    fn new(hook: Box<dyn (::capnp::private::capability::ClientHook)>) -> Self {
10002      Self { client: ::capnp::capability::Client::new(hook),  }
10003    }
10004    fn into_client_hook(self) -> Box<dyn (::capnp::private::capability::ClientHook)> {
10005      self.client.hook
10006    }
10007    fn as_client_hook(&self) -> &dyn (::capnp::private::capability::ClientHook) {
10008      &*self.client.hook
10009    }
10010  }
10011  #[derive(Copy, Clone)]
10012  pub struct Owned(());
10013  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Capability.into() } }
10014  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Client; type Builder<'a> = Client; }
10015  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Client; }
10016  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Client<>  {
10017    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10018      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(reader.get_capability()?))
10019    }
10020  }
10021  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Client<>  {
10022    fn init_pointer(_builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
10023      unimplemented!()
10024    }
10025    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10026      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(builder.get_capability()?))
10027    }
10028  }
10029
10030  impl <> ::capnp::traits::SetterInput<Owned<>> for Client<>  {
10031    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, from: Self, _canonicalize: bool) -> ::capnp::Result<()> {
10032      pointer.set_capability(from.client.hook);
10033      ::core::result::Result::Ok(())
10034    }
10035  }
10036  impl  ::capnp::traits::HasTypeId for Client {
10037    const TYPE_ID: u64 = _private::TYPE_ID;
10038  }
10039  impl  Clone for Client {
10040    fn clone(&self) -> Self {
10041      Self { client: ::capnp::capability::Client::new(self.client.hook.add_ref()),  }
10042    }
10043  }
10044  impl  Client {
10045    pub fn update_configuration_request(&self) -> ::capnp::capability::Request<crate::tunnelrpc_capnp::configuration_manager::update_configuration_params::Owned,crate::tunnelrpc_capnp::configuration_manager::update_configuration_results::Owned> {
10046      self.client.new_call(_private::TYPE_ID, 0, ::core::option::Option::None)
10047    }
10048  }
10049  pub trait Server<>   {
10050    fn update_configuration(&mut self, _: UpdateConfigurationParams<>, _: UpdateConfigurationResults<>) -> ::capnp::capability::Promise<(), ::capnp::Error> { ::capnp::capability::Promise::err(::capnp::Error::unimplemented("method configuration_manager::Server::update_configuration not implemented".to_string())) }
10051  }
10052  pub struct ServerDispatch<_T,> {
10053    pub server: _T,
10054  }
10055  impl <_S: Server + 'static, > ::capnp::capability::FromServer<_S> for Client   {
10056    type Dispatch = ServerDispatch<_S, >;
10057    fn from_server(s: _S) -> ServerDispatch<_S, > {
10058      ServerDispatch { server: s,  }
10059    }
10060  }
10061  impl <_T: Server> ::core::ops::Deref for ServerDispatch<_T> {
10062    type Target = _T;
10063    fn deref(&self) -> &_T { &self.server}
10064  }
10065  impl <_T: Server> ::core::ops::DerefMut for ServerDispatch<_T> {
10066    fn deref_mut(&mut self) -> &mut _T { &mut self.server}
10067  }
10068  impl <_T: Server> ::capnp::capability::Server for ServerDispatch<_T> {
10069    fn dispatch_call(&mut self, interface_id: u64, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
10070      match interface_id {
10071        _private::TYPE_ID => Self::dispatch_call_internal(&mut self.server, method_id, params, results),
10072        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
10073      }
10074    }
10075  }
10076  impl <_T :Server> ServerDispatch<_T> {
10077    pub fn dispatch_call_internal(server: &mut _T, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
10078      match method_id {
10079        0 => ::capnp::capability::DispatchCallResult::new(server.update_configuration(::capnp::private::capability::internal_get_typed_params(params), ::capnp::private::capability::internal_get_typed_results(results)), false),
10080        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
10081      }
10082    }
10083  }
10084  pub mod _private {
10085    pub const TYPE_ID: u64 = 0xb48e_dfbd_aa25_db04;
10086  }
10087
10088  pub mod update_configuration_params {
10089    #[derive(Copy, Clone)]
10090    pub struct Owned(());
10091    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
10092    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
10093    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
10094    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
10095
10096    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
10097    impl <> ::core::marker::Copy for Reader<'_,>  {}
10098    impl <> ::core::clone::Clone for Reader<'_,>  {
10099      fn clone(&self) -> Self { *self }
10100    }
10101
10102    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
10103      const TYPE_ID: u64 = _private::TYPE_ID;
10104    }
10105    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
10106      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
10107        Self { reader,  }
10108      }
10109    }
10110
10111    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
10112      fn from(reader: Reader<'a,>) -> Self {
10113        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
10114      }
10115    }
10116
10117    impl <> ::core::fmt::Debug for Reader<'_,>  {
10118      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
10119        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
10120      }
10121    }
10122
10123    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
10124      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10125        ::core::result::Result::Ok(reader.get_struct(default)?.into())
10126      }
10127    }
10128
10129    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
10130      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
10131        self.reader
10132      }
10133    }
10134
10135    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
10136      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
10137        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
10138      }
10139    }
10140
10141    impl <'a,> Reader<'a,>  {
10142      pub fn reborrow(&self) -> Reader<'_,> {
10143        Self { .. *self }
10144      }
10145
10146      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
10147        self.reader.total_size()
10148      }
10149      #[inline]
10150      pub fn get_version(self) -> i32 {
10151        self.reader.get_data_field::<i32>(0)
10152      }
10153      #[inline]
10154      pub fn get_config(self) -> ::capnp::Result<::capnp::data::Reader<'a>> {
10155        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
10156      }
10157      #[inline]
10158      pub fn has_config(&self) -> bool {
10159        !self.reader.get_pointer_field(0).is_null()
10160      }
10161    }
10162
10163    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
10164    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
10165      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 1 };
10166    }
10167    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
10168      const TYPE_ID: u64 = _private::TYPE_ID;
10169    }
10170    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
10171      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
10172        Self { builder,  }
10173      }
10174    }
10175
10176    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
10177      fn from(builder: Builder<'a,>) -> Self {
10178        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
10179      }
10180    }
10181
10182    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
10183      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
10184        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
10185      }
10186    }
10187
10188    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
10189      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
10190        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
10191      }
10192      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10193        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
10194      }
10195    }
10196
10197    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
10198      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
10199    }
10200
10201    impl <'a,> Builder<'a,>  {
10202      pub fn into_reader(self) -> Reader<'a,> {
10203        self.builder.into_reader().into()
10204      }
10205      pub fn reborrow(&mut self) -> Builder<'_,> {
10206        Builder { builder: self.builder.reborrow() }
10207      }
10208      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
10209        self.builder.as_reader().into()
10210      }
10211
10212      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
10213        self.builder.as_reader().total_size()
10214      }
10215      #[inline]
10216      pub fn get_version(self) -> i32 {
10217        self.builder.get_data_field::<i32>(0)
10218      }
10219      #[inline]
10220      pub fn set_version(&mut self, value: i32)  {
10221        self.builder.set_data_field::<i32>(0, value);
10222      }
10223      #[inline]
10224      pub fn get_config(self) -> ::capnp::Result<::capnp::data::Builder<'a>> {
10225        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
10226      }
10227      #[inline]
10228      pub fn set_config(&mut self, value: ::capnp::data::Reader<'_>)  {
10229        self.builder.reborrow().get_pointer_field(0).set_data(value);
10230      }
10231      #[inline]
10232      pub fn init_config(self, size: u32) -> ::capnp::data::Builder<'a> {
10233        self.builder.get_pointer_field(0).init_data(size)
10234      }
10235      #[inline]
10236      pub fn has_config(&self) -> bool {
10237        !self.builder.is_pointer_field_null(0)
10238      }
10239    }
10240
10241    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
10242    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
10243      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
10244        Self { _typeless: typeless,  }
10245      }
10246    }
10247    impl Pipeline  {
10248    }
10249    mod _private {
10250      pub static ENCODED_NODE: [::capnp::Word; 51] = [
10251        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
10252        ::capnp::word(118, 202, 163, 38, 37, 202, 119, 177),
10253        ::capnp::word(37, 0, 0, 0, 1, 0, 1, 0),
10254        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10255        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
10256        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10257        ::capnp::word(21, 0, 0, 0, 2, 2, 0, 0),
10258        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10259        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10260        ::capnp::word(41, 0, 0, 0, 119, 0, 0, 0),
10261        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10262        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10263        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
10264        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
10265        ::capnp::word(67, 111, 110, 102, 105, 103, 117, 114),
10266        ::capnp::word(97, 116, 105, 111, 110, 77, 97, 110),
10267        ::capnp::word(97, 103, 101, 114, 46, 117, 112, 100),
10268        ::capnp::word(97, 116, 101, 67, 111, 110, 102, 105),
10269        ::capnp::word(103, 117, 114, 97, 116, 105, 111, 110),
10270        ::capnp::word(36, 80, 97, 114, 97, 109, 115, 0),
10271        ::capnp::word(8, 0, 0, 0, 3, 0, 4, 0),
10272        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10273        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
10274        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10275        ::capnp::word(41, 0, 0, 0, 66, 0, 0, 0),
10276        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10277        ::capnp::word(36, 0, 0, 0, 3, 0, 1, 0),
10278        ::capnp::word(48, 0, 0, 0, 2, 0, 1, 0),
10279        ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
10280        ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
10281        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10282        ::capnp::word(45, 0, 0, 0, 58, 0, 0, 0),
10283        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10284        ::capnp::word(40, 0, 0, 0, 3, 0, 1, 0),
10285        ::capnp::word(52, 0, 0, 0, 2, 0, 1, 0),
10286        ::capnp::word(118, 101, 114, 115, 105, 111, 110, 0),
10287        ::capnp::word(4, 0, 0, 0, 0, 0, 0, 0),
10288        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10289        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10290        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10291        ::capnp::word(4, 0, 0, 0, 0, 0, 0, 0),
10292        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10293        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10294        ::capnp::word(99, 111, 110, 102, 105, 103, 0, 0),
10295        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
10296        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10297        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10298        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10299        ::capnp::word(13, 0, 0, 0, 0, 0, 0, 0),
10300        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10301        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10302      ];
10303      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
10304        match index {
10305          0 => <i32 as ::capnp::introspect::Introspect>::introspect(),
10306          1 => <::capnp::data::Owned as ::capnp::introspect::Introspect>::introspect(),
10307          _ => panic!("invalid field index {}", index),
10308        }
10309      }
10310      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
10311        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
10312      }
10313      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
10314        encoded_node: &ENCODED_NODE,
10315        nonunion_members: NONUNION_MEMBERS,
10316        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
10317        members_by_name: MEMBERS_BY_NAME,
10318      };
10319      pub static NONUNION_MEMBERS : &[u16] = &[0,1];
10320      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
10321      pub static MEMBERS_BY_NAME : &[u16] = &[1,0];
10322      pub const TYPE_ID: u64 = 0xb177_ca25_26a3_ca76;
10323    }
10324  }
10325
10326  pub mod update_configuration_results {
10327    #[derive(Copy, Clone)]
10328    pub struct Owned(());
10329    impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Struct(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types, annotation_types: _private::get_annotation_types }).into() } }
10330    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
10331    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
10332    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }
10333
10334    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
10335    impl <> ::core::marker::Copy for Reader<'_,>  {}
10336    impl <> ::core::clone::Clone for Reader<'_,>  {
10337      fn clone(&self) -> Self { *self }
10338    }
10339
10340    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
10341      const TYPE_ID: u64 = _private::TYPE_ID;
10342    }
10343    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
10344      fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
10345        Self { reader,  }
10346      }
10347    }
10348
10349    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
10350      fn from(reader: Reader<'a,>) -> Self {
10351        Self::Struct(::capnp::dynamic_struct::Reader::new(reader.reader, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
10352      }
10353    }
10354
10355    impl <> ::core::fmt::Debug for Reader<'_,>  {
10356      fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
10357        core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
10358      }
10359    }
10360
10361    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
10362      fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10363        ::core::result::Result::Ok(reader.get_struct(default)?.into())
10364      }
10365    }
10366
10367    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
10368      fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
10369        self.reader
10370      }
10371    }
10372
10373    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
10374      fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
10375        self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
10376      }
10377    }
10378
10379    impl <'a,> Reader<'a,>  {
10380      pub fn reborrow(&self) -> Reader<'_,> {
10381        Self { .. *self }
10382      }
10383
10384      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
10385        self.reader.total_size()
10386      }
10387      #[inline]
10388      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::update_configuration_response::Reader<'a>> {
10389        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
10390      }
10391      #[inline]
10392      pub fn has_result(&self) -> bool {
10393        !self.reader.get_pointer_field(0).is_null()
10394      }
10395    }
10396
10397    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
10398    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
10399      const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
10400    }
10401    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
10402      const TYPE_ID: u64 = _private::TYPE_ID;
10403    }
10404    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
10405      fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
10406        Self { builder,  }
10407      }
10408    }
10409
10410    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
10411      fn from(builder: Builder<'a,>) -> Self {
10412        Self::Struct(::capnp::dynamic_struct::Builder::new(builder.builder, ::capnp::schema::StructSchema::new(::capnp::introspect::RawBrandedStructSchema { generic: &_private::RAW_SCHEMA, field_types: _private::get_field_types::<>, annotation_types: _private::get_annotation_types::<>})))
10413      }
10414    }
10415
10416    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
10417      fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
10418        self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
10419      }
10420    }
10421
10422    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
10423      fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
10424        builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
10425      }
10426      fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10427        ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
10428      }
10429    }
10430
10431    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
10432      fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
10433    }
10434
10435    impl <'a,> Builder<'a,>  {
10436      pub fn into_reader(self) -> Reader<'a,> {
10437        self.builder.into_reader().into()
10438      }
10439      pub fn reborrow(&mut self) -> Builder<'_,> {
10440        Builder { builder: self.builder.reborrow() }
10441      }
10442      pub fn reborrow_as_reader(&self) -> Reader<'_,> {
10443        self.builder.as_reader().into()
10444      }
10445
10446      pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
10447        self.builder.as_reader().total_size()
10448      }
10449      #[inline]
10450      pub fn get_result(self) -> ::capnp::Result<crate::tunnelrpc_capnp::update_configuration_response::Builder<'a>> {
10451        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
10452      }
10453      #[inline]
10454      pub fn set_result(&mut self, value: crate::tunnelrpc_capnp::update_configuration_response::Reader<'_>) -> ::capnp::Result<()> {
10455        ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
10456      }
10457      #[inline]
10458      pub fn init_result(self, ) -> crate::tunnelrpc_capnp::update_configuration_response::Builder<'a> {
10459        ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
10460      }
10461      #[inline]
10462      pub fn has_result(&self) -> bool {
10463        !self.builder.is_pointer_field_null(0)
10464      }
10465    }
10466
10467    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
10468    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
10469      fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
10470        Self { _typeless: typeless,  }
10471      }
10472    }
10473    impl Pipeline  {
10474      pub fn get_result(&self) -> crate::tunnelrpc_capnp::update_configuration_response::Pipeline {
10475        ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
10476      }
10477    }
10478    mod _private {
10479      pub static ENCODED_NODE: [::capnp::Word; 37] = [
10480        ::capnp::word(0, 0, 0, 0, 5, 0, 6, 0),
10481        ::capnp::word(62, 55, 179, 142, 68, 150, 128, 149),
10482        ::capnp::word(37, 0, 0, 0, 1, 0, 0, 0),
10483        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10484        ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
10485        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10486        ::capnp::word(21, 0, 0, 0, 10, 2, 0, 0),
10487        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10488        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10489        ::capnp::word(45, 0, 0, 0, 63, 0, 0, 0),
10490        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10491        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10492        ::capnp::word(116, 117, 110, 110, 101, 108, 114, 112),
10493        ::capnp::word(99, 46, 99, 97, 112, 110, 112, 58),
10494        ::capnp::word(67, 111, 110, 102, 105, 103, 117, 114),
10495        ::capnp::word(97, 116, 105, 111, 110, 77, 97, 110),
10496        ::capnp::word(97, 103, 101, 114, 46, 117, 112, 100),
10497        ::capnp::word(97, 116, 101, 67, 111, 110, 102, 105),
10498        ::capnp::word(103, 117, 114, 97, 116, 105, 111, 110),
10499        ::capnp::word(36, 82, 101, 115, 117, 108, 116, 115),
10500        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10501        ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
10502        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10503        ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
10504        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10505        ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
10506        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10507        ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
10508        ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
10509        ::capnp::word(114, 101, 115, 117, 108, 116, 0, 0),
10510        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
10511        ::capnp::word(249, 92, 160, 75, 105, 255, 88, 219),
10512        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10513        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10514        ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
10515        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10516        ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
10517      ];
10518      pub fn get_field_types(index: u16) -> ::capnp::introspect::Type {
10519        match index {
10520          0 => <crate::tunnelrpc_capnp::update_configuration_response::Owned as ::capnp::introspect::Introspect>::introspect(),
10521          _ => panic!("invalid field index {}", index),
10522        }
10523      }
10524      pub fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
10525        panic!("invalid annotation indices ({:?}, {}) ", child_index, index)
10526      }
10527      pub static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema {
10528        encoded_node: &ENCODED_NODE,
10529        nonunion_members: NONUNION_MEMBERS,
10530        members_by_discriminant: MEMBERS_BY_DISCRIMINANT,
10531        members_by_name: MEMBERS_BY_NAME,
10532      };
10533      pub static NONUNION_MEMBERS : &[u16] = &[0];
10534      pub static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
10535      pub static MEMBERS_BY_NAME : &[u16] = &[0];
10536      pub const TYPE_ID: u64 = 0x9580_9644_8eb3_373e;
10537    }
10538  }
10539}
10540
10541
10542pub mod cloudflared_server {
10543  #![allow(unused_variables)]
10544
10545  pub struct Client {
10546    pub client: ::capnp::capability::Client,
10547  }
10548  impl  ::capnp::capability::FromClientHook for Client {
10549    fn new(hook: Box<dyn (::capnp::private::capability::ClientHook)>) -> Self {
10550      Self { client: ::capnp::capability::Client::new(hook),  }
10551    }
10552    fn into_client_hook(self) -> Box<dyn (::capnp::private::capability::ClientHook)> {
10553      self.client.hook
10554    }
10555    fn as_client_hook(&self) -> &dyn (::capnp::private::capability::ClientHook) {
10556      &*self.client.hook
10557    }
10558  }
10559  #[derive(Copy, Clone)]
10560  pub struct Owned(());
10561  impl ::capnp::introspect::Introspect for Owned { fn introspect() -> ::capnp::introspect::Type { ::capnp::introspect::TypeVariant::Capability.into() } }
10562  impl ::capnp::traits::Owned for Owned { type Reader<'a> = Client; type Builder<'a> = Client; }
10563  impl ::capnp::traits::Pipelined for Owned { type Pipeline = Client; }
10564  impl <'a,> ::capnp::traits::FromPointerReader<'a> for Client<>  {
10565    fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10566      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(reader.get_capability()?))
10567    }
10568  }
10569  impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Client<>  {
10570    fn init_pointer(_builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
10571      unimplemented!()
10572    }
10573    fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
10574      ::core::result::Result::Ok(::capnp::capability::FromClientHook::new(builder.get_capability()?))
10575    }
10576  }
10577
10578  impl <> ::capnp::traits::SetterInput<Owned<>> for Client<>  {
10579    fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, from: Self, _canonicalize: bool) -> ::capnp::Result<()> {
10580      pointer.set_capability(from.client.hook);
10581      ::core::result::Result::Ok(())
10582    }
10583  }
10584  impl  ::capnp::traits::HasTypeId for Client {
10585    const TYPE_ID: u64 = _private::TYPE_ID;
10586  }
10587  impl  Clone for Client {
10588    fn clone(&self) -> Self {
10589      Self { client: ::capnp::capability::Client::new(self.client.hook.add_ref()),  }
10590    }
10591  }
10592  impl  Client {
10593  }
10594  pub trait Server<> : crate::tunnelrpc_capnp::session_manager::Server + crate::tunnelrpc_capnp::configuration_manager::Server  {
10595  }
10596  pub struct ServerDispatch<_T,> {
10597    pub server: _T,
10598  }
10599  impl <_S: Server + 'static, > ::capnp::capability::FromServer<_S> for Client   {
10600    type Dispatch = ServerDispatch<_S, >;
10601    fn from_server(s: _S) -> ServerDispatch<_S, > {
10602      ServerDispatch { server: s,  }
10603    }
10604  }
10605  impl <_T: Server> ::core::ops::Deref for ServerDispatch<_T> {
10606    type Target = _T;
10607    fn deref(&self) -> &_T { &self.server}
10608  }
10609  impl <_T: Server> ::core::ops::DerefMut for ServerDispatch<_T> {
10610    fn deref_mut(&mut self) -> &mut _T { &mut self.server}
10611  }
10612  impl <_T: Server> ::capnp::capability::Server for ServerDispatch<_T> {
10613    fn dispatch_call(&mut self, interface_id: u64, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
10614      match interface_id {
10615        _private::TYPE_ID => Self::dispatch_call_internal(&mut self.server, method_id, params, results),
10616        0x839445a59fb01686 => crate::tunnelrpc_capnp::session_manager::ServerDispatch::<_T>::dispatch_call_internal(&mut self.server, method_id, params, results),
10617        0xb48edfbdaa25db04 => crate::tunnelrpc_capnp::configuration_manager::ServerDispatch::<_T>::dispatch_call_internal(&mut self.server, method_id, params, results),
10618        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
10619      }
10620    }
10621  }
10622  impl <_T :Server> ServerDispatch<_T> {
10623    pub fn dispatch_call_internal(server: &mut _T, method_id: u16, params: ::capnp::capability::Params<::capnp::any_pointer::Owned>, results: ::capnp::capability::Results<::capnp::any_pointer::Owned>) -> ::capnp::capability::DispatchCallResult {
10624      match method_id {
10625        _ => { ::capnp::capability::DispatchCallResult::new(::capnp::capability::Promise::err(::capnp::Error::unimplemented("Method not implemented.".to_string())), false) }
10626      }
10627    }
10628  }
10629  pub mod _private {
10630    pub const TYPE_ID: u64 = 0xf548_cef9_dea2_a4a1;
10631  }
10632}