| 1 |
- <svg id="mermaid-svg" width="100%" xmlns="http://www.w3.org/2000/svg" class="flowchart" style="max-width: 1503.109375px;" viewBox="0 0 1503.109375 1022.1444702148438" role="graphics-document document" aria-roledescription="flowchart-v2" xmlns:xlink="http://www.w3.org/1999/xlink"><style xmlns="http://www.w3.org/1999/xhtml">@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css");</style><style>#mermaid-svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg .error-icon{fill:#552222;}#mermaid-svg .error-text{fill:#552222;stroke:#552222;}#mermaid-svg .edge-thickness-normal{stroke-width:1px;}#mermaid-svg .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg .marker{fill:#333333;stroke:#333333;}#mermaid-svg .marker.cross{stroke:#333333;}#mermaid-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg p{margin:0;}#mermaid-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg .cluster-label text{fill:#333;}#mermaid-svg .cluster-label span{color:#333;}#mermaid-svg .cluster-label span p{background-color:transparent;}#mermaid-svg .label text,#mermaid-svg span{fill:#333;color:#333;}#mermaid-svg .node rect,#mermaid-svg .node circle,#mermaid-svg .node ellipse,#mermaid-svg .node polygon,#mermaid-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg .rough-node .label text,#mermaid-svg .node .label text,#mermaid-svg .image-shape .label,#mermaid-svg .icon-shape .label{text-anchor:middle;}#mermaid-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg .rough-node .label,#mermaid-svg .node .label,#mermaid-svg .image-shape .label,#mermaid-svg .icon-shape .label{text-align:center;}#mermaid-svg .node.clickable{cursor:pointer;}#mermaid-svg .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg .arrowheadPath{fill:#333333;}#mermaid-svg .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg .cluster text{fill:#333;}#mermaid-svg .cluster span{color:#333;}#mermaid-svg div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg rect.text{fill:none;stroke-width:0;}#mermaid-svg .icon-shape,#mermaid-svg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg .icon-shape p,#mermaid-svg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg .icon-shape rect,#mermaid-svg .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker id="mermaid-svg_flowchart-v2-pointEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 0 L 10 5 L 0 10 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="mermaid-svg_flowchart-v2-pointStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="4.5" refY="5" markerUnits="userSpaceOnUse" markerWidth="8" markerHeight="8" orient="auto"><path d="M 0 5 L 10 10 L 10 0 z" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="mermaid-svg_flowchart-v2-circleEnd" class="marker flowchart-v2" viewBox="0 0 10 10" refX="11" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="mermaid-svg_flowchart-v2-circleStart" class="marker flowchart-v2" viewBox="0 0 10 10" refX="-1" refY="5" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><circle cx="5" cy="5" r="5" class="arrowMarkerPath" style="stroke-width: 1; stroke-dasharray: 1, 0;"/></marker><marker id="mermaid-svg_flowchart-v2-crossEnd" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="12" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;"/></marker><marker id="mermaid-svg_flowchart-v2-crossStart" class="marker cross flowchart-v2" viewBox="0 0 11 11" refX="-1" refY="5.2" markerUnits="userSpaceOnUse" markerWidth="11" markerHeight="11" orient="auto"><path d="M 1,1 l 9,9 M 10,1 l -9,9" class="arrowMarkerPath" style="stroke-width: 2; stroke-dasharray: 1, 0;"/></marker><g class="root"><g class="clusters"><g class="cluster " id="Router" data-look="classic"><rect style="" x="8" y="8" width="1487.109375" height="615.8831958770752"/><g class="cluster-label " transform="translate(719.6875, 8)"><foreignObject width="63.734375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>OpenWrt</p></span></div></foreignObject></g></g></g><g class="edgePaths"><path d="M216.969,96.726L226.695,90.966C236.422,85.206,255.875,73.686,289.176,67.926C322.477,62.166,369.625,62.166,424.924,62.166C480.224,62.166,543.674,62.166,594.858,83.202C646.041,104.237,684.958,146.308,704.416,167.344L723.874,188.38" id="L_Init_State_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Init_State_0" data-points="W3sieCI6MjE2Ljk2ODc1LCJ5Ijo5Ni43MjYxNzY1OTI1NjAyNn0seyJ4IjoyNzUuMzI4MTI1LCJ5Ijo2Mi4xNjYyODQ1NjExNTcyM30seyJ4Ijo0MTYuNzczNDM3NSwieSI6NjIuMTY2Mjg0NTYxMTU3MjN9LHsieCI6NjA3LjEyNSwieSI6NjIuMTY2Mjg0NTYxMTU3MjN9LHsieCI6NzI2LjU5MDI2NTg5MzE2NzIsInkiOjE5MS4zMTU5NDMyNTQ0MjMxM31d" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M216.969,108.617L226.695,108.236C236.422,107.855,255.875,107.094,289.176,106.713C322.477,106.333,369.625,106.333,424.924,106.333C480.224,106.333,543.674,106.333,591.654,121.028C639.633,135.723,672.14,165.113,688.394,179.808L704.648,194.502" id="L_Init_State_2" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Init_State_2" data-points="W3sieCI6MjE2Ljk2ODc1LCJ5IjoxMDguNjE2ODE1NDQxNjIyMTF9LHsieCI6Mjc1LjMyODEyNSwieSI6MTA2LjMzMjU2OTEyMjMxNDQ1fSx7IngiOjQxNi43NzM0Mzc1LCJ5IjoxMDYuMzMyNTY5MTIyMzE0NDV9LHsieCI6NjA3LjEyNSwieSI6MTA2LjMzMjU2OTEyMjMxNDQ1fSx7IngiOjcwNy42MTQ3MzYzNjA5MDY2LCJ5IjoxOTcuMTg1MDYxNDQxMzM3Njd9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M151.531,152.901L172.164,192.358C192.797,231.815,234.062,310.728,269.126,362.256C304.191,413.784,333.053,437.927,347.484,449.999L361.916,462.071" id="L_Init_Lua_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Init_Lua_0" data-points="W3sieCI6MTUxLjUzMDY4ODAyMzI1MzA1LCJ5IjoxNTIuOTAxMjA3MDE3OTU5Mjh9LHsieCI6Mjc1LjMyODEyNSwieSI6Mzg5LjY0MTEwMTgzNzE1ODJ9LHsieCI6MzY0Ljk4Mzc0Njc5MDIyMDQsInkiOjQ2NC42MzcwNTU2MjQyODU4NH1d" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M221.414,547.076L230.4,547.076C239.385,547.076,257.357,547.076,274.015,542.424C290.672,537.772,306.017,528.467,313.689,523.815L321.361,519.163" id="L_UCI_Lua_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_UCI_Lua_0" data-points="W3sieCI6MjIxLjQxNDA2MjUsInkiOjU0Ny4wNzYxNzk1MDQzOTQ1fSx7IngiOjI3NS4zMjgxMjUsInkiOjU0Ny4wNzYxNzk1MDQzOTQ1fSx7IngiOjMyNC43ODEyNSwieSI6NTE3LjA4ODUxODY5MjI4OTh9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M441.282,462.592L468.922,415.327C496.563,368.062,551.844,273.533,595.113,232.511C638.382,191.489,669.638,203.975,685.266,210.217L700.895,216.46" id="L_Lua_State_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lua_State_0" data-points="W3sieCI6NDQxLjI4MTgyNDEyMzM2NjksInkiOjQ2Mi41OTE4ODk4NzA3MjM0fSx7IngiOjYwNy4xMjUsInkiOjE3OS4wMDM0NTAzOTM2NzY3Nn0seyJ4Ijo3MDQuNjA5Mzc1LCJ5IjoyMTcuOTQzODQ3MjkwMDgyMzJ9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M226.75,232.852L234.846,231.311C242.943,229.769,259.135,226.686,274.68,226.928C290.224,227.169,305.12,230.735,312.568,232.517L320.016,234.3" id="L_HP1_Lib_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_HP1_Lib_0" data-points="W3sieCI6MjI2Ljc1LCJ5IjoyMzIuODUyMjA1NjA1OTU3MTV9LHsieCI6Mjc1LjMyODEyNSwieSI6MjIzLjYwMzI5NDM3MjU1ODZ9LHsieCI6MzIzLjkwNjI1LCJ5IjoyMzUuMjMxMzYyNDU3MTkxMX1d" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M221,367.985L230.055,366.261C239.109,364.537,257.219,361.089,276.641,351.009C296.064,340.928,316.8,324.215,327.168,315.859L337.536,307.502" id="L_HP2_Lib_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_HP2_Lib_0" data-points="W3sieCI6MjIxLCJ5IjozNjcuOTg0NzcwMDEyOTQ2OH0seyJ4IjoyNzUuMzI4MTI1LCJ5IjozNTcuNjQxMTAxODM3MTU4Mn0seyJ4IjozNDAuNjUwNzU2Mjg0NjEyODQsInkiOjMwNC45OTE4OTQ3MDM0ODI4fV0=" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M509.641,240.65L525.888,237.709C542.135,234.768,574.63,228.886,606.466,228.401C638.303,227.916,669.48,232.829,685.069,235.285L700.658,237.741" id="L_Lib_State_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lib_State_0" data-points="W3sieCI6NTA5LjY0MDYyNSwieSI6MjQwLjY1MDA0MjQzNjI5NTZ9LHsieCI6NjA3LjEyNSwieSI6MjIzLjAwMzQ1MDM5MzY3Njc2fSx7IngiOjcwNC42MDkzNzUsInkiOjIzOC4zNjQwNTAwMDQzOTI1N31d" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M495.992,304.231L514.514,318.027C533.036,331.824,570.081,359.418,604.353,359.175C638.624,358.933,670.124,330.854,685.874,316.815L701.623,302.776" id="L_Lib_State_2" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lib_State_2" data-points="W3sieCI6NDk1Ljk5MTc2NzI5MTcyOTUsInkiOjMwNC4yMzA3Mzc0MzI4OTU0fSx7IngiOjYwNy4xMjUsInkiOjM4Ny4wMTExNDg0NTI3NTg4fSx7IngiOjcwNC42MDkzNzUsInkiOjMwMC4xMTQxOTEwNTU2NDY0fV0=" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M508.766,483.552L525.159,474.795C541.552,466.038,574.339,448.525,609.59,420.297C644.841,392.069,682.556,353.127,701.414,333.656L720.272,314.185" id="L_Lua_State_2" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lua_State_2" data-points="W3sieCI6NTA4Ljc2NTYyNSwieSI6NDgzLjU1MjE2MzMwMDEyNTQ3fSx7IngiOjYwNy4xMjUsInkiOjQzMS4wMTExNDg0NTI3NTg4fSx7IngiOjcyMy4wNTQ1NjAyMTQxMDY1LCJ5IjozMTEuMzExMTg5NDc1NTM4MjR9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M507.254,533.514L523.899,543.242C540.544,552.97,573.835,572.427,617.462,639.149C661.09,705.872,715.054,819.861,742.037,876.855L769.019,933.849" id="L_Lua_Server_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lua_Server_0" data-points="W3sieCI6NTA3LjI1Mzg3Mzk1OTE4MzcsInkiOjUzMy41MTM5NTQ5Mjk0MDA0fSx7IngiOjYwNy4xMjUsInkiOjU5MS44ODMxOTU4NzcwNzUyfSx7IngiOjc3MC43MzA1MzUwMzg5MzgsInkiOjkzNy40NjQ3Njk5MzIxNTYyfV0=" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M797.555,937.058L820.299,834.05C843.042,731.043,888.529,525.028,920.699,422.02C952.87,319.013,971.724,319.013,981.151,319.013L990.578,319.013" id="L_Server_WScli_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Server_WScli_0" data-points="W3sieCI6Nzk3LjU1NTA3NTE0MDUyOTksInkiOjkzNy4wNTc5NTM0NzYyMTI2fSx7IngiOjkzNC4wMTU2MjUsInkiOjMxOS4wMTI2MTcxMTEyMDYwNX0seyJ4Ijo5OTQuNTc4MTI1LCJ5IjozMTkuMDEyNjE3MTExMjA2MDV9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M1132.906,319.013L1137.073,319.013C1141.24,319.013,1149.573,319.013,1157.24,319.013C1164.906,319.013,1171.906,319.013,1175.406,319.013L1178.906,319.013" id="L_WScli_CMDex_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_WScli_CMDex_0" data-points="W3sieCI6MTEzMi45MDYyNSwieSI6MzE5LjAxMjYxNzExMTIwNjA1fSx7IngiOjExNTcuOTA2MjUsInkiOjMxOS4wMTI2MTcxMTEyMDYwNX0seyJ4IjoxMTgyLjkwNjI1LCJ5IjozMTkuMDEyNjE3MTExMjA2MDV9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M1337.531,319.013L1341.698,319.013C1345.865,319.013,1354.198,319.013,1361.865,319.013C1369.531,319.013,1376.531,319.013,1380.031,319.013L1383.531,319.013" id="L_CMDex_UB_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_CMDex_UB_0" data-points="W3sieCI6MTMzNy41MzEyNSwieSI6MzE5LjAxMjYxNzExMTIwNjA1fSx7IngiOjEzNjIuNTMxMjUsInkiOjMxOS4wMTI2MTcxMTEyMDYwNX0seyJ4IjoxMzg3LjUzMTI1LCJ5IjozMTkuMDEyNjE3MTExMjA2MDV9XQ==" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M508.766,503.883L525.159,503.883C541.552,503.883,574.339,503.883,613.219,529.861C652.1,555.839,697.074,607.795,719.562,633.773L742.049,659.75" id="L_Lua_Sys_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lua_Sys_0" data-points="W3sieCI6NTA4Ljc2NTYyNSwieSI6NTAzLjg4MzE5NTg3NzA3NTJ9LHsieCI6NjA3LjEyNSwieSI6NTAzLjg4MzE5NTg3NzA3NTJ9LHsieCI6NzQ0LjY2NzEwOTYyMDA0NjMsInkiOjY2Mi43NzQ3OTcxNTk0NjkyfV0=" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/><path d="M508.766,525.147L525.159,528.937C541.552,532.726,574.339,540.305,616.76,587.158C659.181,634.011,711.238,720.138,737.266,763.202L763.294,806.265" id="L_Lua_DNS_0" class=" edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" style=";" data-edge="true" data-et="edge" data-id="L_Lua_DNS_0" data-points="W3sieCI6NTA4Ljc2NTYyNSwieSI6NTI1LjE0NzMwNDIyOTIxOTd9LHsieCI6NjA3LjEyNSwieSI6NTQ3Ljg4MzE5NTg3NzA3NTJ9LHsieCI6NzY1LjM2MzE1ODY5MTI3NTEsInkiOjgwOS42ODg1MjkwNzQxOTUyfV0=" marker-end="url(#mermaid-svg_flowchart-v2-pointEnd)"/></g><g class="edgeLabels"><g class="edgeLabel" transform="translate(416.7734375, 62.16628456115723)"><g class="label" data-id="L_Init_State_0" transform="translate(-52.9140625, -12)"><foreignObject width="105.828125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>create state dir</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(416.7734375, 106.33256912231445)"><g class="label" data-id="L_Init_State_2" transform="translate(-53.359375, -12)"><foreignObject width="106.71875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>export UCI env</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(240.51164, 323.06096)"><g class="label" data-id="L_Init_Lua_0" transform="translate(-23.578125, -12)"><foreignObject width="47.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>launch</p></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_UCI_Lua_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(550.69975, 275.48947)"><g class="label" data-id="L_Lua_State_0" transform="translate(-29.7890625, -12)"><foreignObject width="59.578125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>write pid</p></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_HP1_Lib_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_HP2_Lib_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(606.93727, 223.03743)"><g class="label" data-id="L_Lib_State_0" transform="translate(-54.2421875, -12)"><foreignObject width="108.484375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>spool NDJSON</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(603.92373, 384.6266)"><g class="label" data-id="L_Lib_State_2" transform="translate(-40.46875, -12)"><foreignObject width="80.9375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>touch wake</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(626.29985, 411.21267)"><g class="label" data-id="L_Lua_State_2" transform="translate(-45.8046875, -12)"><foreignObject width="91.609375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>poll wake file</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(664.1791, 712.39774)"><g class="label" data-id="L_Lua_Server_0" transform="translate(-12.890625, -12)"><foreignObject width="25.78125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>WS</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(934.015625, 319.01261711120605)"><g class="label" data-id="L_Server_WScli_0" transform="translate(-35.5625, -12)"><foreignObject width="71.125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>WS frame</p></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_WScli_CMDex_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_CMDex_UB_0" transform="translate(0, 0)"><foreignObject width="0" height="0"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(607.125, 503.8831958770752)"><g class="label" data-id="L_Lua_Sys_0" transform="translate(-35.578125, -12)"><foreignObject width="71.15625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>read state</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(660.13417, 635.58697)"><g class="label" data-id="L_Lua_DNS_0" transform="translate(-72.484375, -12)"><foreignObject width="144.96875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="edgeLabel "><p>poll dnsmasq leases</p></span></div></foreignObject></g></g></g><g class="nodes"><g class="node default " id="flowchart-Init-0" transform="translate(129.875, 112.02575492858887)"><path d="M0,14.55504491330687 a87.09375,14.55504491330687 0,0,0 174.1875,0 a87.09375,14.55504491330687 0,0,0 -174.1875,0 l0,53.55504491330687 a87.09375,14.55504491330687 0,0,0 174.1875,0 l0,-53.55504491330687" class="basic label-container" style="" label-offset-y="14.55504491330687" transform="translate(-87.09375, -41.33256736996031)"/><g class="label" style="" transform="translate(-79.59375, -2)"><rect/><foreignObject width="159.1875" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>/etc/init.d/client2server</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-State-1" transform="translate(789.03125, 251.6663932800293)"><path d="M0,14.365096245878975 a84.421875,14.365096245878975 0,0,0 168.84375,0 a84.421875,14.365096245878975 0,0,0 -168.84375,0 l0,101.36509624587897 a84.421875,14.365096245878975 0,0,0 168.84375,0 l0,-101.36509624587897" class="basic label-container" style="" label-offset-y="14.365096245878975" transform="translate(-84.421875, -65.04764436881847)"/><g class="label" style="" transform="translate(-76.921875, -26)"><rect/><foreignObject width="153.84375" height="72"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>State dir<br />/var/run/client2server/<br />{buffer,pid,env,wake}</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-Lua-2" transform="translate(416.7734375, 503.8831958770752)"><path d="M0,14.88621997471555 a91.9921875,14.88621997471555 0,0,0 183.984375,0 a91.9921875,14.88621997471555 0,0,0 -183.984375,0 l0,53.88621997471555 a91.9921875,14.88621997471555 0,0,0 183.984375,0 l0,-53.88621997471555" class="basic label-container" style="" label-offset-y="14.88621997471555" transform="translate(-91.9921875, -41.829329962073324)"/><g class="label" style="" transform="translate(-84.4921875, -2)"><rect/><foreignObject width="168.984375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>client2server-unified.lua</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-Lib-3" transform="translate(416.7734375, 257.4608325958252)"><path d="M0,14.943178961130386 a92.8671875,14.943178961130386 0,0,0 185.734375,0 a92.8671875,14.943178961130386 0,0,0 -185.734375,0 l0,77.94317896113039 a92.8671875,14.943178961130386 0,0,0 185.734375,0 l0,-77.94317896113039" class="basic label-container" style="" label-offset-y="14.943178961130386" transform="translate(-92.8671875, -53.91476844169558)"/><g class="label" style="" transform="translate(-85.3671875, -14)"><rect/><foreignObject width="170.734375" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>hotplug-lib.sh<br />/usr/share/client2server/</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-HP1-4" transform="translate(129.875, 251.296480178833)"><path d="M0,15.196078431372548 a96.875,15.196078431372548 0,0,0 193.75,0 a96.875,15.196078431372548 0,0,0 -193.75,0 l0,54.19607843137255 a96.875,15.196078431372548 0,0,0 193.75,0 l0,-54.19607843137255" class="basic label-container" style="" label-offset-y="15.196078431372548" transform="translate(-96.875, -42.294117647058826)"/><g class="label" style="" transform="translate(-89.375, -2)"><rect/><foreignObject width="178.75" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>hotplug.d/wireless/01-wifi</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-HP2-5" transform="translate(129.875, 385.3342876434326)"><path d="M0,14.82912937347437 a91.125,14.82912937347437 0,0,0 182.25,0 a91.125,14.82912937347437 0,0,0 -182.25,0 l0,53.82912937347437 a91.125,14.82912937347437 0,0,0 182.25,0 l0,-53.82912937347437" class="basic label-container" style="" label-offset-y="14.82912937347437" transform="translate(-91.125, -41.74369406021155)"/><g class="label" style="" transform="translate(-83.625, -2)"><rect/><foreignObject width="167.25" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>hotplug.d/dhcp/02-dhcp</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-UCI-6" transform="translate(129.875, 547.0761795043945)"><path d="M0,14.856469036871735 a91.5390625,14.856469036871735 0,0,0 183.078125,0 a91.5390625,14.856469036871735 0,0,0 -183.078125,0 l0,53.85646903687174 a91.5390625,14.856469036871735 0,0,0 183.078125,0 l0,-53.85646903687174" class="basic label-container" style="" label-offset-y="14.856469036871735" transform="translate(-91.5390625, -41.7847035553076)"/><g class="label" style="" transform="translate(-84.0390625, -2)"><rect/><foreignObject width="168.078125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>/etc/config/client2server</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-UB-7" transform="translate(1428.8203125, 319.01261711120605)"><path d="M0,9.945427173503953 a41.2890625,9.945427173503953 0,0,0 82.578125,0 a41.2890625,9.945427173503953 0,0,0 -82.578125,0 l0,48.94542717350395 a41.2890625,9.945427173503953 0,0,0 82.578125,0 l0,-48.94542717350395" class="basic label-container" style="" label-offset-y="9.945427173503953" transform="translate(-41.2890625, -34.41814076025593)"/><g class="label" style="" transform="translate(-33.7890625, -2)"><rect/><foreignObject width="67.578125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>UCI store</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-WScli-8" transform="translate(1063.7421875, 319.01261711120605)"><path d="M0,13.132676674776004 a69.1640625,13.132676674776004 0,0,0 138.328125,0 a69.1640625,13.132676674776004 0,0,0 -138.328125,0 l0,76.13267667477601 a69.1640625,13.132676674776004 0,0,0 138.328125,0 l0,-76.13267667477601" class="basic label-container" style="" label-offset-y="13.132676674776004" transform="translate(-69.1640625, -51.19901501216401)"/><g class="label" style="" transform="translate(-61.6640625, -14)"><rect/><foreignObject width="123.328125" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>WebSocket client<br />(luasocket)</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-CMDex-9" transform="translate(1260.21875, 319.01261711120605)"><path d="M0,13.82431828341529 a77.3125,13.82431828341529 0,0,0 154.625,0 a77.3125,13.82431828341529 0,0,0 -154.625,0 l0,52.82431828341529 a77.3125,13.82431828341529 0,0,0 154.625,0 l0,-52.82431828341529" class="basic label-container" style="" label-offset-y="13.82431828341529" transform="translate(-77.3125, -40.236477425122935)"/><g class="label" style="" transform="translate(-69.8125, -2)"><rect/><foreignObject width="139.625" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>Command executor</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-Server-31" transform="translate(789.03125, 975.5460262298584)"><path d="M0,12.732319205054285 a64.8671875,12.732319205054285 0,0,0 129.734375,0 a64.8671875,12.732319205054285 0,0,0 -129.734375,0 l0,51.73231920505428 a64.8671875,12.732319205054285 0,0,0 129.734375,0 l0,-51.73231920505428" class="basic label-container" style="" label-offset-y="12.732319205054285" transform="translate(-64.8671875, -38.59847880758143)"/><g class="label" style="" transform="translate(-57.3671875, -2)"><rect/><foreignObject width="114.734375" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>Go server :3843</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-Sys-39" transform="translate(789.03125, 708.8783702850342)"><path d="M0,12.332953321932992 a60.8515625,12.332953321932992 0,0,0 121.703125,0 a60.8515625,12.332953321932992 0,0,0 -121.703125,0 l0,75.33295332193299 a60.8515625,12.332953321932992 0,0,0 121.703125,0 l0,-75.33295332193299" class="basic label-container" style="" label-offset-y="12.332953321932992" transform="translate(-60.8515625, -49.999429982899485)"/><g class="label" style="" transform="translate(-53.3515625, -14)"><rect/><foreignObject width="106.703125" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>/sys/class/net/*<br />/usr/bin/ubus</p></span></div></foreignObject></g></g><g class="node default " id="flowchart-DNS-41" transform="translate(789.03125, 847.9105472564697)"><path d="M0,13.02466918148614 a67.9765625,13.02466918148614 0,0,0 135.953125,0 a67.9765625,13.02466918148614 0,0,0 -135.953125,0 l0,52.02466918148614 a67.9765625,13.02466918148614 0,0,0 135.953125,0 l0,-52.02466918148614" class="basic label-container" style="" label-offset-y="13.02466918148614" transform="translate(-67.9765625, -39.03700377222921)"/><g class="label" style="" transform="translate(-60.4765625, -2)"><rect/><foreignObject width="120.953125" height="24"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;"><span class="nodeLabel "><p>/tmp/dhcp.leases</p></span></div></foreignObject></g></g></g></g></g></svg>
|