[{"data":1,"prerenderedAt":3157},["ShallowReactive",2],{"navigation-docsEN":3,"docs-EN-/docs/platform-overview/feature-matrix":483,"docsNav-EN-/docs":1861,"docsSecNav-EN-/docs/platform-overview/feature-matrix":2000},[4],{"title":5,"path":6,"stem":7,"children":8},"Docs","/docs","docs",[9,21,39,51,72,86,112,126,153,164,179,203,391,467],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":14},"Documentation","docs/index","Introduction to documentation on EPCIS and OpenEPCIS tools","heroicons-outline:document-text",[15,16,17,18,19,20],"openepcis","epcis-2-0","epcis-documentation","epcis-standard","open-source","epcis-tools",{"title":22,"path":23,"stem":24,"children":25,"description":27,"icon":28,"tags":38},"Introduction","/docs/introduction","docs/01.introduction/index",[26],{"title":22,"path":23,"stem":24,"description":27,"icon":28,"tags":29},"Why EPCIS is necessary and how it can help organizations of all sizes and types.","heroicons-outline:globe-alt",[16,30,31,32,33,34,35,36,37],"epcis","epcis-1-2","gs1-epcis-standard","supply-chain","traceability","data-sharing","tracking","tracing",[16,30,31,32,33,34,35,36,37],{"title":40,"path":41,"stem":42,"children":43,"description":45,"icon":46,"tags":50},"EPCIS","/docs/epcis","docs/02.epcis/index",[44],{"title":40,"path":41,"stem":42,"description":45,"icon":46,"tags":47},"Discover the specifics of EPCIS, how it works, and what OpenEPCIS is.","i-custom-open-epcis",[16,30,31,32,48,49],"iso-iec-19987","iso-iec-19988",[16,30,31,32,48,49],{"title":52,"path":53,"stem":54,"children":55,"description":57,"icon":58,"tags":71},"Format Converter","/docs/format-converter","docs/03.format-converter/index",[56],{"title":52,"path":53,"stem":54,"description":57,"icon":58,"tags":59},"OpenEPCIS solution to convert EPCIS 2.0 and 1.2 document or single event from XML to JSON/JSON-LD and vice versa.","heroicons-outline:arrows-right-left",[16,60,61,62,63,64,65,20,66,67,68,69,70],"json","json-ld","xml","events","format-converter","convert","convert-epcis-events","format","converter","epcis-tool","tools",[16,60,61,62,63,64,65,20,66,67,68,69,70],{"title":73,"path":74,"stem":75,"children":76,"description":78,"icon":79,"tags":85},"Version Converter","/docs/version-converter","docs/04.version-converter/index",[77],{"title":73,"path":74,"stem":75,"description":78,"icon":79,"tags":80},"OpenEPCIS solution to convert EPCIS XML document from version 1.2 to 2.0 and vice versa.","heroicons:arrows-up-down",[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],"version-converter","convert-epcis-version","version","epcis-version",[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],{"title":87,"path":88,"stem":89,"children":90,"description":92,"icon":93,"tags":111},"Identifier Converter","/docs/identifier-converter","docs/05.identifier-converter/index",[91],{"title":87,"path":88,"stem":89,"description":92,"icon":93,"tags":94},"OpenEPCIS solution to convert EPCIS instance or class identifier from URN to digital link WebURI and vice versa.","i-heroicons-link",[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],"gs1-digital-link","urn-format","epc-uri","epc","weburi","gs1-standard","gs1","sscc","gtin","giai","grai","gdti","lgtin","sgtin","gln","gcp",[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],{"title":113,"path":114,"stem":115,"children":116,"description":118,"icon":119,"tags":125},"Event Hash Generator","/docs/event-hash-generator","docs/06.event-hash-generator/index",[117],{"title":113,"path":114,"stem":115,"description":118,"icon":119,"tags":120},"OpenEPCIS solution to generate unique event hash for EPCIS XML or JSON/JSON-LD document or event list.","heroicons-outline:finger-print",[16,121,60,61,62,63,20,122,123,124,69,70],"event-hash","event","hash","generator",[16,121,60,61,62,63,20,122,123,124,69,70],{"title":127,"path":128,"stem":129,"children":130,"description":132,"icon":133,"tags":152},"Test Data Generator","/docs/test-data-generator","docs/07.test-data-generator/index",[131,135],{"title":127,"path":128,"stem":129,"description":132,"icon":133,"tags":134},"OpenEPCIS solution to generate a large set of EPCIS test data events for all use cases/supply chain requirements.","heroicons-outline:cog",[16,121,60,61,62,63,20,122,123,124,69,70],{"title":136,"path":137,"stem":138,"children":139,"description":132,"icon":141,"tags":151},"EPCIS Implementation Guidelines","/docs/test-data-generator/gs1-epcis-implementation-guidelines","docs/07.test-data-generator/01.gs1-epcis-implementation-guidelines/index",[140],{"title":136,"path":137,"stem":138,"description":132,"icon":141,"tags":142},"heroicons-outline:badge-check",[16,60,61,143,20,144,145,146,34,147,148,149,150],"testing","test-data-generator","design","design-template","process-automation","compliance","supply-chain-management","load-tests",[16,60,61,143,20,144,145,146,34,147,148,149,150],[16,121,60,61,62,63,20,122,123,124,69,70],{"title":154,"path":155,"stem":156,"children":157,"description":159,"icon":160,"tags":163},"Test Resource Management","/docs/test-resource-management","docs/08.test-resource-management/index",[158],{"title":154,"path":155,"stem":156,"description":159,"icon":160,"tags":161},"Collection of EPCIS 1.2/2.0 documents/events in XML/JSON/JSON-LD formats, intended for various testing purposes","heroicons-outline:archive-box",[16,60,61,143,20,162,34,147,148,149,150],"performance-tests",[16,60,61,143,20,162,34,147,148,149,150],{"title":165,"path":166,"stem":167,"children":168,"description":170,"icon":171,"tags":178},"Vocabulary Management","/docs/vocabulary-management","docs/09.vocabulary-management/index",[169],{"title":165,"path":166,"stem":167,"description":170,"icon":171,"tags":172},"Collection of standardized constants and strings for EPCIS event data.","heroicons-outline:book-open",[16,173,15,174,20,175,34,176,148,149,177],"constants","centralization","standardization","vocabulary","data-dictionary",[16,173,15,174,20,175,34,176,148,149,177],{"title":180,"path":181,"stem":182,"children":183,"description":185,"icon":186,"tags":202},"Dependency Management","/docs/dependency-management","docs/10.dependency-management/index",[184],{"title":180,"path":181,"stem":182,"description":185,"icon":186,"tags":187},"Centralized Maven Bill of Materials (BOM) for all the OpenEPCIS modules.","heroicons-outline:folder",[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],"maven-bom","dependency-management","java-dependencies","pom","software-dependencies","version-control","open-source-java","build-management","modular-software","dependency-resolution","java-libraries","maven-project","centralized-dependencies","dependency-consistency",[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],{"title":204,"path":205,"stem":206,"children":207,"description":209,"icon":210,"tags":390},"Digital Product Passport","/docs/digital-product-passport","docs/11.digital-product-passport/index",[208,217,229,261,295,322,336,345,353,363],{"title":204,"path":205,"stem":206,"description":209,"icon":210,"tags":211},"Introduction to Digital Product Passport and how EPCIS enables product traceability for DPP compliance.","heroicons-outline:identification",[212,213,214,30,215,34,216],"digital-product-passport","dpp","eu-regulation","sustainability","circular-economy",{"title":218,"path":219,"stem":220,"children":221,"description":223,"icon":224,"tags":228},"ESPR Framework","/docs/digital-product-passport/espr-framework","docs/11.digital-product-passport/00.espr-framework/index",[222],{"title":218,"path":219,"stem":220,"description":223,"icon":224,"tags":225},"Guide to the EU Ecodesign for Sustainable Products Regulation (ESPR) 2024/1781 and how OpenEPCIS supports Digital Product Passport requirements.","heroicons-outline:shield-check",[226,227,215,213,214],"espr","ecodesign",[226,227,215,213,214],{"title":230,"path":231,"stem":232,"children":233,"description":235,"icon":236,"tags":260},"Battery DPP","/docs/digital-product-passport/battery-dpp","docs/11.digital-product-passport/01.battery-dpp/index",[234,240,245,251],{"title":230,"path":231,"stem":232,"description":235,"icon":236,"tags":237},"GS1-native implementation of EU Battery Regulation 2023/1542 Digital Product Passport using EPCIS 2.0","heroicons:battery-100",[238,239,213,30,101,34,215],"battery","eu-battery-regulation",{"title":241,"path":242,"stem":243,"description":244,"icon":171},"Implementation Guide","/docs/digital-product-passport/battery-dpp/implementation-guide","docs/11.digital-product-passport/01.battery-dpp/01.implementation-guide","Step-by-step guide for implementing a GS1-native Battery Digital Product Passport with OpenEPCIS extensions",{"title":246,"path":247,"stem":248,"description":249,"icon":250},"Event Types","/docs/digital-product-passport/battery-dpp/event-types","docs/11.digital-product-passport/01.battery-dpp/02.event-types","Complete reference for all EPCIS event types and sensor measurements in the Battery DPP","heroicons-outline:collection",{"title":252,"path":253,"stem":254,"description":255,"icon":13,"tags":256},"Complete Examples","/docs/digital-product-passport/battery-dpp/complete-examples","docs/11.digital-product-passport/01.battery-dpp/05.complete-examples","Reference Battery Digital Product Passport examples mapped to EU Battery Regulation 2023/1542 Annex XIII",[238,257,258,61,259],"examples","annex-xiii","carbon-footprint",[238,239,213,30,101,34,215],{"title":262,"path":263,"stem":264,"children":265,"description":267,"icon":268,"tags":294},"EUDR","/docs/digital-product-passport/eudr","docs/11.digital-product-passport/02.eudr/index",[266,273,278,282,287],{"title":262,"path":263,"stem":264,"description":267,"icon":268,"tags":269},"GS1-native implementation of EU Deforestation Regulation 2023/1115 compliance using EPCIS 2.0","heroicons-outline:globe-europe-africa",[270,271,272,213,30,101,34,215],"eudr","deforestation","timber",{"title":241,"path":274,"stem":275,"description":276,"icon":277},"/docs/digital-product-passport/eudr/implementation-guide","docs/11.digital-product-passport/02.eudr/01.implementation-guide","Step-by-step guide for implementing EU Deforestation Regulation compliance using GS1 standards",null,{"title":246,"path":279,"stem":280,"description":281,"icon":277},"/docs/digital-product-passport/eudr/event-types","docs/11.digital-product-passport/02.eudr/02.event-types","EPCIS event types for EU Deforestation Regulation compliance",{"title":283,"path":284,"stem":285,"description":286,"icon":277},"URL Patterns","/docs/digital-product-passport/eudr/url-patterns","docs/11.digital-product-passport/02.eudr/03.url-patterns","GS1 Digital Link URL patterns for EUDR implementations",{"title":252,"path":288,"stem":289,"description":290,"icon":13,"tags":291},"/docs/digital-product-passport/eudr/complete-examples","docs/11.digital-product-passport/02.eudr/04.complete-examples","Reference EUDR examples — timber product passport, derived product, regulatory notification, harvesting / origin-declaration / processing / supply-chain-transfer / exemption events",[270,257,272,292,293],"due-diligence","geolocation",[270,271,272,213,30,101,34,215],{"title":296,"path":297,"stem":298,"children":299,"description":301,"icon":302,"tags":321},"Textile DPP","/docs/digital-product-passport/textile","docs/11.digital-product-passport/03.textile/index",[300,308,315],{"title":296,"path":297,"stem":298,"description":301,"icon":302,"tags":303},"Digital Product Passport vocabulary for textiles and apparel under the EU Sustainable Textiles Strategy and ESPR 2024/1781.","heroicons-outline:sparkles",[304,305,306,213,215,307],"textile","apparel","footwear","fibre-composition",{"title":241,"path":309,"stem":310,"description":311,"icon":312,"tags":313},"/docs/digital-product-passport/textile/implementation-guide","docs/11.digital-product-passport/03.textile/01.implementation-guide","How to assemble a Textile Digital Product Passport against the published openepcis-dpp-ready textile vocabulary","heroicons-outline:scissors",[304,305,306,314],"implementation",{"title":252,"path":316,"stem":317,"description":318,"icon":13,"tags":319},"/docs/digital-product-passport/textile/complete-examples","docs/11.digital-product-passport/03.textile/02.complete-examples","Reference Textile Digital Product Passport documents covering apparel and footwear",[304,257,305,306,320,61],"fiber-composition",[304,305,306,213,215,307],{"title":323,"path":324,"stem":325,"children":326,"description":328,"icon":58,"tags":335},"Interoperability","/docs/digital-product-passport/interoperability","docs/11.digital-product-passport/04.interoperability/index",[327],{"title":323,"path":324,"stem":325,"description":328,"icon":58,"tags":329},"Guide to OpenEPCIS DPP interoperability with GS1, UNTP, CIRPASS2, and ESPR standards.",[330,331,101,332,226,333,334],"interoperability","untp","cirpass2","standards","alignment",[330,331,101,332,226,333,334],{"title":337,"path":338,"stem":339,"description":340,"icon":28,"tags":341},"DPP Resolution Flow","/docs/digital-product-passport/dpp-resolution-flow","docs/11.digital-product-passport/05.dpp-resolution-flow","How OpenEPCIS combined GS1 Digital Link, the IETF linkset format and content negotiation into one DPP resolution flow",[342,95,343,344],"walkthrough","linkset","content-negotiation",{"title":346,"path":347,"stem":348,"description":349,"icon":350,"tags":351},"Resolver Setup","/docs/digital-product-passport/resolver-setup","docs/11.digital-product-passport/06.resolver-setup","How to expose your DPP behind a GS1 Digital Link resolver","heroicons-outline:server",[352,95,343],"resolver",{"title":354,"path":355,"stem":356,"description":357,"icon":358,"tags":359},"Multi-Component Example","/docs/digital-product-passport/multi-component-example","docs/11.digital-product-passport/07.multi-component-example","How a composite product references separately-passported components via standard GS1 Digital Link and EPCIS aggregation","heroicons-outline:puzzle-piece",[360,361,362,332],"example","components","aggregation",{"title":364,"path":365,"stem":366,"children":367,"description":369,"icon":370,"tags":389},"Electronics DPP","/docs/digital-product-passport/electronics","docs/11.digital-product-passport/08.electronics/index",[368,377,382],{"title":364,"path":365,"stem":366,"description":369,"icon":370,"tags":371},"Digital Product Passport vocabulary for electronic devices under ESPR, the French Repairability Index, EU Right to Repair and WEEE.","heroicons-outline:device-phone-mobile",[372,373,374,375,376],"electronics","repairability","weee","energy-label","right-to-repair",{"title":241,"path":378,"stem":379,"description":380,"icon":171,"tags":381},"/docs/digital-product-passport/electronics/implementation-guide","docs/11.digital-product-passport/08.electronics/01.implementation-guide","How to assemble an Electronics Digital Product Passport against the published openepcis-dpp-ready electronics vocabulary",[372,314,373,374,375],{"title":252,"path":383,"stem":384,"description":385,"icon":13,"tags":386},"/docs/digital-product-passport/electronics/complete-examples","docs/11.digital-product-passport/08.electronics/02.complete-examples","Reference Electronics Digital Product Passport documents covering smartphone, laptop, display and server",[372,257,387,388,61],"smartphone","laptop",[372,373,374,375,376],[212,213,214,30,215,34,216],{"title":392,"path":393,"stem":394,"children":395,"description":397,"icon":398},"OpenEPCIS Overview","/docs/platform-overview","docs/14.platform-overview/index",[396,399,405,411,417],{"title":392,"path":393,"stem":394,"description":397,"icon":398},"A GS1-conformant supply-chain data platform — Resolver, Masterdata, EPCIS Events — in open source and business editions.","lucide:layout-dashboard",{"title":400,"path":401,"stem":402,"description":403,"icon":404},"Architecture","/docs/platform-overview/architecture","docs/14.platform-overview/01.architecture","How OpenEPCIS handles identity, isolation, events, and GS1 conformance — the four things that distinguish the platform.","lucide:cpu",{"title":406,"path":407,"stem":408,"description":409,"icon":410},"Feature Matrix","/docs/platform-overview/feature-matrix","docs/14.platform-overview/02.feature-matrix","OpenEPCIS capabilities by edition, aligned to the relevant GS1 standards.","lucide:check-square",{"title":412,"path":413,"stem":414,"description":415,"icon":416},"Roadmap","/docs/platform-overview/roadmap","docs/14.platform-overview/03.roadmap","Three horizons — Now, Next, Later. Skeleton awaiting user-confirmed dates.","lucide:map",{"title":418,"path":419,"stem":420,"children":421,"description":423,"icon":424},"Modules","/docs/platform-overview/modules","docs/14.platform-overview/modules/index",[422,425,431,437,443,449,455,461],{"title":418,"path":419,"stem":420,"description":423,"icon":424},"Seven module families that organise the OpenEPCIS platform — Resolver, Masterdata, EPCIS Events, Formats & Validation, Integration, Testdata, Platform.","lucide:layers",{"title":426,"path":427,"stem":428,"description":429,"icon":430},"GS1 Conformant Resolver","/docs/platform-overview/modules/resolver","docs/14.platform-overview/modules/01.resolver","Resolves GS1 Digital Link URIs to product information, masterdata, EPCIS endpoints, and twelve more standard link types.","lucide:link-2",{"title":432,"path":433,"stem":434,"description":435,"icon":436},"GS1 Web Vocabulary & Masterdata","/docs/platform-overview/modules/masterdata","docs/14.platform-overview/modules/02.masterdata","Web Vocabulary models, masterdata-to-resolver REST pattern, GS1 Germany Activate Plus / GEPIR sync, and the event-driven masterdata bus.","lucide:database",{"title":438,"path":439,"stem":440,"description":441,"icon":442},"EPCIS Events — Capture, Query, Subscriptions","/docs/platform-overview/modules/epcis-events","docs/14.platform-overview/modules/03.epcis-events","EPCIS 2.0 REST and SOAP, live streaming subscriptions, resilient pagination, OpenSearch event store.","lucide:activity",{"title":444,"path":445,"stem":446,"description":447,"icon":448},"Formats, Validation & Identity","/docs/platform-overview/modules/formats","docs/14.platform-overview/modules/04.formats","XML ↔ JSON-LD conversion, multi-layer validation, identifier translation, idempotent event hashing.","lucide:file-check",{"title":450,"path":451,"stem":452,"description":453,"icon":454},"Integration & Gateways","/docs/platform-overview/modules/integration","docs/14.platform-overview/modules/05.integration","Cloud storage, file service, natural-language AI assistant.","lucide:plug",{"title":456,"path":457,"stem":458,"description":459,"icon":460},"Testdata & Developer Tooling","/docs/platform-overview/modules/testdata","docs/14.platform-overview/modules/06.testdata","Synthetic EPCIS test event generation, reference event collections, conformance test suite, SDKs.","lucide:wrench",{"title":462,"path":463,"stem":464,"description":465,"icon":466},"Platform, Build & Observability","/docs/platform-overview/modules/platform","docs/14.platform-overview/modules/07.platform","How OpenEPCIS is built, deployed, and observed.","lucide:server",{"title":468,"path":469,"stem":470,"children":471,"description":473,"icon":28,"tags":482},"Vision","/docs/vision","docs/15.vision/index",[472],{"title":468,"path":469,"stem":470,"description":473,"icon":28,"tags":474},"How UNTP, DIDs, Verifiable Credentials, and EPCIS work together to create unified product identity infrastructure for the connected supply chain.",[475,476,477,478,331,479,480,481],"vision","digital-twin","did","verifiable-credentials","rfid","industry-4-0","web-3-0",[475,476,477,478,331,479,480,481],{"id":484,"title":406,"body":485,"description":409,"extension":1849,"icon":410,"lastUpdated":1850,"meta":1851,"navigation":1857,"path":407,"seo":1858,"sitemap":1859,"stem":408,"__hash__":1860},"docsEN/docs/14.platform-overview/02.feature-matrix.md",{"type":486,"value":487,"toc":1837},"minimark",[488,517,524,528,531,747,750,858,862,1121,1124,1285,1288,1376,1380,1636,1639,1751,1755,1825,1828],[489,490,491,492,496,497,500,501,504,505,508,509,512,513,516],"p",{},"Legend: ",[493,494,495],"code",{},"✓"," = available · ",[493,498,499],{},"✓ (basic)"," = available with limitations; see notes · ",[493,502,503],{},"✓ (variant)"," = available in a build variant · ",[493,506,507],{},"partial"," = building blocks present, not fully wired end-to-end · ",[493,510,511],{},"roadmap"," = planned, not yet started · ",[493,514,515],{},"—"," = not in this edition.",[489,518,519,520,523],{},"Capabilities are grouped by the seven module families the platform is organised around — Resolver, Masterdata, EPCIS Events, Formats & Validation, Integration, Access Control, Testdata, Platform. The deeper stories (multi-tenant isolation at the data layer, live subscriptions, the SAX converter) live on the ",[521,522,400],"a",{"href":401}," and module-group pages.",[525,526,426],"h2",{"id":527},"gs1-conformant-resolver",[489,529,530],{},"The full GS1 Conformant Resolver ships in the business edition. The OSS rows below are the building blocks for working with GS1 identifiers — URN ↔ Digital Link translation, barcode rendering, identifier validation.",[532,533,534,553],"table",{},[535,536,537],"thead",{},[538,539,540,544,547,550],"tr",{},[541,542,543],"th",{},"Capability",[541,545,546],{},"OSS",[541,548,549],{},"Business",[541,551,552],{},"Notes",[554,555,556,578,600,653,671,689,707,729],"tbody",{},[538,557,558,562,569,575],{},[559,560,561],"td",{},"GS1 Conformant Resolver (multi-tenant, REST)",[559,563,564],{},[565,566,515],"span",{"className":567},[568],"fm-no",[559,570,571],{},[565,572,495],{"className":573},[574],"fm-yes",[559,576,577],{},"One deployment serves many brand owners; partners and consumers integrate using standard GS1 link types, no bespoke clients.",[538,579,580,583,588,593],{},[559,581,582],{},"Self-describing deployment",[559,584,585],{},[565,586,515],{"className":587},[568],[559,589,590],{},[565,591,495],{"className":592},[574],[559,594,595,596,599],{},"Implements the GS1 Conformant Resolver discovery contract — downstream registries (the GS1 Global Office resolver, partner systems) find the deployment and read what it offers automatically, no hand-configuration needed. Served at ",[493,597,598],{},"/.well-known/gs1resolver",".",[538,601,602,605,610,615],{},[559,603,604],{},"A dozen GS1 link types auto-derived from masterdata",[559,606,607],{},[565,608,515],{"className":609},[568],[559,611,612],{},[565,613,495],{"className":614},[574],[559,616,617,618,621,622,621,625,621,628,621,631,621,634,621,637,621,640,621,643,621,646,621,649,652],{},"Save a product once and the resolver derives the standard link relations (",[493,619,620],{},"gs1:pip",", ",[493,623,624],{},"gs1:productImage",[493,626,627],{},"gs1:certificationInfo",[493,629,630],{},"gs1:productSustainabilityInfo",[493,632,633],{},"gs1:safetyInfo",[493,635,636],{},"gs1:instructions",[493,638,639],{},"gs1:nutritionalInfo",[493,641,642],{},"gs1:recallStatus",[493,644,645],{},"gs1:serviceInfo",[493,647,648],{},"gs1:audioFile",[493,650,651],{},"gs1:relatedVideo","). No manual linkset POST per product.",[538,654,655,658,663,668],{},[559,656,657],{},"Bulk CSV / JSON-LD linkset import",[559,659,660],{},[565,661,515],{"className":662},[568],[559,664,665],{},[565,666,495],{"className":667},[574],[559,669,670],{},"First-time onboarding path — tens of thousands of products in a single call.",[538,672,673,676,681,686],{},[559,674,675],{},"Tenant-scoped masterdata cache",[559,677,678],{},[565,679,515],{"className":680},[568],[559,682,683],{},[565,684,495],{"className":685},[574],[559,687,688],{},"Keeps resolution fast under multi-tenant load; each customer's hot path stays in cache without crossing tenants.",[538,690,691,694,699,704],{},[559,692,693],{},"Linkset change audit",[559,695,696],{},[565,697,515],{"className":698},[568],[559,700,701],{},[565,702,495],{"className":703},[574],[559,705,706],{},"Who changed which linkset, when — what regulated brand owners need to satisfy due-diligence and traceability reviews.",[538,708,709,712,717,722],{},[559,710,711],{},"EPC URN ↔ Digital Link translation",[559,713,714],{},[565,715,495],{"className":716},[574],[559,718,719],{},[565,720,495],{"className":721},[574],[559,723,724,725,728],{},"For interop with legacy systems still emitting ",[493,726,727],{},"urn:epc:id:…","; same library powers URN-on-demand at query time.",[538,730,731,734,739,744],{},[559,732,733],{},"QR / Data Matrix / GS1-128 barcode generation",[559,735,736],{},[565,737,495],{"className":738},[574],[559,740,741],{},[565,742,495],{"className":743},[574],[559,745,746],{},"One Digital Link URI rendered into any GS1-conformant barcode — pick by use case (QR for consumer scans, DataMatrix for small parts, GS1-128 for cartons).",[525,748,432],{"id":749},"gs1-web-vocabulary-masterdata",[532,751,752,764],{},[535,753,754],{},[538,755,756,758,760,762],{},[541,757,543],{},[541,759,546],{},[541,761,549],{},[541,763,552],{},[554,765,766,784,812,833],{},[538,767,768,771,776,781],{},[559,769,770],{},"GS1 Web Vocabulary data model (libraries)",[559,772,773],{},[565,774,495],{"className":775},[574],[559,777,778],{},[565,779,495],{"className":780},[574],[559,782,783],{},"Java types for the GS1 Web Vocabulary — useful when building integrations or generating documents outside the platform.",[538,785,786,799,804,809],{},[559,787,788,789,621,792,621,795,798],{},"Masterdata REST API (",[493,790,791],{},"/organizations",[493,793,794],{},"/products",[493,796,797],{},"/places",")",[559,800,801],{},[565,802,515],{"className":803},[568],[559,805,806],{},[565,807,495],{"className":808},[574],[559,810,811],{},"Platform discipline: masterdata lives on the resolver, never embedded inside EPCIS events. One source of truth, no duplication, no contradictory copies.",[538,813,814,820,825,830],{},[559,815,816],{},[817,818,819],"strong",{},"Full \"Verified by GS1\" integration with GS1 Germany services",[559,821,822],{},[565,823,515],{"className":824},[568],[559,826,827],{},[565,828,495],{"className":829},[574],[559,831,832],{},"Bidirectional. Inbound: verifies a GTIN or GLN against GS1 Germany's registry (Activate Plus / GEPIR) and enriches the local record with authoritative party / product attributes. Outbound: publishes the brand owner's masterdata back into the GS1 network — the deployment acts as source-of-truth and the records propagate up to the GS1 Global Office resolver. A real node in the GS1 trust graph.",[538,834,835,840,845,851],{},[559,836,837],{},[817,838,839],{},"Event → Resolver masterdata promotion",[559,841,842],{},[565,843,515],{"className":844},[568],[559,846,847],{},[565,848,507],{"className":849},[850],"fm-partial",[559,852,853,854,857],{},"The internal masterdata bus exists; what's missing is the bridge from ",[493,855,856],{},"/capture"," into it. Once landed, an EPCIS event will register new masterdata implicitly — closing the \"events drive masterdata\" loop.",[525,859,861],{"id":860},"epcis-events-capture-query-subscriptions","EPCIS Events: Capture · Query · Subscriptions",[532,863,864,876],{},[535,865,866],{},[538,867,868,870,872,874],{},[541,869,543],{},[541,871,546],{},[541,873,549],{},[541,875,552],{},[554,877,878,898,919,937,957,975,993,1011,1029,1047,1065,1083,1103],{},[538,879,880,885,890,895],{},[559,881,882,883],{},"EPCIS 2.0 REST ",[493,884,856],{},[559,886,887],{},[565,888,515],{"className":889},[568],[559,891,892],{},[565,893,495],{"className":894},[574],[559,896,897],{},"Single endpoint for any volume — documents are validated, hashed, deduplicated and stored in one pipeline.",[538,899,900,906,911,916],{},[559,901,882,902,905],{},[493,903,904],{},"/query"," (Named Queries)",[559,907,908],{},[565,909,515],{"className":910},[568],[559,912,913],{},[565,914,495],{"className":915},[574],[559,917,918],{},"Filter by EPC, biz-step, location, time window; queries can be stored, named, and re-run by partners without re-sending the criteria each time.",[538,920,921,924,929,934],{},[559,922,923],{},"EPCIS 2.0 SOAP binding",[559,925,926],{},[565,927,515],{"className":928},[568],[559,930,931],{},[565,932,495],{"className":933},[574],[559,935,936],{},"For partners still on the EPCIS 1.x message bus — same backend, different envelope.",[538,938,939,942,949,954],{},[559,940,941],{},"Hash-based event deduplication",[559,943,944],{},[565,945,948],{"className":946},[947],"fm-basic","✓ lib",[559,950,951],{},[565,952,495],{"className":953},[574],[559,955,956],{},"Resending the same event produces the same ID. Capture is idempotent — safe to retry after a network hiccup without doubling up the event store.",[538,958,959,962,967,972],{},[559,960,961],{},"Streaming subscriptions (live, no polling)",[559,963,964],{},[565,965,515],{"className":966},[568],[559,968,969],{},[565,970,495],{"className":971},[574],[559,973,974],{},"a match fires the moment an event is indexed. No poll interval, no missed window, no \"did I get that one yet?\" debate.",[538,976,977,980,985,990],{},[559,978,979],{},"Scheduled subscriptions",[559,981,982],{},[565,983,515],{"className":984},[568],[559,986,987],{},[565,988,495],{"className":989},[574],[559,991,992],{},"Cron-style delivery for partners that prefer batch-style — nightly digests, periodic compliance pulls.",[538,994,995,998,1003,1008],{},[559,996,997],{},"WebSocket delivery",[559,999,1000],{},[565,1001,515],{"className":1002},[568],[559,1004,1005],{},[565,1006,495],{"className":1007},[574],[559,1009,1010],{},"Push channel for browsers and lightweight clients.",[538,1012,1013,1016,1021,1026],{},[559,1014,1015],{},"Webhook delivery",[559,1017,1018],{},[565,1019,515],{"className":1020},[568],[559,1022,1023],{},[565,1024,495],{"className":1025},[574],[559,1027,1028],{},"Standard HTTP POST to any partner endpoint.",[538,1030,1031,1034,1039,1044],{},[559,1032,1033],{},"Digital Link canonical form at rest, URN on demand",[559,1035,1036],{},[565,1037,515],{"className":1038},[568],[559,1040,1041],{},[565,1042,495],{"className":1043},[574],[559,1045,1046],{},"Stored once in Digital Link form. Clients still on EPC URN form get it rendered on demand — no double storage, no drift between formats.",[538,1048,1049,1052,1057,1062],{},[559,1050,1051],{},"Reliable paginated queries that survive reconnects",[559,1053,1054],{},[565,1055,515],{"className":1056},[568],[559,1058,1059],{},[565,1060,495],{"className":1061},[574],[559,1063,1064],{},"A six-month export can disconnect and resume on the same scroll cursor — important for regulators and big partners pulling long histories.",[538,1066,1067,1070,1075,1080],{},[559,1068,1069],{},"OpenSearch backend",[559,1071,1072],{},[565,1073,515],{"className":1074},[568],[559,1076,1077],{},[565,1078,495],{"className":1079},[574],[559,1081,1082],{},"Primary store — open source, scales horizontally, supports the percolator queries the live subscriptions ride on.",[538,1084,1085,1088,1093,1100],{},[559,1086,1087],{},"Elasticsearch backend (variant)",[559,1089,1090],{},[565,1091,515],{"className":1092},[568],[559,1094,1095],{},[565,1096,1099],{"className":1097},[1098],"fm-variant","✓ variant",[559,1101,1102],{},"For deployments where the customer's existing observability or compliance posture already standardises on Elasticsearch.",[538,1104,1105,1108,1113,1118],{},[559,1106,1107],{},"High-volume capture variant",[559,1109,1110],{},[565,1111,515],{"className":1112},[568],[559,1114,1115],{},[565,1116,495],{"className":1117},[574],[559,1119,1120],{},"Headless capture pipeline for environments where events arrive over Kafka rather than HTTP — the REST front-end is replaced by a stream consumer.",[525,1122,444],{"id":1123},"formats-validation-identity",[532,1125,1126,1138],{},[535,1127,1128],{},[538,1129,1130,1132,1134,1136],{},[541,1131,543],{},[541,1133,546],{},[541,1135,549],{},[541,1137,552],{},[554,1139,1140,1159,1177,1195,1213,1231,1249,1267],{},[538,1141,1142,1145,1151,1156],{},[559,1143,1144],{},"XML ↔ JSON-LD conversion",[559,1146,1147],{},[565,1148,1150],{"className":1149},[947],"✓ basic",[559,1152,1153],{},[565,1154,495],{"className":1155},[574],[559,1157,1158],{},"OSS: XSLT, load-then-transform — fine for the common cases (single events, small batches, plain shapes). Business: SAX-streaming — multi-gigabyte exports, deep extension trees, complex sensor payloads, mixed-format batches.",[538,1160,1161,1164,1169,1174],{},[559,1162,1163],{},"EPCIS 1.2 ↔ 2.0 XML migration",[559,1165,1166],{},[565,1167,1150],{"className":1168},[947],[559,1170,1171],{},[565,1172,495],{"className":1173},[574],[559,1175,1176],{},"OSS: the XSLT converter handles straightforward migrations. The Business edition adds the SAX converter — the production-grade path used to migrate live 1.2 corpora to 2.0.",[538,1178,1179,1182,1187,1192],{},[559,1180,1181],{},"EPCIS document validation",[559,1183,1184],{},[565,1185,495],{"className":1186},[574],[559,1188,1189],{},[565,1190,495],{"className":1191},[574],[559,1193,1194],{},"Catches malformed events at the boundary so they never land in the event store. Cheaper than discovering the problem six months later in a query result.",[538,1196,1197,1200,1205,1210],{},[559,1198,1199],{},"Custom-extension validation across the event",[559,1201,1202],{},[565,1203,515],{"className":1204},[568],[559,1206,1207],{},[565,1208,495],{"className":1209},[574],[559,1211,1212],{},"For organisations with proprietary fields that need to coexist with the GS1 vocabulary — extensions are validated at every nesting level of the document.",[538,1214,1215,1218,1223,1228],{},[559,1216,1217],{},"Sensor element validation",[559,1219,1220],{},[565,1221,515],{"className":1222},[568],[559,1224,1225],{},[565,1226,495],{"className":1227},[574],[559,1229,1230],{},"Makes sensor payloads structurally trustworthy — units, value types, device IDs all checked at capture time.",[538,1232,1233,1236,1241,1246],{},[559,1234,1235],{},"Pre-canonical event hash (idempotent event IDs)",[559,1237,1238],{},[565,1239,495],{"className":1240},[574],[559,1242,1243],{},[565,1244,495],{"className":1245},[574],[559,1247,1248],{},"The hash is computed against a normalised representation of the event — whitespace, attribute order, JSON key order don't affect the ID. Re-sends and round-trips through different serialisers produce the same event ID.",[538,1250,1251,1254,1259,1264],{},[559,1252,1253],{},"Web UI for format conversion",[559,1255,1256],{},[565,1257,515],{"className":1258},[568],[559,1260,1261],{},[565,1262,495],{"className":1263},[574],[559,1265,1266],{},"Browser-based for non-technical users — drag in an XML or JSON-LD file, get the other format back. Same engine as the API.",[538,1268,1269,1272,1277,1282],{},[559,1270,1271],{},"Hash generator as a service",[559,1273,1274],{},[565,1275,515],{"className":1276},[568],[559,1278,1279],{},[565,1280,495],{"className":1281},[574],[559,1283,1284],{},"REST endpoint for partners who want canonical event IDs without running the converter locally.",[525,1286,450],{"id":1287},"integration-gateways",[532,1289,1290,1302],{},[535,1291,1292],{},[538,1293,1294,1296,1298,1300],{},[541,1295,543],{},[541,1297,546],{},[541,1299,549],{},[541,1301,552],{},[554,1303,1304,1322,1340,1358],{},[538,1305,1306,1309,1314,1319],{},[559,1307,1308],{},"S3-compatible storage",[559,1310,1311],{},[565,1312,948],{"className":1313},[947],[559,1315,1316],{},[565,1317,495],{"className":1318},[574],[559,1320,1321],{},"Any object store that speaks the S3 API — AWS S3, on-prem implementations, S3-compatible appliances.",[538,1323,1324,1327,1332,1337],{},[559,1325,1326],{},"Azure Blob storage",[559,1328,1329],{},[565,1330,515],{"className":1331},[568],[559,1333,1334],{},[565,1335,495],{"className":1336},[574],[559,1338,1339],{},"First-class option for Azure-native deployments — no S3 gateway in front.",[538,1341,1342,1345,1350,1355],{},[559,1343,1344],{},"File upload / download service",[559,1346,1347],{},[565,1348,515],{"className":1349},[568],[559,1351,1352],{},[565,1353,495],{"className":1354},[574],[559,1356,1357],{},"REST endpoint for bulk inputs and outputs that are too large to fit comfortably inside JSON payloads.",[538,1359,1360,1363,1368,1373],{},[559,1361,1362],{},"AI assistant (Ollama-backed)",[559,1364,1365],{},[565,1366,515],{"className":1367},[568],[559,1369,1370],{},[565,1371,495],{"className":1372},[574],[559,1374,1375],{},"Ask \"show me last week's events for GTIN X\" in plain English; the assistant classifies the intent (EPCIS query, identifier resolve, vocabulary lookup) and returns a translated EPCIS query plus the answer. Local LLM by default — no third-party API dependency.",[525,1377,1379],{"id":1378},"access-control-cross-cuts-every-business-deployable","Access Control (cross-cuts every business deployable)",[532,1381,1382,1394],{},[535,1383,1384],{},[538,1385,1386,1388,1390,1392],{},[541,1387,543],{},[541,1389,546],{},[541,1391,549],{},[541,1393,552],{},[554,1395,1396,1414,1432,1450,1480,1498,1529,1547,1581,1599,1617],{},[538,1397,1398,1401,1406,1411],{},[559,1399,1400],{},"OIDC, session-cookie, and API-key authentication",[559,1402,1403],{},[565,1404,515],{"className":1405},[568],[559,1407,1408],{},[565,1409,495],{"className":1410},[574],[559,1412,1413],{},"Three credential shapes, one identity. Customers pick whichever fits their stack — OIDC for IdP-integrated systems, cookies for browser UIs, API keys for service-to-service traffic.",[538,1415,1416,1419,1424,1429],{},[559,1417,1418],{},"Per-customer (tenant) isolation in Keycloak",[559,1420,1421],{},[565,1422,515],{"className":1423},[568],[559,1425,1426],{},[565,1427,495],{"className":1428},[574],[559,1430,1431],{},"Each customer gets their own realm — user accounts, groups, roles, and policies don't bleed across customers. Resolved automatically from the request's hostname.",[538,1433,1434,1437,1442,1447],{},[559,1435,1436],{},"Data-layer tenant isolation (OpenSearch DLS)",[559,1438,1439],{},[565,1440,515],{"className":1441},[568],[559,1443,1444],{},[565,1445,495],{"className":1446},[574],[559,1448,1449],{},"the application doesn't rewrite queries to add a tenant filter. The data layer itself enforces isolation, so even if app code is wrong, customer data stays separated.",[538,1451,1452,1461,1466,1471],{},[559,1453,1454,1455,621,1458,798],{},"Role-based access (",[493,1456,1457],{},"capture",[493,1459,1460],{},"query",[559,1462,1463],{},[565,1464,515],{"className":1465},[568],[559,1467,1468],{},[565,1469,495],{"className":1470},[574],[559,1472,1473,1474,1476,1477,1479],{},"Two roles ship out of the box — ",[493,1475,1457],{}," to write, ",[493,1478,1460],{}," to read. Customers can layer their own granular permissions on top.",[538,1481,1482,1485,1490,1495],{},[559,1483,1484],{},"Shareable read-only deep-links (capability tokens)",[559,1486,1487],{},[565,1488,515],{"className":1489},[568],[559,1491,1492],{},[565,1493,495],{"className":1494},[574],[559,1496,1497],{},"Send a regulator a single URL for one specific batch — no full account access granted. Short-lived, scoped to one endpoint and one HTTP method.",[538,1499,1500,1505,1510,1515],{},[559,1501,1502],{},[817,1503,1504],{},"Wallet-agnostic Verifiable Credentials via OID4VC",[559,1506,1507],{},[565,1508,515],{"className":1509},[568],[559,1511,1512],{},[565,1513,495],{"className":1514},[574],[559,1516,1517,1518,1521,1522,621,1525,1528],{},"Each Keycloak realm is a Verifiable Credential Issuer through Keycloak's native OID4VCI / OID4VP / SIOPv2 implementation. Credentials in ",[493,1519,1520],{},"sd-jwt-vc"," (selective disclosure first), ",[493,1523,1524],{},"jwt_vc_json",[493,1526,1527],{},"ldp_vc"," and ISO mDoc — the holder picks the format. Interoperable with every OID4VC-compliant wallet already in production or in pilot (EU Digital Identity Wallet, Catena-X Managed Identity Wallet, enterprise business wallets, sector wallets). No wallet lock-in.",[538,1530,1531,1534,1539,1544],{},[559,1532,1533],{},"Globally-scoped issuer trust list",[559,1535,1536],{},[565,1537,515],{"className":1538},[568],[559,1540,1541],{},[565,1542,507],{"className":1543},[850],[559,1545,1546],{},"Verifiers need to know which issuers are trustworthy. OpenEPCIS expects to maintain an open, globally-scoped trust list — not EU-only or sector-only. The trust-list surface and population pipeline are the work in flight.",[538,1548,1549,1552,1557,1562],{},[559,1550,1551],{},"EPCIS event → VC issuance pipeline",[559,1553,1554],{},[565,1555,515],{"className":1556},[568],[559,1558,1559],{},[565,1560,507],{"className":1561},[850],[559,1563,1564,1565,621,1568,621,1571,621,1574,1577,1578,1580],{},"The protocol layer (Keycloak OID4VCI / OID4VP) ships today. The named credential schemas (",[493,1566,1567],{},"EPCISCommissioningCredential",[493,1569,1570],{},"DPPBatteryPassportCredential",[493,1572,1573],{},"EUDRDueDiligenceCredential",[493,1575,1576],{},"UNTPDigitalConformityCredential",") and the bridge from capture/save into VC issuance are the named ",[521,1579,511],{"href":413}," item.",[538,1582,1583,1586,1591,1596],{},[559,1584,1585],{},"UNTP Digital Conformity Credential compatibility",[559,1587,1588],{},[565,1589,515],{"className":1590},[568],[559,1592,1593],{},[565,1594,507],{"className":1595},[850],[559,1597,1598],{},"UNTP DCC is exactly the kind of VC the OID4VCI layer issues. Schema and field mapping to be published alongside the named credential pipeline.",[538,1600,1601,1604,1609,1614],{},[559,1602,1603],{},"Verifier reference UI / SDK",[559,1605,1606],{},[565,1607,515],{"className":1608},[568],[559,1610,1611],{},[565,1612,507],{"className":1613},[850],[559,1615,1616],{},"The OID4VP verification endpoint is live; a reference verifier UI for partners (browser-side and integrator SDK) is in flight.",[538,1618,1619,1622,1627,1633],{},[559,1620,1621],{},"Row-level scoping below tenant (GLN / EPC / biz-loc)",[559,1623,1624],{},[565,1625,515],{"className":1626},[568],[559,1628,1629],{},[565,1630,511],{"className":1631},[1632],"fm-roadmap",[559,1634,1635],{},"Today access is binary per tenant. Adding GLN-, EPC-range-, or biz-location-bound visibility (so a user sees only \"their\" sites) builds on the same DLS mechanism.",[525,1637,456],{"id":1638},"testdata-developer-tooling",[532,1640,1641,1653],{},[535,1642,1643],{},[538,1644,1645,1647,1649,1651],{},[541,1646,543],{},[541,1648,546],{},[541,1650,549],{},[541,1652,552],{},[554,1654,1655,1673,1691,1709,1727],{},[538,1656,1657,1660,1665,1670],{},[559,1658,1659],{},"Test event generation (REST + UI + bulk)",[559,1661,1662],{},[565,1663,495],{"className":1664},[574],[559,1666,1667],{},[565,1668,495],{"className":1669},[574],[559,1671,1672],{},"Synthesise realistic supply chains end-to-end — single events for demos, programmatic feeds for integration tests, or millions of events for performance work.",[538,1674,1675,1678,1683,1688],{},[559,1676,1677],{},"Re-capture / replay tool",[559,1679,1680],{},[565,1681,515],{"className":1682},[568],[559,1684,1685],{},[565,1686,495],{"className":1687},[574],[559,1689,1690],{},"Read events from one deployment, re-capture them into another (or the same one). Useful for environment cloning, regression scenarios, and reproducing production issues in a dev environment.",[538,1692,1693,1696,1701,1706],{},[559,1694,1695],{},"Reference event collection (XML + JSON-LD)",[559,1697,1698],{},[565,1699,495],{"className":1700},[574],[559,1702,1703],{},[565,1704,495],{"className":1705},[574],[559,1707,1708],{},"Curated examples of every EPCIS 2.0 event shape, biz-step, and disposition — in both XML and JSON-LD. Used to test validators and onboard integrators.",[538,1710,1711,1714,1719,1724],{},[559,1712,1713],{},"EPCIS REST conformance test suite",[559,1715,1716],{},[565,1717,495],{"className":1718},[574],[559,1720,1721],{},[565,1722,495],{"className":1723},[574],[559,1725,1726],{},"Point it at any EPCIS 2.0 endpoint — yours or anyone else's — and get a conformance report. The standards-compliance test set, open source; the Business edition extends it with platform-specific checks (multi-tenant DLS, capability tokens, the auto-derived linkset pipeline).",[538,1728,1729,1732,1737,1742],{},[559,1730,1731],{},"Client SDK examples (multi-language)",[559,1733,1734],{},[565,1735,495],{"className":1736},[574],[559,1738,1739],{},[565,1740,495],{"className":1741},[574],[559,1743,1744,1745,1747,1748,1750],{},"Java, Python, Node.js, Go — example calls against ",[493,1746,856],{}," and ",[493,1749,904],{}," to bootstrap an integration.",[525,1752,1754],{"id":1753},"platform-operations","Platform & Operations",[532,1756,1757,1769],{},[535,1758,1759],{},[538,1760,1761,1763,1765,1767],{},[541,1762,543],{},[541,1764,546],{},[541,1766,549],{},[541,1768,552],{},[554,1770,1771,1789,1807],{},[538,1772,1773,1776,1781,1786],{},[559,1774,1775],{},"Self-host on Kubernetes (Terraform / Helm)",[559,1777,1778],{},[565,1779,515],{"className":1780},[568],[559,1782,1783],{},[565,1784,495],{"className":1785},[574],[559,1787,1788],{},"Reference Terraform modules + Helm charts for production deployment — opinionated but not vendor-locked.",[538,1790,1791,1794,1799,1804],{},[559,1792,1793],{},"Self-host on Docker Compose",[559,1795,1796],{},[565,1797,515],{"className":1798},[568],[559,1800,1801],{},[565,1802,495],{"className":1803},[574],[559,1805,1806],{},"Ansible-driven Docker Compose stack — the fast path for smaller deployments and local development.",[538,1808,1809,1812,1817,1822],{},[559,1810,1811],{},"OpenTelemetry tracing",[559,1813,1814],{},[565,1815,515],{"className":1816},[568],[559,1818,1819],{},[565,1820,495],{"className":1821},[574],[559,1823,1824],{},"End-to-end traces across REST endpoints, capture pipeline, and storage — drop into whatever observability stack the customer already runs (Grafana, Jaeger, Honeycomb, …).",[1826,1827],"hr",{},[1829,1830,1831],"blockquote",{},[489,1832,1833,1834,1836],{},"This matrix lists what's available today. The ",[521,1835,511],{"href":413}," lists the strategic next steps — Verifiable Credentials for EPCIS events, the event-to-resolver masterdata bridge, sub-tenant scoping, and a retrieval corpus for the AI assistant.",{"title":1838,"searchDepth":1839,"depth":1839,"links":1840},"",2,[1841,1842,1843,1844,1845,1846,1847,1848],{"id":527,"depth":1839,"text":426},{"id":749,"depth":1839,"text":432},{"id":860,"depth":1839,"text":861},{"id":1123,"depth":1839,"text":444},{"id":1287,"depth":1839,"text":450},{"id":1378,"depth":1839,"text":1379},{"id":1638,"depth":1839,"text":456},{"id":1753,"depth":1839,"text":1754},"md","2026-05-21T00:00:00.000Z",{"readingTime":1852},{"text":1853,"minutes":1854,"time":1855,"words":1856},"9 min read",8.08,484800,1616,true,{"title":406,"description":409},{"loc":407},"SVvicH25qgAokdCLlwwTS7qq2AfCusOkskisSoMXhx0",[1862],{"title":5,"path":6,"stem":7,"children":1863},[1864,1866,1871,1876,1881,1886,1891,1896,1906,1911,1916,1921,1979,1995],{"title":10,"path":6,"stem":11,"description":12,"icon":13,"tags":1865},[15,16,17,18,19,20],{"title":22,"path":23,"stem":24,"children":1867,"description":27,"icon":28,"tags":1870},[1868],{"title":22,"path":23,"stem":24,"description":27,"icon":28,"tags":1869},[16,30,31,32,33,34,35,36,37],[16,30,31,32,33,34,35,36,37],{"title":40,"path":41,"stem":42,"children":1872,"description":45,"icon":46,"tags":1875},[1873],{"title":40,"path":41,"stem":42,"description":45,"icon":46,"tags":1874},[16,30,31,32,48,49],[16,30,31,32,48,49],{"title":52,"path":53,"stem":54,"children":1877,"description":57,"icon":58,"tags":1880},[1878],{"title":52,"path":53,"stem":54,"description":57,"icon":58,"tags":1879},[16,60,61,62,63,64,65,20,66,67,68,69,70],[16,60,61,62,63,64,65,20,66,67,68,69,70],{"title":73,"path":74,"stem":75,"children":1882,"description":78,"icon":79,"tags":1885},[1883],{"title":73,"path":74,"stem":75,"description":78,"icon":79,"tags":1884},[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],[16,31,60,61,62,63,81,65,20,82,83,84,68,69,70],{"title":87,"path":88,"stem":89,"children":1887,"description":92,"icon":93,"tags":1890},[1888],{"title":87,"path":88,"stem":89,"description":92,"icon":93,"tags":1889},[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],[16,95,96,97,98,99,20,100,101,102,103,104,105,106,107,108,109,110],{"title":113,"path":114,"stem":115,"children":1892,"description":118,"icon":119,"tags":1895},[1893],{"title":113,"path":114,"stem":115,"description":118,"icon":119,"tags":1894},[16,121,60,61,62,63,20,122,123,124,69,70],[16,121,60,61,62,63,20,122,123,124,69,70],{"title":127,"path":128,"stem":129,"children":1897,"description":132,"icon":133,"tags":1905},[1898,1900],{"title":127,"path":128,"stem":129,"description":132,"icon":133,"tags":1899},[16,121,60,61,62,63,20,122,123,124,69,70],{"title":136,"path":137,"stem":138,"children":1901,"description":132,"icon":141,"tags":1904},[1902],{"title":136,"path":137,"stem":138,"description":132,"icon":141,"tags":1903},[16,60,61,143,20,144,145,146,34,147,148,149,150],[16,60,61,143,20,144,145,146,34,147,148,149,150],[16,121,60,61,62,63,20,122,123,124,69,70],{"title":154,"path":155,"stem":156,"children":1907,"description":159,"icon":160,"tags":1910},[1908],{"title":154,"path":155,"stem":156,"description":159,"icon":160,"tags":1909},[16,60,61,143,20,162,34,147,148,149,150],[16,60,61,143,20,162,34,147,148,149,150],{"title":165,"path":166,"stem":167,"children":1912,"description":170,"icon":171,"tags":1915},[1913],{"title":165,"path":166,"stem":167,"description":170,"icon":171,"tags":1914},[16,173,15,174,20,175,34,176,148,149,177],[16,173,15,174,20,175,34,176,148,149,177],{"title":180,"path":181,"stem":182,"children":1917,"description":185,"icon":186,"tags":1920},[1918],{"title":180,"path":181,"stem":182,"description":185,"icon":186,"tags":1919},[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],[188,15,189,190,191,192,193,30,194,195,196,197,198,199,200,201],{"title":204,"path":205,"stem":206,"children":1922,"description":209,"icon":210,"tags":1978},[1923,1925,1930,1939,1949,1958,1963,1965,1967,1969],{"title":204,"path":205,"stem":206,"description":209,"icon":210,"tags":1924},[212,213,214,30,215,34,216],{"title":218,"path":219,"stem":220,"children":1926,"description":223,"icon":224,"tags":1929},[1927],{"title":218,"path":219,"stem":220,"description":223,"icon":224,"tags":1928},[226,227,215,213,214],[226,227,215,213,214],{"title":230,"path":231,"stem":232,"children":1931,"description":235,"icon":236,"tags":1938},[1932,1934,1935,1936],{"title":230,"path":231,"stem":232,"description":235,"icon":236,"tags":1933},[238,239,213,30,101,34,215],{"title":241,"path":242,"stem":243,"description":244,"icon":171},{"title":246,"path":247,"stem":248,"description":249,"icon":250},{"title":252,"path":253,"stem":254,"description":255,"icon":13,"tags":1937},[238,257,258,61,259],[238,239,213,30,101,34,215],{"title":262,"path":263,"stem":264,"children":1940,"description":267,"icon":268,"tags":1948},[1941,1943,1944,1945,1946],{"title":262,"path":263,"stem":264,"description":267,"icon":268,"tags":1942},[270,271,272,213,30,101,34,215],{"title":241,"path":274,"stem":275,"description":276,"icon":277},{"title":246,"path":279,"stem":280,"description":281,"icon":277},{"title":283,"path":284,"stem":285,"description":286,"icon":277},{"title":252,"path":288,"stem":289,"description":290,"icon":13,"tags":1947},[270,257,272,292,293],[270,271,272,213,30,101,34,215],{"title":296,"path":297,"stem":298,"children":1950,"description":301,"icon":302,"tags":1957},[1951,1953,1955],{"title":296,"path":297,"stem":298,"description":301,"icon":302,"tags":1952},[304,305,306,213,215,307],{"title":241,"path":309,"stem":310,"description":311,"icon":312,"tags":1954},[304,305,306,314],{"title":252,"path":316,"stem":317,"description":318,"icon":13,"tags":1956},[304,257,305,306,320,61],[304,305,306,213,215,307],{"title":323,"path":324,"stem":325,"children":1959,"description":328,"icon":58,"tags":1962},[1960],{"title":323,"path":324,"stem":325,"description":328,"icon":58,"tags":1961},[330,331,101,332,226,333,334],[330,331,101,332,226,333,334],{"title":337,"path":338,"stem":339,"description":340,"icon":28,"tags":1964},[342,95,343,344],{"title":346,"path":347,"stem":348,"description":349,"icon":350,"tags":1966},[352,95,343],{"title":354,"path":355,"stem":356,"description":357,"icon":358,"tags":1968},[360,361,362,332],{"title":364,"path":365,"stem":366,"children":1970,"description":369,"icon":370,"tags":1977},[1971,1973,1975],{"title":364,"path":365,"stem":366,"description":369,"icon":370,"tags":1972},[372,373,374,375,376],{"title":241,"path":378,"stem":379,"description":380,"icon":171,"tags":1974},[372,314,373,374,375],{"title":252,"path":383,"stem":384,"description":385,"icon":13,"tags":1976},[372,257,387,388,61],[372,373,374,375,376],[212,213,214,30,215,34,216],{"title":392,"path":393,"stem":394,"children":1980,"description":397,"icon":398},[1981,1982,1983,1984,1985],{"title":392,"path":393,"stem":394,"description":397,"icon":398},{"title":400,"path":401,"stem":402,"description":403,"icon":404},{"title":406,"path":407,"stem":408,"description":409,"icon":410},{"title":412,"path":413,"stem":414,"description":415,"icon":416},{"title":418,"path":419,"stem":420,"children":1986,"description":423,"icon":424},[1987,1988,1989,1990,1991,1992,1993,1994],{"title":418,"path":419,"stem":420,"description":423,"icon":424},{"title":426,"path":427,"stem":428,"description":429,"icon":430},{"title":432,"path":433,"stem":434,"description":435,"icon":436},{"title":438,"path":439,"stem":440,"description":441,"icon":442},{"title":444,"path":445,"stem":446,"description":447,"icon":448},{"title":450,"path":451,"stem":452,"description":453,"icon":454},{"title":456,"path":457,"stem":458,"description":459,"icon":460},{"title":462,"path":463,"stem":464,"description":465,"icon":466},{"title":468,"path":469,"stem":470,"children":1996,"description":473,"icon":28,"tags":1999},[1997],{"title":468,"path":469,"stem":470,"description":473,"icon":28,"tags":1998},[475,476,477,478,331,479,480,481],[475,476,477,478,331,479,480,481],{"id":484,"title":406,"body":2001,"description":409,"extension":1849,"icon":410,"lastUpdated":1850,"meta":3153,"navigation":1857,"path":407,"seo":3155,"sitemap":3156,"stem":408,"__hash__":1860},{"type":486,"value":2002,"toc":3143},[2003,2017,2021,2023,2025,2195,2197,2289,2291,2519,2521,2665,2667,2747,2749,2967,2969,3069,3071,3135,3137],[489,2004,491,2005,496,2007,500,2009,504,2011,508,2013,512,2015,516],{},[493,2006,495],{},[493,2008,499],{},[493,2010,503],{},[493,2012,507],{},[493,2014,511],{},[493,2016,515],{},[489,2018,519,2019,523],{},[521,2020,400],{"href":401},[525,2022,426],{"id":527},[489,2024,530],{},[532,2026,2027,2039],{},[535,2028,2029],{},[538,2030,2031,2033,2035,2037],{},[541,2032,543],{},[541,2034,546],{},[541,2036,549],{},[541,2038,552],{},[554,2040,2041,2057,2075,2113,2129,2145,2161,2179],{},[538,2042,2043,2045,2050,2055],{},[559,2044,561],{},[559,2046,2047],{},[565,2048,515],{"className":2049},[568],[559,2051,2052],{},[565,2053,495],{"className":2054},[574],[559,2056,577],{},[538,2058,2059,2061,2066,2071],{},[559,2060,582],{},[559,2062,2063],{},[565,2064,515],{"className":2065},[568],[559,2067,2068],{},[565,2069,495],{"className":2070},[574],[559,2072,595,2073,599],{},[493,2074,598],{},[538,2076,2077,2079,2084,2089],{},[559,2078,604],{},[559,2080,2081],{},[565,2082,515],{"className":2083},[568],[559,2085,2086],{},[565,2087,495],{"className":2088},[574],[559,2090,617,2091,621,2093,621,2095,621,2097,621,2099,621,2101,621,2103,621,2105,621,2107,621,2109,621,2111,652],{},[493,2092,620],{},[493,2094,624],{},[493,2096,627],{},[493,2098,630],{},[493,2100,633],{},[493,2102,636],{},[493,2104,639],{},[493,2106,642],{},[493,2108,645],{},[493,2110,648],{},[493,2112,651],{},[538,2114,2115,2117,2122,2127],{},[559,2116,657],{},[559,2118,2119],{},[565,2120,515],{"className":2121},[568],[559,2123,2124],{},[565,2125,495],{"className":2126},[574],[559,2128,670],{},[538,2130,2131,2133,2138,2143],{},[559,2132,675],{},[559,2134,2135],{},[565,2136,515],{"className":2137},[568],[559,2139,2140],{},[565,2141,495],{"className":2142},[574],[559,2144,688],{},[538,2146,2147,2149,2154,2159],{},[559,2148,693],{},[559,2150,2151],{},[565,2152,515],{"className":2153},[568],[559,2155,2156],{},[565,2157,495],{"className":2158},[574],[559,2160,706],{},[538,2162,2163,2165,2170,2175],{},[559,2164,711],{},[559,2166,2167],{},[565,2168,495],{"className":2169},[574],[559,2171,2172],{},[565,2173,495],{"className":2174},[574],[559,2176,724,2177,728],{},[493,2178,727],{},[538,2180,2181,2183,2188,2193],{},[559,2182,733],{},[559,2184,2185],{},[565,2186,495],{"className":2187},[574],[559,2189,2190],{},[565,2191,495],{"className":2192},[574],[559,2194,746],{},[525,2196,432],{"id":749},[532,2198,2199,2211],{},[535,2200,2201],{},[538,2202,2203,2205,2207,2209],{},[541,2204,543],{},[541,2206,546],{},[541,2208,549],{},[541,2210,552],{},[554,2212,2213,2229,2251,2269],{},[538,2214,2215,2217,2222,2227],{},[559,2216,770],{},[559,2218,2219],{},[565,2220,495],{"className":2221},[574],[559,2223,2224],{},[565,2225,495],{"className":2226},[574],[559,2228,783],{},[538,2230,2231,2239,2244,2249],{},[559,2232,788,2233,621,2235,621,2237,798],{},[493,2234,791],{},[493,2236,794],{},[493,2238,797],{},[559,2240,2241],{},[565,2242,515],{"className":2243},[568],[559,2245,2246],{},[565,2247,495],{"className":2248},[574],[559,2250,811],{},[538,2252,2253,2257,2262,2267],{},[559,2254,2255],{},[817,2256,819],{},[559,2258,2259],{},[565,2260,515],{"className":2261},[568],[559,2263,2264],{},[565,2265,495],{"className":2266},[574],[559,2268,832],{},[538,2270,2271,2275,2280,2285],{},[559,2272,2273],{},[817,2274,839],{},[559,2276,2277],{},[565,2278,515],{"className":2279},[568],[559,2281,2282],{},[565,2283,507],{"className":2284},[850],[559,2286,853,2287,857],{},[493,2288,856],{},[525,2290,861],{"id":860},[532,2292,2293,2305],{},[535,2294,2295],{},[538,2296,2297,2299,2301,2303],{},[541,2298,543],{},[541,2300,546],{},[541,2302,549],{},[541,2304,552],{},[554,2306,2307,2325,2343,2359,2375,2391,2407,2423,2439,2455,2471,2487,2503],{},[538,2308,2309,2313,2318,2323],{},[559,2310,882,2311],{},[493,2312,856],{},[559,2314,2315],{},[565,2316,515],{"className":2317},[568],[559,2319,2320],{},[565,2321,495],{"className":2322},[574],[559,2324,897],{},[538,2326,2327,2331,2336,2341],{},[559,2328,882,2329,905],{},[493,2330,904],{},[559,2332,2333],{},[565,2334,515],{"className":2335},[568],[559,2337,2338],{},[565,2339,495],{"className":2340},[574],[559,2342,918],{},[538,2344,2345,2347,2352,2357],{},[559,2346,923],{},[559,2348,2349],{},[565,2350,515],{"className":2351},[568],[559,2353,2354],{},[565,2355,495],{"className":2356},[574],[559,2358,936],{},[538,2360,2361,2363,2368,2373],{},[559,2362,941],{},[559,2364,2365],{},[565,2366,948],{"className":2367},[947],[559,2369,2370],{},[565,2371,495],{"className":2372},[574],[559,2374,956],{},[538,2376,2377,2379,2384,2389],{},[559,2378,961],{},[559,2380,2381],{},[565,2382,515],{"className":2383},[568],[559,2385,2386],{},[565,2387,495],{"className":2388},[574],[559,2390,974],{},[538,2392,2393,2395,2400,2405],{},[559,2394,979],{},[559,2396,2397],{},[565,2398,515],{"className":2399},[568],[559,2401,2402],{},[565,2403,495],{"className":2404},[574],[559,2406,992],{},[538,2408,2409,2411,2416,2421],{},[559,2410,997],{},[559,2412,2413],{},[565,2414,515],{"className":2415},[568],[559,2417,2418],{},[565,2419,495],{"className":2420},[574],[559,2422,1010],{},[538,2424,2425,2427,2432,2437],{},[559,2426,1015],{},[559,2428,2429],{},[565,2430,515],{"className":2431},[568],[559,2433,2434],{},[565,2435,495],{"className":2436},[574],[559,2438,1028],{},[538,2440,2441,2443,2448,2453],{},[559,2442,1033],{},[559,2444,2445],{},[565,2446,515],{"className":2447},[568],[559,2449,2450],{},[565,2451,495],{"className":2452},[574],[559,2454,1046],{},[538,2456,2457,2459,2464,2469],{},[559,2458,1051],{},[559,2460,2461],{},[565,2462,515],{"className":2463},[568],[559,2465,2466],{},[565,2467,495],{"className":2468},[574],[559,2470,1064],{},[538,2472,2473,2475,2480,2485],{},[559,2474,1069],{},[559,2476,2477],{},[565,2478,515],{"className":2479},[568],[559,2481,2482],{},[565,2483,495],{"className":2484},[574],[559,2486,1082],{},[538,2488,2489,2491,2496,2501],{},[559,2490,1087],{},[559,2492,2493],{},[565,2494,515],{"className":2495},[568],[559,2497,2498],{},[565,2499,1099],{"className":2500},[1098],[559,2502,1102],{},[538,2504,2505,2507,2512,2517],{},[559,2506,1107],{},[559,2508,2509],{},[565,2510,515],{"className":2511},[568],[559,2513,2514],{},[565,2515,495],{"className":2516},[574],[559,2518,1120],{},[525,2520,444],{"id":1123},[532,2522,2523,2535],{},[535,2524,2525],{},[538,2526,2527,2529,2531,2533],{},[541,2528,543],{},[541,2530,546],{},[541,2532,549],{},[541,2534,552],{},[554,2536,2537,2553,2569,2585,2601,2617,2633,2649],{},[538,2538,2539,2541,2546,2551],{},[559,2540,1144],{},[559,2542,2543],{},[565,2544,1150],{"className":2545},[947],[559,2547,2548],{},[565,2549,495],{"className":2550},[574],[559,2552,1158],{},[538,2554,2555,2557,2562,2567],{},[559,2556,1163],{},[559,2558,2559],{},[565,2560,1150],{"className":2561},[947],[559,2563,2564],{},[565,2565,495],{"className":2566},[574],[559,2568,1176],{},[538,2570,2571,2573,2578,2583],{},[559,2572,1181],{},[559,2574,2575],{},[565,2576,495],{"className":2577},[574],[559,2579,2580],{},[565,2581,495],{"className":2582},[574],[559,2584,1194],{},[538,2586,2587,2589,2594,2599],{},[559,2588,1199],{},[559,2590,2591],{},[565,2592,515],{"className":2593},[568],[559,2595,2596],{},[565,2597,495],{"className":2598},[574],[559,2600,1212],{},[538,2602,2603,2605,2610,2615],{},[559,2604,1217],{},[559,2606,2607],{},[565,2608,515],{"className":2609},[568],[559,2611,2612],{},[565,2613,495],{"className":2614},[574],[559,2616,1230],{},[538,2618,2619,2621,2626,2631],{},[559,2620,1235],{},[559,2622,2623],{},[565,2624,495],{"className":2625},[574],[559,2627,2628],{},[565,2629,495],{"className":2630},[574],[559,2632,1248],{},[538,2634,2635,2637,2642,2647],{},[559,2636,1253],{},[559,2638,2639],{},[565,2640,515],{"className":2641},[568],[559,2643,2644],{},[565,2645,495],{"className":2646},[574],[559,2648,1266],{},[538,2650,2651,2653,2658,2663],{},[559,2652,1271],{},[559,2654,2655],{},[565,2656,515],{"className":2657},[568],[559,2659,2660],{},[565,2661,495],{"className":2662},[574],[559,2664,1284],{},[525,2666,450],{"id":1287},[532,2668,2669,2681],{},[535,2670,2671],{},[538,2672,2673,2675,2677,2679],{},[541,2674,543],{},[541,2676,546],{},[541,2678,549],{},[541,2680,552],{},[554,2682,2683,2699,2715,2731],{},[538,2684,2685,2687,2692,2697],{},[559,2686,1308],{},[559,2688,2689],{},[565,2690,948],{"className":2691},[947],[559,2693,2694],{},[565,2695,495],{"className":2696},[574],[559,2698,1321],{},[538,2700,2701,2703,2708,2713],{},[559,2702,1326],{},[559,2704,2705],{},[565,2706,515],{"className":2707},[568],[559,2709,2710],{},[565,2711,495],{"className":2712},[574],[559,2714,1339],{},[538,2716,2717,2719,2724,2729],{},[559,2718,1344],{},[559,2720,2721],{},[565,2722,515],{"className":2723},[568],[559,2725,2726],{},[565,2727,495],{"className":2728},[574],[559,2730,1357],{},[538,2732,2733,2735,2740,2745],{},[559,2734,1362],{},[559,2736,2737],{},[565,2738,515],{"className":2739},[568],[559,2741,2742],{},[565,2743,495],{"className":2744},[574],[559,2746,1375],{},[525,2748,1379],{"id":1378},[532,2750,2751,2763],{},[535,2752,2753],{},[538,2754,2755,2757,2759,2761],{},[541,2756,543],{},[541,2758,546],{},[541,2760,549],{},[541,2762,552],{},[554,2764,2765,2781,2797,2813,2837,2853,2877,2893,2919,2935,2951],{},[538,2766,2767,2769,2774,2779],{},[559,2768,1400],{},[559,2770,2771],{},[565,2772,515],{"className":2773},[568],[559,2775,2776],{},[565,2777,495],{"className":2778},[574],[559,2780,1413],{},[538,2782,2783,2785,2790,2795],{},[559,2784,1418],{},[559,2786,2787],{},[565,2788,515],{"className":2789},[568],[559,2791,2792],{},[565,2793,495],{"className":2794},[574],[559,2796,1431],{},[538,2798,2799,2801,2806,2811],{},[559,2800,1436],{},[559,2802,2803],{},[565,2804,515],{"className":2805},[568],[559,2807,2808],{},[565,2809,495],{"className":2810},[574],[559,2812,1449],{},[538,2814,2815,2821,2826,2831],{},[559,2816,1454,2817,621,2819,798],{},[493,2818,1457],{},[493,2820,1460],{},[559,2822,2823],{},[565,2824,515],{"className":2825},[568],[559,2827,2828],{},[565,2829,495],{"className":2830},[574],[559,2832,1473,2833,1476,2835,1479],{},[493,2834,1457],{},[493,2836,1460],{},[538,2838,2839,2841,2846,2851],{},[559,2840,1484],{},[559,2842,2843],{},[565,2844,515],{"className":2845},[568],[559,2847,2848],{},[565,2849,495],{"className":2850},[574],[559,2852,1497],{},[538,2854,2855,2859,2864,2869],{},[559,2856,2857],{},[817,2858,1504],{},[559,2860,2861],{},[565,2862,515],{"className":2863},[568],[559,2865,2866],{},[565,2867,495],{"className":2868},[574],[559,2870,1517,2871,1521,2873,621,2875,1528],{},[493,2872,1520],{},[493,2874,1524],{},[493,2876,1527],{},[538,2878,2879,2881,2886,2891],{},[559,2880,1533],{},[559,2882,2883],{},[565,2884,515],{"className":2885},[568],[559,2887,2888],{},[565,2889,507],{"className":2890},[850],[559,2892,1546],{},[538,2894,2895,2897,2902,2907],{},[559,2896,1551],{},[559,2898,2899],{},[565,2900,515],{"className":2901},[568],[559,2903,2904],{},[565,2905,507],{"className":2906},[850],[559,2908,1564,2909,621,2911,621,2913,621,2915,1577,2917,1580],{},[493,2910,1567],{},[493,2912,1570],{},[493,2914,1573],{},[493,2916,1576],{},[521,2918,511],{"href":413},[538,2920,2921,2923,2928,2933],{},[559,2922,1585],{},[559,2924,2925],{},[565,2926,515],{"className":2927},[568],[559,2929,2930],{},[565,2931,507],{"className":2932},[850],[559,2934,1598],{},[538,2936,2937,2939,2944,2949],{},[559,2938,1603],{},[559,2940,2941],{},[565,2942,515],{"className":2943},[568],[559,2945,2946],{},[565,2947,507],{"className":2948},[850],[559,2950,1616],{},[538,2952,2953,2955,2960,2965],{},[559,2954,1621],{},[559,2956,2957],{},[565,2958,515],{"className":2959},[568],[559,2961,2962],{},[565,2963,511],{"className":2964},[1632],[559,2966,1635],{},[525,2968,456],{"id":1638},[532,2970,2971,2983],{},[535,2972,2973],{},[538,2974,2975,2977,2979,2981],{},[541,2976,543],{},[541,2978,546],{},[541,2980,549],{},[541,2982,552],{},[554,2984,2985,3001,3017,3033,3049],{},[538,2986,2987,2989,2994,2999],{},[559,2988,1659],{},[559,2990,2991],{},[565,2992,495],{"className":2993},[574],[559,2995,2996],{},[565,2997,495],{"className":2998},[574],[559,3000,1672],{},[538,3002,3003,3005,3010,3015],{},[559,3004,1677],{},[559,3006,3007],{},[565,3008,515],{"className":3009},[568],[559,3011,3012],{},[565,3013,495],{"className":3014},[574],[559,3016,1690],{},[538,3018,3019,3021,3026,3031],{},[559,3020,1695],{},[559,3022,3023],{},[565,3024,495],{"className":3025},[574],[559,3027,3028],{},[565,3029,495],{"className":3030},[574],[559,3032,1708],{},[538,3034,3035,3037,3042,3047],{},[559,3036,1713],{},[559,3038,3039],{},[565,3040,495],{"className":3041},[574],[559,3043,3044],{},[565,3045,495],{"className":3046},[574],[559,3048,1726],{},[538,3050,3051,3053,3058,3063],{},[559,3052,1731],{},[559,3054,3055],{},[565,3056,495],{"className":3057},[574],[559,3059,3060],{},[565,3061,495],{"className":3062},[574],[559,3064,1744,3065,1747,3067,1750],{},[493,3066,856],{},[493,3068,904],{},[525,3070,1754],{"id":1753},[532,3072,3073,3085],{},[535,3074,3075],{},[538,3076,3077,3079,3081,3083],{},[541,3078,543],{},[541,3080,546],{},[541,3082,549],{},[541,3084,552],{},[554,3086,3087,3103,3119],{},[538,3088,3089,3091,3096,3101],{},[559,3090,1775],{},[559,3092,3093],{},[565,3094,515],{"className":3095},[568],[559,3097,3098],{},[565,3099,495],{"className":3100},[574],[559,3102,1788],{},[538,3104,3105,3107,3112,3117],{},[559,3106,1793],{},[559,3108,3109],{},[565,3110,515],{"className":3111},[568],[559,3113,3114],{},[565,3115,495],{"className":3116},[574],[559,3118,1806],{},[538,3120,3121,3123,3128,3133],{},[559,3122,1811],{},[559,3124,3125],{},[565,3126,515],{"className":3127},[568],[559,3129,3130],{},[565,3131,495],{"className":3132},[574],[559,3134,1824],{},[1826,3136],{},[1829,3138,3139],{},[489,3140,1833,3141,1836],{},[521,3142,511],{"href":413},{"title":1838,"searchDepth":1839,"depth":1839,"links":3144},[3145,3146,3147,3148,3149,3150,3151,3152],{"id":527,"depth":1839,"text":426},{"id":749,"depth":1839,"text":432},{"id":860,"depth":1839,"text":861},{"id":1123,"depth":1839,"text":444},{"id":1287,"depth":1839,"text":450},{"id":1378,"depth":1839,"text":1379},{"id":1638,"depth":1839,"text":456},{"id":1753,"depth":1839,"text":1754},{"readingTime":3154},{"text":1853,"minutes":1854,"time":1855,"words":1856},{"title":406,"description":409},{"loc":407},1779384036454]