Files
BUT3ProjetJeuGroupe/Diagrammes/Diagramme - Bot.svg

3 lines
22 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css" type="text/css"?>
<svg id="graph-546" width="100%" xmlns="http://www.w3.org/2000/svg" class="classDiagram" style="max-width: 100%; background-color: rgb(2, 8, 23);" viewBox="0 -48 1510.8499755859375 376" role="graphics-document document" aria-roledescription="class" height="100%" xmlns:xlink="http://www.w3.org/1999/xlink"><style>#graph-546{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#ccc;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#graph-546 .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#graph-546 .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#graph-546 .error-icon{fill:#a44141;}#graph-546 .error-text{fill:#ddd;stroke:#ddd;}#graph-546 .edge-thickness-normal{stroke-width:1px;}#graph-546 .edge-thickness-thick{stroke-width:3.5px;}#graph-546 .edge-pattern-solid{stroke-dasharray:0;}#graph-546 .edge-thickness-invisible{stroke-width:0;fill:none;}#graph-546 .edge-pattern-dashed{stroke-dasharray:3;}#graph-546 .edge-pattern-dotted{stroke-dasharray:2;}#graph-546 .marker{fill:lightgrey;stroke:lightgrey;}#graph-546 .marker.cross{stroke:lightgrey;}#graph-546 svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#graph-546 p{margin:0;}#graph-546 g.classGroup text{fill:#ccc;stroke:none;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:10px;}#graph-546 g.classGroup text .title{font-weight:bolder;}#graph-546 .nodeLabel,#graph-546 .edgeLabel{color:#e0dfdf;}#graph-546 .edgeLabel .label rect{fill:#1f2020;}#graph-546 .label text{fill:#e0dfdf;}#graph-546 .labelBkg{background:#1f2020;}#graph-546 .edgeLabel .label span{background:#1f2020;}#graph-546 .classTitle{font-weight:bolder;}#graph-546 .node rect,#graph-546 .node circle,#graph-546 .node ellipse,#graph-546 .node polygon,#graph-546 .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#graph-546 .divider{stroke:#ccc;stroke-width:1;}#graph-546 g.clickable{cursor:pointer;}#graph-546 g.classGroup rect{fill:#1f2020;stroke:#ccc;}#graph-546 g.classGroup line{stroke:#ccc;stroke-width:1;}#graph-546 .classLabel .box{stroke:none;stroke-width:0;fill:#1f2020;opacity:0.5;}#graph-546 .classLabel .label{fill:#ccc;font-size:10px;}#graph-546 .relation{stroke:lightgrey;stroke-width:1;fill:none;}#graph-546 .dashed-line{stroke-dasharray:3;}#graph-546 .dotted-line{stroke-dasharray:1 2;}#graph-546 #compositionStart,#graph-546 .composition{fill:lightgrey!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #compositionEnd,#graph-546 .composition{fill:lightgrey!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #dependencyStart,#graph-546 .dependency{fill:lightgrey!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #dependencyStart,#graph-546 .dependency{fill:lightgrey!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #extensionStart,#graph-546 .extension{fill:transparent!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #extensionEnd,#graph-546 .extension{fill:transparent!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #aggregationStart,#graph-546 .aggregation{fill:transparent!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #aggregationEnd,#graph-546 .aggregation{fill:transparent!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #lollipopStart,#graph-546 .lollipop{fill:#1f2020!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 #lollipopEnd,#graph-546 .lollipop{fill:#1f2020!important;stroke:lightgrey!important;stroke-width:1;}#graph-546 .edgeTerminals{font-size:11px;line-height:initial;}#graph-546 .classTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#graph-546 .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#graph-546 .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#graph-546 :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><defs><marker id="graph-546_class-aggregationStart" class="marker aggregation class" refX="18" refY="7" markerWidth="190" markerHeight="240" orient="auto"><path d="M 18,7 L9,13 L1,7 L9,1 Z"></path></marker></defs><defs><marker id="graph-546_class-aggregationEnd" class="marker aggregation class" refX="1" refY="7" markerWidth="20" markerHeight="28" orient="auto"><path d="M 18,7 L9,13 L1,7 L9,1 Z"></path></marker></defs><defs><marker id="graph-546_class-extensionStart" class="marker extension class" refX="18" refY="7" markerWidth="190" markerHeight="240" orient="auto"><path d="M 1,7 L18,13 V 1 Z"></path></marker></defs><defs><marker id="graph-546_class-extensionEnd" class="marker extension class" refX="1" refY="7" markerWidth="20" markerHeight="28" orient="auto"><path d="M 1,1 V 13 L18,7 Z"></path></marker></defs><defs><marker id="graph-546_class-compositionStart" class="marker composition class" refX="18" refY="7" markerWidth="190" markerHeight="240" orient="auto"><path d="M 18,7 L9,13 L1,7 L9,1 Z"></path></marker></defs><defs><marker id="graph-546_class-compositionEnd" class="marker composition class" refX="1" refY="7" markerWidth="20" markerHeight="28" orient="auto"><path d="M 18,7 L9,13 L1,7 L9,1 Z"></path></marker></defs><defs><marker id="graph-546_class-dependencyStart" class="marker dependency class" refX="6" refY="7" markerWidth="190" markerHeight="240" orient="auto"><path d="M 5,7 L9,13 L1,7 L9,1 Z"></path></marker></defs><defs><marker id="graph-546_class-dependencyEnd" class="marker dependency class" refX="13" refY="7" markerWidth="20" markerHeight="28" orient="auto"><path d="M 18,7 L9,13 L14,7 L9,1 Z"></path></marker></defs><defs><marker id="graph-546_class-lollipopStart" class="marker lollipop class" refX="13" refY="7" markerWidth="190" markerHeight="240" orient="auto"><circle stroke="black" fill="transparent" cx="7" cy="7" r="6"></circle></marker></defs><defs><marker id="graph-546_class-lollipopEnd" class="marker lollipop class" refX="1" refY="7" markerWidth="190" markerHeight="240" orient="auto"><circle stroke="black" fill="transparent" cx="7" cy="7" r="6"></circle></marker></defs><g class="root"><g class="clusters"></g><g class="edgePaths"></g><g class="edgeLabels"></g><g class="nodes"><g class="node default" id="classId-AlphaBetaBot-13498" transform="translate(267.92498779296875, 164)"><g class="basic label-container"><path d="M-259.9250030517578 -156 L259.9250030517578 -156 L259.9250030517578 156 L-259.9250030517578 156" stroke="none" stroke-width="0" fill="#1f2020" style=""></path><path d="M-259.9250030517578 -156 C-104.4074694165933 -156, 51.11006421857121 -156, 259.9250030517578 -156 M-259.9250030517578 -156 C-142.60325960514834 -156, -25.281516158538864 -156, 259.9250030517578 -156 M259.9250030517578 -156 C259.9250030517578 -48.896077132204525, 259.9250030517578 58.20784573559095, 259.9250030517578 156 M259.9250030517578 -156 C259.9250030517578 -81.73932222595751, 259.9250030517578 -7.478644451915017, 259.9250030517578 156 M259.9250030517578 156 C129.41133459700012 156, -1.1023338577575714 156, -259.9250030517578 156 M259.9250030517578 156 C105.38042354827863 156, -49.164155955200556 156, -259.9250030517578 156 M-259.9250030517578 156 C-259.9250030517578 80.83805106429205, -259.9250030517578 5.676102128584091, -259.9250030517578 -156 M-259.9250030517578 156 C-259.9250030517578 51.52425610359764, -259.9250030517578 -52.95148779280473, -259.9250030517578 -156" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g><g class="annotation-group text" transform="translate(0, -132)"></g><g class="label-group text" transform="translate(-50.333335876464844, -132)"><g class="label" style="font-weight: bolder" transform="translate(0,-12)"><foreignObject width="100.66667175292969" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 158px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>AlphaBetaBot</p></span></div></foreignObject></g></g><g class="members-group text" transform="translate(-247.9250030517578, -84)"><g class="label" style="" transform="translate(0,-12)"><foreignObject width="83.46665954589844" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 151px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-me: Player</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,12)"><foreignObject width="108.51666259765625" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 180px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-maxDepth: int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,36)"><foreignObject width="96.83332824707031" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 165px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-rng: Random</p></span></div></foreignObject></g></g><g class="methods-group text" transform="translate(-247.9250030517578, 12)"><g class="label" style="" transform="translate(0,-12)"><foreignObject width="282.933349609375" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 371px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>+AlphaBetaBot(Player p, int maxDepth)</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,12)"><foreignObject width="315.91668701171875" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 413px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>+giveYourMove(IBoard board) : : AbstractPly</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,36)"><foreignObject width="445.51666259765625" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 551px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-alphaBeta(IBoard board, int depth, int alpha, int beta) : : int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,60)"><foreignObject width="254.75" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 344px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-terminalValue(IBoard board) : : int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,84)"><foreignObject width="216.9166717529297" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 301px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-evaluate(IBoard board) : : int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,108)"><foreignObject width="225.93333435058594" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 316px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-listMoves(IBoard board) : : List</p></span></div></foreignObject></g></g><g class="divider" style=""><path d="M-259.92498779296875 -108 C-144.49812851223405 -108, -29.071269231499343 -108, 259.92498779296875 -108 M-259.92498779296875 -108 C-69.53052444788261 -108, 120.86393889720352 -108, 259.92498779296875 -108" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g><g class="divider" style=""><path d="M-259.92498779296875 -12 C-115.45570308950894 -12, 29.013581613950862 -12, 259.92498779296875 -12 M-259.92498779296875 -12 C-144.90339225051582 -12, -29.88179670806292 -12, 259.92498779296875 -12" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g></g><g class="node default" id="classId-DivineBot-13499" transform="translate(830.6874694824219, 164)"><g class="basic label-container"><path d="M-252.83749389648438 -156 L252.83749389648438 -156 L252.83749389648438 156 L-252.83749389648438 156" stroke="none" stroke-width="0" fill="#1f2020" style=""></path><path d="M-252.83749389648438 -156 C-147.65187127689055 -156, -42.46624865729672 -156, 252.83749389648438 -156 M-252.83749389648438 -156 C-94.96710003241276 -156, 62.90329383165886 -156, 252.83749389648438 -156 M252.83749389648438 -156 C252.83749389648438 -83.86059643602869, 252.83749389648438 -11.721192872057372, 252.83749389648438 156 M252.83749389648438 -156 C252.83749389648438 -42.67656567898946, 252.83749389648438 70.64686864202108, 252.83749389648438 156 M252.83749389648438 156 C124.07901327191257 156, -4.6794673526592305 156, -252.83749389648438 156 M252.83749389648438 156 C71.34213672571477 156, -110.15322044505484 156, -252.83749389648438 156 M-252.83749389648438 156 C-252.83749389648438 64.94241946734054, -252.83749389648438 -26.115161065318915, -252.83749389648438 -156 M-252.83749389648438 156 C-252.83749389648438 66.53785788585783, -252.83749389648438 -22.924284228284336, -252.83749389648438 -156" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g><g class="annotation-group text" transform="translate(0, -132)"></g><g class="label-group text" transform="translate(-36.15833282470703, -132)"><g class="label" style="font-weight: bolder" transform="translate(0,-12)"><foreignObject width="72.31666564941406" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 127px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>DivineBot</p></span></div></foreignObject></g></g><g class="members-group text" transform="translate(-240.83749389648438, -84)"><g class="label" style="" transform="translate(0,-12)"><foreignObject width="83.46665954589844" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 151px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-me: Player</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,12)"><foreignObject width="108.51666259765625" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 180px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-maxDepth: int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,36)"><foreignObject width="96.83332824707031" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 165px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-rng: Random</p></span></div></foreignObject></g></g><g class="methods-group text" transform="translate(-240.83749389648438, 12)"><g class="label" style="" transform="translate(0,-12)"><foreignObject width="254.4499969482422" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 340px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>+DivineBot(Player p, int maxDepth)</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,12)"><foreignObject width="315.91668701171875" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 413px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>+giveYourMove(IBoard board) : : AbstractPly</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,36)"><foreignObject width="445.51666259765625" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 551px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-alphaBeta(IBoard board, int depth, int alpha, int beta) : : int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,60)"><foreignObject width="254.75" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 344px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-terminalValue(IBoard board) : : int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,84)"><foreignObject width="216.9166717529297" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 301px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-evaluate(IBoard board) : : int</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,108)"><foreignObject width="225.93333435058594" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 316px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-listMoves(IBoard board) : : List</p></span></div></foreignObject></g></g><g class="divider" style=""><path d="M-252.83749389648438 -108 C-113.79563074533903 -108, 25.246232405806325 -108, 252.83749389648438 -108 M-252.83749389648438 -108 C-88.85415055676319 -108, 75.129192782958 -108, 252.83749389648438 -108" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g><g class="divider" style=""><path d="M-252.83749389648438 -12 C-83.91077153608214 -12, 85.0159508243201 -12, 252.83749389648438 -12 M-252.83749389648438 -12 C-75.59208406102178 -12, 101.65332577444082 -12, 252.83749389648438 -12" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g></g><g class="node default" id="classId-IdiotBot-13500" transform="translate(1318.1874694824219, 164)"><g class="basic label-container"><path d="M-184.66250610351562 -84 L184.66250610351562 -84 L184.66250610351562 84 L-184.66250610351562 84" stroke="none" stroke-width="0" fill="#1f2020" style=""></path><path d="M-184.66250610351562 -84 C-40.477173824844215 -84, 103.7081584538272 -84, 184.66250610351562 -84 M-184.66250610351562 -84 C-84.65563083957112 -84, 15.351244424373391 -84, 184.66250610351562 -84 M184.66250610351562 -84 C184.66250610351562 -49.51960127828435, 184.66250610351562 -15.039202556568696, 184.66250610351562 84 M184.66250610351562 -84 C184.66250610351562 -27.944731306060646, 184.66250610351562 28.110537387878708, 184.66250610351562 84 M184.66250610351562 84 C54.13185835233054 84, -76.39878939885455 84, -184.66250610351562 84 M184.66250610351562 84 C40.5218515643688 84, -103.61880297477802 84, -184.66250610351562 84 M-184.66250610351562 84 C-184.66250610351562 20.413620067899544, -184.66250610351562 -43.17275986420091, -184.66250610351562 -84 M-184.66250610351562 84 C-184.66250610351562 20.692497573363283, -184.66250610351562 -42.61500485327343, -184.66250610351562 -84" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g><g class="annotation-group text" transform="translate(0, -60)"></g><g class="label-group text" transform="translate(-29.40833282470703, -60)"><g class="label" style="font-weight: bolder" transform="translate(0,-12)"><foreignObject width="58.81666564941406" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 117px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>IdiotBot</p></span></div></foreignObject></g></g><g class="members-group text" transform="translate(-172.66250610351562, -12)"><g class="label" style="" transform="translate(0,-12)"><foreignObject width="96.83332824707031" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 165px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>-rng: Random</p></span></div></foreignObject></g></g><g class="methods-group text" transform="translate(-172.66250610351562, 36)"><g class="label" style="" transform="translate(0,-12)"><foreignObject width="135.60000610351562" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 212px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>+IdiotBot(Player p)</p></span></div></foreignObject></g><g class="label" style="" transform="translate(0,12)"><foreignObject width="315.91668701171875" height="24"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 413px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel markdown-node-label" style=""><p>+giveYourMove(IBoard board) : : AbstractPly</p></span></div></foreignObject></g></g><g class="divider" style=""><path d="M-184.66250610351562 -36 C-87.9734095242464 -36, 8.715687055022812 -36, 184.66250610351562 -36 M-184.66250610351562 -36 C-87.4029535785634 -36, 9.856598946388829 -36, 184.66250610351562 -36" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g><g class="divider" style=""><path d="M-184.66250610351562 12 C-92.45126545159967 12, -0.2400247996837095 12, 184.66250610351562 12 M-184.66250610351562 12 C-80.6211599243029 12, 23.420186254909822 12, 184.66250610351562 12" stroke="#ccc" stroke-width="1.3" fill="none" stroke-dasharray="0 0" style=""></path></g></g></g></g></g><text text-anchor="middle" x="755.4249877929688" y="-25" class="classDiagramTitleText">Bot - Diagramme de classes (complet)</text></svg>