1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
3 "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4<!-- Generated by graphviz version 2.43.0 (0)
5 -->
6<!-- Title: %3 Pages: 1 -->
7<svg width="1164pt" height="1565pt"
8 viewBox="0.00 0.00 1164.24 1565.09" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
9<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 1561.09)">
10<title>%3</title>
11<polygon fill="white" stroke="transparent" points="-4,4 -4,-1561.09 1160.24,-1561.09 1160.24,4 -4,4"/>
12<g id="clust1" class="cluster">
13<title>cluster_adb_group</title>
14<polygon fill="none" stroke="black" points="561.08,-952.09 561.08,-1081.09 743.46,-1081.09 743.46,-952.09 561.08,-952.09"/>
15<text text-anchor="middle" x="652.27" y="-1065.89" font-family="Times,serif" font-size="14.00">ADB</text>
16</g>
17<g id="clust2" class="cluster">
18<title>cluster_bluetooth_group</title>
19<polygon fill="none" stroke="black" points="587.73,-761.09 587.73,-944.09 923.1,-944.09 923.1,-761.09 587.73,-761.09"/>
20<text text-anchor="middle" x="755.41" y="-928.89" font-family="Times,serif" font-size="14.00">Bluetooth</text>
21</g>
22<g id="clust3" class="cluster">
23<title>cluster_nfc_group</title>
24<polygon fill="none" stroke="black" points="583.18,-594.09 583.18,-723.09 974.45,-723.09 974.45,-594.09 583.18,-594.09"/>
25<text text-anchor="middle" x="778.81" y="-707.89" font-family="Times,serif" font-size="14.00">NFC</text>
26</g>
27<g id="clust4" class="cluster">
28<title>cluster_vmm_group</title>
29<polygon fill="none" stroke="black" points="617.27,-319.09 617.27,-556.09 1148.24,-556.09 1148.24,-319.09 617.27,-319.09"/>
30<text text-anchor="middle" x="882.75" y="-540.89" font-family="Times,serif" font-size="14.00">VMM</text>
31</g>
32<g id="clust5" class="cluster">
33<title>cluster_webrtc_group</title>
34<polygon fill="none" stroke="black" points="579.28,-182.09 579.28,-311.09 725.27,-311.09 725.27,-182.09 579.28,-182.09"/>
35<text text-anchor="middle" x="652.27" y="-295.89" font-family="Times,serif" font-size="14.00">WebRTC</text>
36</g>
37<g id="clust6" class="cluster">
38<title>cluster_wifi_group</title>
39<polygon fill="none" stroke="black" points="607.88,-36.09 607.88,-165.09 954.95,-165.09 954.95,-36.09 607.88,-36.09"/>
40<text text-anchor="middle" x="781.41" y="-149.89" font-family="Times,serif" font-size="14.00">Wifi</text>
41</g>
42<!-- config_server -->
43<g id="node1" class="node">
44<title>config_server</title>
45<ellipse fill="none" stroke="black" cx="652.27" cy="-1539.09" rx="59.29" ry="18"/>
46<text text-anchor="middle" x="652.27" y="-1535.39" font-family="Times,serif" font-size="14.00">config_server</text>
47</g>
48<!-- console_forwarder -->
49<g id="node2" class="node">
50<title>console_forwarder</title>
51<ellipse fill="none" stroke="black" cx="652.27" cy="-1485.09" rx="76.89" ry="18"/>
52<text text-anchor="middle" x="652.27" y="-1481.39" font-family="Times,serif" font-size="14.00">console_forwarder</text>
53</g>
54<!-- cvd -->
55<g id="node3" class="node">
56<title>cvd</title>
57<ellipse fill="none" stroke="black" cx="27" cy="-868.09" rx="27" ry="18"/>
58<text text-anchor="middle" x="27" y="-864.39" font-family="Times,serif" font-size="14.00">cvd</text>
59</g>
60<!-- cvd_status -->
61<g id="node4" class="node">
62<title>cvd_status</title>
63<ellipse fill="none" stroke="black" cx="157.59" cy="-976.09" rx="48.19" ry="18"/>
64<text text-anchor="middle" x="157.59" y="-972.39" font-family="Times,serif" font-size="14.00">cvd_status</text>
65</g>
66<!-- cvd&#45;&gt;cvd_status -->
67<g id="edge1" class="edge">
68<title>cvd&#45;&gt;cvd_status</title>
69<path fill="none" stroke="black" d="M37.12,-884.8C47.72,-902.84 66.76,-931.37 90,-949.09 96,-953.66 102.89,-957.58 109.9,-960.9"/>
70<polygon fill="black" stroke="black" points="108.91,-964.29 119.48,-965.06 111.7,-957.87 108.91,-964.29"/>
71</g>
72<!-- launch_cvd -->
73<g id="node7" class="node">
74<title>launch_cvd</title>
75<ellipse fill="none" stroke="black" cx="157.59" cy="-760.09" rx="51.19" ry="18"/>
76<text text-anchor="middle" x="157.59" y="-756.39" font-family="Times,serif" font-size="14.00">launch_cvd</text>
77</g>
78<!-- cvd&#45;&gt;launch_cvd -->
79<g id="edge2" class="edge">
80<title>cvd&#45;&gt;launch_cvd</title>
81<path fill="none" stroke="black" d="M37.12,-851.37C47.72,-833.33 66.76,-804.8 90,-787.09 95.73,-782.72 102.26,-778.95 108.95,-775.73"/>
82<polygon fill="black" stroke="black" points="110.37,-778.92 118.09,-771.67 107.53,-772.52 110.37,-778.92"/>
83</g>
84<!-- powerwash_cvd -->
85<g id="node12" class="node">
86<title>powerwash_cvd</title>
87<ellipse fill="none" stroke="black" cx="157.59" cy="-922.09" rx="67.69" ry="18"/>
88<text text-anchor="middle" x="157.59" y="-918.39" font-family="Times,serif" font-size="14.00">powerwash_cvd</text>
89</g>
90<!-- cvd&#45;&gt;powerwash_cvd -->
91<g id="edge3" class="edge">
92<title>cvd&#45;&gt;powerwash_cvd</title>
93<path fill="none" stroke="black" d="M50.04,-877.84C61.86,-883.04 76.69,-889.49 90,-895.09 96.34,-897.75 103.03,-900.52 109.63,-903.22"/>
94<polygon fill="black" stroke="black" points="108.61,-906.58 119.19,-907.12 111.25,-900.1 108.61,-906.58"/>
95</g>
96<!-- restart_cvd -->
97<g id="node13" class="node">
98<title>restart_cvd</title>
99<ellipse fill="none" stroke="black" cx="157.59" cy="-868.09" rx="50.09" ry="18"/>
100<text text-anchor="middle" x="157.59" y="-864.39" font-family="Times,serif" font-size="14.00">restart_cvd</text>
101</g>
102<!-- cvd&#45;&gt;restart_cvd -->
103<g id="edge4" class="edge">
104<title>cvd&#45;&gt;restart_cvd</title>
105<path fill="none" stroke="black" d="M54.02,-868.09C66.49,-868.09 81.96,-868.09 97.09,-868.09"/>
106<polygon fill="black" stroke="black" points="97.46,-871.59 107.46,-868.09 97.46,-864.59 97.46,-871.59"/>
107</g>
108<!-- stop_cvd -->
109<g id="node18" class="node">
110<title>stop_cvd</title>
111<ellipse fill="none" stroke="black" cx="157.59" cy="-814.09" rx="42.49" ry="18"/>
112<text text-anchor="middle" x="157.59" y="-810.39" font-family="Times,serif" font-size="14.00">stop_cvd</text>
113</g>
114<!-- cvd&#45;&gt;stop_cvd -->
115<g id="edge5" class="edge">
116<title>cvd&#45;&gt;stop_cvd</title>
117<path fill="none" stroke="black" d="M50.04,-858.33C61.86,-853.13 76.69,-846.68 90,-841.09 98.61,-837.46 107.89,-833.65 116.7,-830.07"/>
118<polygon fill="black" stroke="black" points="118.07,-833.29 126.03,-826.29 115.44,-826.8 118.07,-833.29"/>
119</g>
120<!-- launcher_monitor_socket -->
121<g id="node8" class="node">
122<title>launcher_monitor_socket</title>
123<polygon fill="none" stroke="black" points="402.19,-886.09 261.19,-886.09 261.19,-850.09 402.19,-850.09 402.19,-886.09"/>
124<text text-anchor="middle" x="331.69" y="-864.39" font-family="Times,serif" font-size="14.00">launcher_monitor.sock</text>
125</g>
126<!-- cvd_status&#45;&gt;launcher_monitor_socket -->
127<g id="edge9" class="edge">
128<title>cvd_status&#45;&gt;launcher_monitor_socket</title>
129<path fill="none" stroke="black" d="M203.1,-960C210.64,-956.72 218.26,-953.05 225.19,-949.09 253.32,-932.98 282.32,-910.18 302.78,-892.88"/>
130<polygon fill="black" stroke="black" points="201.54,-956.85 193.65,-963.92 204.23,-963.32 201.54,-956.85"/>
131<polygon fill="black" stroke="black" points="305.13,-895.47 310.45,-886.3 300.58,-890.15 305.13,-895.47"/>
132</g>
133<!-- gnss_grpc_proxy -->
134<g id="node5" class="node">
135<title>gnss_grpc_proxy</title>
136<ellipse fill="none" stroke="black" cx="652.27" cy="-1431.09" rx="71.49" ry="18"/>
137<text text-anchor="middle" x="652.27" y="-1427.39" font-family="Times,serif" font-size="14.00">gnss_grpc_proxy</text>
138</g>
139<!-- kernel_log_monitor -->
140<g id="node6" class="node">
141<title>kernel_log_monitor</title>
142<ellipse fill="none" stroke="black" cx="652.27" cy="-1377.09" rx="81.49" ry="18"/>
143<text text-anchor="middle" x="652.27" y="-1373.39" font-family="Times,serif" font-size="14.00">kernel_log_monitor</text>
144</g>
145<!-- run_cvd -->
146<g id="node14" class="node">
147<title>run_cvd</title>
148<ellipse fill="none" stroke="black" stroke-width="2" cx="485.63" cy="-841.09" rx="47.39" ry="18"/>
149<text text-anchor="start" x="457.13" y="-838.39" font-family="Times,serif" font-size="14.00"> </text>
150<text text-anchor="start" x="461.13" y="-838.39" font-family="Times,serif" font-weight="bold" font-size="14.00">run_cvd</text>
151<text text-anchor="start" x="510.13" y="-838.39" font-family="Times,serif" font-size="14.00"> </text>
152</g>
153<!-- launch_cvd&#45;&gt;run_cvd -->
154<g id="edge6" class="edge">
155<title>launch_cvd&#45;&gt;run_cvd</title>
156<path fill="none" stroke="black" d="M195.93,-772.09C215.3,-778.13 239.41,-785.37 261.19,-791.09 319.81,-806.48 387.86,-821.27 433.32,-830.72"/>
157<polygon fill="black" stroke="black" points="432.73,-834.17 443.23,-832.77 434.15,-827.32 432.73,-834.17"/>
158</g>
159<!-- run_cvd_2 -->
160<g id="node15" class="node">
161<title>run_cvd_2</title>
162<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="331.69" cy="-764.09" rx="39.79" ry="18"/>
163<text text-anchor="middle" x="331.69" y="-760.39" font-family="Times,serif" font-size="14.00">run_cvd</text>
164</g>
165<!-- launch_cvd&#45;&gt;run_cvd_2 -->
166<g id="edge7" class="edge">
167<title>launch_cvd&#45;&gt;run_cvd_2</title>
168<path fill="none" stroke="black" stroke-dasharray="5,2" d="M208.83,-761.25C231.8,-761.79 258.92,-762.42 281.73,-762.95"/>
169<polygon fill="black" stroke="black" points="281.8,-766.45 291.88,-763.18 281.97,-759.45 281.8,-766.45"/>
170</g>
171<!-- run_cvd_etc -->
172<g id="node16" class="node">
173<title>run_cvd_etc</title>
174<ellipse fill="none" stroke="black" stroke-dasharray="5,2" cx="331.69" cy="-710.09" rx="27" ry="18"/>
175<text text-anchor="middle" x="331.69" y="-706.39" font-family="Times,serif" font-size="14.00">...</text>
176</g>
177<!-- launch_cvd&#45;&gt;run_cvd_etc -->
178<g id="edge8" class="edge">
179<title>launch_cvd&#45;&gt;run_cvd_etc</title>
180<path fill="none" stroke="black" stroke-dasharray="5,2" d="M197.64,-748.74C227.5,-740.07 268.24,-728.23 296.74,-719.95"/>
181<polygon fill="black" stroke="black" points="298.02,-723.22 306.65,-717.07 296.07,-716.5 298.02,-723.22"/>
182</g>
183<!-- launcher_monitor_socket&#45;&gt;run_cvd -->
184<g id="edge13" class="edge">
185<title>launcher_monitor_socket&#45;&gt;run_cvd</title>
186<path fill="none" stroke="black" d="M412.32,-853.94C419.08,-852.73 425.81,-851.54 432.28,-850.39"/>
187<polygon fill="black" stroke="black" points="411.67,-850.5 402.43,-855.69 412.89,-857.39 411.67,-850.5"/>
188<polygon fill="black" stroke="black" points="432.98,-853.82 442.21,-848.62 431.75,-846.93 432.98,-853.82"/>
189</g>
190<!-- logcat_receiver -->
191<g id="node9" class="node">
192<title>logcat_receiver</title>
193<ellipse fill="none" stroke="black" cx="652.27" cy="-1323.09" rx="64.99" ry="18"/>
194<text text-anchor="middle" x="652.27" y="-1319.39" font-family="Times,serif" font-size="14.00">logcat_receiver</text>
195</g>
196<!-- metrics -->
197<g id="node10" class="node">
198<title>metrics</title>
199<ellipse fill="none" stroke="black" cx="652.27" cy="-1269.09" rx="37.09" ry="18"/>
200<text text-anchor="middle" x="652.27" y="-1265.39" font-family="Times,serif" font-size="14.00">metrics</text>
201</g>
202<!-- modem_simulator -->
203<g id="node11" class="node">
204<title>modem_simulator</title>
205<ellipse fill="none" stroke="black" cx="652.27" cy="-1215.09" rx="76.09" ry="18"/>
206<text text-anchor="middle" x="652.27" y="-1211.39" font-family="Times,serif" font-size="14.00">modem_simulator</text>
207</g>
208<!-- powerwash_cvd&#45;&gt;launcher_monitor_socket -->
209<g id="edge10" class="edge">
210<title>powerwash_cvd&#45;&gt;launcher_monitor_socket</title>
211<path fill="none" stroke="black" d="M211.67,-905.43C227.99,-900.31 246.18,-894.6 263.33,-889.22"/>
212<polygon fill="black" stroke="black" points="210.51,-902.13 202.02,-908.46 212.61,-908.8 210.51,-902.13"/>
213<polygon fill="black" stroke="black" points="264.79,-892.43 273.29,-886.1 262.7,-885.75 264.79,-892.43"/>
214</g>
215<!-- restart_cvd&#45;&gt;launcher_monitor_socket -->
216<g id="edge11" class="edge">
217<title>restart_cvd&#45;&gt;launcher_monitor_socket</title>
218<path fill="none" stroke="black" d="M218.27,-868.09C228.86,-868.09 240.05,-868.09 251.09,-868.09"/>
219<polygon fill="black" stroke="black" points="217.91,-864.59 207.91,-868.09 217.91,-871.59 217.91,-864.59"/>
220<polygon fill="black" stroke="black" points="251.17,-871.59 261.17,-868.09 251.17,-864.59 251.17,-871.59"/>
221</g>
222<!-- run_cvd&#45;&gt;config_server -->
223<g id="edge16" class="edge">
224<title>run_cvd&#45;&gt;config_server</title>
225<path fill="none" stroke="black" d="M487.46,-859.17C492.27,-961.04 517.96,-1460.39 561.08,-1512.09 567.82,-1520.17 576.88,-1525.9 586.67,-1529.94"/>
226<polygon fill="black" stroke="black" points="585.62,-1533.28 596.22,-1533.32 587.96,-1526.68 585.62,-1533.28"/>
227</g>
228<!-- run_cvd&#45;&gt;console_forwarder -->
229<g id="edge17" class="edge">
230<title>run_cvd&#45;&gt;console_forwarder</title>
231<path fill="none" stroke="black" stroke-dasharray="5,2" d="M486.25,-859.14C484.68,-950.83 482.1,-1364.32 561.08,-1458.09 565.61,-1463.46 571.16,-1467.79 577.26,-1471.28"/>
232<polygon fill="black" stroke="black" points="576.02,-1474.57 586.54,-1475.81 579.09,-1468.28 576.02,-1474.57"/>
233</g>
234<!-- run_cvd&#45;&gt;gnss_grpc_proxy -->
235<g id="edge21" class="edge">
236<title>run_cvd&#45;&gt;gnss_grpc_proxy</title>
237<path fill="none" stroke="black" stroke-dasharray="5,2" d="M486.48,-859.26C486.13,-946.26 488.9,-1319.38 561.08,-1404.09 566.22,-1410.12 572.66,-1414.84 579.7,-1418.52"/>
238<polygon fill="black" stroke="black" points="578.36,-1421.75 588.91,-1422.65 581.22,-1415.37 578.36,-1421.75"/>
239</g>
240<!-- run_cvd&#45;&gt;kernel_log_monitor -->
241<g id="edge22" class="edge">
242<title>run_cvd&#45;&gt;kernel_log_monitor</title>
243<path fill="none" stroke="black" d="M486.76,-859.14C487.72,-940.72 495.61,-1274.31 561.08,-1350.09 565.29,-1354.96 570.33,-1358.97 575.86,-1362.27"/>
244<polygon fill="black" stroke="black" points="574.4,-1365.45 584.9,-1366.89 577.59,-1359.22 574.4,-1365.45"/>
245</g>
246<!-- run_cvd&#45;&gt;logcat_receiver -->
247<g id="edge23" class="edge">
248<title>run_cvd&#45;&gt;logcat_receiver</title>
249<path fill="none" stroke="black" d="M487.11,-859.24C489.49,-935.53 502.36,-1229.28 561.08,-1296.09 567.04,-1302.86 574.62,-1307.98 582.85,-1311.82"/>
250<polygon fill="black" stroke="black" points="581.79,-1315.17 592.37,-1315.65 584.4,-1308.67 581.79,-1315.17"/>
251</g>
252<!-- run_cvd&#45;&gt;metrics -->
253<g id="edge24" class="edge">
254<title>run_cvd&#45;&gt;metrics</title>
255<path fill="none" stroke="black" d="M487.55,-859.21C491.46,-929.64 509.04,-1184.14 561.08,-1242.09 572.38,-1254.67 589.29,-1261.5 605.43,-1265.16"/>
256<polygon fill="black" stroke="black" points="604.83,-1268.61 615.31,-1267.05 606.15,-1261.73 604.83,-1268.61"/>
257</g>
258<!-- run_cvd&#45;&gt;modem_simulator -->
259<g id="edge25" class="edge">
260<title>run_cvd&#45;&gt;modem_simulator</title>
261<path fill="none" stroke="black" d="M488.13,-859.37C493.77,-923.79 515.73,-1138.97 561.08,-1188.09 566.04,-1193.45 572.01,-1197.77 578.49,-1201.24"/>
262<polygon fill="black" stroke="black" points="577.06,-1204.43 587.61,-1205.46 580.01,-1198.08 577.06,-1204.43"/>
263</g>
264<!-- secure_env -->
265<g id="node17" class="node">
266<title>secure_env</title>
267<ellipse fill="none" stroke="black" cx="652.27" cy="-1161.09" rx="50.09" ry="18"/>
268<text text-anchor="middle" x="652.27" y="-1157.39" font-family="Times,serif" font-size="14.00">secure_env</text>
269</g>
270<!-- run_cvd&#45;&gt;secure_env -->
271<g id="edge35" class="edge">
272<title>run_cvd&#45;&gt;secure_env</title>
273<path fill="none" stroke="black" d="M488.9,-859.29C496.43,-916.87 522.3,-1093.64 561.08,-1134.09 569.92,-1143.3 581.76,-1149.41 593.95,-1153.44"/>
274<polygon fill="black" stroke="black" points="593.17,-1156.86 603.75,-1156.26 595.1,-1150.13 593.17,-1156.86"/>
275</g>
276<!-- tombstone_receiver -->
277<g id="node19" class="node">
278<title>tombstone_receiver</title>
279<ellipse fill="none" stroke="black" cx="652.27" cy="-1107.09" rx="80.69" ry="18"/>
280<text text-anchor="middle" x="652.27" y="-1103.39" font-family="Times,serif" font-size="14.00">tombstone_receiver</text>
281</g>
282<!-- run_cvd&#45;&gt;tombstone_receiver -->
283<g id="edge37" class="edge">
284<title>run_cvd&#45;&gt;tombstone_receiver</title>
285<path fill="none" stroke="black" d="M486.47,-859.19C487.08,-904.36 495.24,-1022.89 561.08,-1085.09 564.63,-1088.44 568.6,-1091.3 572.84,-1093.75"/>
286<polygon fill="black" stroke="black" points="571.37,-1096.93 581.89,-1098.22 574.47,-1090.65 571.37,-1096.93"/>
287</g>
288<!-- adb_connector -->
289<g id="node20" class="node">
290<title>adb_connector</title>
291<ellipse fill="none" stroke="black" cx="652.27" cy="-1032.09" rx="62.29" ry="18"/>
292<text text-anchor="middle" x="652.27" y="-1028.39" font-family="Times,serif" font-size="14.00">adb_connector</text>
293</g>
294<!-- run_cvd&#45;&gt;adb_connector -->
295<g id="edge14" class="edge">
296<title>run_cvd&#45;&gt;adb_connector</title>
297<path fill="none" stroke="black" stroke-dasharray="5,2" d="M489.73,-859.04C496.49,-892.71 515.74,-965.5 561.08,-1005.09 568.56,-1011.62 577.57,-1016.57 586.96,-1020.32"/>
298<polygon fill="black" stroke="black" points="585.84,-1023.64 596.44,-1023.69 588.19,-1017.04 585.84,-1023.64"/>
299</g>
300<!-- socket_vsock_proxy -->
301<g id="node21" class="node">
302<title>socket_vsock_proxy</title>
303<ellipse fill="none" stroke="black" cx="652.27" cy="-978.09" rx="83.39" ry="18"/>
304<text text-anchor="middle" x="652.27" y="-974.39" font-family="Times,serif" font-size="14.00">socket_vsock_proxy</text>
305</g>
306<!-- run_cvd&#45;&gt;socket_vsock_proxy -->
307<g id="edge36" class="edge">
308<title>run_cvd&#45;&gt;socket_vsock_proxy</title>
309<path fill="none" stroke="black" stroke-dasharray="5,2" d="M494.55,-858.92C505.96,-882.6 529.18,-924.24 561.08,-948.09 568.09,-953.33 576.07,-957.68 584.31,-961.3"/>
310<polygon fill="black" stroke="black" points="583.11,-964.59 593.69,-965.07 585.72,-958.09 583.11,-964.59"/>
311</g>
312<!-- bt_connector -->
313<g id="node22" class="node">
314<title>bt_connector</title>
315<ellipse fill="none" stroke="black" cx="652.27" cy="-895.09" rx="56.59" ry="18"/>
316<text text-anchor="middle" x="652.27" y="-891.39" font-family="Times,serif" font-size="14.00">bt_connector</text>
317</g>
318<!-- run_cvd&#45;&gt;bt_connector -->
319<g id="edge15" class="edge">
320<title>run_cvd&#45;&gt;bt_connector</title>
321<path fill="none" stroke="black" stroke-dasharray="5,2" d="M519.85,-853.59C532.67,-858.3 547.5,-863.6 561.08,-868.09 573.45,-872.18 586.86,-876.34 599.46,-880.13"/>
322<polygon fill="black" stroke="black" points="598.77,-883.57 609.36,-883.08 600.77,-876.87 598.77,-883.57"/>
323</g>
324<!-- netsim -->
325<g id="node23" class="node">
326<title>netsim</title>
327<ellipse fill="none" stroke="black" cx="652.27" cy="-841.09" rx="34.39" ry="18"/>
328<text text-anchor="middle" x="652.27" y="-837.39" font-family="Times,serif" font-size="14.00">netsim</text>
329</g>
330<!-- run_cvd&#45;&gt;netsim -->
331<g id="edge26" class="edge">
332<title>run_cvd&#45;&gt;netsim</title>
333<path fill="none" stroke="black" stroke-dasharray="5,2" d="M533.37,-841.09C556.7,-841.09 584.76,-841.09 607.64,-841.09"/>
334<polygon fill="black" stroke="black" points="607.76,-844.59 617.76,-841.09 607.76,-837.59 607.76,-844.59"/>
335</g>
336<!-- root_canal -->
337<g id="node24" class="node">
338<title>root_canal</title>
339<ellipse fill="none" stroke="black" cx="868.96" cy="-787.09" rx="46.29" ry="18"/>
340<text text-anchor="middle" x="868.96" y="-783.39" font-family="Times,serif" font-size="14.00">root&#45;canal</text>
341</g>
342<!-- run_cvd&#45;&gt;root_canal -->
343<g id="edge28" class="edge">
344<title>run_cvd&#45;&gt;root_canal</title>
345<path fill="none" stroke="black" stroke-dasharray="5,2" d="M496.56,-823.53C508.82,-803.84 531.7,-772.99 561.08,-760.09 649.22,-721.38 765.11,-750.45 826.16,-771.12"/>
346<polygon fill="black" stroke="black" points="825.24,-774.5 835.83,-774.48 827.54,-767.89 825.24,-774.5"/>
347</g>
348<!-- root_canal_log_tee -->
349<g id="node25" class="node">
350<title>root_canal_log_tee</title>
351<ellipse fill="none" stroke="black" cx="652.27" cy="-787.09" rx="36.29" ry="18"/>
352<text text-anchor="middle" x="652.27" y="-783.39" font-family="Times,serif" font-size="14.00">log_tee</text>
353</g>
354<!-- run_cvd&#45;&gt;root_canal_log_tee -->
355<g id="edge29" class="edge">
356<title>run_cvd&#45;&gt;root_canal_log_tee</title>
357<path fill="none" stroke="black" stroke-dasharray="5,2" d="M519.85,-828.58C532.67,-823.87 547.5,-818.58 561.08,-814.09 577.12,-808.78 594.91,-803.36 610.42,-798.78"/>
358<polygon fill="black" stroke="black" points="611.63,-802.07 620.25,-795.9 609.67,-795.35 611.63,-802.07"/>
359</g>
360<!-- nfc_connector -->
361<g id="node26" class="node">
362<title>nfc_connector</title>
363<ellipse fill="none" stroke="black" cx="652.27" cy="-674.09" rx="61.19" ry="18"/>
364<text text-anchor="middle" x="652.27" y="-670.39" font-family="Times,serif" font-size="14.00">nfc_connector</text>
365</g>
366<!-- run_cvd&#45;&gt;nfc_connector -->
367<g id="edge31" class="edge">
368<title>run_cvd&#45;&gt;nfc_connector</title>
369<path fill="none" stroke="black" stroke-dasharray="5,2" d="M495.08,-823.06C507.08,-798.92 530.98,-755.8 561.08,-727.09 574.92,-713.88 592.64,-702.57 608.7,-693.83"/>
370<polygon fill="black" stroke="black" points="610.7,-696.74 617.93,-688.99 607.45,-690.54 610.7,-696.74"/>
371</g>
372<!-- casimir -->
373<g id="node27" class="node">
374<title>casimir</title>
375<ellipse fill="none" stroke="black" cx="868.96" cy="-620.09" rx="97.48" ry="18"/>
376<text text-anchor="middle" x="868.96" y="-616.39" font-family="Times,serif" font-size="14.00">casimir (NFC rootcanal)</text>
377</g>
378<!-- run_cvd&#45;&gt;casimir -->
379<g id="edge32" class="edge">
380<title>run_cvd&#45;&gt;casimir</title>
381<path fill="none" stroke="black" stroke-dasharray="5,2" d="M489.26,-823.04C497.25,-770.8 523.12,-621.33 561.08,-593.09 638.43,-535.55 758.99,-572.42 823.56,-599.28"/>
382<polygon fill="black" stroke="black" points="822.48,-602.62 833.05,-603.32 825.23,-596.18 822.48,-602.62"/>
383</g>
384<!-- casimir_log_tee -->
385<g id="node28" class="node">
386<title>casimir_log_tee</title>
387<ellipse fill="none" stroke="black" cx="652.27" cy="-620.09" rx="36.29" ry="18"/>
388<text text-anchor="middle" x="652.27" y="-616.39" font-family="Times,serif" font-size="14.00">log_tee</text>
389</g>
390<!-- run_cvd&#45;&gt;casimir_log_tee -->
391<g id="edge33" class="edge">
392<title>run_cvd&#45;&gt;casimir_log_tee</title>
393<path fill="none" stroke="black" stroke-dasharray="5,2" d="M488.33,-822.91C492.89,-784.69 508.83,-695.53 561.08,-647.09 573.37,-635.69 590.28,-629.09 606.15,-625.28"/>
394<polygon fill="black" stroke="black" points="607.28,-628.61 616.36,-623.15 605.86,-621.76 607.28,-628.61"/>
395</g>
396<!-- vmm -->
397<g id="node34" class="node">
398<title>vmm</title>
399<polygon fill="none" stroke="black" points="652.27,-471.09 625.27,-453.09 652.27,-435.09 679.27,-453.09 652.27,-471.09"/>
400</g>
401<!-- run_cvd&#45;&gt;vmm -->
402<g id="edge38" class="edge">
403<title>run_cvd&#45;&gt;vmm</title>
404<path fill="none" stroke="black" d="M488.64,-823C494.32,-776.85 513.33,-651.87 561.08,-560.09 579.69,-524.31 612.08,-489.95 632.56,-470.21"/>
405<polygon fill="black" stroke="black" points="635.16,-472.56 640.02,-463.15 630.35,-467.47 635.16,-472.56"/>
406</g>
407<!-- operator_proxy -->
408<g id="node35" class="node">
409<title>operator_proxy</title>
410<ellipse fill="none" stroke="black" cx="652.27" cy="-262.09" rx="64.99" ry="18"/>
411<text text-anchor="middle" x="652.27" y="-258.39" font-family="Times,serif" font-size="14.00">operator_proxy</text>
412</g>
413<!-- run_cvd&#45;&gt;operator_proxy -->
414<g id="edge27" class="edge">
415<title>run_cvd&#45;&gt;operator_proxy</title>
416<path fill="none" stroke="black" stroke-dasharray="5,2" d="M487.12,-823.06C489.65,-740.77 503.48,-401.11 561.08,-315.09 571.05,-300.2 586.72,-288.92 602.23,-280.67"/>
417<polygon fill="black" stroke="black" points="603.9,-283.75 611.3,-276.16 600.78,-277.48 603.9,-283.75"/>
418</g>
419<!-- webrtc -->
420<g id="node36" class="node">
421<title>webrtc</title>
422<ellipse fill="none" stroke="black" cx="652.27" cy="-208.09" rx="34.39" ry="18"/>
423<text text-anchor="middle" x="652.27" y="-204.39" font-family="Times,serif" font-size="14.00">webrtc</text>
424</g>
425<!-- run_cvd&#45;&gt;webrtc -->
426<g id="edge39" class="edge">
427<title>run_cvd&#45;&gt;webrtc</title>
428<path fill="none" stroke="black" stroke-dasharray="5,2" d="M486.3,-823.06C484.96,-732.39 483.47,-327.02 561.08,-235.09 572.52,-221.54 590.46,-214.62 607.34,-211.15"/>
429<polygon fill="black" stroke="black" points="608.36,-214.53 617.64,-209.41 607.2,-207.63 608.36,-214.53"/>
430</g>
431<!-- crosvm_openwrt -->
432<g id="node37" class="node">
433<title>crosvm_openwrt</title>
434<ellipse fill="none" stroke="black" cx="868.96" cy="-116.09" rx="77.99" ry="18"/>
435<text text-anchor="middle" x="868.96" y="-112.39" font-family="Times,serif" font-size="14.00">OpenWRT crosvm</text>
436</g>
437<!-- run_cvd&#45;&gt;crosvm_openwrt -->
438<g id="edge18" class="edge">
439<title>run_cvd&#45;&gt;crosvm_openwrt</title>
440<path fill="none" stroke="black" d="M487.41,-822.81C491.91,-721.03 515.95,-226.87 561.08,-178.09 617.13,-117.5 662.6,-159.61 743.46,-143.09 762.57,-139.18 783.27,-134.77 802.22,-130.65"/>
441<polygon fill="black" stroke="black" points="803.22,-134.02 812.24,-128.47 801.73,-127.18 803.22,-134.02"/>
442</g>
443<!-- crosvm_openwrt_log_tee -->
444<g id="node38" class="node">
445<title>crosvm_openwrt_log_tee</title>
446<ellipse fill="none" stroke="black" cx="652.27" cy="-116.09" rx="36.29" ry="18"/>
447<text text-anchor="middle" x="652.27" y="-112.39" font-family="Times,serif" font-size="14.00">log_tee</text>
448</g>
449<!-- run_cvd&#45;&gt;crosvm_openwrt_log_tee -->
450<g id="edge19" class="edge">
451<title>run_cvd&#45;&gt;crosvm_openwrt_log_tee</title>
452<path fill="none" stroke="black" d="M487.45,-822.78C492.23,-718.56 517.96,-202.69 561.08,-148.09 572.08,-134.16 589.61,-126.28 606.29,-121.83"/>
453<polygon fill="black" stroke="black" points="607.55,-125.13 616.51,-119.48 605.98,-118.31 607.55,-125.13"/>
454</g>
455<!-- wmediumd -->
456<g id="node39" class="node">
457<title>wmediumd</title>
458<ellipse fill="none" stroke="black" cx="868.96" cy="-62.09" rx="51.19" ry="18"/>
459<text text-anchor="middle" x="868.96" y="-58.39" font-family="Times,serif" font-size="14.00">wmediumd</text>
460</g>
461<!-- run_cvd&#45;&gt;wmediumd -->
462<g id="edge40" class="edge">
463<title>run_cvd&#45;&gt;wmediumd</title>
464<path fill="none" stroke="black" d="M486.88,-822.98C488.62,-708.67 500.79,-90.06 561.08,-35.09 635.32,32.61 765.85,-13.58 830.08,-42.97"/>
465<polygon fill="black" stroke="black" points="828.89,-46.28 839.43,-47.35 831.86,-39.94 828.89,-46.28"/>
466</g>
467<!-- wmediumd_log_tee -->
468<g id="node40" class="node">
469<title>wmediumd_log_tee</title>
470<ellipse fill="none" stroke="black" cx="652.27" cy="-62.09" rx="36.29" ry="18"/>
471<text text-anchor="middle" x="652.27" y="-58.39" font-family="Times,serif" font-size="14.00">log_tee</text>
472</g>
473<!-- run_cvd&#45;&gt;wmediumd_log_tee -->
474<g id="edge41" class="edge">
475<title>run_cvd&#45;&gt;wmediumd_log_tee</title>
476<path fill="none" stroke="black" d="M487.23,-823C491.01,-714.03 512.84,-147.62 561.08,-89.09 572.01,-75.82 589.19,-68.9 605.63,-65.34"/>
477<polygon fill="black" stroke="black" points="606.48,-68.75 615.7,-63.54 605.24,-61.86 606.48,-68.75"/>
478</g>
479<!-- stop_cvd&#45;&gt;launcher_monitor_socket -->
480<g id="edge12" class="edge">
481<title>stop_cvd&#45;&gt;launcher_monitor_socket</title>
482<path fill="none" stroke="black" d="M201.74,-827.62C220.39,-833.48 242.66,-840.46 263.4,-846.97"/>
483<polygon fill="black" stroke="black" points="202.77,-824.28 192.18,-824.63 200.68,-830.96 202.77,-824.28"/>
484<polygon fill="black" stroke="black" points="262.53,-850.37 273.12,-850.02 264.63,-843.69 262.53,-850.37"/>
485</g>
486<!-- root_canal_log_tee&#45;&gt;root_canal -->
487<g id="edge30" class="edge">
488<title>root_canal_log_tee&#45;&gt;root_canal</title>
489<path fill="none" stroke="black" d="M699.08,-787.09C735.58,-787.09 786.4,-787.09 822.74,-787.09"/>
490<polygon fill="black" stroke="black" points="698.72,-783.59 688.72,-787.09 698.72,-790.59 698.72,-783.59"/>
491</g>
492<!-- casimir_log_tee&#45;&gt;casimir -->
493<g id="edge34" class="edge">
494<title>casimir_log_tee&#45;&gt;casimir</title>
495<path fill="none" stroke="black" d="M699,-620.09C720.15,-620.09 746.12,-620.09 771.3,-620.09"/>
496<polygon fill="black" stroke="black" points="698.72,-616.59 688.72,-620.09 698.72,-623.59 698.72,-616.59"/>
497</g>
498<!-- crosvm_android -->
499<g id="node29" class="node">
500<title>crosvm_android</title>
501<ellipse fill="none" stroke="black" cx="1071.34" cy="-372.09" rx="68.79" ry="18"/>
502<text text-anchor="middle" x="1071.34" y="-368.39" font-family="Times,serif" font-size="14.00">Android crosvm</text>
503</g>
504<!-- crosvm_android_log_tee -->
505<g id="node30" class="node">
506<title>crosvm_android_log_tee</title>
507<ellipse fill="none" stroke="black" cx="868.96" cy="-345.09" rx="36.29" ry="18"/>
508<text text-anchor="middle" x="868.96" y="-341.39" font-family="Times,serif" font-size="14.00">log_tee</text>
509</g>
510<!-- crosvm_android_log_tee&#45;&gt;crosvm_android -->
511<g id="edge43" class="edge">
512<title>crosvm_android_log_tee&#45;&gt;crosvm_android</title>
513<path fill="none" stroke="black" stroke-dasharray="5,2" d="M914.32,-351.06C942.35,-354.84 978.95,-359.77 1009.66,-363.91"/>
514<polygon fill="black" stroke="black" points="914.78,-347.59 904.4,-349.73 913.85,-354.53 914.78,-347.59"/>
515</g>
516<!-- crosvm_android_restarter -->
517<g id="node31" class="node">
518<title>crosvm_android_restarter</title>
519<ellipse fill="none" stroke="black" cx="868.96" cy="-399.09" rx="70.39" ry="18"/>
520<text text-anchor="middle" x="868.96" y="-395.39" font-family="Times,serif" font-size="14.00">process_restarter</text>
521</g>
522<!-- crosvm_android_restarter&#45;&gt;crosvm_android -->
523<g id="edge45" class="edge">
524<title>crosvm_android_restarter&#45;&gt;crosvm_android</title>
525<path fill="none" stroke="black" d="M931.44,-390.8C952.99,-387.9 977.36,-384.61 999.61,-381.62"/>
526<polygon fill="black" stroke="black" points="1000.22,-385.07 1009.66,-380.26 999.28,-378.13 1000.22,-385.07"/>
527</g>
528<!-- gem5 -->
529<g id="node32" class="node">
530<title>gem5</title>
531<ellipse fill="none" stroke="black" cx="868.96" cy="-453.09" rx="30.59" ry="18"/>
532<text text-anchor="middle" x="868.96" y="-449.39" font-family="Times,serif" font-size="14.00">gem5</text>
533</g>
534<!-- qemu -->
535<g id="node33" class="node">
536<title>qemu</title>
537<ellipse fill="none" stroke="black" cx="868.96" cy="-507.09" rx="37.09" ry="18"/>
538<text text-anchor="middle" x="868.96" y="-503.39" font-family="Times,serif" font-size="14.00">QEMU</text>
539</g>
540<!-- vmm&#45;&gt;crosvm_android_log_tee -->
541<g id="edge46" class="edge">
542<title>vmm&#45;&gt;crosvm_android_log_tee</title>
543<path fill="none" stroke="black" stroke-dasharray="5,2" d="M664.89,-443.16C685.21,-426.28 729.09,-391.87 771.46,-372.09 788.33,-364.21 807.95,-358.2 825.08,-353.88"/>
544<polygon fill="black" stroke="black" points="825.94,-357.27 834.84,-351.52 824.3,-350.46 825.94,-357.27"/>
545</g>
546<!-- vmm&#45;&gt;crosvm_android_restarter -->
547<g id="edge44" class="edge">
548<title>vmm&#45;&gt;crosvm_android_restarter</title>
549<path fill="none" stroke="black" stroke-dasharray="5,2" d="M672.32,-448.29C702.54,-440.69 762.68,-425.56 808.35,-414.08"/>
550<polygon fill="black" stroke="black" points="809.31,-417.45 818.16,-411.61 807.6,-410.66 809.31,-417.45"/>
551</g>
552<!-- vmm&#45;&gt;gem5 -->
553<g id="edge47" class="edge">
554<title>vmm&#45;&gt;gem5</title>
555<path fill="none" stroke="black" stroke-dasharray="5,2" d="M679.6,-453.09C716.73,-453.09 784.79,-453.09 828.13,-453.09"/>
556<polygon fill="black" stroke="black" points="828.32,-456.59 838.32,-453.09 828.32,-449.59 828.32,-456.59"/>
557</g>
558<!-- vmm&#45;&gt;qemu -->
559<g id="edge48" class="edge">
560<title>vmm&#45;&gt;qemu</title>
561<path fill="none" stroke="black" stroke-dasharray="5,2" d="M672.32,-457.88C706.55,-466.49 779.2,-484.76 825.69,-496.45"/>
562<polygon fill="black" stroke="black" points="824.93,-499.87 835.48,-498.92 826.63,-493.08 824.93,-499.87"/>
563</g>
564<!-- crosvm_openwrt_log_tee&#45;&gt;crosvm_openwrt -->
565<g id="edge20" class="edge">
566<title>crosvm_openwrt_log_tee&#45;&gt;crosvm_openwrt</title>
567<path fill="none" stroke="black" d="M698.89,-116.09C725.52,-116.09 759.82,-116.09 790.56,-116.09"/>
568<polygon fill="black" stroke="black" points="698.72,-112.59 688.72,-116.09 698.72,-119.59 698.72,-112.59"/>
569</g>
570<!-- wmediumd_log_tee&#45;&gt;wmediumd -->
571<g id="edge42" class="edge">
572<title>wmediumd_log_tee&#45;&gt;wmediumd</title>
573<path fill="none" stroke="black" d="M699.08,-62.09C733.88,-62.09 781.72,-62.09 817.59,-62.09"/>
574<polygon fill="black" stroke="black" points="698.72,-58.59 688.72,-62.09 698.72,-65.59 698.72,-58.59"/>
575</g>
576</g>
577</svg>
578