// Generated by Cap'n Proto compiler, DO NOT EDIT // source: persistent.capnp #ifndef CAPNP_INCLUDED_b8630836983feed7_ #define CAPNP_INCLUDED_b8630836983feed7_ #include #if !CAPNP_LITE #include #endif // !CAPNP_LITE #if CAPNP_VERSION != 6001 #error "Version mismatch between generated code and library headers. You must use the same version of the Cap'n Proto compiler and library." #endif namespace capnp { namespace schemas { CAPNP_DECLARE_SCHEMA(c8cb212fcd9f5691); CAPNP_DECLARE_SCHEMA(f76fba59183073a5); CAPNP_DECLARE_SCHEMA(b76848c18c40efbf); CAPNP_DECLARE_SCHEMA(84ff286cd00a3ed4); CAPNP_DECLARE_SCHEMA(f0c2cc1d3909574d); CAPNP_DECLARE_SCHEMA(ecafa18b482da3aa); CAPNP_DECLARE_SCHEMA(f622595091cafb67); } // namespace schemas } // namespace capnp namespace capnp { template struct Persistent { Persistent() = delete; #if !CAPNP_LITE class Client; class Server; #endif // !CAPNP_LITE struct SaveParams; struct SaveResults; #if !CAPNP_LITE struct _capnpPrivate { CAPNP_DECLARE_INTERFACE_HEADER(c8cb212fcd9f5691) static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; static const ::capnp::_::RawBrandedSchema::Dependency brandDependencies[]; static const ::capnp::_::RawBrandedSchema specificBrand; static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, SturdyRef, Owner>::brand(); } }; #endif // !CAPNP_LITE }; template struct Persistent::SaveParams { SaveParams() = delete; class Reader; class Builder; class Pipeline; struct _capnpPrivate { CAPNP_DECLARE_STRUCT_HEADER(f76fba59183073a5, 0, 1) #if !CAPNP_LITE static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; static const ::capnp::_::RawBrandedSchema specificBrand; static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, SturdyRef, Owner>::brand(); } #endif // !CAPNP_LITE }; }; template struct Persistent::SaveResults { SaveResults() = delete; class Reader; class Builder; class Pipeline; struct _capnpPrivate { CAPNP_DECLARE_STRUCT_HEADER(b76848c18c40efbf, 0, 1) #if !CAPNP_LITE static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; static const ::capnp::_::RawBrandedSchema specificBrand; static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, SturdyRef, Owner>::brand(); } #endif // !CAPNP_LITE }; }; template struct RealmGateway { RealmGateway() = delete; #if !CAPNP_LITE class Client; class Server; #endif // !CAPNP_LITE struct ImportParams; struct ExportParams; #if !CAPNP_LITE struct _capnpPrivate { CAPNP_DECLARE_INTERFACE_HEADER(84ff286cd00a3ed4) static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; static const ::capnp::_::RawBrandedSchema::Dependency brandDependencies[]; static const ::capnp::_::RawBrandedSchema specificBrand; static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, InternalRef, ExternalRef, InternalOwner, ExternalOwner>::brand(); } }; #endif // !CAPNP_LITE }; template struct RealmGateway::ImportParams { ImportParams() = delete; class Reader; class Builder; class Pipeline; struct _capnpPrivate { CAPNP_DECLARE_STRUCT_HEADER(f0c2cc1d3909574d, 0, 2) #if !CAPNP_LITE static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; static const ::capnp::_::RawBrandedSchema::Dependency brandDependencies[]; static const ::capnp::_::RawBrandedSchema specificBrand; static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, InternalRef, ExternalRef, InternalOwner, ExternalOwner>::brand(); } #endif // !CAPNP_LITE }; }; template struct RealmGateway::ExportParams { ExportParams() = delete; class Reader; class Builder; class Pipeline; struct _capnpPrivate { CAPNP_DECLARE_STRUCT_HEADER(ecafa18b482da3aa, 0, 2) #if !CAPNP_LITE static const ::capnp::_::RawBrandedSchema::Scope brandScopes[]; static const ::capnp::_::RawBrandedSchema::Binding brandBindings[]; static const ::capnp::_::RawBrandedSchema::Dependency brandDependencies[]; static const ::capnp::_::RawBrandedSchema specificBrand; static constexpr ::capnp::_::RawBrandedSchema const* brand() { return ::capnp::_::ChooseBrand<_capnpPrivate, InternalRef, ExternalRef, InternalOwner, ExternalOwner>::brand(); } #endif // !CAPNP_LITE }; }; // ======================================================================================= #if !CAPNP_LITE template class Persistent::Client : public virtual ::capnp::Capability::Client { public: typedef Persistent Calls; typedef Persistent Reads; Client(decltype(nullptr)); explicit Client(::kj::Own< ::capnp::ClientHook>&& hook); template ()>> Client(::kj::Own<_t>&& server); template ()>> Client(::kj::Promise<_t>&& promise); Client(::kj::Exception&& exception); Client(Client&) = default; Client(Client&&) = default; Client& operator=(Client& other); Client& operator=(Client&& other); template typename Persistent::Client asGeneric() { return castAs>(); } CAPNP_AUTO_IF_MSVC(::capnp::Request::SaveParams, typename ::capnp::Persistent::SaveResults>) saveRequest( ::kj::Maybe< ::capnp::MessageSize> sizeHint = nullptr); protected: Client() = default; }; template class Persistent::Server : public virtual ::capnp::Capability::Server { public: typedef Persistent Serves; ::kj::Promise dispatchCall(uint64_t interfaceId, uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) override; protected: typedef ::capnp::CallContext::SaveParams, typename ::capnp::Persistent::SaveResults> SaveContext; virtual ::kj::Promise save(SaveContext context); inline typename ::capnp::Persistent::Client thisCap() { return ::capnp::Capability::Server::thisCap() .template castAs< ::capnp::Persistent>(); } ::kj::Promise dispatchCallInternal(uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context); }; #endif // !CAPNP_LITE template class Persistent::SaveParams::Reader { public: typedef SaveParams Reads; Reader() = default; inline explicit Reader(::capnp::_::StructReader base): _reader(base) {} inline ::capnp::MessageSize totalSize() const { return _reader.totalSize().asPublic(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return ::capnp::_::structString(_reader, *_capnpPrivate::brand()); } #endif // !CAPNP_LITE template typename Persistent::SaveParams::Reader asPersistentGeneric() { return typename Persistent::SaveParams::Reader(_reader); } inline bool hasSealFor() const; inline ::capnp::ReaderFor getSealFor() const; private: ::capnp::_::StructReader _reader; template friend struct ::capnp::ToDynamic_; template friend struct ::capnp::_::PointerHelpers; template friend struct ::capnp::List; friend class ::capnp::MessageBuilder; friend class ::capnp::Orphanage; }; template class Persistent::SaveParams::Builder { public: typedef SaveParams Builds; Builder() = delete; // Deleted to discourage incorrect usage. // You can explicitly initialize to nullptr instead. inline Builder(decltype(nullptr)) {} inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {} inline operator Reader() const { return Reader(_builder.asReader()); } inline Reader asReader() const { return *this; } inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return asReader().toString(); } #endif // !CAPNP_LITE template typename Persistent::SaveParams::Builder asPersistentGeneric() { return typename Persistent::SaveParams::Builder(_builder); } inline bool hasSealFor(); inline ::capnp::BuilderFor getSealFor(); inline void setSealFor( ::capnp::ReaderFor value); inline ::capnp::BuilderFor initSealFor(); inline ::capnp::BuilderFor initSealFor(unsigned int size); inline void adoptSealFor(::capnp::Orphan&& value); inline ::capnp::Orphan disownSealFor(); private: ::capnp::_::StructBuilder _builder; template friend struct ::capnp::ToDynamic_; friend class ::capnp::Orphanage; template friend struct ::capnp::_::PointerHelpers; }; #if !CAPNP_LITE template class Persistent::SaveParams::Pipeline { public: typedef SaveParams Pipelines; inline Pipeline(decltype(nullptr)): _typeless(nullptr) {} inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) : _typeless(kj::mv(typeless)) {} inline ::capnp::PipelineFor getSealFor(); private: ::capnp::AnyPointer::Pipeline _typeless; friend class ::capnp::PipelineHook; template friend struct ::capnp::ToDynamic_; }; #endif // !CAPNP_LITE template class Persistent::SaveResults::Reader { public: typedef SaveResults Reads; Reader() = default; inline explicit Reader(::capnp::_::StructReader base): _reader(base) {} inline ::capnp::MessageSize totalSize() const { return _reader.totalSize().asPublic(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return ::capnp::_::structString(_reader, *_capnpPrivate::brand()); } #endif // !CAPNP_LITE template typename Persistent::SaveResults::Reader asPersistentGeneric() { return typename Persistent::SaveResults::Reader(_reader); } inline bool hasSturdyRef() const; inline ::capnp::ReaderFor getSturdyRef() const; private: ::capnp::_::StructReader _reader; template friend struct ::capnp::ToDynamic_; template friend struct ::capnp::_::PointerHelpers; template friend struct ::capnp::List; friend class ::capnp::MessageBuilder; friend class ::capnp::Orphanage; }; template class Persistent::SaveResults::Builder { public: typedef SaveResults Builds; Builder() = delete; // Deleted to discourage incorrect usage. // You can explicitly initialize to nullptr instead. inline Builder(decltype(nullptr)) {} inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {} inline operator Reader() const { return Reader(_builder.asReader()); } inline Reader asReader() const { return *this; } inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return asReader().toString(); } #endif // !CAPNP_LITE template typename Persistent::SaveResults::Builder asPersistentGeneric() { return typename Persistent::SaveResults::Builder(_builder); } inline bool hasSturdyRef(); inline ::capnp::BuilderFor getSturdyRef(); inline void setSturdyRef( ::capnp::ReaderFor value); inline ::capnp::BuilderFor initSturdyRef(); inline ::capnp::BuilderFor initSturdyRef(unsigned int size); inline void adoptSturdyRef(::capnp::Orphan&& value); inline ::capnp::Orphan disownSturdyRef(); private: ::capnp::_::StructBuilder _builder; template friend struct ::capnp::ToDynamic_; friend class ::capnp::Orphanage; template friend struct ::capnp::_::PointerHelpers; }; #if !CAPNP_LITE template class Persistent::SaveResults::Pipeline { public: typedef SaveResults Pipelines; inline Pipeline(decltype(nullptr)): _typeless(nullptr) {} inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) : _typeless(kj::mv(typeless)) {} inline ::capnp::PipelineFor getSturdyRef(); private: ::capnp::AnyPointer::Pipeline _typeless; friend class ::capnp::PipelineHook; template friend struct ::capnp::ToDynamic_; }; #endif // !CAPNP_LITE #if !CAPNP_LITE template class RealmGateway::Client : public virtual ::capnp::Capability::Client { public: typedef RealmGateway Calls; typedef RealmGateway Reads; Client(decltype(nullptr)); explicit Client(::kj::Own< ::capnp::ClientHook>&& hook); template ()>> Client(::kj::Own<_t>&& server); template ()>> Client(::kj::Promise<_t>&& promise); Client(::kj::Exception&& exception); Client(Client&) = default; Client(Client&&) = default; Client& operator=(Client& other); Client& operator=(Client&& other); template typename RealmGateway::Client asGeneric() { return castAs>(); } CAPNP_AUTO_IF_MSVC(::capnp::Request::ImportParams, typename ::capnp::Persistent::SaveResults>) importRequest( ::kj::Maybe< ::capnp::MessageSize> sizeHint = nullptr); CAPNP_AUTO_IF_MSVC(::capnp::Request::ExportParams, typename ::capnp::Persistent::SaveResults>) exportRequest( ::kj::Maybe< ::capnp::MessageSize> sizeHint = nullptr); protected: Client() = default; }; template class RealmGateway::Server : public virtual ::capnp::Capability::Server { public: typedef RealmGateway Serves; ::kj::Promise dispatchCall(uint64_t interfaceId, uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) override; protected: typedef typename ::capnp::RealmGateway::ImportParams ImportParams; typedef ::capnp::CallContext::SaveResults> ImportContext; virtual ::kj::Promise import(ImportContext context); typedef typename ::capnp::RealmGateway::ExportParams ExportParams; typedef ::capnp::CallContext::SaveResults> ExportContext; virtual ::kj::Promise export_(ExportContext context); inline typename ::capnp::RealmGateway::Client thisCap() { return ::capnp::Capability::Server::thisCap() .template castAs< ::capnp::RealmGateway>(); } ::kj::Promise dispatchCallInternal(uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context); }; #endif // !CAPNP_LITE template class RealmGateway::ImportParams::Reader { public: typedef ImportParams Reads; Reader() = default; inline explicit Reader(::capnp::_::StructReader base): _reader(base) {} inline ::capnp::MessageSize totalSize() const { return _reader.totalSize().asPublic(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return ::capnp::_::structString(_reader, *_capnpPrivate::brand()); } #endif // !CAPNP_LITE template typename RealmGateway::ImportParams::Reader asRealmGatewayGeneric() { return typename RealmGateway::ImportParams::Reader(_reader); } inline bool hasCap() const; #if !CAPNP_LITE inline typename ::capnp::Persistent::Client getCap() const; #endif // !CAPNP_LITE inline bool hasParams() const; inline typename ::capnp::Persistent::SaveParams::Reader getParams() const; private: ::capnp::_::StructReader _reader; template friend struct ::capnp::ToDynamic_; template friend struct ::capnp::_::PointerHelpers; template friend struct ::capnp::List; friend class ::capnp::MessageBuilder; friend class ::capnp::Orphanage; }; template class RealmGateway::ImportParams::Builder { public: typedef ImportParams Builds; Builder() = delete; // Deleted to discourage incorrect usage. // You can explicitly initialize to nullptr instead. inline Builder(decltype(nullptr)) {} inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {} inline operator Reader() const { return Reader(_builder.asReader()); } inline Reader asReader() const { return *this; } inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return asReader().toString(); } #endif // !CAPNP_LITE template typename RealmGateway::ImportParams::Builder asRealmGatewayGeneric() { return typename RealmGateway::ImportParams::Builder(_builder); } inline bool hasCap(); #if !CAPNP_LITE inline typename ::capnp::Persistent::Client getCap(); inline void setCap(typename ::capnp::Persistent::Client&& value); inline void setCap(typename ::capnp::Persistent::Client& value); inline void adoptCap(::capnp::Orphan< ::capnp::Persistent>&& value); inline ::capnp::Orphan< ::capnp::Persistent> disownCap(); #endif // !CAPNP_LITE inline bool hasParams(); inline typename ::capnp::Persistent::SaveParams::Builder getParams(); inline void setParams(typename ::capnp::Persistent::SaveParams::Reader value); inline typename ::capnp::Persistent::SaveParams::Builder initParams(); inline void adoptParams(::capnp::Orphan::SaveParams>&& value); inline ::capnp::Orphan::SaveParams> disownParams(); private: ::capnp::_::StructBuilder _builder; template friend struct ::capnp::ToDynamic_; friend class ::capnp::Orphanage; template friend struct ::capnp::_::PointerHelpers; }; #if !CAPNP_LITE template class RealmGateway::ImportParams::Pipeline { public: typedef ImportParams Pipelines; inline Pipeline(decltype(nullptr)): _typeless(nullptr) {} inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) : _typeless(kj::mv(typeless)) {} inline typename ::capnp::Persistent::Client getCap(); inline typename ::capnp::Persistent::SaveParams::Pipeline getParams(); private: ::capnp::AnyPointer::Pipeline _typeless; friend class ::capnp::PipelineHook; template friend struct ::capnp::ToDynamic_; }; #endif // !CAPNP_LITE template class RealmGateway::ExportParams::Reader { public: typedef ExportParams Reads; Reader() = default; inline explicit Reader(::capnp::_::StructReader base): _reader(base) {} inline ::capnp::MessageSize totalSize() const { return _reader.totalSize().asPublic(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return ::capnp::_::structString(_reader, *_capnpPrivate::brand()); } #endif // !CAPNP_LITE template typename RealmGateway::ExportParams::Reader asRealmGatewayGeneric() { return typename RealmGateway::ExportParams::Reader(_reader); } inline bool hasCap() const; #if !CAPNP_LITE inline typename ::capnp::Persistent::Client getCap() const; #endif // !CAPNP_LITE inline bool hasParams() const; inline typename ::capnp::Persistent::SaveParams::Reader getParams() const; private: ::capnp::_::StructReader _reader; template friend struct ::capnp::ToDynamic_; template friend struct ::capnp::_::PointerHelpers; template friend struct ::capnp::List; friend class ::capnp::MessageBuilder; friend class ::capnp::Orphanage; }; template class RealmGateway::ExportParams::Builder { public: typedef ExportParams Builds; Builder() = delete; // Deleted to discourage incorrect usage. // You can explicitly initialize to nullptr instead. inline Builder(decltype(nullptr)) {} inline explicit Builder(::capnp::_::StructBuilder base): _builder(base) {} inline operator Reader() const { return Reader(_builder.asReader()); } inline Reader asReader() const { return *this; } inline ::capnp::MessageSize totalSize() const { return asReader().totalSize(); } #if !CAPNP_LITE inline ::kj::StringTree toString() const { return asReader().toString(); } #endif // !CAPNP_LITE template typename RealmGateway::ExportParams::Builder asRealmGatewayGeneric() { return typename RealmGateway::ExportParams::Builder(_builder); } inline bool hasCap(); #if !CAPNP_LITE inline typename ::capnp::Persistent::Client getCap(); inline void setCap(typename ::capnp::Persistent::Client&& value); inline void setCap(typename ::capnp::Persistent::Client& value); inline void adoptCap(::capnp::Orphan< ::capnp::Persistent>&& value); inline ::capnp::Orphan< ::capnp::Persistent> disownCap(); #endif // !CAPNP_LITE inline bool hasParams(); inline typename ::capnp::Persistent::SaveParams::Builder getParams(); inline void setParams(typename ::capnp::Persistent::SaveParams::Reader value); inline typename ::capnp::Persistent::SaveParams::Builder initParams(); inline void adoptParams(::capnp::Orphan::SaveParams>&& value); inline ::capnp::Orphan::SaveParams> disownParams(); private: ::capnp::_::StructBuilder _builder; template friend struct ::capnp::ToDynamic_; friend class ::capnp::Orphanage; template friend struct ::capnp::_::PointerHelpers; }; #if !CAPNP_LITE template class RealmGateway::ExportParams::Pipeline { public: typedef ExportParams Pipelines; inline Pipeline(decltype(nullptr)): _typeless(nullptr) {} inline explicit Pipeline(::capnp::AnyPointer::Pipeline&& typeless) : _typeless(kj::mv(typeless)) {} inline typename ::capnp::Persistent::Client getCap(); inline typename ::capnp::Persistent::SaveParams::Pipeline getParams(); private: ::capnp::AnyPointer::Pipeline _typeless; friend class ::capnp::PipelineHook; template friend struct ::capnp::ToDynamic_; }; #endif // !CAPNP_LITE // ======================================================================================= #if !CAPNP_LITE template inline Persistent::Client::Client(decltype(nullptr)) : ::capnp::Capability::Client(nullptr) {} template inline Persistent::Client::Client( ::kj::Own< ::capnp::ClientHook>&& hook) : ::capnp::Capability::Client(::kj::mv(hook)) {} template template inline Persistent::Client::Client(::kj::Own<_t>&& server) : ::capnp::Capability::Client(::kj::mv(server)) {} template template inline Persistent::Client::Client(::kj::Promise<_t>&& promise) : ::capnp::Capability::Client(::kj::mv(promise)) {} template inline Persistent::Client::Client(::kj::Exception&& exception) : ::capnp::Capability::Client(::kj::mv(exception)) {} template inline typename ::capnp::Persistent::Client& Persistent::Client::operator=(Client& other) { ::capnp::Capability::Client::operator=(other); return *this; } template inline typename ::capnp::Persistent::Client& Persistent::Client::operator=(Client&& other) { ::capnp::Capability::Client::operator=(kj::mv(other)); return *this; } #endif // !CAPNP_LITE template inline bool Persistent::SaveParams::Reader::hasSealFor() const { return !_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } template inline bool Persistent::SaveParams::Builder::hasSealFor() { return !_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } template inline ::capnp::ReaderFor Persistent::SaveParams::Reader::getSealFor() const { return ::capnp::_::PointerHelpers::get(_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline ::capnp::BuilderFor Persistent::SaveParams::Builder::getSealFor() { return ::capnp::_::PointerHelpers::get(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } #if !CAPNP_LITE template inline ::capnp::PipelineFor Persistent::SaveParams::Pipeline::getSealFor() { return ::capnp::PipelineFor(_typeless.getPointerField(0)); } #endif // !CAPNP_LITE template inline void Persistent::SaveParams::Builder::setSealFor( ::capnp::ReaderFor value) { ::capnp::_::PointerHelpers::set(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), value); } template inline ::capnp::BuilderFor Persistent::SaveParams::Builder::initSealFor() { return ::capnp::_::PointerHelpers::init(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline ::capnp::BuilderFor Persistent::SaveParams::Builder::initSealFor(unsigned int size) { return ::capnp::_::PointerHelpers::init(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), size); } template inline void Persistent::SaveParams::Builder::adoptSealFor( ::capnp::Orphan&& value) { ::capnp::_::PointerHelpers::adopt(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); } template inline ::capnp::Orphan Persistent::SaveParams::Builder::disownSealFor() { return ::capnp::_::PointerHelpers::disown(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } // Persistent::SaveParams template constexpr uint16_t Persistent::SaveParams::_capnpPrivate::dataWordSize; template constexpr uint16_t Persistent::SaveParams::_capnpPrivate::pointerCount; #if !CAPNP_LITE template constexpr ::capnp::Kind Persistent::SaveParams::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* Persistent::SaveParams::_capnpPrivate::schema; template const ::capnp::_::RawBrandedSchema::Scope Persistent::SaveParams::_capnpPrivate::brandScopes[] = { { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, }; template const ::capnp::_::RawBrandedSchema::Binding Persistent::SaveParams::_capnpPrivate::brandBindings[] = { ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), }; template const ::capnp::_::RawBrandedSchema Persistent::SaveParams::_capnpPrivate::specificBrand = { &::capnp::schemas::s_f76fba59183073a5, brandScopes, nullptr, 1, 0, nullptr }; #endif // !CAPNP_LITE template inline bool Persistent::SaveResults::Reader::hasSturdyRef() const { return !_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } template inline bool Persistent::SaveResults::Builder::hasSturdyRef() { return !_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } template inline ::capnp::ReaderFor Persistent::SaveResults::Reader::getSturdyRef() const { return ::capnp::_::PointerHelpers::get(_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline ::capnp::BuilderFor Persistent::SaveResults::Builder::getSturdyRef() { return ::capnp::_::PointerHelpers::get(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } #if !CAPNP_LITE template inline ::capnp::PipelineFor Persistent::SaveResults::Pipeline::getSturdyRef() { return ::capnp::PipelineFor(_typeless.getPointerField(0)); } #endif // !CAPNP_LITE template inline void Persistent::SaveResults::Builder::setSturdyRef( ::capnp::ReaderFor value) { ::capnp::_::PointerHelpers::set(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), value); } template inline ::capnp::BuilderFor Persistent::SaveResults::Builder::initSturdyRef() { return ::capnp::_::PointerHelpers::init(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline ::capnp::BuilderFor Persistent::SaveResults::Builder::initSturdyRef(unsigned int size) { return ::capnp::_::PointerHelpers::init(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), size); } template inline void Persistent::SaveResults::Builder::adoptSturdyRef( ::capnp::Orphan&& value) { ::capnp::_::PointerHelpers::adopt(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); } template inline ::capnp::Orphan Persistent::SaveResults::Builder::disownSturdyRef() { return ::capnp::_::PointerHelpers::disown(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } // Persistent::SaveResults template constexpr uint16_t Persistent::SaveResults::_capnpPrivate::dataWordSize; template constexpr uint16_t Persistent::SaveResults::_capnpPrivate::pointerCount; #if !CAPNP_LITE template constexpr ::capnp::Kind Persistent::SaveResults::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* Persistent::SaveResults::_capnpPrivate::schema; template const ::capnp::_::RawBrandedSchema::Scope Persistent::SaveResults::_capnpPrivate::brandScopes[] = { { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, }; template const ::capnp::_::RawBrandedSchema::Binding Persistent::SaveResults::_capnpPrivate::brandBindings[] = { ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), }; template const ::capnp::_::RawBrandedSchema Persistent::SaveResults::_capnpPrivate::specificBrand = { &::capnp::schemas::s_b76848c18c40efbf, brandScopes, nullptr, 1, 0, nullptr }; #endif // !CAPNP_LITE #if !CAPNP_LITE template CAPNP_AUTO_IF_MSVC(::capnp::Request::SaveParams, typename ::capnp::Persistent::SaveResults>) Persistent::Client::saveRequest(::kj::Maybe< ::capnp::MessageSize> sizeHint) { return newCall::SaveParams, typename ::capnp::Persistent::SaveResults>( 0xc8cb212fcd9f5691ull, 0, sizeHint); } template ::kj::Promise Persistent::Server::save(SaveContext) { return ::capnp::Capability::Server::internalUnimplemented( "capnp/persistent.capnp:Persistent", "save", 0xc8cb212fcd9f5691ull, 0); } template ::kj::Promise Persistent::Server::dispatchCall( uint64_t interfaceId, uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) { switch (interfaceId) { case 0xc8cb212fcd9f5691ull: return dispatchCallInternal(methodId, context); default: return internalUnimplemented("capnp/persistent.capnp:Persistent", interfaceId); } } template ::kj::Promise Persistent::Server::dispatchCallInternal( uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) { switch (methodId) { case 0: return save(::capnp::Capability::Server::internalGetTypedContext< typename ::capnp::Persistent::SaveParams, typename ::capnp::Persistent::SaveResults>(context)); default: (void)context; return ::capnp::Capability::Server::internalUnimplemented( "capnp/persistent.capnp:Persistent", 0xc8cb212fcd9f5691ull, methodId); } } #endif // !CAPNP_LITE // Persistent #if !CAPNP_LITE template constexpr ::capnp::Kind Persistent::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* Persistent::_capnpPrivate::schema; template const ::capnp::_::RawBrandedSchema::Scope Persistent::_capnpPrivate::brandScopes[] = { { 0xc8cb212fcd9f5691, brandBindings + 0, 2, false}, }; template const ::capnp::_::RawBrandedSchema::Binding Persistent::_capnpPrivate::brandBindings[] = { ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), }; template const ::capnp::_::RawBrandedSchema::Dependency Persistent::_capnpPrivate::brandDependencies[] = { { 33554432, ::capnp::Persistent::SaveParams::_capnpPrivate::brand() }, { 50331648, ::capnp::Persistent::SaveResults::_capnpPrivate::brand() }, }; template const ::capnp::_::RawBrandedSchema Persistent::_capnpPrivate::specificBrand = { &::capnp::schemas::s_c8cb212fcd9f5691, brandScopes, brandDependencies, 1, 2, nullptr }; #endif // !CAPNP_LITE #if !CAPNP_LITE template inline RealmGateway::Client::Client(decltype(nullptr)) : ::capnp::Capability::Client(nullptr) {} template inline RealmGateway::Client::Client( ::kj::Own< ::capnp::ClientHook>&& hook) : ::capnp::Capability::Client(::kj::mv(hook)) {} template template inline RealmGateway::Client::Client(::kj::Own<_t>&& server) : ::capnp::Capability::Client(::kj::mv(server)) {} template template inline RealmGateway::Client::Client(::kj::Promise<_t>&& promise) : ::capnp::Capability::Client(::kj::mv(promise)) {} template inline RealmGateway::Client::Client(::kj::Exception&& exception) : ::capnp::Capability::Client(::kj::mv(exception)) {} template inline typename ::capnp::RealmGateway::Client& RealmGateway::Client::operator=(Client& other) { ::capnp::Capability::Client::operator=(other); return *this; } template inline typename ::capnp::RealmGateway::Client& RealmGateway::Client::operator=(Client&& other) { ::capnp::Capability::Client::operator=(kj::mv(other)); return *this; } #endif // !CAPNP_LITE template inline bool RealmGateway::ImportParams::Reader::hasCap() const { return !_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } template inline bool RealmGateway::ImportParams::Builder::hasCap() { return !_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } #if !CAPNP_LITE template inline typename ::capnp::Persistent::Client RealmGateway::ImportParams::Reader::getCap() const { return ::capnp::_::PointerHelpers< ::capnp::Persistent>::get(_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline typename ::capnp::Persistent::Client RealmGateway::ImportParams::Builder::getCap() { return ::capnp::_::PointerHelpers< ::capnp::Persistent>::get(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline typename ::capnp::Persistent::Client RealmGateway::ImportParams::Pipeline::getCap() { return typename ::capnp::Persistent::Client(_typeless.getPointerField(0).asCap()); } template inline void RealmGateway::ImportParams::Builder::setCap(typename ::capnp::Persistent::Client&& cap) { ::capnp::_::PointerHelpers< ::capnp::Persistent>::set(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(cap)); } template inline void RealmGateway::ImportParams::Builder::setCap(typename ::capnp::Persistent::Client& cap) { ::capnp::_::PointerHelpers< ::capnp::Persistent>::set(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), cap); } template inline void RealmGateway::ImportParams::Builder::adoptCap( ::capnp::Orphan< ::capnp::Persistent>&& value) { ::capnp::_::PointerHelpers< ::capnp::Persistent>::adopt(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); } template inline ::capnp::Orphan< ::capnp::Persistent> RealmGateway::ImportParams::Builder::disownCap() { return ::capnp::_::PointerHelpers< ::capnp::Persistent>::disown(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } #endif // !CAPNP_LITE template inline bool RealmGateway::ImportParams::Reader::hasParams() const { return !_reader.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS).isNull(); } template inline bool RealmGateway::ImportParams::Builder::hasParams() { return !_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS).isNull(); } template inline typename ::capnp::Persistent::SaveParams::Reader RealmGateway::ImportParams::Reader::getParams() const { return ::capnp::_::PointerHelpers::SaveParams>::get(_reader.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } template inline typename ::capnp::Persistent::SaveParams::Builder RealmGateway::ImportParams::Builder::getParams() { return ::capnp::_::PointerHelpers::SaveParams>::get(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } #if !CAPNP_LITE template inline typename ::capnp::Persistent::SaveParams::Pipeline RealmGateway::ImportParams::Pipeline::getParams() { return typename ::capnp::Persistent::SaveParams::Pipeline(_typeless.getPointerField(1)); } #endif // !CAPNP_LITE template inline void RealmGateway::ImportParams::Builder::setParams(typename ::capnp::Persistent::SaveParams::Reader value) { ::capnp::_::PointerHelpers::SaveParams>::set(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS), value); } template inline typename ::capnp::Persistent::SaveParams::Builder RealmGateway::ImportParams::Builder::initParams() { return ::capnp::_::PointerHelpers::SaveParams>::init(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } template inline void RealmGateway::ImportParams::Builder::adoptParams( ::capnp::Orphan::SaveParams>&& value) { ::capnp::_::PointerHelpers::SaveParams>::adopt(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value)); } template inline ::capnp::Orphan::SaveParams> RealmGateway::ImportParams::Builder::disownParams() { return ::capnp::_::PointerHelpers::SaveParams>::disown(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } // RealmGateway::ImportParams template constexpr uint16_t RealmGateway::ImportParams::_capnpPrivate::dataWordSize; template constexpr uint16_t RealmGateway::ImportParams::_capnpPrivate::pointerCount; #if !CAPNP_LITE template constexpr ::capnp::Kind RealmGateway::ImportParams::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* RealmGateway::ImportParams::_capnpPrivate::schema; template const ::capnp::_::RawBrandedSchema::Scope RealmGateway::ImportParams::_capnpPrivate::brandScopes[] = { { 0x84ff286cd00a3ed4, brandBindings + 0, 4, false}, }; template const ::capnp::_::RawBrandedSchema::Binding RealmGateway::ImportParams::_capnpPrivate::brandBindings[] = { ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), }; template const ::capnp::_::RawBrandedSchema::Dependency RealmGateway::ImportParams::_capnpPrivate::brandDependencies[] = { { 16777216, ::capnp::Persistent::_capnpPrivate::brand() }, { 16777217, ::capnp::Persistent::SaveParams::_capnpPrivate::brand() }, }; template const ::capnp::_::RawBrandedSchema RealmGateway::ImportParams::_capnpPrivate::specificBrand = { &::capnp::schemas::s_f0c2cc1d3909574d, brandScopes, brandDependencies, 1, 2, nullptr }; #endif // !CAPNP_LITE template inline bool RealmGateway::ExportParams::Reader::hasCap() const { return !_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } template inline bool RealmGateway::ExportParams::Builder::hasCap() { return !_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS).isNull(); } #if !CAPNP_LITE template inline typename ::capnp::Persistent::Client RealmGateway::ExportParams::Reader::getCap() const { return ::capnp::_::PointerHelpers< ::capnp::Persistent>::get(_reader.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline typename ::capnp::Persistent::Client RealmGateway::ExportParams::Builder::getCap() { return ::capnp::_::PointerHelpers< ::capnp::Persistent>::get(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } template inline typename ::capnp::Persistent::Client RealmGateway::ExportParams::Pipeline::getCap() { return typename ::capnp::Persistent::Client(_typeless.getPointerField(0).asCap()); } template inline void RealmGateway::ExportParams::Builder::setCap(typename ::capnp::Persistent::Client&& cap) { ::capnp::_::PointerHelpers< ::capnp::Persistent>::set(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(cap)); } template inline void RealmGateway::ExportParams::Builder::setCap(typename ::capnp::Persistent::Client& cap) { ::capnp::_::PointerHelpers< ::capnp::Persistent>::set(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), cap); } template inline void RealmGateway::ExportParams::Builder::adoptCap( ::capnp::Orphan< ::capnp::Persistent>&& value) { ::capnp::_::PointerHelpers< ::capnp::Persistent>::adopt(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS), kj::mv(value)); } template inline ::capnp::Orphan< ::capnp::Persistent> RealmGateway::ExportParams::Builder::disownCap() { return ::capnp::_::PointerHelpers< ::capnp::Persistent>::disown(_builder.getPointerField( ::capnp::bounded<0>() * ::capnp::POINTERS)); } #endif // !CAPNP_LITE template inline bool RealmGateway::ExportParams::Reader::hasParams() const { return !_reader.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS).isNull(); } template inline bool RealmGateway::ExportParams::Builder::hasParams() { return !_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS).isNull(); } template inline typename ::capnp::Persistent::SaveParams::Reader RealmGateway::ExportParams::Reader::getParams() const { return ::capnp::_::PointerHelpers::SaveParams>::get(_reader.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } template inline typename ::capnp::Persistent::SaveParams::Builder RealmGateway::ExportParams::Builder::getParams() { return ::capnp::_::PointerHelpers::SaveParams>::get(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } #if !CAPNP_LITE template inline typename ::capnp::Persistent::SaveParams::Pipeline RealmGateway::ExportParams::Pipeline::getParams() { return typename ::capnp::Persistent::SaveParams::Pipeline(_typeless.getPointerField(1)); } #endif // !CAPNP_LITE template inline void RealmGateway::ExportParams::Builder::setParams(typename ::capnp::Persistent::SaveParams::Reader value) { ::capnp::_::PointerHelpers::SaveParams>::set(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS), value); } template inline typename ::capnp::Persistent::SaveParams::Builder RealmGateway::ExportParams::Builder::initParams() { return ::capnp::_::PointerHelpers::SaveParams>::init(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } template inline void RealmGateway::ExportParams::Builder::adoptParams( ::capnp::Orphan::SaveParams>&& value) { ::capnp::_::PointerHelpers::SaveParams>::adopt(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS), kj::mv(value)); } template inline ::capnp::Orphan::SaveParams> RealmGateway::ExportParams::Builder::disownParams() { return ::capnp::_::PointerHelpers::SaveParams>::disown(_builder.getPointerField( ::capnp::bounded<1>() * ::capnp::POINTERS)); } // RealmGateway::ExportParams template constexpr uint16_t RealmGateway::ExportParams::_capnpPrivate::dataWordSize; template constexpr uint16_t RealmGateway::ExportParams::_capnpPrivate::pointerCount; #if !CAPNP_LITE template constexpr ::capnp::Kind RealmGateway::ExportParams::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* RealmGateway::ExportParams::_capnpPrivate::schema; template const ::capnp::_::RawBrandedSchema::Scope RealmGateway::ExportParams::_capnpPrivate::brandScopes[] = { { 0x84ff286cd00a3ed4, brandBindings + 0, 4, false}, }; template const ::capnp::_::RawBrandedSchema::Binding RealmGateway::ExportParams::_capnpPrivate::brandBindings[] = { ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), }; template const ::capnp::_::RawBrandedSchema::Dependency RealmGateway::ExportParams::_capnpPrivate::brandDependencies[] = { { 16777216, ::capnp::Persistent::_capnpPrivate::brand() }, { 16777217, ::capnp::Persistent::SaveParams::_capnpPrivate::brand() }, }; template const ::capnp::_::RawBrandedSchema RealmGateway::ExportParams::_capnpPrivate::specificBrand = { &::capnp::schemas::s_ecafa18b482da3aa, brandScopes, brandDependencies, 1, 2, nullptr }; #endif // !CAPNP_LITE #if !CAPNP_LITE template CAPNP_AUTO_IF_MSVC(::capnp::Request::ImportParams, typename ::capnp::Persistent::SaveResults>) RealmGateway::Client::importRequest(::kj::Maybe< ::capnp::MessageSize> sizeHint) { return newCall::ImportParams, typename ::capnp::Persistent::SaveResults>( 0x84ff286cd00a3ed4ull, 0, sizeHint); } template ::kj::Promise RealmGateway::Server::import(ImportContext) { return ::capnp::Capability::Server::internalUnimplemented( "capnp/persistent.capnp:RealmGateway", "import", 0x84ff286cd00a3ed4ull, 0); } template CAPNP_AUTO_IF_MSVC(::capnp::Request::ExportParams, typename ::capnp::Persistent::SaveResults>) RealmGateway::Client::exportRequest(::kj::Maybe< ::capnp::MessageSize> sizeHint) { return newCall::ExportParams, typename ::capnp::Persistent::SaveResults>( 0x84ff286cd00a3ed4ull, 1, sizeHint); } template ::kj::Promise RealmGateway::Server::export_(ExportContext) { return ::capnp::Capability::Server::internalUnimplemented( "capnp/persistent.capnp:RealmGateway", "export", 0x84ff286cd00a3ed4ull, 1); } template ::kj::Promise RealmGateway::Server::dispatchCall( uint64_t interfaceId, uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) { switch (interfaceId) { case 0x84ff286cd00a3ed4ull: return dispatchCallInternal(methodId, context); default: return internalUnimplemented("capnp/persistent.capnp:RealmGateway", interfaceId); } } template ::kj::Promise RealmGateway::Server::dispatchCallInternal( uint16_t methodId, ::capnp::CallContext< ::capnp::AnyPointer, ::capnp::AnyPointer> context) { switch (methodId) { case 0: return import(::capnp::Capability::Server::internalGetTypedContext< typename ::capnp::RealmGateway::ImportParams, typename ::capnp::Persistent::SaveResults>(context)); case 1: return export_(::capnp::Capability::Server::internalGetTypedContext< typename ::capnp::RealmGateway::ExportParams, typename ::capnp::Persistent::SaveResults>(context)); default: (void)context; return ::capnp::Capability::Server::internalUnimplemented( "capnp/persistent.capnp:RealmGateway", 0x84ff286cd00a3ed4ull, methodId); } } #endif // !CAPNP_LITE // RealmGateway #if !CAPNP_LITE template constexpr ::capnp::Kind RealmGateway::_capnpPrivate::kind; template constexpr ::capnp::_::RawSchema const* RealmGateway::_capnpPrivate::schema; template const ::capnp::_::RawBrandedSchema::Scope RealmGateway::_capnpPrivate::brandScopes[] = { { 0x84ff286cd00a3ed4, brandBindings + 0, 4, false}, }; template const ::capnp::_::RawBrandedSchema::Binding RealmGateway::_capnpPrivate::brandBindings[] = { ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), ::capnp::_::brandBindingFor(), }; template const ::capnp::_::RawBrandedSchema::Dependency RealmGateway::_capnpPrivate::brandDependencies[] = { { 33554432, ::capnp::RealmGateway::ImportParams::_capnpPrivate::brand() }, { 33554433, ::capnp::RealmGateway::ExportParams::_capnpPrivate::brand() }, { 50331648, ::capnp::Persistent::SaveResults::_capnpPrivate::brand() }, { 50331649, ::capnp::Persistent::SaveResults::_capnpPrivate::brand() }, }; template const ::capnp::_::RawBrandedSchema RealmGateway::_capnpPrivate::specificBrand = { &::capnp::schemas::s_84ff286cd00a3ed4, brandScopes, brandDependencies, 1, 4, nullptr }; #endif // !CAPNP_LITE } // namespace #endif // CAPNP_INCLUDED_b8630836983feed7_