// @generated by the capnpc-rust plugin to the Cap'n Proto schema compiler.
// DO NOT EDIT.
// source: events/system.capnp
// capnp binary version: 1.4.0
// capnpc crate version: 0.26.0


pub mod system_event {
    pub use self::Which::{ComponentStateChanged,TradingStateChanged,ShutdownSystem};

    #[derive(Copy, Clone)]
    pub struct Owned(());
    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() } }
    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }

    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
    impl <> ::core::marker::Copy for Reader<'_,>  {}
    impl <> ::core::clone::Clone for Reader<'_,>  {
        fn clone(&self) -> Self { *self }
    }

    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
        fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
            Self { reader,  }
        }
    }

    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
        fn from(reader: Reader<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <> ::core::fmt::Debug for Reader<'_,>  {
        fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
            core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
        }
    }

    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
        fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(reader.get_struct(default)?.into())
        }
    }

    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
        fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
            self.reader
        }
    }

    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
        fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
            self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
        }
    }

    impl <'a,> Reader<'a,>  {
        pub fn reborrow(&self) -> Reader<'_,> {
            Self { .. *self }
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.reader.total_size()
        }
        #[inline]
        pub fn has_component_state_changed(&self) -> bool {
            if self.reader.get_data_field::<u16>(0) != 0 { return false; }
            !self.reader.get_pointer_field(0).is_null()
        }
        #[inline]
        pub fn has_trading_state_changed(&self) -> bool {
            if self.reader.get_data_field::<u16>(0) != 1 { return false; }
            !self.reader.get_pointer_field(0).is_null()
        }
        #[inline]
        pub fn has_shutdown_system(&self) -> bool {
            if self.reader.get_data_field::<u16>(0) != 2 { return false; }
            !self.reader.get_pointer_field(0).is_null()
        }
        #[inline]
        pub fn which(self) -> ::core::result::Result<WhichReader<'a,>, ::capnp::NotInSchema> {
            match self.reader.get_data_field::<u16>(0) {
                0 => {
                    ::core::result::Result::Ok(ComponentStateChanged(
                        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
                    ))
                }
                1 => {
                    ::core::result::Result::Ok(TradingStateChanged(
                        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
                    ))
                }
                2 => {
                    ::core::result::Result::Ok(ShutdownSystem(
                        ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
                    ))
                }
                x => ::core::result::Result::Err(::capnp::NotInSchema(x))
            }
        }
    }

    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
        const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 1 };
    }
    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
        fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
            Self { builder,  }
        }
    }

    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
        fn from(builder: Builder<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
        fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
            self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
        }
    }

    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
        fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
            builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
        }
        fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
        }
    }

    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
        fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
    }

    impl <'a,> Builder<'a,>  {
        pub fn into_reader(self) -> Reader<'a,> {
            self.builder.into_reader().into()
        }
        pub fn reborrow(&mut self) -> Builder<'_,> {
            Builder { builder: self.builder.reborrow() }
        }
        pub fn reborrow_as_reader(&self) -> Reader<'_,> {
            self.builder.as_reader().into()
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.builder.as_reader().total_size()
        }
        #[inline]
        pub fn set_component_state_changed(&mut self, value: crate::system_capnp::component_state_changed::Reader<'_>) -> ::capnp::Result<()> {
            self.builder.set_data_field::<u16>(0, 0);
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
        }
        #[inline]
        pub fn init_component_state_changed(self, ) -> crate::system_capnp::component_state_changed::Builder<'a> {
            self.builder.set_data_field::<u16>(0, 0);
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
        }
        #[inline]
        pub fn has_component_state_changed(&self) -> bool {
            if self.builder.get_data_field::<u16>(0) != 0 { return false; }
            !self.builder.is_pointer_field_null(0)
        }
        #[inline]
        pub fn set_trading_state_changed(&mut self, value: crate::system_capnp::trading_state_changed::Reader<'_>) -> ::capnp::Result<()> {
            self.builder.set_data_field::<u16>(0, 1);
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
        }
        #[inline]
        pub fn init_trading_state_changed(self, ) -> crate::system_capnp::trading_state_changed::Builder<'a> {
            self.builder.set_data_field::<u16>(0, 1);
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
        }
        #[inline]
        pub fn has_trading_state_changed(&self) -> bool {
            if self.builder.get_data_field::<u16>(0) != 1 { return false; }
            !self.builder.is_pointer_field_null(0)
        }
        #[inline]
        pub fn set_shutdown_system(&mut self, value: crate::system_capnp::shutdown_system::Reader<'_>) -> ::capnp::Result<()> {
            self.builder.set_data_field::<u16>(0, 2);
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
        }
        #[inline]
        pub fn init_shutdown_system(self, ) -> crate::system_capnp::shutdown_system::Builder<'a> {
            self.builder.set_data_field::<u16>(0, 2);
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
        }
        #[inline]
        pub fn has_shutdown_system(&self) -> bool {
            if self.builder.get_data_field::<u16>(0) != 2 { return false; }
            !self.builder.is_pointer_field_null(0)
        }
        #[inline]
        pub fn which(self) -> ::core::result::Result<WhichBuilder<'a,>, ::capnp::NotInSchema> {
            match self.builder.get_data_field::<u16>(0) {
                0 => {
                    ::core::result::Result::Ok(ComponentStateChanged(
                        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
                    ))
                }
                1 => {
                    ::core::result::Result::Ok(TradingStateChanged(
                        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
                    ))
                }
                2 => {
                    ::core::result::Result::Ok(ShutdownSystem(
                        ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
                    ))
                }
                x => ::core::result::Result::Err(::capnp::NotInSchema(x))
            }
        }
    }

    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
        fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
            Self { _typeless: typeless,  }
        }
    }
    impl Pipeline  {
    }
    mod _private {
        pub(crate) static ENCODED_NODE: [::capnp::Word; 69] = [
            ::capnp::word(0, 0, 0, 0, 6, 0, 6, 0),
            ::capnp::word(49, 43, 107, 103, 227, 193, 4, 132),
            ::capnp::word(20, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(163, 209, 189, 31, 71, 247, 134, 217),
            ::capnp::word(1, 0, 7, 0, 0, 0, 3, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(179, 1, 0, 0, 116, 2, 0, 0),
            ::capnp::word(21, 0, 0, 0, 2, 1, 0, 0),
            ::capnp::word(33, 0, 0, 0, 7, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(29, 0, 0, 0, 175, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(101, 118, 101, 110, 116, 115, 47, 115),
            ::capnp::word(121, 115, 116, 101, 109, 46, 99, 97),
            ::capnp::word(112, 110, 112, 58, 83, 121, 115, 116),
            ::capnp::word(101, 109, 69, 118, 101, 110, 116, 0),
            ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(12, 0, 0, 0, 3, 0, 4, 0),
            ::capnp::word(0, 0, 255, 255, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(69, 0, 0, 0, 178, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(72, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(84, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(1, 0, 254, 255, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(81, 0, 0, 0, 162, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(84, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(96, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(2, 0, 253, 255, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(93, 0, 0, 0, 122, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(92, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(104, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(99, 111, 109, 112, 111, 110, 101, 110),
            ::capnp::word(116, 83, 116, 97, 116, 101, 67, 104),
            ::capnp::word(97, 110, 103, 101, 100, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(170, 56, 150, 171, 197, 243, 186, 129),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(116, 114, 97, 100, 105, 110, 103, 83),
            ::capnp::word(116, 97, 116, 101, 67, 104, 97, 110),
            ::capnp::word(103, 101, 100, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(215, 227, 100, 212, 148, 16, 156, 138),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(115, 104, 117, 116, 100, 111, 119, 110),
            ::capnp::word(83, 121, 115, 116, 101, 109, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(81, 40, 128, 156, 193, 54, 133, 211),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
        ];
        pub(crate) fn get_field_types(index: u16) -> ::capnp::introspect::Type {
            match index {
                0 => <crate::system_capnp::component_state_changed::Owned as ::capnp::introspect::Introspect>::introspect(),
                1 => <crate::system_capnp::trading_state_changed::Owned as ::capnp::introspect::Introspect>::introspect(),
                2 => <crate::system_capnp::shutdown_system::Owned as ::capnp::introspect::Introspect>::introspect(),
                _ => ::capnp::introspect::panic_invalid_field_index(index),
            }
        }
        pub(crate) fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
            ::capnp::introspect::panic_invalid_annotation_indices(child_index, index)
        }
        pub(crate) static ARENA: ::capnp::private::arena::GeneratedCodeArena = ::capnp::private::arena::GeneratedCodeArena::new(&ENCODED_NODE);
        pub(crate) static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema::new(
            &ARENA,
            NONUNION_MEMBERS,
            MEMBERS_BY_DISCRIMINANT,
            MEMBERS_BY_NAME
        );
        pub(crate) static NONUNION_MEMBERS : &[u16] = &[];
        pub(crate) static MEMBERS_BY_DISCRIMINANT : &[u16] = &[0,1,2];
        pub(crate) static MEMBERS_BY_NAME : &[u16] = &[0,2,1];
        pub(crate) const TYPE_ID: u64 = 0x8404_c1e3_676b_2b31;
    }
    pub enum Which<A0,A1,A2> {
        ComponentStateChanged(A0),
        TradingStateChanged(A1),
        ShutdownSystem(A2),
    }
    pub type WhichReader<'a,> = Which<::capnp::Result<crate::system_capnp::component_state_changed::Reader<'a>>,::capnp::Result<crate::system_capnp::trading_state_changed::Reader<'a>>,::capnp::Result<crate::system_capnp::shutdown_system::Reader<'a>>>;
    pub type WhichBuilder<'a,> = Which<::capnp::Result<crate::system_capnp::component_state_changed::Builder<'a>>,::capnp::Result<crate::system_capnp::trading_state_changed::Builder<'a>>,::capnp::Result<crate::system_capnp::shutdown_system::Builder<'a>>>;
}

pub mod component_state_changed {
    #[derive(Copy, Clone)]
    pub struct Owned(());
    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() } }
    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }

    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
    impl <> ::core::marker::Copy for Reader<'_,>  {}
    impl <> ::core::clone::Clone for Reader<'_,>  {
        fn clone(&self) -> Self { *self }
    }

    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
        fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
            Self { reader,  }
        }
    }

    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
        fn from(reader: Reader<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <> ::core::fmt::Debug for Reader<'_,>  {
        fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
            core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
        }
    }

    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
        fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(reader.get_struct(default)?.into())
        }
    }

    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
        fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
            self.reader
        }
    }

    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
        fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
            self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
        }
    }

    impl <'a,> Reader<'a,>  {
        pub fn reborrow(&self) -> Reader<'_,> {
            Self { .. *self }
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.reader.total_size()
        }
        #[inline]
        pub fn get_trader_id(self) -> ::capnp::Result<crate::identifiers_capnp::trader_id::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_trader_id(&self) -> bool {
            !self.reader.get_pointer_field(0).is_null()
        }
        #[inline]
        pub fn get_component_id(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_component_id(&self) -> bool {
            !self.reader.get_pointer_field(1).is_null()
        }
        #[inline]
        pub fn get_component_type(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_component_type(&self) -> bool {
            !self.reader.get_pointer_field(2).is_null()
        }
        #[inline]
        pub fn get_state(self) -> ::core::result::Result<crate::enums_capnp::ComponentState,::capnp::NotInSchema> {
            ::core::convert::TryFrom::try_from(self.reader.get_data_field::<u16>(0))
        }
        #[inline]
        pub fn get_config(self) -> ::capnp::Result<crate::base_capnp::string_map::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(3), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_config(&self) -> bool {
            !self.reader.get_pointer_field(3).is_null()
        }
        #[inline]
        pub fn get_event_id(self) -> ::capnp::Result<crate::base_capnp::u_u_i_d4::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(4), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_event_id(&self) -> bool {
            !self.reader.get_pointer_field(4).is_null()
        }
        #[inline]
        pub fn get_ts_event(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(5), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_ts_event(&self) -> bool {
            !self.reader.get_pointer_field(5).is_null()
        }
        #[inline]
        pub fn get_ts_init(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(6), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_ts_init(&self) -> bool {
            !self.reader.get_pointer_field(6).is_null()
        }
    }

    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
        const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 7 };
    }
    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
        fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
            Self { builder,  }
        }
    }

    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
        fn from(builder: Builder<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
        fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
            self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
        }
    }

    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
        fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
            builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
        }
        fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
        }
    }

    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
        fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
    }

    impl <'a,> Builder<'a,>  {
        pub fn into_reader(self) -> Reader<'a,> {
            self.builder.into_reader().into()
        }
        pub fn reborrow(&mut self) -> Builder<'_,> {
            Builder { builder: self.builder.reborrow() }
        }
        pub fn reborrow_as_reader(&self) -> Reader<'_,> {
            self.builder.as_reader().into()
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.builder.as_reader().total_size()
        }
        #[inline]
        pub fn get_trader_id(self) -> ::capnp::Result<crate::identifiers_capnp::trader_id::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_trader_id(&mut self, value: crate::identifiers_capnp::trader_id::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
        }
        #[inline]
        pub fn init_trader_id(self, ) -> crate::identifiers_capnp::trader_id::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
        }
        #[inline]
        pub fn has_trader_id(&self) -> bool {
            !self.builder.is_pointer_field_null(0)
        }
        #[inline]
        pub fn get_component_id(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_component_id(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false).unwrap()
        }
        #[inline]
        pub fn init_component_id(self, size: u32) -> ::capnp::text::Builder<'a> {
            self.builder.get_pointer_field(1).init_text(size)
        }
        #[inline]
        pub fn has_component_id(&self) -> bool {
            !self.builder.is_pointer_field_null(1)
        }
        #[inline]
        pub fn get_component_type(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_component_type(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false).unwrap()
        }
        #[inline]
        pub fn init_component_type(self, size: u32) -> ::capnp::text::Builder<'a> {
            self.builder.get_pointer_field(2).init_text(size)
        }
        #[inline]
        pub fn has_component_type(&self) -> bool {
            !self.builder.is_pointer_field_null(2)
        }
        #[inline]
        pub fn get_state(self) -> ::core::result::Result<crate::enums_capnp::ComponentState,::capnp::NotInSchema> {
            ::core::convert::TryFrom::try_from(self.builder.get_data_field::<u16>(0))
        }
        #[inline]
        pub fn set_state(&mut self, value: crate::enums_capnp::ComponentState)  {
            self.builder.set_data_field::<u16>(0, value as u16);
        }
        #[inline]
        pub fn get_config(self) -> ::capnp::Result<crate::base_capnp::string_map::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(3), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_config(&mut self, value: crate::base_capnp::string_map::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(3), value, false)
        }
        #[inline]
        pub fn init_config(self, ) -> crate::base_capnp::string_map::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(3), 0)
        }
        #[inline]
        pub fn has_config(&self) -> bool {
            !self.builder.is_pointer_field_null(3)
        }
        #[inline]
        pub fn get_event_id(self) -> ::capnp::Result<crate::base_capnp::u_u_i_d4::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(4), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_event_id(&mut self, value: crate::base_capnp::u_u_i_d4::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(4), value, false)
        }
        #[inline]
        pub fn init_event_id(self, ) -> crate::base_capnp::u_u_i_d4::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(4), 0)
        }
        #[inline]
        pub fn has_event_id(&self) -> bool {
            !self.builder.is_pointer_field_null(4)
        }
        #[inline]
        pub fn get_ts_event(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(5), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_ts_event(&mut self, value: crate::base_capnp::unix_nanos::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(5), value, false)
        }
        #[inline]
        pub fn init_ts_event(self, ) -> crate::base_capnp::unix_nanos::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(5), 0)
        }
        #[inline]
        pub fn has_ts_event(&self) -> bool {
            !self.builder.is_pointer_field_null(5)
        }
        #[inline]
        pub fn get_ts_init(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(6), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_ts_init(&mut self, value: crate::base_capnp::unix_nanos::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(6), value, false)
        }
        #[inline]
        pub fn init_ts_init(self, ) -> crate::base_capnp::unix_nanos::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(6), 0)
        }
        #[inline]
        pub fn has_ts_init(&self) -> bool {
            !self.builder.is_pointer_field_null(6)
        }
    }

    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
        fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
            Self { _typeless: typeless,  }
        }
    }
    impl Pipeline  {
        pub fn get_trader_id(&self) -> crate::identifiers_capnp::trader_id::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
        }
        pub fn get_config(&self) -> crate::base_capnp::string_map::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(3))
        }
        pub fn get_event_id(&self) -> crate::base_capnp::u_u_i_d4::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(4))
        }
        pub fn get_ts_event(&self) -> crate::base_capnp::unix_nanos::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(5))
        }
        pub fn get_ts_init(&self) -> crate::base_capnp::unix_nanos::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(6))
        }
    }
    mod _private {
        pub(crate) static ENCODED_NODE: [::capnp::Word; 144] = [
            ::capnp::word(0, 0, 0, 0, 6, 0, 6, 0),
            ::capnp::word(170, 56, 150, 171, 197, 243, 186, 129),
            ::capnp::word(20, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(163, 209, 189, 31, 71, 247, 134, 217),
            ::capnp::word(7, 0, 7, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(118, 2, 0, 0, 145, 3, 0, 0),
            ::capnp::word(21, 0, 0, 0, 82, 1, 0, 0),
            ::capnp::word(41, 0, 0, 0, 7, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(37, 0, 0, 0, 199, 1, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(101, 118, 101, 110, 116, 115, 47, 115),
            ::capnp::word(121, 115, 116, 101, 109, 46, 99, 97),
            ::capnp::word(112, 110, 112, 58, 67, 111, 109, 112),
            ::capnp::word(111, 110, 101, 110, 116, 83, 116, 97),
            ::capnp::word(116, 101, 67, 104, 97, 110, 103, 101),
            ::capnp::word(100, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(32, 0, 0, 0, 3, 0, 4, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(209, 0, 0, 0, 74, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(208, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(220, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(1, 0, 0, 0, 1, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(217, 0, 0, 0, 98, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(216, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(228, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(2, 0, 0, 0, 2, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(225, 0, 0, 0, 114, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(224, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(236, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(3, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(233, 0, 0, 0, 50, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(228, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(240, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(4, 0, 0, 0, 3, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(237, 0, 0, 0, 58, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(232, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(244, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(5, 0, 0, 0, 4, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 5, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(241, 0, 0, 0, 66, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(236, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(248, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(6, 0, 0, 0, 5, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 6, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(245, 0, 0, 0, 66, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(240, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(252, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(7, 0, 0, 0, 6, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 7, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(249, 0, 0, 0, 58, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(244, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(0, 1, 0, 0, 2, 0, 1, 0),
            ::capnp::word(116, 114, 97, 100, 101, 114, 73, 100),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(152, 78, 128, 179, 186, 148, 86, 235),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(99, 111, 109, 112, 111, 110, 101, 110),
            ::capnp::word(116, 73, 100, 0, 0, 0, 0, 0),
            ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(99, 111, 109, 112, 111, 110, 101, 110),
            ::capnp::word(116, 84, 121, 112, 101, 0, 0, 0),
            ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(115, 116, 97, 116, 101, 0, 0, 0),
            ::capnp::word(15, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(195, 120, 185, 88, 235, 33, 26, 230),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(15, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(99, 111, 110, 102, 105, 103, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(136, 30, 38, 108, 7, 106, 72, 165),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(101, 118, 101, 110, 116, 73, 100, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(169, 89, 74, 217, 44, 136, 113, 210),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(116, 115, 69, 118, 101, 110, 116, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(242, 7, 132, 185, 153, 20, 12, 207),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(116, 115, 73, 110, 105, 116, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(242, 7, 132, 185, 153, 20, 12, 207),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
        ];
        pub(crate) fn get_field_types(index: u16) -> ::capnp::introspect::Type {
            match index {
                0 => <crate::identifiers_capnp::trader_id::Owned as ::capnp::introspect::Introspect>::introspect(),
                1 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
                2 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
                3 => <crate::enums_capnp::ComponentState as ::capnp::introspect::Introspect>::introspect(),
                4 => <crate::base_capnp::string_map::Owned as ::capnp::introspect::Introspect>::introspect(),
                5 => <crate::base_capnp::u_u_i_d4::Owned as ::capnp::introspect::Introspect>::introspect(),
                6 => <crate::base_capnp::unix_nanos::Owned as ::capnp::introspect::Introspect>::introspect(),
                7 => <crate::base_capnp::unix_nanos::Owned as ::capnp::introspect::Introspect>::introspect(),
                _ => ::capnp::introspect::panic_invalid_field_index(index),
            }
        }
        pub(crate) fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
            ::capnp::introspect::panic_invalid_annotation_indices(child_index, index)
        }
        pub(crate) static ARENA: ::capnp::private::arena::GeneratedCodeArena = ::capnp::private::arena::GeneratedCodeArena::new(&ENCODED_NODE);
        pub(crate) static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema::new(
            &ARENA,
            NONUNION_MEMBERS,
            MEMBERS_BY_DISCRIMINANT,
            MEMBERS_BY_NAME
        );
        pub(crate) static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4,5,6,7];
        pub(crate) static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
        pub(crate) static MEMBERS_BY_NAME : &[u16] = &[1,2,4,5,3,0,6,7];
        pub(crate) const TYPE_ID: u64 = 0x81ba_f3c5_ab96_38aa;
    }
}

pub mod trading_state_changed {
    #[derive(Copy, Clone)]
    pub struct Owned(());
    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() } }
    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }

    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
    impl <> ::core::marker::Copy for Reader<'_,>  {}
    impl <> ::core::clone::Clone for Reader<'_,>  {
        fn clone(&self) -> Self { *self }
    }

    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
        fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
            Self { reader,  }
        }
    }

    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
        fn from(reader: Reader<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <> ::core::fmt::Debug for Reader<'_,>  {
        fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
            core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
        }
    }

    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
        fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(reader.get_struct(default)?.into())
        }
    }

    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
        fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
            self.reader
        }
    }

    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
        fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
            self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
        }
    }

    impl <'a,> Reader<'a,>  {
        pub fn reborrow(&self) -> Reader<'_,> {
            Self { .. *self }
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.reader.total_size()
        }
        #[inline]
        pub fn get_trader_id(self) -> ::capnp::Result<crate::identifiers_capnp::trader_id::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_trader_id(&self) -> bool {
            !self.reader.get_pointer_field(0).is_null()
        }
        #[inline]
        pub fn get_state(self) -> ::core::result::Result<crate::enums_capnp::TradingState,::capnp::NotInSchema> {
            ::core::convert::TryFrom::try_from(self.reader.get_data_field::<u16>(0))
        }
        #[inline]
        pub fn get_config(self) -> ::capnp::Result<crate::base_capnp::string_map::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(1), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_config(&self) -> bool {
            !self.reader.get_pointer_field(1).is_null()
        }
        #[inline]
        pub fn get_event_id(self) -> ::capnp::Result<crate::base_capnp::u_u_i_d4::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(2), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_event_id(&self) -> bool {
            !self.reader.get_pointer_field(2).is_null()
        }
        #[inline]
        pub fn get_ts_event(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(3), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_ts_event(&self) -> bool {
            !self.reader.get_pointer_field(3).is_null()
        }
        #[inline]
        pub fn get_ts_init(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(4), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_ts_init(&self) -> bool {
            !self.reader.get_pointer_field(4).is_null()
        }
    }

    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
        const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 1, pointers: 5 };
    }
    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
        fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
            Self { builder,  }
        }
    }

    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
        fn from(builder: Builder<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
        fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
            self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
        }
    }

    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
        fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
            builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
        }
        fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
        }
    }

    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
        fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
    }

    impl <'a,> Builder<'a,>  {
        pub fn into_reader(self) -> Reader<'a,> {
            self.builder.into_reader().into()
        }
        pub fn reborrow(&mut self) -> Builder<'_,> {
            Builder { builder: self.builder.reborrow() }
        }
        pub fn reborrow_as_reader(&self) -> Reader<'_,> {
            self.builder.as_reader().into()
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.builder.as_reader().total_size()
        }
        #[inline]
        pub fn get_trader_id(self) -> ::capnp::Result<crate::identifiers_capnp::trader_id::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_trader_id(&mut self, value: crate::identifiers_capnp::trader_id::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false)
        }
        #[inline]
        pub fn init_trader_id(self, ) -> crate::identifiers_capnp::trader_id::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(0), 0)
        }
        #[inline]
        pub fn has_trader_id(&self) -> bool {
            !self.builder.is_pointer_field_null(0)
        }
        #[inline]
        pub fn get_state(self) -> ::core::result::Result<crate::enums_capnp::TradingState,::capnp::NotInSchema> {
            ::core::convert::TryFrom::try_from(self.builder.get_data_field::<u16>(0))
        }
        #[inline]
        pub fn set_state(&mut self, value: crate::enums_capnp::TradingState)  {
            self.builder.set_data_field::<u16>(0, value as u16);
        }
        #[inline]
        pub fn get_config(self) -> ::capnp::Result<crate::base_capnp::string_map::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(1), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_config(&mut self, value: crate::base_capnp::string_map::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(1), value, false)
        }
        #[inline]
        pub fn init_config(self, ) -> crate::base_capnp::string_map::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(1), 0)
        }
        #[inline]
        pub fn has_config(&self) -> bool {
            !self.builder.is_pointer_field_null(1)
        }
        #[inline]
        pub fn get_event_id(self) -> ::capnp::Result<crate::base_capnp::u_u_i_d4::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(2), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_event_id(&mut self, value: crate::base_capnp::u_u_i_d4::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(2), value, false)
        }
        #[inline]
        pub fn init_event_id(self, ) -> crate::base_capnp::u_u_i_d4::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(2), 0)
        }
        #[inline]
        pub fn has_event_id(&self) -> bool {
            !self.builder.is_pointer_field_null(2)
        }
        #[inline]
        pub fn get_ts_event(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(3), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_ts_event(&mut self, value: crate::base_capnp::unix_nanos::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(3), value, false)
        }
        #[inline]
        pub fn init_ts_event(self, ) -> crate::base_capnp::unix_nanos::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(3), 0)
        }
        #[inline]
        pub fn has_ts_event(&self) -> bool {
            !self.builder.is_pointer_field_null(3)
        }
        #[inline]
        pub fn get_ts_init(self) -> ::capnp::Result<crate::base_capnp::unix_nanos::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(4), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_ts_init(&mut self, value: crate::base_capnp::unix_nanos::Reader<'_>) -> ::capnp::Result<()> {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(4), value, false)
        }
        #[inline]
        pub fn init_ts_init(self, ) -> crate::base_capnp::unix_nanos::Builder<'a> {
            ::capnp::traits::FromPointerBuilder::init_pointer(self.builder.get_pointer_field(4), 0)
        }
        #[inline]
        pub fn has_ts_init(&self) -> bool {
            !self.builder.is_pointer_field_null(4)
        }
    }

    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
        fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
            Self { _typeless: typeless,  }
        }
    }
    impl Pipeline  {
        pub fn get_trader_id(&self) -> crate::identifiers_capnp::trader_id::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(0))
        }
        pub fn get_config(&self) -> crate::base_capnp::string_map::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(1))
        }
        pub fn get_event_id(&self) -> crate::base_capnp::u_u_i_d4::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(2))
        }
        pub fn get_ts_event(&self) -> crate::base_capnp::unix_nanos::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(3))
        }
        pub fn get_ts_init(&self) -> crate::base_capnp::unix_nanos::Pipeline {
            ::capnp::capability::FromTypelessPipeline::new(self._typeless.get_pointer_field(4))
        }
    }
    mod _private {
        pub(crate) static ENCODED_NODE: [::capnp::Word; 111] = [
            ::capnp::word(0, 0, 0, 0, 6, 0, 6, 0),
            ::capnp::word(215, 227, 100, 212, 148, 16, 156, 138),
            ::capnp::word(20, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(163, 209, 189, 31, 71, 247, 134, 217),
            ::capnp::word(5, 0, 7, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(147, 3, 0, 0, 116, 4, 0, 0),
            ::capnp::word(21, 0, 0, 0, 66, 1, 0, 0),
            ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(33, 0, 0, 0, 87, 1, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(101, 118, 101, 110, 116, 115, 47, 115),
            ::capnp::word(121, 115, 116, 101, 109, 46, 99, 97),
            ::capnp::word(112, 110, 112, 58, 84, 114, 97, 100),
            ::capnp::word(105, 110, 103, 83, 116, 97, 116, 101),
            ::capnp::word(67, 104, 97, 110, 103, 101, 100, 0),
            ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(24, 0, 0, 0, 3, 0, 4, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(153, 0, 0, 0, 74, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(152, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(164, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(1, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 1, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(161, 0, 0, 0, 50, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(156, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(168, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(2, 0, 0, 0, 1, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 2, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(165, 0, 0, 0, 58, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(160, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(172, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(3, 0, 0, 0, 2, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 3, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(169, 0, 0, 0, 66, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(164, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(176, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(4, 0, 0, 0, 3, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 4, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(173, 0, 0, 0, 66, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(168, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(180, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(5, 0, 0, 0, 4, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 5, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(177, 0, 0, 0, 58, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(172, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(184, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(116, 114, 97, 100, 101, 114, 73, 100),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(152, 78, 128, 179, 186, 148, 86, 235),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(115, 116, 97, 116, 101, 0, 0, 0),
            ::capnp::word(15, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(28, 146, 136, 241, 208, 119, 236, 220),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(15, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(99, 111, 110, 102, 105, 103, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(136, 30, 38, 108, 7, 106, 72, 165),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(101, 118, 101, 110, 116, 73, 100, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(169, 89, 74, 217, 44, 136, 113, 210),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(116, 115, 69, 118, 101, 110, 116, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(242, 7, 132, 185, 153, 20, 12, 207),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(116, 115, 73, 110, 105, 116, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(242, 7, 132, 185, 153, 20, 12, 207),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(16, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
        ];
        pub(crate) fn get_field_types(index: u16) -> ::capnp::introspect::Type {
            match index {
                0 => <crate::identifiers_capnp::trader_id::Owned as ::capnp::introspect::Introspect>::introspect(),
                1 => <crate::enums_capnp::TradingState as ::capnp::introspect::Introspect>::introspect(),
                2 => <crate::base_capnp::string_map::Owned as ::capnp::introspect::Introspect>::introspect(),
                3 => <crate::base_capnp::u_u_i_d4::Owned as ::capnp::introspect::Introspect>::introspect(),
                4 => <crate::base_capnp::unix_nanos::Owned as ::capnp::introspect::Introspect>::introspect(),
                5 => <crate::base_capnp::unix_nanos::Owned as ::capnp::introspect::Introspect>::introspect(),
                _ => ::capnp::introspect::panic_invalid_field_index(index),
            }
        }
        pub(crate) fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
            ::capnp::introspect::panic_invalid_annotation_indices(child_index, index)
        }
        pub(crate) static ARENA: ::capnp::private::arena::GeneratedCodeArena = ::capnp::private::arena::GeneratedCodeArena::new(&ENCODED_NODE);
        pub(crate) static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema::new(
            &ARENA,
            NONUNION_MEMBERS,
            MEMBERS_BY_DISCRIMINANT,
            MEMBERS_BY_NAME
        );
        pub(crate) static NONUNION_MEMBERS : &[u16] = &[0,1,2,3,4,5];
        pub(crate) static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
        pub(crate) static MEMBERS_BY_NAME : &[u16] = &[2,3,1,0,4,5];
        pub(crate) const TYPE_ID: u64 = 0x8a9c_1094_d464_e3d7;
    }
}

pub mod shutdown_system {
    #[derive(Copy, Clone)]
    pub struct Owned(());
    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() } }
    impl ::capnp::traits::Owned for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::OwnedStruct for Owned { type Reader<'a> = Reader<'a>; type Builder<'a> = Builder<'a>; }
    impl ::capnp::traits::Pipelined for Owned { type Pipeline = Pipeline; }

    pub struct Reader<'a> { reader: ::capnp::private::layout::StructReader<'a> }
    impl <> ::core::marker::Copy for Reader<'_,>  {}
    impl <> ::core::clone::Clone for Reader<'_,>  {
        fn clone(&self) -> Self { *self }
    }

    impl <> ::capnp::traits::HasTypeId for Reader<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructReader<'a>> for Reader<'a,>  {
        fn from(reader: ::capnp::private::layout::StructReader<'a>) -> Self {
            Self { reader,  }
        }
    }

    impl <'a,> ::core::convert::From<Reader<'a,>> for ::capnp::dynamic_value::Reader<'a>  {
        fn from(reader: Reader<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <> ::core::fmt::Debug for Reader<'_,>  {
        fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::result::Result<(), ::core::fmt::Error> {
            core::fmt::Debug::fmt(&::core::convert::Into::<::capnp::dynamic_value::Reader<'_>>::into(*self), f)
        }
    }

    impl <'a,> ::capnp::traits::FromPointerReader<'a> for Reader<'a,>  {
        fn get_from_pointer(reader: &::capnp::private::layout::PointerReader<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(reader.get_struct(default)?.into())
        }
    }

    impl <'a,> ::capnp::traits::IntoInternalStructReader<'a> for Reader<'a,>  {
        fn into_internal_struct_reader(self) -> ::capnp::private::layout::StructReader<'a> {
            self.reader
        }
    }

    impl <'a,> ::capnp::traits::Imbue<'a> for Reader<'a,>  {
        fn imbue(&mut self, cap_table: &'a ::capnp::private::layout::CapTable) {
            self.reader.imbue(::capnp::private::layout::CapTableReader::Plain(cap_table))
        }
    }

    impl <'a,> Reader<'a,>  {
        pub fn reborrow(&self) -> Reader<'_,> {
            Self { .. *self }
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.reader.total_size()
        }
        #[inline]
        pub fn get_reason(self) -> ::capnp::Result<::capnp::text::Reader<'a>> {
            ::capnp::traits::FromPointerReader::get_from_pointer(&self.reader.get_pointer_field(0), ::core::option::Option::None)
        }
        #[inline]
        pub fn has_reason(&self) -> bool {
            !self.reader.get_pointer_field(0).is_null()
        }
    }

    pub struct Builder<'a> { builder: ::capnp::private::layout::StructBuilder<'a> }
    impl <> ::capnp::traits::HasStructSize for Builder<'_,>  {
        const STRUCT_SIZE: ::capnp::private::layout::StructSize = ::capnp::private::layout::StructSize { data: 0, pointers: 1 };
    }
    impl <> ::capnp::traits::HasTypeId for Builder<'_,>  {
        const TYPE_ID: u64 = _private::TYPE_ID;
    }
    impl <'a,> ::core::convert::From<::capnp::private::layout::StructBuilder<'a>> for Builder<'a,>  {
        fn from(builder: ::capnp::private::layout::StructBuilder<'a>) -> Self {
            Self { builder,  }
        }
    }

    impl <'a,> ::core::convert::From<Builder<'a,>> for ::capnp::dynamic_value::Builder<'a>  {
        fn from(builder: Builder<'a,>) -> Self {
            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::<>})))
        }
    }

    impl <'a,> ::capnp::traits::ImbueMut<'a> for Builder<'a,>  {
        fn imbue_mut(&mut self, cap_table: &'a mut ::capnp::private::layout::CapTable) {
            self.builder.imbue(::capnp::private::layout::CapTableBuilder::Plain(cap_table))
        }
    }

    impl <'a,> ::capnp::traits::FromPointerBuilder<'a> for Builder<'a,>  {
        fn init_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, _size: u32) -> Self {
            builder.init_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE).into()
        }
        fn get_from_pointer(builder: ::capnp::private::layout::PointerBuilder<'a>, default: ::core::option::Option<&'a [::capnp::Word]>) -> ::capnp::Result<Self> {
            ::core::result::Result::Ok(builder.get_struct(<Self as ::capnp::traits::HasStructSize>::STRUCT_SIZE, default)?.into())
        }
    }

    impl <> ::capnp::traits::SetterInput<Owned<>> for Reader<'_,>  {
        fn set_pointer_builder(mut pointer: ::capnp::private::layout::PointerBuilder<'_>, value: Self, canonicalize: bool) -> ::capnp::Result<()> { pointer.set_struct(&value.reader, canonicalize) }
    }

    impl <'a,> Builder<'a,>  {
        pub fn into_reader(self) -> Reader<'a,> {
            self.builder.into_reader().into()
        }
        pub fn reborrow(&mut self) -> Builder<'_,> {
            Builder { builder: self.builder.reborrow() }
        }
        pub fn reborrow_as_reader(&self) -> Reader<'_,> {
            self.builder.as_reader().into()
        }

        pub fn total_size(&self) -> ::capnp::Result<::capnp::MessageSize> {
            self.builder.as_reader().total_size()
        }
        #[inline]
        pub fn get_reason(self) -> ::capnp::Result<::capnp::text::Builder<'a>> {
            ::capnp::traits::FromPointerBuilder::get_from_pointer(self.builder.get_pointer_field(0), ::core::option::Option::None)
        }
        #[inline]
        pub fn set_reason(&mut self, value: impl ::capnp::traits::SetterInput<::capnp::text::Owned>)  {
            ::capnp::traits::SetterInput::set_pointer_builder(self.builder.reborrow().get_pointer_field(0), value, false).unwrap()
        }
        #[inline]
        pub fn init_reason(self, size: u32) -> ::capnp::text::Builder<'a> {
            self.builder.get_pointer_field(0).init_text(size)
        }
        #[inline]
        pub fn has_reason(&self) -> bool {
            !self.builder.is_pointer_field_null(0)
        }
    }

    pub struct Pipeline { _typeless: ::capnp::any_pointer::Pipeline }
    impl ::capnp::capability::FromTypelessPipeline for Pipeline {
        fn new(typeless: ::capnp::any_pointer::Pipeline) -> Self {
            Self { _typeless: typeless,  }
        }
    }
    impl Pipeline  {
    }
    mod _private {
        pub(crate) static ENCODED_NODE: [::capnp::Word; 35] = [
            ::capnp::word(0, 0, 0, 0, 6, 0, 6, 0),
            ::capnp::word(81, 40, 128, 156, 193, 54, 133, 211),
            ::capnp::word(20, 0, 0, 0, 1, 0, 0, 0),
            ::capnp::word(163, 209, 189, 31, 71, 247, 134, 217),
            ::capnp::word(1, 0, 7, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(118, 4, 0, 0, 164, 4, 0, 0),
            ::capnp::word(21, 0, 0, 0, 26, 1, 0, 0),
            ::capnp::word(37, 0, 0, 0, 7, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(33, 0, 0, 0, 63, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(101, 118, 101, 110, 116, 115, 47, 115),
            ::capnp::word(121, 115, 116, 101, 109, 46, 99, 97),
            ::capnp::word(112, 110, 112, 58, 83, 104, 117, 116),
            ::capnp::word(100, 111, 119, 110, 83, 121, 115, 116),
            ::capnp::word(101, 109, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 1, 0, 1, 0),
            ::capnp::word(4, 0, 0, 0, 3, 0, 4, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 1, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(13, 0, 0, 0, 58, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(8, 0, 0, 0, 3, 0, 1, 0),
            ::capnp::word(20, 0, 0, 0, 2, 0, 1, 0),
            ::capnp::word(114, 101, 97, 115, 111, 110, 0, 0),
            ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(12, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
            ::capnp::word(0, 0, 0, 0, 0, 0, 0, 0),
        ];
        pub(crate) fn get_field_types(index: u16) -> ::capnp::introspect::Type {
            match index {
                0 => <::capnp::text::Owned as ::capnp::introspect::Introspect>::introspect(),
                _ => ::capnp::introspect::panic_invalid_field_index(index),
            }
        }
        pub(crate) fn get_annotation_types(child_index: Option<u16>, index: u32) -> ::capnp::introspect::Type {
            ::capnp::introspect::panic_invalid_annotation_indices(child_index, index)
        }
        pub(crate) static ARENA: ::capnp::private::arena::GeneratedCodeArena = ::capnp::private::arena::GeneratedCodeArena::new(&ENCODED_NODE);
        pub(crate) static RAW_SCHEMA: ::capnp::introspect::RawStructSchema = ::capnp::introspect::RawStructSchema::new(
            &ARENA,
            NONUNION_MEMBERS,
            MEMBERS_BY_DISCRIMINANT,
            MEMBERS_BY_NAME
        );
        pub(crate) static NONUNION_MEMBERS : &[u16] = &[0];
        pub(crate) static MEMBERS_BY_DISCRIMINANT : &[u16] = &[];
        pub(crate) static MEMBERS_BY_NAME : &[u16] = &[0];
        pub(crate) const TYPE_ID: u64 = 0xd385_36c1_9c80_2851;
    }
}
