| <svg id="my-svg" width="100%" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" class="flowchart" style="max-width: 2078.53px; background-color: white;" viewBox="0 0 2078.53125 1134" role="graphics-document document" aria-roledescription="flowchart-v2"><style>#my-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;}}#my-svg .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#my-svg .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#my-svg .error-icon{fill:#552222;}#my-svg .error-text{fill:#552222;stroke:#552222;}#my-svg .edge-thickness-normal{stroke-width:1px;}#my-svg .edge-thickness-thick{stroke-width:3.5px;}#my-svg .edge-pattern-solid{stroke-dasharray:0;}#my-svg .edge-thickness-invisible{stroke-width:0;fill:none;}#my-svg .edge-pattern-dashed{stroke-dasharray:3;}#my-svg .edge-pattern-dotted{stroke-dasharray:2;}#my-svg .marker{fill:#333333;stroke:#333333;}#my-svg .marker.cross{stroke:#333333;}#my-svg svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#my-svg p{margin:0;}#my-svg .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#my-svg .cluster-label text{fill:#333;}#my-svg .cluster-label span{color:#333;}#my-svg .cluster-label span p{background-color:transparent;}#my-svg .label text,#my-svg span{fill:#333;color:#333;}#my-svg .node rect,#my-svg .node circle,#my-svg .node ellipse,#my-svg .node polygon,#my-svg .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#my-svg .rough-node .label text,#my-svg .node .label text,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-anchor:middle;}#my-svg .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#my-svg .rough-node .label,#my-svg .node .label,#my-svg .image-shape .label,#my-svg .icon-shape .label{text-align:center;}#my-svg .node.clickable{cursor:pointer;}#my-svg .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#my-svg .arrowheadPath{fill:#333333;}#my-svg .edgePath .path{stroke:#333333;stroke-width:2.0px;}#my-svg .flowchart-link{stroke:#333333;fill:none;}#my-svg .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#my-svg .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#my-svg .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#my-svg .cluster text{fill:#333;}#my-svg .cluster span{color:#333;}#my-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;}#my-svg .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#my-svg rect.text{fill:none;stroke-width:0;}#my-svg .icon-shape,#my-svg .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#my-svg .icon-shape p,#my-svg .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#my-svg .icon-shape rect,#my-svg .image-shape rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#my-svg .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#my-svg .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#my-svg :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}#my-svg .entity>*{fill:#f9f!important;stroke:#333!important;stroke-width:2px!important;}#my-svg .entity span{fill:#f9f!important;stroke:#333!important;stroke-width:2px!important;}</style><g><marker id="my-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="my-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="my-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="my-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="my-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="my-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="Episode_Lifecycle_Step" data-look="classic"><rect style="" x="1186.125" y="822" width="884.40625" height="128"/><g class="cluster-label" transform="translate(1544.4765625, 822)"><foreignObject width="167.703125" 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>Episode_Lifecycle_Step</p></span></div></foreignObject></g></g><g class="cluster" id="Episode_Lifecycle_Reset" data-look="classic"><rect style="" x="8" y="822" width="903.609375" height="128"/><g class="cluster-label" transform="translate(372.328125, 822)"><foreignObject width="174.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>Episode_Lifecycle_Reset</p></span></div></foreignObject></g></g><g class="cluster" id="SQLEnvironment_Methods" data-look="classic"><rect style="" x="88.8828125" y="644" width="1882.5234375" height="104"/><g class="cluster-label" transform="translate(937.89453125, 644)"><foreignObject width="184.5" 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>SQLEnvironment_Methods</p></span></div></foreignObject></g></g><g class="cluster" id="SQLEnv_Environment" data-look="classic"><rect style="" x="291.625" y="210" width="1624.9140625" height="360"/><g class="cluster-label" transform="translate(1028.83203125, 210)"><foreignObject width="150.5" 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>SQLEnv_Environment</p></span></div></foreignObject></g></g><g class="cluster" id="Agent" data-look="classic"><rect style="" x="1476.04296875" y="8" width="262.78125" height="104"/><g class="cluster-label" transform="translate(1586.79296875, 8)"><foreignObject width="41.28125" 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>Agent</p></span></div></foreignObject></g></g></g><g class="edgePaths"><path d="M1607.434,87L1607.434,91.167C1607.434,95.333,1607.434,103.667,1607.434,116C1607.434,128.333,1607.434,144.667,1607.434,161C1607.434,177.333,1607.434,193.667,1607.434,205.333C1607.434,217,1607.434,224,1607.434,227.5L1607.434,231" id="L_A_B_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_A_B_0" data-points="W3sieCI6MTYwNy40MzM1OTM3NSwieSI6ODd9LHsieCI6MTYwNy40MzM1OTM3NSwieSI6MTEyfSx7IngiOjE2MDcuNDMzNTkzNzUsInkiOjE2MX0seyJ4IjoxNjA3LjQzMzU5Mzc1LCJ5IjoyMTB9LHsieCI6MTYwNy40MzM1OTM3NSwieSI6MjM1fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1528.068,289L1509.942,295.167C1491.815,301.333,1455.562,313.667,1437.435,327.333C1419.309,341,1419.309,356,1419.309,363.5L1419.309,371" id="L_B_C_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_B_C_0" data-points="W3sieCI6MTUyOC4wNjgzNTkzNzUsInkiOjI4OX0seyJ4IjoxNDE5LjMwODU5Mzc1LCJ5IjozMjZ9LHsieCI6MTQxOS4zMDg1OTM3NSwieSI6Mzc1fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1419.309,429L1419.309,435.167C1419.309,441.333,1419.309,453.667,1419.309,463.333C1419.309,473,1419.309,480,1419.309,483.5L1419.309,487" id="L_C_D_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_C_D_0" data-points="W3sieCI6MTQxOS4zMDg1OTM3NSwieSI6NDI5fSx7IngiOjE0MTkuMzA4NTkzNzUsInkiOjQ2Nn0seyJ4IjoxNDE5LjMwODU5Mzc1LCJ5Ijo0OTF9XQ==" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1668.228,289L1682.113,295.167C1695.998,301.333,1723.769,313.667,1737.654,325.333C1751.539,337,1751.539,348,1751.539,353.5L1751.539,359" id="L_B_E_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_B_E_0" data-points="W3sieCI6MTY2OC4yMjgwODgzNzg5MDYyLCJ5IjoyODl9LHsieCI6MTc1MS41MzkwNjI1LCJ5IjozMjZ9LHsieCI6MTc1MS41MzkwNjI1LCJ5IjozNjN9XQ==" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1330.824,522.23L1164.291,530.192C997.758,538.154,664.691,554.077,498.158,568.205C331.625,582.333,331.625,594.667,331.625,607C331.625,619.333,331.625,631.667,331.625,641.333C331.625,651,331.625,658,331.625,661.5L331.625,665" id="L_D_I_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_D_I_0" data-points="W3sieCI6MTMzMC44MjQyMTg3NSwieSI6NTIyLjIzMDI2Mjg1MDc0fSx7IngiOjMzMS42MjUsInkiOjU3MH0seyJ4IjozMzEuNjI1LCJ5Ijo2MDd9LHsieCI6MzMxLjYyNSwieSI6NjQ0fSx7IngiOjMzMS42MjUsInkiOjY2OX1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1393.907,545L1389.987,549.167C1386.067,553.333,1378.227,561.667,1374.307,572C1370.387,582.333,1370.387,594.667,1370.387,607C1370.387,619.333,1370.387,631.667,1370.387,641.333C1370.387,651,1370.387,658,1370.387,661.5L1370.387,665" id="L_D_J_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_D_J_0" data-points="W3sieCI6MTM5My45MDY4NTA5NjE1Mzg2LCJ5Ijo1NDV9LHsieCI6MTM3MC4zODY3MTg3NSwieSI6NTcwfSx7IngiOjEzNzAuMzg2NzE4NzUsInkiOjYwN30seyJ4IjoxMzcwLjM4NjcxODc1LCJ5Ijo2NDR9LHsieCI6MTM3MC4zODY3MTg3NSwieSI6NjY5fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1507.793,536.633L1534.201,542.194C1560.609,547.756,1613.426,558.878,1639.834,570.606C1666.242,582.333,1666.242,594.667,1666.242,607C1666.242,619.333,1666.242,631.667,1666.242,641.333C1666.242,651,1666.242,658,1666.242,661.5L1666.242,665" id="L_D_S_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_D_S_0" data-points="W3sieCI6MTUwNy43OTI5Njg3NSwieSI6NTM2LjYzMzI5OTA1ODc2NzZ9LHsieCI6MTY2Ni4yNDIxODc1LCJ5Ijo1NzB9LHsieCI6MTY2Ni4yNDIxODc1LCJ5Ijo2MDd9LHsieCI6MTY2Ni4yNDIxODc1LCJ5Ijo2NDR9LHsieCI6MTY2Ni4yNDIxODc1LCJ5Ijo2Njl9XQ==" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M283.375,709.799L261.113,716.166C238.852,722.533,194.328,735.266,172.066,747.8C149.805,760.333,149.805,772.667,149.805,785C149.805,797.333,149.805,809.667,149.805,821.333C149.805,833,149.805,844,149.805,849.5L149.805,855" id="L_I_I_a_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_I_I_a_0" data-points="W3sieCI6MjgzLjM3NSwieSI6NzA5Ljc5OTMzODI4OTAwNDV9LHsieCI6MTQ5LjgwNDY4NzUsInkiOjc0OH0seyJ4IjoxNDkuODA0Njg3NSwieSI6Nzg1fSx7IngiOjE0OS44MDQ2ODc1LCJ5Ijo4MjJ9LHsieCI6MTQ5LjgwNDY4NzUsInkiOjg1OX1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M379.875,719.899L389.331,724.582C398.786,729.266,417.698,738.633,427.154,749.483C436.609,760.333,436.609,772.667,436.609,785C436.609,797.333,436.609,809.667,436.609,819.333C436.609,829,436.609,836,436.609,839.5L436.609,843" id="L_I_I_b_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_I_I_b_0" data-points="W3sieCI6Mzc5Ljg3NSwieSI6NzE5Ljg5ODc5NDQ2MzQ2MTl9LHsieCI6NDM2LjYwOTM3NSwieSI6NzQ4fSx7IngiOjQzNi42MDkzNzUsInkiOjc4NX0seyJ4Ijo0MzYuNjA5Mzc1LCJ5Ijo4MjJ9LHsieCI6NDM2LjYwOTM3NSwieSI6ODQ3fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M379.875,702.046L440.997,709.705C502.12,717.364,624.365,732.682,685.487,746.508C746.609,760.333,746.609,772.667,746.609,785C746.609,797.333,746.609,809.667,746.609,819.333C746.609,829,746.609,836,746.609,839.5L746.609,843" id="L_I_I_c_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_I_I_c_0" data-points="W3sieCI6Mzc5Ljg3NSwieSI6NzAyLjA0NjAxMDc2ODQ3Nzd9LHsieCI6NzQ2LjYwOTM3NSwieSI6NzQ4fSx7IngiOjc0Ni42MDkzNzUsInkiOjc4NX0seyJ4Ijo3NDYuNjA5Mzc1LCJ5Ijo4MjJ9LHsieCI6NzQ2LjYwOTM3NSwieSI6ODQ3fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1338.687,723L1333.795,727.167C1328.903,731.333,1319.12,739.667,1314.228,750C1309.336,760.333,1309.336,772.667,1309.336,785C1309.336,797.333,1309.336,809.667,1309.336,821.333C1309.336,833,1309.336,844,1309.336,849.5L1309.336,855" id="L_J_J_a_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_J_J_a_0" data-points="W3sieCI6MTMzOC42ODcyNzQ2Mzk0MjMsInkiOjcyM30seyJ4IjoxMzA5LjMzNTkzNzUsInkiOjc0OH0seyJ4IjoxMzA5LjMzNTkzNzUsInkiOjc4NX0seyJ4IjoxMzA5LjMzNTkzNzUsInkiOjgyMn0seyJ4IjoxMzA5LjMzNTkzNzUsInkiOjg1OX1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1452.89,723L1465.622,727.167C1478.354,731.333,1503.817,739.667,1516.549,750C1529.281,760.333,1529.281,772.667,1529.281,785C1529.281,797.333,1529.281,809.667,1529.281,821.333C1529.281,833,1529.281,844,1529.281,849.5L1529.281,855" id="L_J_J_b_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_J_J_b_0" data-points="W3sieCI6MTQ1Mi44ODk2NDg0Mzc1LCJ5Ijo3MjN9LHsieCI6MTUyOS4yODEyNSwieSI6NzQ4fSx7IngiOjE1MjkuMjgxMjUsInkiOjc4NX0seyJ4IjoxNTI5LjI4MTI1LCJ5Ijo4MjJ9LHsieCI6MTUyOS4yODEyNSwieSI6ODU5fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1458.121,708.372L1504.959,714.976C1551.797,721.581,1645.473,734.791,1692.311,747.562C1739.148,760.333,1739.148,772.667,1739.148,785C1739.148,797.333,1739.148,809.667,1739.148,821.333C1739.148,833,1739.148,844,1739.148,849.5L1739.148,855" id="L_J_J_c_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_J_J_c_0" data-points="W3sieCI6MTQ1OC4xMjEwOTM3NSwieSI6NzA4LjM3MTY0MDczMTc1NjR9LHsieCI6MTczOS4xNDg0Mzc1LCJ5Ijo3NDh9LHsieCI6MTczOS4xNDg0Mzc1LCJ5Ijo3ODV9LHsieCI6MTczOS4xNDg0Mzc1LCJ5Ijo4MjJ9LHsieCI6MTczOS4xNDg0Mzc1LCJ5Ijo4NTl9XQ==" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1458.121,703.852L1540.335,711.21C1622.549,718.568,1786.978,733.284,1869.192,746.809C1951.406,760.333,1951.406,772.667,1951.406,785C1951.406,797.333,1951.406,809.667,1951.406,821.333C1951.406,833,1951.406,844,1951.406,849.5L1951.406,855" id="L_J_J_d_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_J_J_d_0" data-points="W3sieCI6MTQ1OC4xMjEwOTM3NSwieSI6NzAzLjg1MjAzODEwNjUwNzN9LHsieCI6MTk1MS40MDYyNSwieSI6NzQ4fSx7IngiOjE5NTEuNDA2MjUsInkiOjc4NX0seyJ4IjoxOTUxLjQwNjI1LCJ5Ijo4MjJ9LHsieCI6MTk1MS40MDYyNSwieSI6ODU5fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M746.609,925L746.609,929.167C746.609,933.333,746.609,941.667,746.609,954C746.609,966.333,746.609,982.667,746.609,998.333C746.609,1014,746.609,1029,746.609,1036.5L746.609,1044" id="L_I_c_F_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_I_c_F_0" data-points="W3sieCI6NzQ2LjYwOTM3NSwieSI6OTI1fSx7IngiOjc0Ni42MDkzNzUsInkiOjk1MH0seyJ4Ijo3NDYuNjA5Mzc1LCJ5Ijo5OTl9LHsieCI6NzQ2LjYwOTM3NSwieSI6MTA0OH1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1282.652,715.731L1258.738,721.109C1234.823,726.487,1186.993,737.244,1163.079,748.788C1139.164,760.333,1139.164,772.667,1139.164,785C1139.164,797.333,1139.164,809.667,1139.164,826.5C1139.164,843.333,1139.164,864.667,1139.164,886C1139.164,907.333,1139.164,928.667,1139.164,947.5C1139.164,966.333,1139.164,982.667,1155.557,1000.657C1171.949,1018.648,1204.735,1038.296,1221.127,1048.12L1237.52,1057.944" id="L_J_G_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_J_G_0" data-points="W3sieCI6MTI4Mi42NTIzNDM3NSwieSI6NzE1LjczMDcxMTQwMTY4Nn0seyJ4IjoxMTM5LjE2NDA2MjUsInkiOjc0OH0seyJ4IjoxMTM5LjE2NDA2MjUsInkiOjc4NX0seyJ4IjoxMTM5LjE2NDA2MjUsInkiOjgyMn0seyJ4IjoxMTM5LjE2NDA2MjUsInkiOjg4Nn0seyJ4IjoxMTM5LjE2NDA2MjUsInkiOjk1MH0seyJ4IjoxMTM5LjE2NDA2MjUsInkiOjk5OX0seyJ4IjoxMjQwLjk1MDc3MjM3MjE1OSwieSI6MTA2MH1d" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1282.652,708.726L1237.528,715.272C1192.404,721.818,1102.155,734.909,1057.031,747.621C1011.906,760.333,1011.906,772.667,1011.906,785C1011.906,797.333,1011.906,809.667,1011.906,821.333C1011.906,833,1011.906,844,1011.906,849.5L1011.906,855" id="L_J_H_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_J_H_0" data-points="W3sieCI6MTI4Mi42NTIzNDM3NSwieSI6NzA4LjcyNjQ2MDQyODY3NTh9LHsieCI6MTAxMS45MDYyNSwieSI6NzQ4fSx7IngiOjEwMTEuOTA2MjUsInkiOjc4NX0seyJ4IjoxMDExLjkwNjI1LCJ5Ijo4MjJ9LHsieCI6MTAxMS45MDYyNSwieSI6ODU5fV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/><path d="M1951.406,913L1951.406,919.167C1951.406,925.333,1951.406,937.667,1951.406,952C1951.406,966.333,1951.406,982.667,1853.599,1003.768C1755.792,1024.87,1560.178,1050.74,1462.37,1063.675L1364.563,1076.61" id="L_J_d_G_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_J_d_G_0" data-points="W3sieCI6MTk1MS40MDYyNSwieSI6OTEzfSx7IngiOjE5NTEuNDA2MjUsInkiOjk1MH0seyJ4IjoxOTUxLjQwNjI1LCJ5Ijo5OTl9LHsieCI6MTM2MC41OTc2NTYyNSwieSI6MTA3Ny4xMzQ5MTYwMjIzNzgzfV0=" marker-end="url(#my-svg_flowchart-v2-pointEnd)"/></g><g class="edgeLabels"><g class="edgeLabel" transform="translate(1607.43359375, 161)"><g class="label" data-id="L_A_B_0" transform="translate(-100, -24)"><foreignObject width="200" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="edgeLabel"><p>WebSocket (persistent session)</p></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_B_C_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_C_D_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(1751.5390625, 326)"><g class="label" data-id="L_B_E_0" transform="translate(-30.71875, -12)"><foreignObject width="61.4375" 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>Contains</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(331.625, 607)"><g class="label" data-id="L_D_I_0" transform="translate(-16.9453125, -12)"><foreignObject width="33.890625" 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>Calls</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1370.38671875, 607)"><g class="label" data-id="L_D_J_0" transform="translate(-16.9453125, -12)"><foreignObject width="33.890625" 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>Calls</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1666.2421875, 607)"><g class="label" data-id="L_D_S_0" transform="translate(-16.9453125, -12)"><foreignObject width="33.890625" 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>Calls</p></span></div></foreignObject></g></g><g class="edgeLabel"><g class="label" data-id="L_I_I_a_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_I_I_b_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_I_I_c_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_J_J_a_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_J_J_b_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_J_J_c_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_J_J_d_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(746.609375, 999)"><g class="label" data-id="L_I_c_F_0" transform="translate(-30.71875, -12)"><foreignObject width="61.4375" 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>Contains</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1139.1640625, 886)"><g class="label" data-id="L_J_G_0" transform="translate(-26.9609375, -12)"><foreignObject width="53.921875" 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>Returns</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1011.90625, 785)"><g class="label" data-id="L_J_H_0" transform="translate(-26.9609375, -12)"><foreignObject width="53.921875" 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>Returns</p></span></div></foreignObject></g></g><g class="edgeLabel" transform="translate(1951.40625, 999)"><g class="label" data-id="L_J_d_G_0" transform="translate(-100, -24)"><foreignObject width="200" height="48"><div xmlns="http://www.w3.org/1999/xhtml" class="labelBkg" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="edgeLabel"><p>Compares to gold, computes terminal reward</p></span></div></foreignObject></g></g></g><g class="nodes"><g class="node default entity" id="flowchart-A-0" transform="translate(1607.43359375, 60)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-96.390625" y="-27" width="192.78125" height="54"/><g class="label" style="" transform="translate(-66.390625, -12)"><rect/><foreignObject width="132.78125" 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>Your Training Code</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-B-1" transform="translate(1607.43359375, 262)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-101.1796875" y="-27" width="202.359375" height="54"/><g class="label" style="" transform="translate(-71.1796875, -12)"><rect/><foreignObject width="142.359375" 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>DOCKER CONTAINER</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-C-2" transform="translate(1419.30859375, 402)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-108.2109375" y="-27" width="216.421875" height="54"/><g class="label" style="" transform="translate(-78.2109375, -12)"><rect/><foreignObject width="156.421875" 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>FastAPI Server app.py</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-D-3" transform="translate(1419.30859375, 518)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-88.484375" y="-27" width="176.96875" height="54"/><g class="label" style="" transform="translate(-58.484375, -12)"><rect/><foreignObject width="116.96875" 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>SQLEnvironment</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-E-4" transform="translate(1751.5390625, 402)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-130" y="-39" width="260" height="78"/><g class="label" style="" transform="translate(-100, -24)"><rect/><foreignObject width="200" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>SQLite databases + question sets</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-I-13" transform="translate(331.625, 696)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-48.25" y="-27" width="96.5" height="54"/><g class="label" style="" transform="translate(-18.25, -12)"><rect/><foreignObject width="36.5" 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>reset</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-J-14" transform="translate(1370.38671875, 696)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-87.734375" y="-27" width="175.46875" height="54"/><g class="label" style="" transform="translate(-57.734375, -12)"><rect/><foreignObject width="115.46875" 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>step action loop</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-S-15" transform="translate(1666.2421875, 696)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-48.1484375" y="-27" width="96.296875" height="54"/><g class="label" style="" transform="translate(-18.1484375, -12)"><rect/><foreignObject width="36.296875" 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>state</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-I_a-22" transform="translate(149.8046875, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-106.8046875" y="-27" width="213.609375" height="54"/><g class="label" style="" transform="translate(-76.8046875, -12)"><rect/><foreignObject width="153.609375" 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>Pick random question</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-I_b-23" transform="translate(436.609375, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-130" y="-39" width="260" height="78"/><g class="label" style="" transform="translate(-100, -24)"><rect/><foreignObject width="200" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>Load corresponding SQLite database read-only</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-I_c-24" transform="translate(746.609375, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-130" y="-39" width="260" height="78"/><g class="label" style="" transform="translate(-100, -24)"><rect/><foreignObject width="200" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>Return initial observation SQLObservation</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-J_a-31" transform="translate(1309.3359375, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-88.2109375" y="-27" width="176.421875" height="54"/><g class="label" style="" transform="translate(-58.2109375, -12)"><rect/><foreignObject width="116.421875" 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>DESCRIBE action</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-J_b-32" transform="translate(1529.28125, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-81.734375" y="-27" width="163.46875" height="54"/><g class="label" style="" transform="translate(-51.734375, -12)"><rect/><foreignObject width="103.46875" 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>SAMPLE action</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-J_c-33" transform="translate(1739.1484375, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-78.1328125" y="-27" width="156.265625" height="54"/><g class="label" style="" transform="translate(-48.1328125, -12)"><rect/><foreignObject width="96.265625" 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>QUERY action</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-J_d-34" transform="translate(1951.40625, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-84.125" y="-27" width="168.25" height="54"/><g class="label" style="" transform="translate(-54.125, -12)"><rect/><foreignObject width="108.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>ANSWER action</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-F-44" transform="translate(746.609375, 1087)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-130" y="-39" width="260" height="78"/><g class="label" style="" transform="translate(-100, -24)"><rect/><foreignObject width="200" height="48"><div xmlns="http://www.w3.org/1999/xhtml" style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;"><span class="nodeLabel"><p>SQLObservation typed, IDE-friendly</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-G-46" transform="translate(1286.00390625, 1087)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-74.59375" y="-27" width="149.1875" height="54"/><g class="label" style="" transform="translate(-44.59375, -12)"><rect/><foreignObject width="89.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>float reward</p></span></div></foreignObject></g></g><g class="node default entity" id="flowchart-H-48" transform="translate(1011.90625, 886)"><rect class="basic label-container" style="fill:#f9f !important;stroke:#333 !important;stroke-width:2px !important" x="-65.296875" y="-27" width="130.59375" height="54"/><g class="label" style="" transform="translate(-35.296875, -12)"><rect/><foreignObject width="70.59375" 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>bool done</p></span></div></foreignObject></g></g></g></g></g></svg> |