watcher/doc/source/images/architecture.svg
Hidekazu Nakamura c03668cb02 [Doc] Add cinder to architecture diagram
Cinder data model was added in Pike cycle.
This patch set adds cinder to architecture diagram.

Change-Id: Ibf590996494f4e6ebcc59b26fbd562d079cea9ef
2017-07-26 21:50:33 +09:00

1484 lines
64 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="297mm"
height="210mm"
id="svg4946"
version="1.1"
inkscape:version="0.91 r13725"
sodipodi:docname="architecture.svg">
<defs
id="defs4948">
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="TriangleInL"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7073"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="TriangleInL-1"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7073-2"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="EmptyTriangleInL"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7091"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4714"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4716"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4718"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4720"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4722"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4724"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4726"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4728"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4730"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4732"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4734"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4736"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4738"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4740"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4742"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4744"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4746"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4748"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4750"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4752"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4754"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4756"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4758"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4760"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4762"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4764"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4766"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4768"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4770"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4772"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4774"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4776"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="TriangleInL"
orient="auto"
refY="0"
refX="0"
id="marker4778"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path4780"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="scale(-0.8,-0.8)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="EmptyTriangleInL-1"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7091-7"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="EmptyTriangleInL-9"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7091-4"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="EmptyTriangleInL-5"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7091-3"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="EmptyTriangleInL-6"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7091-2"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
<marker
inkscape:stockid="EmptyTriangleInL"
orient="auto"
refY="0"
refX="0"
id="EmptyTriangleInL-12"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path7091-70"
d="m 5.77,0 -8.65,5 0,-10 8.65,5 z"
style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:1pt"
transform="matrix(-0.8,0,0,-0.8,4.8,0)" />
</marker>
</defs>
<sodipodi:namedview
inkscape:document-units="mm"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.4142136"
inkscape:cx="665.19215"
inkscape:cy="108.90512"
inkscape:current-layer="g4866-2-3"
id="namedview4950"
showgrid="true"
inkscape:window-width="1211"
inkscape:window-height="698"
inkscape:window-x="65"
inkscape:window-y="24"
inkscape:window-maximized="1">
<inkscape:grid
type="xygrid"
id="grid4203" />
</sodipodi:namedview>
<metadata
id="metadata4952">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1">
<g
id="g5356"
transform="translate(-15.096057,-107.16694)">
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-77-5-9"
d="m 813.66791,753.1462 0,-92.21768"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL-6)" />
<rect
y="377.8927"
x="96.920677"
height="291.70386"
width="437.43332"
id="rect4267-4"
style="fill:#cccccc;stroke:#000000;stroke-width:1;stroke-opacity:1;display:inline" />
<text
sodipodi:linespacing="125%"
id="text5037-4"
y="402.68289"
x="110.09057"
style="font-size:20.86613655px;font-style:normal;font-weight:normal;text-align:start;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
id="tspan5184"
style="font-size:20px;text-align:start;text-anchor:start"
y="402.68289"
x="110.09057"
sodipodi:role="line">watcher decision engine</tspan></text>
<rect
transform="scale(1,-1)"
y="-705.7099"
x="572.46252"
height="357.54095"
width="24.303392"
id="rect4267-9-8-8"
style="fill:#f2f2f2;display:inline" />
<rect
transform="matrix(0,1,1,0,0,0)"
y="572.38873"
x="347.18939"
height="375.98618"
width="24.274256"
id="rect4267-9-7"
style="fill:#f2f2f2;display:inline" />
<g
transform="matrix(1.7775787,0,0,1.7775787,523.61078,294.58082)"
id="g13029"
style="display:inline">
<path
sodipodi:type="arc"
style="fill:#ffffff;stroke:#000000;stroke-width:1.53437233;stroke-opacity:1;display:inline"
id="path5041-1-5"
sodipodi:cx="324.00272"
sodipodi:cy="358.94418"
sodipodi:rx="70.677063"
sodipodi:ry="70.677063"
d="m 394.67978,358.94418 a 70.677063,70.677063 0 0 1 -70.67706,70.67707 70.677063,70.677063 0 0 1 -70.67707,-70.67707 70.677063,70.677063 0 0 1 70.67707,-70.67706 70.677063,70.677063 0 0 1 70.67706,70.67706 z"
transform="matrix(0.36664048,0,0,0.36664048,0.86684619,-80.697844)" />
<g
id="g5262">
<text
sodipodi:linespacing="125%"
id="text5043-7-2"
y="48.469215"
x="119.63976"
style="font-size:11.2512598px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5047-4-7"
y="48.469215"
x="119.63976"
sodipodi:role="line">watcher</tspan><tspan
id="tspan5051-0-6"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
y="62.533291"
x="119.63976"
sodipodi:role="line">db</tspan></text>
</g>
</g>
<rect
transform="scale(1,-1)"
y="-705.7099"
x="924.34631"
height="357.54095"
width="24.303392"
id="rect4267-9-8"
style="fill:#f2f2f2;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-3"
d="m 980.5032,630.72574 -445.33405,0"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.99999998, 1.99999998;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline" />
<rect
ry="0"
rx="0"
y="463.40082"
x="632.97601"
height="142.02318"
width="267.98221"
id="rect4267-4-1"
style="fill:#cccccc;stroke:#000000;stroke-width:1;stroke-opacity:1;display:inline" />
<text
sodipodi:linespacing="125%"
id="text5110-5"
y="363.69254"
x="853.2807"
style="font-size:26.28262138px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
id="tspan5114-7"
style="font-size:13.14131069px"
y="363.69254"
x="853.2807"
sodipodi:role="line"> message bus</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-48"
d="M 687.13313,406.59589 533.6738,471.58145"
style="fill:none;stroke:#000000;stroke-width:1.10810471px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#TriangleInL-1);display:inline" />
<text
sodipodi:linespacing="125%"
id="text5037-4-5"
y="487.39908"
x="889.92322"
style="font-size:20.86613655px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
id="tspan5184-1"
style="font-size:20px;text-align:end;text-anchor:end"
y="487.39908"
x="889.92322"
sodipodi:role="line">watcher applier</tspan></text>
<g
transform="matrix(1.7775787,0,0,1.7775787,788.47193,596.28232)"
id="g4866"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1;display:inline"
id="rect4267-4-7"
width="49.81258"
height="24.243191"
x="-116.67716"
y="88.977051" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-91.899979"
y="104.01585"
id="text5037-4-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-91.899979"
y="104.01585"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-3">nova</tspan></text>
</g>
<g
id="g4866-2"
style="display:inline"
transform="matrix(1.7775787,0,0,1.7775787,888.4244,596.28232)">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1;display:inline"
id="rect4267-4-7-7"
width="49.81258"
height="24.243191"
x="-116.67716"
y="88.977051" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-91.899979"
y="104.01585"
id="text5037-4-6-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-91.899979"
y="104.01585"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-3-5">glance</tspan></text>
</g>
<rect
y="754.5235"
x="231.29219"
height="42.939091"
width="118.56741"
id="rect4267-4-7-7-3-3"
style="display:inline;fill:#ffffff;stroke:#000000;stroke-width:1;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5037-4-6-9-1-4"
y="783.03412"
x="290.34656"
style="font-style:normal;font-weight:normal;font-size:20.86613655px;line-height:125%;font-family:Sans;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none"
xml:space="preserve"><tspan
id="tspan5184-3-5-2-1"
style="font-size:20px;text-align:center;text-anchor:middle"
y="783.03412"
x="290.34656"
sodipodi:role="line">ceilometer</tspan></text>
<g
transform="matrix(1.7775787,0,0,1.7775787,599.58186,304.14299)"
id="g4982"
style="display:inline">
<rect
style="display:inline;fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1"
id="rect4267-4-7-7-3-3-1"
width="66.701637"
height="24.155943"
x="-134.08324"
y="253.36743" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.73851585px;line-height:125%;font-family:Sans;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none"
x="-100.86156"
y="268.36258"
id="text5037-4-6-9-1-4-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-100.86156"
y="268.36258"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-3-5-2-1-8">monasca</tspan></text>
</g>
<g
transform="matrix(1.7775787,0,0,1.7775787,805.08607,598.49372)"
id="g5067"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9"
width="63.125698"
height="32.65406"
x="-305.4364"
y="-5.9951038" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3"
width="61.860218"
height="33.915752"
x="-303.54007"
y="-3.9408331" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1"
width="63.125698"
height="32.65406"
x="-301.01382"
y="-0.78281522" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-269.56909"
y="12.99084"
id="text5037-4-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-269.56909"
y="12.99084"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-9">datasource</tspan><tspan
sodipodi:role="line"
x="-269.56909"
y="27.054914"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5022">drivers</tspan></text>
</g>
<g
transform="matrix(1.7775787,0,0,1.7775787,704.59677,780.35846)"
id="g5267"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-5"
width="63.125698"
height="32.65406"
x="-169.20615"
y="-108.30547" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-0"
width="61.860218"
height="33.915752"
x="-167.30981"
y="-106.25119" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-90"
width="63.125698"
height="32.65406"
x="-164.78357"
y="-103.09318" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-133.33884"
y="-89.319519"
id="text5037-4-2-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-133.33884"
y="-89.319519"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-9-6">model</tspan><tspan
sodipodi:role="line"
x="-133.33884"
y="-75.255447"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5022-1">drivers</tspan></text>
</g>
<flowRoot
xml:space="preserve"
id="flowRoot5150"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
transform="translate(-4.6051594,112.6148)"><flowRegion
id="flowRegion5152"><rect
id="rect5154"
width="254.91389"
height="139.76588"
x="-53.206329"
y="2.3823805" /></flowRegion><flowPara
id="flowPara5156" /></flowRoot> <g
transform="matrix(1.7775787,0,0,1.7775787,925.83987,652.65201)"
id="g5254"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-5-3"
width="63.125698"
height="32.65406"
x="-89.685555"
y="-72.119125" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-0-8"
width="61.860214"
height="33.915752"
x="-87.789223"
y="-70.064857" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-90-9"
width="63.125698"
height="32.65406"
x="-85.262978"
y="-66.906837" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-53.818241"
y="-53.133179"
id="text5037-4-2-0-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-53.818241"
y="-53.133179"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-9-6-4">action</tspan><tspan
sodipodi:role="line"
x="-53.818241"
y="-39.069103"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5022-1-4">drivers</tspan></text>
</g>
<g
transform="matrix(1.7775787,0,0,1.7775787,701.31641,551.83836)"
id="g5246"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-5-3-6"
width="63.125698"
height="32.65406"
x="-167.86594"
y="-36.826275" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-0-8-0"
width="61.860214"
height="33.915752"
x="-165.9696"
y="-34.772007" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-90-9-6"
width="63.125698"
height="32.65406"
x="-163.44336"
y="-31.613987" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-131.9986"
y="-17.840328"
id="text5037-4-2-0-3-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-131.9986"
y="-17.840328"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-9-6-4-1">planner</tspan><tspan
sodipodi:role="line"
x="-131.9986"
y="-3.7762535"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5022-1-4-8">drivers</tspan></text>
</g>
<g
transform="matrix(1.7775787,0,0,1.7775787,864.18387,199.27565)"
id="g5067-4"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-9"
width="63.125698"
height="32.65406"
x="-338.94229"
y="162.42773" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-6"
width="61.860218"
height="33.915752"
x="-337.04596"
y="164.48201" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-3"
width="63.125698"
height="32.65406"
x="-334.51971"
y="167.64003" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-303.5217"
y="180.07346"
id="text5037-4-2-7"
sodipodi:linespacing="125%"><tspan
id="tspan4611"
sodipodi:role="line"
x="-303.5217"
y="180.07346"
style="font-size:11.2512598px;text-align:center;text-anchor:middle">strategy</tspan><tspan
id="tspan4615"
sodipodi:role="line"
x="-303.5217"
y="194.13753"
style="font-size:11.2512598px;text-align:center;text-anchor:middle">drivers</tspan></text>
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-9-7"
width="63.125698"
height="32.65406"
x="-422.0051"
y="163.28178" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-6-1"
width="61.860214"
height="33.915752"
x="-420.10876"
y="165.33604" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-3-1"
width="63.125698"
height="32.65406"
x="-417.58249"
y="168.49406" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-386.5845"
y="180.92749"
id="text5037-4-2-7-5"
sodipodi:linespacing="125%"><tspan
id="tspan4611-2"
sodipodi:role="line"
x="-386.5845"
y="180.92749"
style="font-size:11.2512598px;text-align:center;text-anchor:middle">goal</tspan><tspan
id="tspan4615-7"
sodipodi:role="line"
x="-386.5845"
y="194.99156"
style="font-size:11.2512598px;text-align:center;text-anchor:middle">drivers</tspan></text>
</g>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3"
d="m 594.53089,753.14616 0,-27.00021"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-77"
d="m 606.02001,753.1462 0,-92.21768"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path5110-9"
d="m 472.18905,726.66568 331.45651,0"
style="display:inline;fill:none;stroke:#000000;stroke-width:1.22230256px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path5112-8"
d="m 472.66176,655.76766 0,70.94907"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-77-5"
d="m 707.66791,753.1462 0,-92.21768"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-7"
d="m 694.16781,752.35205 0,-26.2061"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<rect
transform="matrix(0,1,1,0,0,0)"
y="572.33752"
x="682.09674"
height="376.03751"
width="24.188143"
id="rect4267-9"
style="fill:#f2f2f2;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4"
d="m 616.5349,651.40204 0,103.66133"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.99999999, 1.99999999;stroke-dashoffset:0;marker-start:none;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-9"
d="m 719.72701,651.17995 0,102.98987"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.99999999, 1.99999999;stroke-dashoffset:0;marker-start:none;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6"
d="m 543.75943,651.7922 280.63651,0"
style="display:inline;fill:none;stroke:#000000;stroke-width:1.25154257;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:2.50308524, 2.50308524;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#TriangleInL)" />
<rect
y="262.01205"
x="451.89563"
height="41.613773"
width="361.33624"
id="rect4267"
style="fill:#cccccc;stroke:#000000;stroke-width:1;stroke-opacity:1;display:inline" />
<text
sodipodi:linespacing="125%"
id="text5037"
y="287.98984"
x="582.04614"
style="font-size:20.86613655px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
style="font-size:20px"
y="287.98984"
x="582.04614"
id="tspan5039"
sodipodi:role="line">watcher api</tspan></text>
<rect
y="161.14964"
x="495.68024"
height="54.108612"
width="121.69762"
id="rect4267-1"
style="fill:#ffffff;stroke:#000000;stroke-width:1.52299571;stroke-opacity:1;display:inline" />
<text
sodipodi:linespacing="125%"
id="text5043"
y="182.74495"
x="556.91479"
style="font-size:24.56002045px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
style="font-size:20px;text-align:center;text-anchor:middle"
id="tspan5047"
y="182.74495"
x="556.91479"
sodipodi:role="line">watcher</tspan><tspan
id="tspan5051"
style="font-size:20px;text-align:center;text-anchor:middle"
y="207.74495"
x="556.91479"
sodipodi:role="line">dashboard</tspan></text>
<rect
y="165.3157"
x="651.03583"
height="45.622108"
width="122.79369"
id="rect4267-1-7"
style="fill:#ffffff;stroke:#000000;stroke-width:1.40475357;stroke-opacity:1;display:inline" />
<text
sodipodi:linespacing="125%"
id="text5043-7"
y="195.16776"
x="713.08691"
style="font-size:24.56001854px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
id="tspan5051-0"
style="font-size:20px;text-align:center;text-anchor:middle"
y="195.16776"
x="713.08691"
sodipodi:role="line">watcher cli</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-7-1"
d="m 556.67796,261.88456 0,-46.70197"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-7-1-0"
d="m 719.49436,261.88456 0,-51.05384"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path5112-5-8"
d="m 836.98225,605.5223 -0.0249,56.36014"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path5110-9-1"
d="m 605.95975,661.42482 231.16253,0"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-8-5"
d="m 981.01762,660.01007 c -79.04031,0 -113.21751,0 -105.75607,0"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.99999998, 1.99999998;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline" />
<g
transform="matrix(1.7775787,0,0,1.7775787,768.88896,922.49644)"
id="g5067-0"
style="display:inline">
<g
transform="translate(-61.204058,-182.27194)"
id="g12405">
<rect
y="-5.9951038"
x="-305.4364"
height="32.65406"
width="63.125698"
id="rect4267-4-74-1-9-94"
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline" />
<rect
y="-3.9408331"
x="-303.54007"
height="33.915752"
width="61.860218"
id="rect4267-4-74-3-7"
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline" />
<rect
y="-0.78281522"
x="-301.01382"
height="32.65406"
width="63.125698"
id="rect4267-4-74-1-8"
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline" />
<text
sodipodi:linespacing="125%"
id="text5037-4-2-3"
y="13.360811"
x="-269.57669"
style="font-size:10.16722965px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
id="tspan5184-9-5"
style="font-size:8.77067661px;text-align:center;text-anchor:middle"
y="13.360811"
x="-269.57669"
sodipodi:role="line">scoring engine</tspan><tspan
id="tspan5022-12"
style="font-size:8.77067661px;text-align:center;text-anchor:middle"
y="24.324158"
x="-269.57669"
sodipodi:role="line">drivers</tspan></text>
</g>
</g>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path5112-89"
d="m 324.87061,655.34778 0,71.7093"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-48-9"
d="m 736.30879,437.33482 0.058,25.01031"
style="fill:none;stroke:#000000;stroke-width:1.10810471px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#TriangleInL-1);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-48-9-0"
d="m 736.31322,332.04736 0.016,-27.58292"
style="fill:none;stroke:#000000;stroke-width:1.10810471px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#TriangleInL-1);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-3-3"
d="m 538.98762,403.68952 71.5712,0"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999999, 1.99999999, 0.99999999, 1.99999999;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-3-3-6"
d="m 626.99318,502.88793 -92.74215,0.36693"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997, 1.99999998, 0.99999999, 1.99999998;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-77-8-4"
d="m 189.11561,259.94736 -49.25746,0"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL);display:inline" />
<text
sodipodi:linespacing="125%"
id="text13272"
y="266.28427"
x="199.86951"
style="font-size:18px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
y="266.28427"
x="199.86951"
id="tspan13274"
sodipodi:role="line">API call</tspan></text>
<g
transform="matrix(1.7775787,0,0,1.7775787,418.72806,348.58121)"
id="g13311"
style="display:inline">
<path
style="fill:none;stroke:#000000;stroke-width:0.562563;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:2.40246051, 1.20123025, 0.60061513, 1.20123025;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline"
d="m -132.05392,-64.124923 -24.54233,0"
id="path3284-4-2-3-4-6-3-3-0"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:10.12613392px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-123.93262"
y="-60.500675"
id="text13272-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan13274-9"
x="-123.93262"
y="-60.500675">RPC cast</tspan></text>
</g>
<g
transform="matrix(1.7775787,0,0,1.7775787,418.72806,348.58128)"
id="g13316"
style="display:inline">
<path
style="fill:none;stroke:#000000;stroke-width:0.562563;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.14941279, 1.14941279;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline"
d="m -131.90707,-78.387732 -24.83601,0"
id="path3284-4-2-3-4-7-8"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:10.12613392px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-123.80406"
y="-74.761002"
id="text13272-2"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan13274-5"
x="-123.80406"
y="-74.761002">notification</tspan></text>
</g>
<g
transform="matrix(1.7775787,0,0,1.7775787,1260.452,101.56896)"
id="g5067-4-5"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-9-3"
width="14.0163"
height="7.2504406"
x="-624.59149"
y="100.41814" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-6-3"
width="13.735316"
height="7.5305843"
x="-623.6571"
y="101.24939" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-3-3"
width="14.0163"
height="7.2504406"
x="-622.52362"
y="102.26649" />
</g>
<text
sodipodi:linespacing="125%"
id="text13272-8"
y="293.69983"
x="199.18394"
style="font-size:18px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
xml:space="preserve"><tspan
y="293.69983"
x="199.18394"
id="tspan13274-0"
sodipodi:role="line">extensions</tspan></text>
<path
transform="translate(68.397849,130.15566)"
d="m 519.41589,367.58817 a 4.4922457,7.2686057 0 0 1 -4.49224,7.2686 4.4922457,7.2686057 0 0 1 -4.49225,-7.2686 4.4922457,7.2686057 0 0 1 4.49225,-7.26861 4.4922457,7.2686057 0 0 1 4.49224,7.26861 z"
sodipodi:ry="7.2686057"
sodipodi:rx="4.4922457"
sodipodi:cy="367.58817"
sodipodi:cx="514.92365"
id="path13405"
style="fill:#f2f2f2;stroke-width:1;stroke-miterlimit:4;stroke-dasharray:4, 2, 1, 2;stroke-dashoffset:0;display:inline"
sodipodi:type="arc" />
<path
transform="matrix(0.36538461,0,0,0.36538461,397.30905,368.17877)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407"
style="fill:#ececec;stroke:#000000;stroke-width:2.73684216;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
sodipodi:type="arc" />
<path
transform="matrix(0.36538461,0,0,0.36538461,-27.122619,99.964199)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-8"
style="fill:#ffffff;stroke:#000000;stroke-width:2.73684216;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-3-3-8"
d="m 610.78475,303.96873 0,173.06788"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997, 1.99999998, 0.99999999, 1.99999998;stroke-dashoffset:0;marker-start:none;display:inline" />
<path
transform="matrix(0.36538461,0,0,0.36538461,396.74123,268.71562)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-1"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:0.99894738;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<path
transform="matrix(0.36538461,0,0,0.36538461,428.69747,559.36511)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-9"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.73684216;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<path
transform="matrix(0.36538461,0,0,0.36538461,531.88959,559.36511)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-89"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.73684216;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-8-5-2"
d="m 876.02227,660.54759 c 0,-79.0403 0,-62.94168 0,-55.48024"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:1.99999998, 1.99999998;stroke-dashoffset:0;marker-start:none;display:inline" />
<path
transform="matrix(0.36538461,0,0,0.36538461,748.91653,525.25993)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-7-9"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.73684216;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<path
transform="matrix(0.36538461,0,0,0.36538461,748.91653,495.84628)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-7-9-0"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.73684216;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<g
transform="matrix(1.7775787,0,0,1.7775787,797.52537,651.14265)"
id="g5254-1"
style="display:inline">
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-9-5-3-7"
width="63.125698"
height="32.65406"
x="-89.685555"
y="-72.119125" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.2151536;stroke-opacity:1;display:inline"
id="rect4267-4-74-3-0-8-4"
width="61.860214"
height="33.915752"
x="-87.789223"
y="-70.064857" />
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.21326219;stroke-opacity:1;display:inline"
id="rect4267-4-74-1-90-9-0"
width="63.125698"
height="32.65406"
x="-85.262978"
y="-66.906837" />
<text
xml:space="preserve"
style="font-size:11.73851585px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;display:inline;font-family:Sans"
x="-53.818241"
y="-53.133179"
id="text5037-4-2-0-3-9"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-53.818241"
y="-53.133179"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-9-6-4-4">workflow</tspan><tspan
sodipodi:role="line"
x="-53.818241"
y="-39.069103"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5022-1-4-88">drivers</tspan></text>
</g>
<path
transform="matrix(0.36538461,0,0,0.36538461,396.74122,268.71562)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-1-5"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.73684216;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<path
transform="matrix(0.36538461,0,0,0.36538461,-27.122619,74.87915)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-8-1"
style="fill:#ffffff;stroke:#000000;stroke-width:2.73684216;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;display:inline"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-6-3-3-2"
d="m 626.84806,476.5719 -16.04875,0"
style="fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:3.99999997, 1.99999998, 0.99999999, 1.99999998;stroke-dashoffset:0;marker-start:url(#TriangleInL);display:inline" />
<path
transform="matrix(0.36538461,0,0,0.36538461,422.9095,223.59883)"
d="m 521.38126,368.43045 a 7.2998991,7.2998991 0 0 1 -7.2999,7.2999 7.2998991,7.2998991 0 0 1 -7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,-7.2999 7.2998991,7.2998991 0 0 1 7.2999,7.2999 z"
sodipodi:ry="7.2998991"
sodipodi:rx="7.2998991"
sodipodi:cy="368.43045"
sodipodi:cx="514.08136"
id="path13407-1-5-3"
style="color:#000000;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:2.73684216;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
sodipodi:type="arc" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-40"
d="m 325.23661,753.47677 0,-27.00021"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-8"
d="m 414.2546,753.65849 0,-27.00021"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL)" />
<rect
y="754.5235"
x="102.92204"
height="42.939091"
width="118.56741"
id="rect4267-4-7-7-3-3-3"
style="display:inline;fill:#ffffff;stroke:#000000;stroke-width:1;stroke-opacity:1" />
<text
sodipodi:linespacing="125%"
id="text5037-4-6-9-1-4-6"
y="783.03412"
x="160.34656"
style="font-style:normal;font-weight:normal;font-size:20.86613655px;line-height:125%;font-family:Sans;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none"
xml:space="preserve"><tspan
id="tspan5184-3-5-2-1-7"
style="font-size:20px;text-align:center;text-anchor:middle"
y="783.03412"
x="160.34656"
sodipodi:role="line">gnocchi</tspan></text>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-40-5"
d="m 191.30136,753.47677 0,-27.00021"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL-5)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path5110-9-6"
d="m 192.18905,726.66568 221.85496,0"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<g
id="g4866-2-3"
style="display:inline"
transform="matrix(1.7775787,0,0,1.7775787,991.15946,596.08131)">
<rect
style="display:inline;fill:#ffffff;stroke:#000000;stroke-width:0.562563;stroke-opacity:1"
id="rect4267-4-7-7-6"
width="49.81258"
height="24.243191"
x="-116.67716"
y="88.977051" />
<text
xml:space="preserve"
style="font-style:normal;font-weight:normal;font-size:11.73851585px;line-height:125%;font-family:Sans;text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;display:inline;fill:#000000;fill-opacity:1;stroke:none"
x="-91.899979"
y="104.01585"
id="text5037-4-6-9-7"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
x="-91.899979"
y="104.01585"
style="font-size:11.2512598px;text-align:center;text-anchor:middle"
id="tspan5184-3-5-5">cinder</tspan></text>
</g>
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-4-9-3"
d="m 824.37881,651.58554 0,102.98987"
style="display:inline;fill:none;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.99999999, 1.99999999;stroke-dashoffset:0;stroke-opacity:1;marker-start:none" />
<circle
r="2.6672709"
cy="693.98395"
cx="823.72699"
id="path13407-89-5"
style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#ececec;fill-opacity:1;fill-rule:nonzero;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3284-4-2-3-7-9"
d="m 804.16781,752.35205 0,-26.2061"
style="display:inline;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#EmptyTriangleInL-12)" />
</g>
</g>
</svg>