Files
FlareBlog/content/zh-cn/posts/csci-1200/hw-2/csci-1200-hw-2-flowchart-zh_cn.svg
2025-01-22 10:35:21 -05:00

3 lines
60 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.6.0/css/all.min.css" type="text/css"?>
<svg aria-roledescription="flowchart-v2" role="graphics-document document" viewBox="0 0 3472.4609375 2406.59375" style="max-width: 100%;" class="flowchart" xmlns="http://www.w3.org/2000/svg" width="100%" id="graph-div" height="100%" xmlns:xlink="http://www.w3.org/1999/xlink"><style>#graph-div{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#ccc;}#graph-div .error-icon{fill:#a44141;}#graph-div .error-text{fill:#ddd;stroke:#ddd;}#graph-div .edge-thickness-normal{stroke-width:1px;}#graph-div .edge-thickness-thick{stroke-width:3.5px;}#graph-div .edge-pattern-solid{stroke-dasharray:0;}#graph-div .edge-thickness-invisible{stroke-width:0;fill:none;}#graph-div .edge-pattern-dashed{stroke-dasharray:3;}#graph-div .edge-pattern-dotted{stroke-dasharray:2;}#graph-div .marker{fill:lightgrey;stroke:lightgrey;}#graph-div .marker.cross{stroke:lightgrey;}#graph-div svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#graph-div p{margin:0;}#graph-div .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#ccc;}#graph-div .cluster-label text{fill:#F9FFFE;}#graph-div .cluster-label span{color:#F9FFFE;}#graph-div .cluster-label span p{background-color:transparent;}#graph-div .label text,#graph-div span{fill:#ccc;color:#ccc;}#graph-div .node rect,#graph-div .node circle,#graph-div .node ellipse,#graph-div .node polygon,#graph-div .node path{fill:#1f2020;stroke:#ccc;stroke-width:1px;}#graph-div .rough-node .label text,#graph-div .node .label text,#graph-div .image-shape .label,#graph-div .icon-shape .label{text-anchor:middle;}#graph-div .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#graph-div .rough-node .label,#graph-div .node .label,#graph-div .image-shape .label,#graph-div .icon-shape .label{text-align:center;}#graph-div .node.clickable{cursor:pointer;}#graph-div .root .anchor path{fill:lightgrey!important;stroke-width:0;stroke:lightgrey;}#graph-div .arrowheadPath{fill:lightgrey;}#graph-div .edgePath .path{stroke:lightgrey;stroke-width:2.0px;}#graph-div .flowchart-link{stroke:lightgrey;fill:none;}#graph-div .edgeLabel{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#graph-div .edgeLabel p{background-color:hsl(0, 0%, 34.4117647059%);}#graph-div .edgeLabel rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#graph-div .labelBkg{background-color:rgba(87.75, 87.75, 87.75, 0.5);}#graph-div .cluster rect{fill:hsl(180, 1.5873015873%, 28.3529411765%);stroke:rgba(255, 255, 255, 0.25);stroke-width:1px;}#graph-div .cluster text{fill:#F9FFFE;}#graph-div .cluster span{color:#F9FFFE;}#graph-div 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(20, 1.5873015873%, 12.3529411765%);border:1px solid rgba(255, 255, 255, 0.25);border-radius:2px;pointer-events:none;z-index:100;}#graph-div .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#ccc;}#graph-div rect.text{fill:none;stroke-width:0;}#graph-div .icon-shape,#graph-div .image-shape{background-color:hsl(0, 0%, 34.4117647059%);text-align:center;}#graph-div .icon-shape p,#graph-div .image-shape p{background-color:hsl(0, 0%, 34.4117647059%);padding:2px;}#graph-div .icon-shape rect,#graph-div .image-shape rect{opacity:0.5;background-color:hsl(0, 0%, 34.4117647059%);fill:hsl(0, 0%, 34.4117647059%);}#graph-div :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;}</style><g><marker orient="auto" markerHeight="8" markerWidth="8" markerUnits="userSpaceOnUse" refY="5" refX="5" viewBox="0 0 10 10" class="marker flowchart-v2" id="graph-div_flowchart-v2-pointEnd"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 0 L 10 5 L 0 10 z"></path></marker><marker orient="auto" markerHeight="8" markerWidth="8" markerUnits="userSpaceOnUse" refY="5" refX="4.5" viewBox="0 0 10 10" class="marker flowchart-v2" id="graph-div_flowchart-v2-pointStart"><path style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 0 5 L 10 10 L 10 0 z"></path></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="11" viewBox="0 0 10 10" class="marker flowchart-v2" id="graph-div_flowchart-v2-circleEnd"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"></circle></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5" refX="-1" viewBox="0 0 10 10" class="marker flowchart-v2" id="graph-div_flowchart-v2-circleStart"><circle style="stroke-width: 1; stroke-dasharray: 1, 0;" class="arrowMarkerPath" r="5" cy="5" cx="5"></circle></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="12" viewBox="0 0 11 11" class="marker cross flowchart-v2" id="graph-div_flowchart-v2-crossEnd"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"></path></marker><marker orient="auto" markerHeight="11" markerWidth="11" markerUnits="userSpaceOnUse" refY="5.2" refX="-1" viewBox="0 0 11 11" class="marker cross flowchart-v2" id="graph-div_flowchart-v2-crossStart"><path style="stroke-width: 2; stroke-dasharray: 1, 0;" class="arrowMarkerPath" d="M 1,1 l 9,9 M 10,1 l -9,9"></path></marker><g class="root"><g class="clusters"></g><g class="edgePaths"></g><g class="edgeLabels"></g><g class="nodes"><g transform="translate(0, 0)" class="root"><g class="clusters"><g data-look="classic" id="handleCancel()" class="cluster"><rect height="2390.59375" width="1261.44921875" y="8" x="8" style=""></rect><g transform="translate(584.677734375, 8)" class="cluster-label"><foreignObject height="24" width="108.09375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>handleCancel()</p></span></div></foreignObject></g></g></g><g class="edgePaths"><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C1_C2_26" d="M615.496,123.5L615.496,129.75C615.496,136,615.496,148.5,615.571,160.417C615.645,172.333,615.794,183.667,615.869,189.334L615.943,195"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C2_C3_27" d="M568.553,285.994L529.707,302.068C490.861,318.142,413.169,350.29,374.323,390.614C335.477,430.938,335.477,479.438,335.477,503.688L335.477,527.938"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C3_C4_28" d="M335.477,609.938L335.477,634.854C335.477,659.771,335.477,709.604,335.553,742.188C335.63,774.771,335.783,790.104,335.86,797.771L335.937,805.438"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C4_C5_29" d="M295.625,909.164L275.188,924.056C254.75,938.948,213.875,968.732,193.438,1007.874C173,1047.016,173,1095.516,173,1119.766L173,1144.016"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C4_C6_30" d="M376.011,909.481L395.839,924.32C415.666,939.159,455.321,968.837,475.226,991.343C495.13,1013.849,495.283,1029.182,495.36,1036.849L495.437,1044.516"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C6_C7_31" d="M431.13,1262.169L414.691,1281.06C398.253,1299.951,365.377,1337.733,348.938,1366.208C332.5,1394.682,332.5,1413.849,332.5,1423.432L332.5,1433.016"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C6_C8_32" d="M558.199,1263.794L573.495,1282.414C588.791,1301.034,619.384,1338.275,634.68,1364.479C649.977,1390.682,649.977,1405.849,649.977,1413.432L649.977,1421.016"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C8_C9_33" d="M649.977,1527.016L649.977,1533.266C649.977,1539.516,649.977,1552.016,649.977,1563.849C649.977,1575.682,649.977,1586.849,649.977,1592.432L649.977,1598.016"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C9_C10_34" d="M649.977,1680.016L649.977,1686.266C649.977,1692.516,649.977,1705.016,649.977,1716.849C649.977,1728.682,649.977,1739.849,649.977,1745.432L649.977,1751.016"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C10_C11_35" d="M649.977,1881.016L649.977,1887.266C649.977,1893.516,649.977,1906.016,650.051,1917.932C650.126,1929.849,650.275,1941.183,650.349,1946.849L650.424,1952.516"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C11_C12_36" d="M606.756,2068.874L586.88,2084.327C567.004,2099.78,527.252,2130.687,507.376,2159.724C487.5,2188.76,487.5,2215.927,487.5,2229.51L487.5,2243.094"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C11_C13_37" d="M694.197,2068.874L713.906,2084.327C733.615,2099.78,773.034,2130.687,792.744,2153.724C812.453,2176.76,812.453,2191.927,812.453,2199.51L812.453,2207.094"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C2_C14_38" d="M665.63,283.803L712.184,300.242C758.737,316.681,851.843,349.559,898.473,373.665C945.103,397.771,945.256,413.104,945.333,420.771L945.409,428.438"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C14_C15_39" d="M882.727,647.716L867.264,666.336C851.801,684.956,820.875,722.197,805.412,753.574C789.949,784.951,789.949,810.464,789.949,823.22L789.949,835.977"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C14_C16_40" d="M1008.171,647.716L1023.468,666.336C1038.764,684.956,1069.357,722.197,1084.653,749.574C1099.949,776.951,1099.949,794.464,1099.949,803.22L1099.949,811.977"></path></g><g class="edgeLabels"><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(335.4765625, 382.4375)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(173, 998.515625)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(494.9765625, 998.515625)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g transform="translate(332.5, 1375.515625)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(649.9765625, 1375.515625)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(487.5, 2161.59375)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(812.453125, 2161.59375)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g transform="translate(944.94921875, 382.4375)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g transform="translate(789.94921875, 759.4375)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(1099.94921875, 759.4375)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g></g><g class="nodes"><g transform="translate(615.49609375, 84.5)" id="flowchart-C1-3834" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>在 riders 中查找 phoneNumber</p></span></div></foreignObject></g></g><g transform="translate(615.49609375, 265.71875)" id="flowchart-C2-3835" class="node default"><polygon transform="translate(-67.21875,67.21875)" class="label-container" points="67.21875,0 134.4375,-67.21875 67.21875,-134.4375 0,-67.21875"></polygon><g transform="translate(-40.21875, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="80.4375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>找到 Rider?</p></span></div></foreignObject></g></g><g transform="translate(335.4765625, 570.9375)" id="flowchart-C3-3837" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>在 drivers 中查找 phoneNumber</p></span></div></foreignObject></g></g><g transform="translate(335.4765625, 878.9765625)" id="flowchart-C4-3839" class="node default"><polygon transform="translate(-70.0390625,70.0390625)" class="label-container" points="70.0390625,0 140.078125,-70.0390625 70.0390625,-140.078125 0,-70.0390625"></polygon><g transform="translate(-43.0390625, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="86.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>找到 Driver?</p></span></div></foreignObject></g></g><g transform="translate(173, 1187.015625)" id="flowchart-C5-3841" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Account does not exist.'</p></span></div></foreignObject></g></g><g transform="translate(494.9765625, 1187.015625)" id="flowchart-C6-3843" class="node default"><polygon transform="translate(-139,139)" class="label-container" points="139,0 278,-139 139,-278 0,-139"></polygon><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Driver.state == 'On_the_way_to_pickup'?</p></span></div></foreignObject></g></g><g transform="translate(332.5, 1476.015625)" id="flowchart-C7-3845" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'You can only cancel...'</p></span></div></foreignObject></g></g><g transform="translate(649.9765625, 1476.015625)" id="flowchart-C8-3847" class="node default"><rect height="102" width="260" y="-51" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -36)" style="" class="label"><rect></rect><foreignObject height="72" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Driver 取消: 状态-&gt;'Available'<br/>清空 Rider 关联信息</p></span></div></foreignObject></g></g><g transform="translate(649.9765625, 1641.015625)" id="flowchart-C9-3849" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Your driver X has canceled...'</p></span></div></foreignObject></g></g><g transform="translate(649.9765625, 1818.015625)" id="flowchart-C10-3851" class="node default"><rect height="126" width="260" y="-63" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -48)" style="" class="label"><rect></rect><foreignObject height="96" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>将 Rider 状态临时重置为 'Ready_to_request'<br/>再自动为 Rider 找新司机 (类似 request )</p></span></div></foreignObject></g></g><g transform="translate(649.9765625, 2034.0546875)" id="flowchart-C11-3853" class="node default"><polygon transform="translate(-78.0390625,78.0390625)" class="label-container" points="78.0390625,0 156.078125,-78.0390625 78.0390625,-156.078125 0,-78.0390625"></polygon><g transform="translate(-51.0390625, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="102.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>找到新 Driver?</p></span></div></foreignObject></g></g><g transform="translate(487.5, 2286.09375)" id="flowchart-C12-3855" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Sorry we can not find...'</p></span></div></foreignObject></g></g><g transform="translate(812.453125, 2286.09375)" id="flowchart-C13-3857" class="node default"><rect height="150" width="289.90625" y="-75" x="-144.953125" style="" class="basic label-container"></rect><g transform="translate(-114.953125, -60)" style="" class="label"><rect></rect><foreignObject height="120" width="229.90625"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>更新新 Driver='On_the_way_to_pickup',<br/>Rider='Driver_on_the_way'<br/>输出 'We have found the closest driver...'</p></span></div></foreignObject></g></g><g transform="translate(944.94921875, 570.9375)" id="flowchart-C14-3859" class="node default"><polygon transform="translate(-139,139)" class="label-container" points="139,0 278,-139 139,-278 0,-139"></polygon><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Rider.state == 'Driver_on_the_way'?</p></span></div></foreignObject></g></g><g transform="translate(789.94921875, 878.9765625)" id="flowchart-C15-3861" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'You can only cancel...'</p></span></div></foreignObject></g></g><g transform="translate(1099.94921875, 878.9765625)" id="flowchart-C16-3863" class="node default"><rect height="126" width="260" y="-63" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -48)" style="" class="label"><rect></rect><foreignObject height="96" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Ride request for rider X is now canceled...',<br/>Driver-&gt;'Available', Rider-&gt;'Ready_to_request'</p></span></div></foreignObject></g></g></g></g><g transform="translate(1311.44921875, 334.2109375)" class="root"><g class="clusters"><g data-look="classic" id="handleRequest()" class="cluster"><rect height="1722.171875" width="1257.99609375" y="8" x="8" style=""></rect><g transform="translate(578.701171875, 8)" class="cluster-label"><foreignObject height="24" width="116.59375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>handleRequest()</p></span></div></foreignObject></g></g></g><g class="edgePaths"><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R1_R2_14" d="M328,123.5L328,129.75C328,136,328,148.5,328.075,160.417C328.149,172.333,328.298,183.667,328.373,189.334L328.447,195"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R2_R3_15" d="M300.069,262.444L278.89,275.349C257.712,288.254,215.356,314.065,194.178,334.553C173,355.042,173,370.208,173,377.792L173,385.375"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R2_R4_16" d="M356.931,262.444L377.943,275.349C398.954,288.254,440.977,314.065,461.989,334.553C483,355.042,483,370.208,483,377.792L483,385.375"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R4_R5_17" d="M483,467.375L483,473.625C483,479.875,483,492.375,483.075,504.292C483.149,516.208,483.298,527.542,483.373,533.209L483.447,538.875"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R5_R6_18" d="M445.156,638.968L425.63,653.525C406.104,668.083,367.052,697.198,347.526,725.154C328,753.109,328,779.906,328,793.305L328,806.703"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R5_R7_19" d="M529.549,631.263L564.106,647.105C598.663,662.946,667.777,694.629,702.41,718.138C737.044,741.646,737.197,756.979,737.274,764.646L737.351,772.313"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R7_R71_20" d="M679.771,866.474L616.467,884.244C553.163,902.014,426.554,937.554,363.25,970.907C299.945,1004.26,299.945,1035.427,299.945,1051.01L299.945,1066.594"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R7_R72_21" d="M699.921,886.624L684.925,901.035C669.929,915.447,639.937,944.27,624.941,974.265C609.945,1004.26,609.945,1035.427,609.945,1051.01L609.945,1066.594"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R7_R8_22" d="M781.529,879.955L804.598,895.478C827.668,911.001,873.807,942.048,896.876,965.154C919.945,988.26,919.945,1003.427,919.945,1011.01L919.945,1018.594"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R8_R9_23" d="M919.945,1196.594L919.945,1202.844C919.945,1209.094,919.945,1221.594,920.02,1233.51C920.094,1245.427,920.244,1256.761,920.318,1262.427L920.393,1268.094"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R9_R10_24" d="M860.581,1384.307L818.808,1402.451C777.035,1420.595,693.49,1456.884,651.718,1488.611C609.945,1520.339,609.945,1547.505,609.945,1561.089L609.945,1574.672"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_R9_R11_25" d="M967.511,1397.106L986.864,1413.117C1006.217,1429.128,1044.923,1461.15,1064.276,1484.744C1083.629,1508.339,1083.629,1523.505,1083.629,1531.089L1083.629,1538.672"></path></g><g class="edgeLabels"><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(173, 339.875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(483, 339.875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(328, 726.3125)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(736.890625, 726.3125)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g transform="translate(299.9453125, 973.09375)" class="edgeLabel"><g transform="translate(-68.9453125, -12)" class="label"><foreignObject height="24" width="137.890625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Driver_on_the_way</p></span></div></foreignObject></g></g><g transform="translate(609.9453125, 973.09375)" class="edgeLabel"><g transform="translate(-56.375, -12)" class="label"><foreignObject height="24" width="112.75"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>During_the_trip</p></span></div></foreignObject></g></g><g transform="translate(919.9453125, 973.09375)" class="edgeLabel"><g transform="translate(-64.234375, -12)" class="label"><foreignObject height="24" width="128.46875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Ready_to_request</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(609.9453125, 1493.171875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(1083.62890625, 1493.171875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g></g><g class="nodes"><g transform="translate(328, 84.5)" id="flowchart-R1-3810" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>检查 phoneNumber 格式 (xxx-xxx-xxxx)</p></span></div></foreignObject></g></g><g transform="translate(328, 244.4375)" id="flowchart-R2-3811" class="node default"><polygon transform="translate(-45.9375,45.9375)" class="label-container" points="45.9375,0 91.875,-45.9375 45.9375,-91.875 0,-45.9375"></polygon><g transform="translate(-18.9375, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="37.875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>有效?</p></span></div></foreignObject></g></g><g transform="translate(173, 428.375)" id="flowchart-R3-3813" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Phone number is invalid.'</p></span></div></foreignObject></g></g><g transform="translate(483, 428.375)" id="flowchart-R4-3815" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>在 riders 中查找匹配的 phoneNumber</p></span></div></foreignObject></g></g><g transform="translate(483, 609.59375)" id="flowchart-R5-3817" class="node default"><polygon transform="translate(-67.21875,67.21875)" class="label-container" points="67.21875,0 134.4375,-67.21875 67.21875,-134.4375 0,-67.21875"></polygon><g transform="translate(-40.21875, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="80.4375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>找到 Rider?</p></span></div></foreignObject></g></g><g transform="translate(328, 849.703125)" id="flowchart-R6-3819" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Account does not exist.'</p></span></div></foreignObject></g></g><g transform="translate(736.890625, 849.703125)" id="flowchart-R7-3821" class="node default"><polygon transform="translate(-73.890625,73.890625)" class="label-container" points="73.890625,0 147.78125,-73.890625 73.890625,-147.78125 0,-73.890625"></polygon><g transform="translate(-46.890625, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="93.78125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Rider.state</p></span></div></foreignObject></g></g><g transform="translate(299.9453125, 1109.59375)" id="flowchart-R71-3823" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'You have already requested a ride...'</p></span></div></foreignObject></g></g><g transform="translate(609.9453125, 1109.59375)" id="flowchart-R72-3825" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'You can not request a ride...'</p></span></div></foreignObject></g></g><g transform="translate(919.9453125, 1109.59375)" id="flowchart-R8-3827" class="node default"><rect height="174" width="260" y="-87" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -72)" style="" class="label"><rect></rect><foreignObject height="144" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Ride requested...' 信息,<br/>在 drivers 中查找匹配车辆类型<br/>且状态为 'Available' 的最近司机</p></span></div></foreignObject></g></g><g transform="translate(919.9453125, 1357.6328125)" id="flowchart-R9-3829" class="node default"><polygon transform="translate(-86.0390625,86.0390625)" class="label-container" points="86.0390625,0 172.078125,-86.0390625 86.0390625,-172.078125 0,-86.0390625"></polygon><g transform="translate(-59.0390625, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="118.078125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>找到可用 Driver?</p></span></div></foreignObject></g></g><g transform="translate(609.9453125, 1617.671875)" id="flowchart-R10-3831" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Sorry we can not find a driver...'</p></span></div></foreignObject></g></g><g transform="translate(1083.62890625, 1617.671875)" id="flowchart-R11-3833" class="node default"><rect height="150" width="294.734375" y="-75" x="-147.3671875" style="" class="basic label-container"></rect><g transform="translate(-117.3671875, -60)" style="" class="label"><rect></rect><foreignObject height="120" width="234.734375"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>计算距离, 更新状态:<br/>Driver='On_the_way_to_pickup', Rider='Driver_on_the_way'<br/>输出 'We have found the closest driver...'</p></span></div></foreignObject></g></g></g></g><g transform="translate(2619.4453125, 211.9609375)" class="root"><g class="clusters"><g data-look="classic" id="subGraph0" class="cluster"><rect height="1966.671875" width="837.015625" y="8" x="8" style=""></rect><g transform="translate(378.109375, 8)" class="cluster-label"><foreignObject height="24" width="96.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Main Program</p></span></div></foreignObject></g></g></g><g class="edgePaths"><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_A_B_0" d="M424.512,84.5L424.512,90.75C424.512,97,424.512,109.5,424.512,121.333C424.512,133.167,424.512,144.333,424.512,149.917L424.512,155.5"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_B_C_1" d="M424.512,309.5L424.512,315.75C424.512,322,424.512,334.5,424.512,346.333C424.512,358.167,424.512,369.333,424.512,374.917L424.512,380.5"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_C_D_2" d="M424.512,462.5L424.512,468.75C424.512,475,424.512,487.5,424.512,499.333C424.512,511.167,424.512,522.333,424.512,527.917L424.512,533.5"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_D_E_3" d="M424.512,615.5L424.512,621.75C424.512,628,424.512,640.5,424.586,652.417C424.661,664.333,424.81,675.667,424.885,681.334L424.959,687"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_E_MR_4" d="M357.754,838.43L325.021,857.806C292.288,877.182,226.822,915.935,194.089,960.81C161.355,1005.685,161.355,1056.682,161.355,1107.68C161.355,1158.677,161.355,1209.674,161.355,1242.757C161.355,1275.839,161.355,1291.005,161.355,1298.589L161.355,1306.172"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_E_F_5" d="M473.575,857.124L486.995,873.385C500.415,889.645,527.254,922.166,540.751,946.094C554.247,970.021,554.4,985.354,554.477,993.021L554.554,1000.688"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_F_MC_6" d="M506.354,1163.432L492.048,1179.639C477.743,1195.845,449.131,1228.259,434.825,1252.049C420.52,1275.839,420.52,1291.005,420.52,1298.589L420.52,1306.172"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_F_G_7" d="M602.833,1163.432L616.973,1179.639C631.112,1195.845,659.39,1228.259,673.529,1252.049C687.668,1275.839,687.668,1291.005,687.668,1298.589L687.668,1306.172"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_MR_H_8" d="M161.355,1364.172L161.355,1370.422C161.355,1376.672,161.355,1389.172,182.243,1401.588C203.131,1414.003,244.907,1426.335,265.795,1432.5L286.683,1438.666"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_MC_H_9" d="M420.52,1364.172L420.52,1370.422C420.52,1376.672,420.52,1389.172,420.52,1401.005C420.52,1412.839,420.52,1424.005,420.52,1429.589L420.52,1435.172"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_G_H_10" d="M687.668,1364.172L687.668,1370.422C687.668,1376.672,687.668,1389.172,665.451,1401.784C643.234,1414.396,598.799,1427.12,576.582,1433.482L554.365,1439.844"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_H_I_11" d="M420.52,1517.172L420.52,1523.422C420.52,1529.672,420.52,1542.172,420.52,1554.005C420.52,1565.839,420.52,1577.005,420.52,1582.589L420.52,1588.172"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_I_J_12" d="M420.52,1670.172L420.52,1676.422C420.52,1682.672,420.52,1695.172,420.52,1707.005C420.52,1718.839,420.52,1730.005,420.52,1735.589L420.52,1741.172"></path><path marker-end="url(#graph-div_flowchart-v2-pointEnd)" style="" class="edge-thickness-normal edge-pattern-solid edge-thickness-normal edge-pattern-solid flowchart-link" id="L_J_K_13" d="M420.52,1823.172L420.52,1829.422C420.52,1835.672,420.52,1848.172,420.52,1860.005C420.52,1871.839,420.52,1883.005,420.52,1888.589L420.52,1894.172"></path></g><g class="edgeLabels"><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g transform="translate(161.35546875, 1107.6796875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g transform="translate(554.09375, 954.6875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g transform="translate(420.51953125, 1260.671875)" class="edgeLabel"><g transform="translate(-11.328125, -12)" class="label"><foreignObject height="24" width="22.65625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>Yes</p></span></div></foreignObject></g></g><g transform="translate(687.66796875, 1260.671875)" class="edgeLabel"><g transform="translate(-9.3984375, -12)" class="label"><foreignObject height="24" width="18.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"><p>No</p></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g><g class="edgeLabel"><g transform="translate(0, 0)" class="label"><foreignObject height="0" width="0"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" class="labelBkg" xmlns="http://www.w3.org/1999/xhtml"><span class="edgeLabel"></span></div></foreignObject></g></g></g><g class="nodes"><g transform="translate(424.51171875, 65)" id="flowchart-A-3782" class="node default"><rect height="39" width="111.328125" y="-19.5" x="-55.6640625" ry="19.5" rx="19.5" style="" class="basic label-container"></rect><g transform="translate(-43.2890625, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="86.578125"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>Start main()</p></span></div></foreignObject></g></g><g transform="translate(424.51171875, 234.5)" id="flowchart-B-3783" class="node default"><rect height="150" width="260" y="-75" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -60)" style="" class="label"><rect></rect><foreignObject height="120" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>读取命令行参数 'drivers.txt' 'riders.txt' 'output0.txt' 'output1.txt' 'output2.txt' 'phoneNumber' 'command'</p></span></div></foreignObject></g></g><g transform="translate(424.51171875, 423.5)" id="flowchart-C-3785" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>loadDrivers(): 读取 'drivers.txt' 到 drivers</p></span></div></foreignObject></g></g><g transform="translate(424.51171875, 576.5)" id="flowchart-D-3787" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>loadRiders(): 读取 'riders.txt' 到 riders</p></span></div></foreignObject></g></g><g transform="translate(424.51171875, 797.84375)" id="flowchart-E-3789" class="node default"><polygon transform="translate(-107.34375,107.34375)" class="label-container" points="107.34375,0 214.6875,-107.34375 107.34375,-214.6875 0,-107.34375"></polygon><g transform="translate(-80.34375, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="160.6875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>command == 'request'?</p></span></div></foreignObject></g></g><g transform="translate(161.35546875, 1337.171875)" id="flowchart-MR-3791" class="node default"><rect height="54" width="213.421875" y="-27" x="-106.7109375" style="" class="basic label-container"></rect><g transform="translate(-76.7109375, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="153.421875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>调用 handleRequest()</p></span></div></foreignObject></g></g><g transform="translate(554.09375, 1107.6796875)" id="flowchart-F-3793" class="node default"><polygon transform="translate(-103.4921875,103.4921875)" class="label-container" points="103.4921875,0 206.984375,-103.4921875 103.4921875,-206.984375 0,-103.4921875"></polygon><g transform="translate(-76.4921875, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="152.984375"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>command == 'cancel'?</p></span></div></foreignObject></g></g><g transform="translate(420.51953125, 1337.171875)" id="flowchart-MC-3795" class="node default"><rect height="54" width="204.90625" y="-27" x="-102.453125" style="" class="basic label-container"></rect><g transform="translate(-72.453125, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="144.90625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>调用 handleCancel()</p></span></div></foreignObject></g></g><g transform="translate(687.66796875, 1337.171875)" id="flowchart-G-3797" class="node default"><rect height="54" width="229.390625" y="-27" x="-114.6953125" style="" class="basic label-container"></rect><g transform="translate(-84.6953125, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="169.390625"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出 'Invalid command.'</p></span></div></foreignObject></g></g><g transform="translate(420.51953125, 1478.171875)" id="flowchart-H-3799" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>输出处理结果到 'output0.txt'</p></span></div></foreignObject></g></g><g transform="translate(420.51953125, 1631.171875)" id="flowchart-I-3805" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>将更新后的 drivers 写到 'output1.txt'</p></span></div></foreignObject></g></g><g transform="translate(420.51953125, 1784.171875)" id="flowchart-J-3807" class="node default"><rect height="78" width="260" y="-39" x="-130" style="" class="basic label-container"></rect><g transform="translate(-100, -24)" style="" class="label"><rect></rect><foreignObject height="48" width="200"><div style="display: table; white-space: break-spaces; line-height: 1.5; max-width: 200px; text-align: center; width: 200px;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>将更新后的 riders 写到 'output2.txt'</p></span></div></foreignObject></g></g><g transform="translate(420.51953125, 1917.671875)" id="flowchart-K-3809" class="node default"><rect height="39" width="102.546875" y="-19.5" x="-51.2734375" ry="19.5" rx="19.5" style="" class="basic label-container"></rect><g transform="translate(-38.8984375, -12)" style="" class="label"><rect></rect><foreignObject height="24" width="77.796875"><div style="display: table-cell; white-space: nowrap; line-height: 1.5; max-width: 200px; text-align: center;" xmlns="http://www.w3.org/1999/xhtml"><span class="nodeLabel"><p>End main()</p></span></div></foreignObject></g></g></g></g></g></g></g></svg>