<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" style="background: #ffffff; background-color: light-dark(#ffffff, #121212); color-scheme: light;" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1815px" height="994px" viewBox="0 0 1815 994"><defs/><rect fill="#ffffff" style="fill: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));" width="100%" height="100%" x="0" y="0"/><g><g data-cell-id="0"><g data-cell-id="1"><g data-cell-id="05-2"><g><rect x="16.1" y="15.21" width="1780" height="44" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 37px; margin-left: 18px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: nowrap; "><span style="font-size:30px"><b>Trust extension: members double as sources</b></span></div></div></div></foreignObject><text x="18" y="41" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="12px">Trust extension: members double as sources</text></switch></g></g></g><g data-cell-id="05-3"><g><rect x="16.1" y="59.21" width="1780" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 74px; margin-left: 18px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><span style="font-size: 17px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">Nobody can list the world by hand. A permission can adopt what a curator publishes, inherit what a peer is permitted, or follow a relay's operator — one hop, held to both sides' rules.</span></div></div></div></foreignObject><text x="18" y="78" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" font-family="Helvetica" font-size="12px">Nobody can list the world by hand. A permission can adopt what a curator publishes, inherit what a peer is permitted, or follow a relay's operator — one hop, held to both sides' rules.</text></switch></g></g></g><g data-cell-id="05-4"><g><path d="M 446.1 165.21 L 446.1 135.21 Q 446.1 131.21 442.1 131.21 L 20.1 131.21 Q 16.1 131.21 16.1 135.21 L 16.1 165.21" fill="#ffe6cc" style="fill: light-dark(rgb(255, 230, 204), rgb(54, 33, 10)); stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke="#d79b00" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 16.1 165.21 L 16.1 527.21 Q 16.1 531.21 20.1 531.21 L 442.1 531.21 Q 446.1 531.21 446.1 527.21 L 446.1 165.21" fill="#ffffff" style="fill: light-dark(rgb(255, 255, 255), rgb(18, 18, 18)); stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke="#d79b00" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 16.1 165.21 L 446.1 165.21" fill="none" stroke="#d79b00" style="stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 148px; margin-left: 231px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap; "><span style="font-size:16px"><b>An issuing permission (example: via curator)</b></span></div></div></div></foreignObject><text x="231" y="152" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">An issuing permission (example: via curator)</text></switch></g></g><g data-cell-id="05-5"><g><rect x="26.1" y="171.21" width="410" height="354" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 412px; height: 1px; padding-top: 176px; margin-left: 26px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 13px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">In one of the guardian's binding carriers, e.g.:<br /><span style="font-family: Courier New;">"extend/npub": [{</span><br /><span style="font-family: Courier New;">  "pubkeys": ["&lt;curator C&gt;"],</span><br /><span style="font-family: Courier New;">  "extend": {</span><br /><span style="font-family: Courier New;">    "via": "curator",</span><br /><span style="font-family: Courier New;">    "map": { "interact/npub": "interact",</span><br /><span style="font-family: Courier New;">             "view/npub": "view" } },</span><br /><span style="font-family: Courier New;">  "profile": { "id": "&lt;profile id&gt;" },</span><br /><span style="font-family: Courier New;">  "monitorRelays": ["wss://…"] }]</span><br /><br />Its members are the sources. <span style="font-family: Courier New;">extend/*</span> members are sources only; on a view or interact permission a member is admitted and can be a source too.<br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">One route per permission: its via (peer or curator) for npub members; relay members always go through their operator.</span></div></div></div></foreignObject><text x="26" y="189" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="13px"><tspan x="26" y="189">In one of the guardian's binding carriers, e.g.:</tspan><tspan x="26" y="205">"extend/npub": [{</tspan><tspan x="26" y="221">"pubkeys": ["&lt;curator C&gt;"],</tspan><tspan x="26" y="237">"extend": {</tspan><tspan x="26" y="253">"via": "curator",</tspan><tspan x="26" y="269">"map": { "interact/npub": "interact",</tspan><tspan x="26" y="285">"view/npub": "view" } },</tspan><tspan x="26" y="301">"profile": { "id": "&lt;profile id&gt;" },</tspan><tspan x="26" y="317">"monitorRelays": ["wss://…"] }]</tspan><tspan x="26" y="333"></tspan><tspan x="26" y="349">Its members are the sources. extend/* members are sources only; on a</tspan><tspan x="26" y="365">view or interact permission a member is admitted and can be a source</tspan><tspan x="26" y="381">too.</tspan><tspan x="26" y="397">One route per permission: its via (peer or curator) for npub members;</tspan><tspan x="26" y="413">relay members always go through their operator.</tspan></text></switch></g></g></g></g><g data-cell-id="05-6"><g><rect x="496.1" y="139.21" width="810" height="24" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 812px; height: 1px; padding-top: 144px; margin-left: 496px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>via peer — inherit what a peer is permitted</b></div></div></div></foreignObject><text x="496" y="159" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px">via peer — inherit what a peer is permitted</text></switch></g></g></g><g data-cell-id="05-7"><g><rect x="496.1" y="319.21" width="810" height="24" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 812px; height: 1px; padding-top: 324px; margin-left: 496px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>via curator — adopt what a curator publishes</b></div></div></div></foreignObject><text x="496" y="339" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px">via curator — adopt what a curator publishes</text></switch></g></g></g><g data-cell-id="05-8"><g><rect x="496.1" y="499.21" width="810" height="24" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 812px; height: 1px; padding-top: 504px; margin-left: 496px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>a relay member — adopt what the relay's operator publishes</b></div></div></div></foreignObject><text x="496" y="519" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px">a relay member — adopt what the relay's operator publishes</text></switch></g></g></g><g data-cell-id="05-9"><g><rect x="496.1" y="171.21" width="180" height="110" rx="4" ry="4" fill="#e1d5e7" style="fill: light-dark(rgb(225, 213, 231), rgb(57, 47, 63)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 166px; height: 1px; padding-top: 226px; margin-left: 503px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>Peer P</b><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">another subject</span></div></div></div></foreignObject><text x="586" y="222" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="586" y="222">Peer P</tspan><tspan x="586" y="240">another subject</tspan></text></switch></g></g></g><g data-cell-id="05-10"><g><rect x="706.1" y="171.21" width="180" height="110" rx="4" ry="4" fill="#dae8fc" style="fill: light-dark(rgb(218, 232, 252), rgb(29, 41, 59)); stroke: light-dark(rgb(108, 142, 191), rgb(92, 121, 163));" stroke="#6c8ebf" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 166px; height: 1px; padding-top: 226px; margin-left: 713px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>P's association</b><br /><span style="font-family: Courier New;">17710</span><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">public portion only</span></div></div></div></foreignObject><text x="796" y="213" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="796" y="213">P's association</tspan><tspan x="796" y="231">17710</tspan><tspan x="796" y="249">public portion only</tspan></text></switch></g></g></g><g data-cell-id="05-11"><g><rect x="916.1" y="171.21" width="180" height="110" rx="4" ry="4" fill="#ffe6cc" style="fill: light-dark(rgb(255, 230, 204), rgb(54, 33, 10)); stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke="#d79b00" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 166px; height: 1px; padding-top: 226px; margin-left: 923px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>P's public guardians</b></div></div></div></foreignObject><text x="1006" y="231" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle">P's public guardians</text></switch></g></g></g><g data-cell-id="05-12"><g><rect x="1126.1" y="171.21" width="180" height="110" rx="4" ry="4" fill="#ffe6cc" style="fill: light-dark(rgb(255, 230, 204), rgb(54, 33, 10)); stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke="#d79b00" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 166px; height: 1px; padding-top: 226px; margin-left: 1133px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>their open binding carriers for P</b><br /><span style="font-family: Courier New;">37710:G:P</span></div></div></div></foreignObject><text x="1216" y="213" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="1216" y="213">their open binding</tspan><tspan x="1216" y="231">carriers for P</tspan><tspan x="1216" y="249">37710:G:P</tspan></text></switch></g></g></g><g data-cell-id="05-13"><g><rect x="496.1" y="351.21" width="180" height="110" rx="4" ry="4" fill="#e1d5e7" style="fill: light-dark(rgb(225, 213, 231), rgb(57, 47, 63)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 166px; height: 1px; padding-top: 406px; margin-left: 503px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>Curator C</b><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">any party</span></div></div></div></foreignObject><text x="586" y="402" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="586" y="402">Curator C</tspan><tspan x="586" y="420">any party</tspan></text></switch></g></g></g><g data-cell-id="05-14"><g><rect x="706.1" y="351.21" width="600" height="110" rx="4" ry="4" fill="#e1d5e7" style="fill: light-dark(rgb(225, 213, 231), rgb(57, 47, 63)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 586px; height: 1px; padding-top: 406px; margin-left: 713px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>C's open general carriers</b><br /><span style="font-family: Courier New;">37710:C:&lt;d that is not a subject address&gt;</span><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">newest first, at most 16 per author by default</span></div></div></div></foreignObject><text x="1006" y="393" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="1006" y="393">C's open general carriers</tspan><tspan x="1006" y="411">37710:C:&lt;d that is not a subject address&gt;</tspan><tspan x="1006" y="429">newest first, at most 16 per author by default</tspan></text></switch></g></g></g><g data-cell-id="05-15"><g><path d="M 516.1 543.21 C 516.1 537.69 547.44 533.21 586.1 533.21 C 604.67 533.21 622.47 534.27 635.6 536.14 C 648.73 538.02 656.1 540.56 656.1 543.21 L 656.1 623.21 C 656.1 628.74 624.76 633.21 586.1 633.21 C 547.44 633.21 516.1 628.74 516.1 623.21 Z" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 656.1 543.21 C 656.1 548.74 624.76 553.21 586.1 553.21 C 547.44 553.21 516.1 548.74 516.1 543.21" fill="none" stroke="#666666" style="stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 592px; margin-left: 517px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 13px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>Relay R</b><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">a relay member</span></div></div></div></foreignObject><text x="586" y="588" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="13px" text-anchor="middle"><tspan x="586" y="588">Relay R</tspan><tspan x="586" y="604">a relay member</tspan></text></switch></g></g></g><g data-cell-id="05-16"><g><rect x="706.1" y="531.21" width="180" height="110" rx="4" ry="4" fill="#e1d5e7" style="fill: light-dark(rgb(225, 213, 231), rgb(57, 47, 63)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 166px; height: 1px; padding-top: 586px; margin-left: 713px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>operator O</b><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">the pubkey in R's NIP-11 document</span></div></div></div></foreignObject><text x="796" y="573" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="796" y="573">operator O</tspan><tspan x="796" y="591">the pubkey in R's NIP-11</tspan><tspan x="796" y="609">document</tspan></text></switch></g></g></g><g data-cell-id="05-17"><g><rect x="916.1" y="531.21" width="390" height="110" rx="4" ry="4" fill="#e1d5e7" style="fill: light-dark(rgb(225, 213, 231), rgb(57, 47, 63)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 376px; height: 1px; padding-top: 586px; margin-left: 923px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>O's open general carriers</b><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">harvested exactly as a curator's</span></div></div></div></foreignObject><text x="1111" y="582" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle"><tspan x="1111" y="582">O's open general carriers</tspan><tspan x="1111" y="600">harvested exactly as a curator's</tspan></text></switch></g></g></g><g data-cell-id="05-18"><g><path d="M 676.1 226.21 L 694.87 226.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 703.87 226.21 L 694.87 230.71 L 694.87 221.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-19"><g><path d="M 886.1 226.21 L 904.87 226.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 913.87 226.21 L 904.87 230.71 L 904.87 221.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-20"><g><path d="M 1096.1 226.21 L 1114.87 226.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1123.87 226.21 L 1114.87 230.71 L 1114.87 221.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-21"><g><path d="M 676.1 406.21 L 694.87 406.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 703.87 406.21 L 694.87 410.71 L 694.87 401.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-22"><g><path d="M 656.1 583.21 L 671.13 583.23 Q 681.13 583.25 681.13 584.71 L 681.13 585.44 Q 681.13 586.18 688 586.19 L 694.87 586.2" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 703.87 586.21 L 694.86 590.7 L 694.87 581.7 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-23"><g><path d="M 886.1 586.21 L 904.87 586.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 913.87 586.21 L 904.87 590.71 L 904.87 581.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-24"><g><path d="M 446.1 331.21 L 461.14 331.22 Q 471.14 331.23 471.14 341.23 L 471.14 396.26 Q 471.14 406.26 478 406.25 L 484.87 406.24" fill="none" stroke="#d79b00" style="stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 493.87 406.22 L 484.87 410.74 L 484.86 401.74 Z" fill="#d79b00" style="fill: light-dark(rgb(215, 155, 0), rgb(153, 101, 0)); stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke="#d79b00" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-25"><g><rect x="1351.1" y="141.21" width="200" height="490" rx="4" ry="4" fill="#fff2cc" style="fill: light-dark(rgb(255, 242, 204), rgb(40, 29, 0)); stroke: light-dark(rgb(214, 182, 86), rgb(109, 81, 0));" stroke="#d6b656" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 174px; height: 1px; padding-top: 160px; margin-left: 1365px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size:19px"><b>The map</b></span><br /><br />selects which of the source's categories flow in, and at which mode:<br /><br /><span style="font-family: Courier New;">"interact"</span> kept as is<br /><br /><span style="font-family: Courier New;">"view"</span> demoted to view, stripped of routing<br /><br />absent: not harvested<br /><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">A view category can never be promoted to interact.</span></div></div></div></foreignObject><text x="1365" y="174" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="14px"><tspan x="1365" y="174">The map</tspan><tspan x="1365" y="191"></tspan><tspan x="1365" y="208">selects which of the</tspan><tspan x="1365" y="225">source's categories flow in,</tspan><tspan x="1365" y="242">and at which mode:</tspan><tspan x="1365" y="259"></tspan><tspan x="1365" y="276">"interact" kept as is</tspan><tspan x="1365" y="293"></tspan><tspan x="1365" y="310">"view" demoted to view,</tspan><tspan x="1365" y="327">stripped of routing</tspan><tspan x="1365" y="344"></tspan><tspan x="1365" y="361">absent: not harvested</tspan><tspan x="1365" y="378"></tspan><tspan x="1365" y="395">A view category can never</tspan><tspan x="1365" y="412">be promoted to interact.</tspan></text></switch></g></g></g><g data-cell-id="05-26"><g><path d="M 1306.1 226.21 L 1318.58 226.23 Q 1328.58 226.23 1328.58 236.23 L 1328.58 376.21 Q 1328.58 386.21 1334.22 386.21 L 1339.87 386.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1348.87 386.21 L 1339.86 390.71 L 1339.87 381.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-27"><g><path d="M 1306.1 406.21 L 1318.58 406.24 Q 1328.58 406.26 1328.58 396.26 L 1328.58 391.24 Q 1328.58 386.21 1334.22 386.21 L 1339.87 386.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1348.87 386.21 L 1339.86 390.71 L 1339.87 381.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-28"><g><path d="M 1306.1 586.21 L 1318.58 586.19 Q 1328.58 586.18 1328.58 576.18 L 1328.58 396.21 Q 1328.58 386.21 1334.22 386.21 L 1339.87 386.21" fill="none" stroke="#9673a6" style="stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1348.87 386.21 L 1339.86 390.71 L 1339.87 381.71 Z" fill="#9673a6" style="fill: light-dark(rgb(150, 115, 166), rgb(149, 119, 163)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-29"><g><rect x="1581.1" y="141.21" width="215" height="490" rx="4" ry="4" fill="#b0e3e6" style="fill: light-dark(rgb(176, 227, 230), rgb(16, 60, 63)); stroke: light-dark(rgb(14, 128, 136), rgb(70, 168, 175));" stroke="#0e8088" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 189px; height: 1px; padding-top: 160px; margin-left: 1595px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size:19px"><b>Harvested entries</b></span><br /><br />join the subject's construct and behave exactly as entries a guardian wrote: hits, coverage, the sealed channel.<br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">One exception: a harvested relay entry never switches on the relay whitelist.</span><br /><br />Each carries provenance: the issuing carrier, the route, the harvested carrier.<br /><br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">A verdict they decide names the layer extension.</span></div></div></div></foreignObject><text x="1595" y="174" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="14px"><tspan x="1595" y="174">Harvested entries</tspan><tspan x="1595" y="191"></tspan><tspan x="1595" y="208">join the subject's construct</tspan><tspan x="1595" y="225">and behave exactly as entries</tspan><tspan x="1595" y="242">a guardian wrote: hits,</tspan><tspan x="1595" y="259">coverage, the sealed channel.</tspan><tspan x="1595" y="276">One exception: a harvested</tspan><tspan x="1595" y="293">relay entry never switches on</tspan><tspan x="1595" y="310">the relay whitelist.</tspan><tspan x="1595" y="327"></tspan><tspan x="1595" y="344">Each carries provenance: the</tspan><tspan x="1595" y="361">issuing carrier, the route, the</tspan><tspan x="1595" y="378">harvested carrier.</tspan><tspan x="1595" y="395"></tspan><tspan x="1595" y="412">A verdict they decide names</tspan><tspan x="1595" y="429">the layer extension.</tspan></text></switch></g></g></g><g data-cell-id="05-30"><g><path d="M 1551.1 386.21 L 1569.87 386.21" fill="none" stroke="#0e8088" style="stroke: light-dark(rgb(14, 128, 136), rgb(70, 168, 175));" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1578.87 386.21 L 1569.87 390.71 L 1569.87 381.71 Z" fill="#0e8088" style="fill: light-dark(rgb(14, 128, 136), rgb(70, 168, 175)); stroke: light-dark(rgb(14, 128, 136), rgb(70, 168, 175));" stroke="#0e8088" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="05-31"><g><path d="M 716.1 715.21 L 716.1 685.21 Q 716.1 681.21 712.1 681.21 L 20.1 681.21 Q 16.1 681.21 16.1 685.21 L 16.1 715.21" fill="#b0e3e6" style="fill: light-dark(rgb(176, 227, 230), rgb(16, 60, 63)); stroke: light-dark(rgb(14, 128, 136), rgb(70, 168, 175));" stroke="#0e8088" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 16.1 715.21 L 16.1 917.21 Q 16.1 921.21 20.1 921.21 L 712.1 921.21 Q 716.1 921.21 716.1 917.21 L 716.1 715.21" fill="#ffffff" style="fill: light-dark(rgb(255, 255, 255), rgb(18, 18, 18)); stroke: light-dark(rgb(14, 128, 136), rgb(70, 168, 175));" stroke="#0e8088" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 16.1 715.21 L 716.1 715.21" fill="none" stroke="#0e8088" style="stroke: light-dark(rgb(14, 128, 136), rgb(70, 168, 175));" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 698px; margin-left: 366px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap; "><span style="font-size:16px"><b>What a harvested entry carries</b></span></div></div></div></foreignObject><text x="366" y="702" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">What a harvested entry carries</text></switch></g></g><g data-cell-id="05-32"><g><rect x="26.1" y="721.21" width="680" height="194" fill="none" stroke="none" pointer-events="all"/></g></g></g><g data-cell-id="05-33"><g><rect x="40.1" y="737.21" width="150" height="76" rx="4" ry="4" fill="#ffe6cc" style="fill: light-dark(rgb(255, 230, 204), rgb(54, 33, 10)); stroke: light-dark(rgb(215, 155, 0), rgb(153, 101, 0));" stroke="#d79b00" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 136px; height: 1px; padding-top: 775px; margin-left: 47px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 13px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">issuing permission's own restrictions</div></div></div></foreignObject><text x="115" y="771" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="13px" text-anchor="middle"><tspan x="115" y="771">issuing permission's</tspan><tspan x="115" y="787">own restrictions</tspan></text></switch></g></g></g><g data-cell-id="05-34"><g><rect x="190.1" y="757.21" width="26" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 762px; margin-left: 189px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size:22px"><b>∧</b></span></div></div></div></foreignObject><text x="203" y="777" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle">∧</text></switch></g></g></g><g data-cell-id="05-35"><g><rect x="216.1" y="737.21" width="150" height="76" rx="4" ry="4" fill="#fff2cc" style="fill: light-dark(rgb(255, 242, 204), rgb(40, 29, 0)); stroke: light-dark(rgb(214, 182, 86), rgb(109, 81, 0));" stroke="#d6b656" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 136px; height: 1px; padding-top: 775px; margin-left: 223px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 13px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">its profile's</div></div></div></foreignObject><text x="291" y="779" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="13px" text-anchor="middle">its profile's</text></switch></g></g></g><g data-cell-id="05-36"><g><rect x="366.1" y="757.21" width="26" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 762px; margin-left: 365px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size:22px"><b>∧</b></span></div></div></div></foreignObject><text x="379" y="777" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle">∧</text></switch></g></g></g><g data-cell-id="05-37"><g><rect x="392.1" y="737.21" width="150" height="76" rx="4" ry="4" fill="#e1d5e7" style="fill: light-dark(rgb(225, 213, 231), rgb(57, 47, 63)); stroke: light-dark(rgb(150, 115, 166), rgb(149, 119, 163));" stroke="#9673a6" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 136px; height: 1px; padding-top: 775px; margin-left: 399px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 13px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">harvested permission's own restrictions</div></div></div></foreignObject><text x="467" y="771" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="13px" text-anchor="middle"><tspan x="467" y="771">harvested permission's</tspan><tspan x="467" y="787">own restrictions</tspan></text></switch></g></g></g><g data-cell-id="05-38"><g><rect x="542.1" y="757.21" width="26" height="30" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 762px; margin-left: 541px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size:22px"><b>∧</b></span></div></div></div></foreignObject><text x="555" y="777" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="15px" text-anchor="middle">∧</text></switch></g></g></g><g data-cell-id="05-39"><g><rect x="568.1" y="737.21" width="150" height="76" rx="4" ry="4" fill="#fff2cc" style="fill: light-dark(rgb(255, 242, 204), rgb(40, 29, 0)); stroke: light-dark(rgb(214, 182, 86), rgb(109, 81, 0));" stroke="#d6b656" stroke-width="1.5" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 136px; height: 1px; padding-top: 775px; margin-left: 575px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 13px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">its profile's</div></div></div></foreignObject><text x="643" y="779" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="13px" text-anchor="middle">its profile's</text></switch></g></g></g><g data-cell-id="05-40"><g><rect x="40.1" y="825.21" width="660" height="90" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 662px; height: 1px; padding-top: 830px; margin-left: 40px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Non-void only where all four allow: inheritance only narrows. A deny in any one voids the entry for that evaluation.<br /><b>Routing law: </b>the issuing permission's relays route every entry it gives rise to; a harvested entry never brings routing of its own — so no source can redirect where the subject's events go.</div></div></div></foreignObject><text x="40" y="844" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="14px"><tspan x="40" y="844">Non-void only where all four allow: inheritance only narrows. A deny in any one voids the entry for that</tspan><tspan x="40" y="861">evaluation.</tspan><tspan x="40" y="878">Routing law: the issuing permission's relays route every entry it gives rise to; a harvested entry never</tspan><tspan x="40" y="895">brings routing of its own — so no source can redirect where the subject's events go.</tspan></text></switch></g></g></g><g data-cell-id="05-41"><g><path d="M 1296.1 715.21 L 1296.1 685.21 Q 1296.1 681.21 1292.1 681.21 L 740.1 681.21 Q 736.1 681.21 736.1 685.21 L 736.1 715.21" fill="#f8cecc" style="fill: light-dark(rgb(248, 206, 204), rgb(81, 45, 43)); stroke: light-dark(rgb(184, 84, 80), rgb(215, 129, 126));" stroke="#b85450" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 736.1 715.21 L 736.1 917.21 Q 736.1 921.21 740.1 921.21 L 1292.1 921.21 Q 1296.1 921.21 1296.1 917.21 L 1296.1 715.21" fill="#ffffff" style="fill: light-dark(rgb(255, 255, 255), rgb(18, 18, 18)); stroke: light-dark(rgb(184, 84, 80), rgb(215, 129, 126));" stroke="#b85450" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/><path d="M 736.1 715.21 L 1296.1 715.21" fill="none" stroke="#b85450" style="stroke: light-dark(rgb(184, 84, 80), rgb(215, 129, 126));" stroke-width="1.5" stroke-miterlimit="10" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 698px; margin-left: 1016px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #1f2933; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap; "><span style="font-size:16px"><b>The rules that keep it safe</b></span></div></div></div></foreignObject><text x="1016" y="702" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">The rules that keep it safe</text></switch></g></g><g data-cell-id="05-42"><g><rect x="746.1" y="721.21" width="540" height="194" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 542px; height: 1px; padding-top: 726px; margin-left: 746px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">• Single hop: harvested permissions arrive with their extension stripped.<br />• Deny beats harvest: a denied party is never a source, and a carrier it authored contributes nothing.<br />• A harvested carrier's deny and global sections never enter the subject's gates.<br />• Live: what a source adds arrives at the next refresh, with no further guardian act.<br />• Budgets: by default at most 1000 entries per source; breakage in a harvested carrier drops that carrier, never the household's assembly.</div></div></div></foreignObject><text x="746" y="740" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="14px"><tspan x="746" y="740">• Single hop: harvested permissions arrive with their extension stripped.</tspan><tspan x="746" y="757">• Deny beats harvest: a denied party is never a source, and a carrier it authored</tspan><tspan x="746" y="774">contributes nothing.</tspan><tspan x="746" y="791">• A harvested carrier's deny and global sections never enter the subject's gates.</tspan><tspan x="746" y="808">• Live: what a source adds arrives at the next refresh, with no further guardian act.</tspan><tspan x="746" y="825">• Budgets: by default at most 1000 entries per source; breakage in a harvested carrier</tspan><tspan x="746" y="842">drops that carrier, never the household's assembly.</tspan></text></switch></g></g></g></g><g data-cell-id="05-43"><g transform="translate(0.5,0.5)"><path d="M 1316.1 681.21 L 1782.1 681.21 L 1796.1 695.21 L 1796.1 921.21 L 1316.1 921.21 L 1316.1 681.21 Z" fill="#fbfbfb" style="fill: light-dark(rgb(251, 251, 251), rgb(21, 21, 21)); stroke: light-dark(rgb(179, 179, 179), rgb(83, 83, 83));" stroke="#b3b3b3" stroke-miterlimit="10" pointer-events="all"/><path d="M 1782.1 681.21 L 1782.1 695.21 L 1796.1 695.21" fill="none" stroke="#b3b3b3" style="stroke: light-dark(rgb(179, 179, 179), rgb(83, 83, 83));" stroke-miterlimit="10" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 462px; height: 1px; padding-top: 696px; margin-left: 1326px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size:17px"><b>Choose interact deliberately</b></span><br /><br />Adopting a source at interact gives every npub it names the standing of a direct grant — the sealed channel in both directions included — and keeps doing so as the source adds keys.<br /><br />The closure is per source, on the extend permission's own profile: <span style="font-family: Courier New;">{deny,*,*,*,output,opaque}</span> stops sealed sends; add <span style="font-family: Courier New;">{deny,*,*,*,input,opaque}</span> to stop sealed arrivals.<br /><span style="font-size: 12px; color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">A helpline in the same catalog is kept private by mirroring it as a direct grant.</span></div></div></div></foreignObject><text x="1326" y="710" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="14px"><tspan x="1326" y="710">Choose interact deliberately</tspan><tspan x="1326" y="727"></tspan><tspan x="1326" y="744">Adopting a source at interact gives every npub it names the standing of a</tspan><tspan x="1326" y="761">direct grant — the sealed channel in both directions included — and keeps</tspan><tspan x="1326" y="778">doing so as the source adds keys.</tspan><tspan x="1326" y="795"></tspan><tspan x="1326" y="812">The closure is per source, on the extend permission's own profile:</tspan><tspan x="1326" y="829">{deny,*,*,*,output,opaque} stops sealed sends; add</tspan><tspan x="1326" y="846">{deny,*,*,*,input,opaque} to stop sealed arrivals.</tspan><tspan x="1326" y="863">A helpline in the same catalog is kept private by mirroring it as a direct</tspan><tspan x="1326" y="880">grant.</tspan></text></switch></g></g></g><g data-cell-id="05-44"><g transform="translate(0.5,0.5)"><path d="M 16.1 943.21 L 1796.1 943.21" fill="none" stroke="#d9dee4" style="stroke: light-dark(rgb(217, 222, 228), rgb(42, 47, 52));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="05-45"><g><rect x="16.1" y="951.21" width="1780" height="26" fill="none" stroke="none" pointer-events="all"/></g><g><g><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe flex-start; width: 1782px; height: 1px; padding-top: 964px; margin-left: 16px;"><div style="box-sizing: border-box; font-size: 0; text-align: left; color: #1f2933; "><div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: light-dark(#1f2933, #c4ccd5); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="color: light-dark(rgb(82, 96, 109), rgb(146, 158, 170));">TEPP Zeta · diagram 05 · statements: CONS-012–CONS-057, POL-049–POL-053, POL-088, POL-092, POL-095–POL-107, ASSOC-039, CAPS-020, CAPS-021, TOOL-044, NF-041</span></div></div></div></foreignObject><text x="16" y="968" fill="#1f2933" style="fill: light-dark(rgb(31, 41, 51), rgb(196, 204, 213));" font-family="Helvetica" font-size="12px">TEPP Zeta · diagram 05 · statements: CONS-012–CONS-057, POL-049–POL-053, POL-088, POL-092, POL-095–POL-107, ASSOC-039, CAPS-020, CAPS-021, TOOL-044, NF-041</text></switch></g></g></g></g></g></g></svg>