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="1567pt" height="434pt"
8 viewBox="0.00 0.00 1566.50 434.00" 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 430)">
10<title>%3</title>
11<polygon fill="white" stroke="transparent" points="-4,4 -4,-430 1562.5,-430 1562.5,4 -4,4"/>
12<g id="clust2" class="cluster">
13<title>cluster_android</title>
14<polygon fill="none" stroke="black" points="319.5,-8 319.5,-166 1154.5,-166 1154.5,-8 319.5,-8"/>
15<text text-anchor="middle" x="737" y="-150.8" font-family="Times,serif" font-size="14.00">Android VM</text>
16</g>
17<g id="clust3" class="cluster">
18<title>cluster_keymint</title>
19<polygon fill="none" stroke="black" stroke-dasharray="1,5" points="327.5,-16 327.5,-91 713.5,-91 713.5,-16 327.5,-16"/>
20<text text-anchor="middle" x="520.5" y="-75.8" font-family="Times,serif" font-size="14.00">One of:</text>
21</g>
22<!-- browser -->
23<g id="node1" class="node">
24<title>browser</title>
25<ellipse fill="none" stroke="black" cx="1291.5" cy="-408" rx="40.09" ry="18"/>
26<text text-anchor="middle" x="1291.5" y="-404.3" font-family="Times,serif" font-size="14.00">Browser</text>
27</g>
28<!-- webRTC -->
29<g id="node6" class="node">
30<title>webRTC</title>
31<ellipse fill="none" stroke="black" cx="1291.5" cy="-336" rx="42.49" ry="18"/>
32<text text-anchor="middle" x="1291.5" y="-332.3" font-family="Times,serif" font-size="14.00">webRTC</text>
33</g>
34<!-- browser&#45;&gt;webRTC -->
35<g id="edge1" class="edge">
36<title>browser&#45;&gt;webRTC</title>
37<path fill="none" stroke="black" d="M1291.5,-389.7C1291.5,-381.98 1291.5,-372.71 1291.5,-364.11"/>
38<polygon fill="black" stroke="black" points="1295,-364.1 1291.5,-354.1 1288,-364.1 1295,-364.1"/>
39</g>
40<!-- confirmationui_sign -->
41<g id="node2" class="node">
42<title>confirmationui_sign</title>
43<polygon fill="none" stroke="red" points="1085.5,-354 931.5,-354 931.5,-318 1085.5,-318 1085.5,-354"/>
44<text text-anchor="middle" x="1008.5" y="-332.3" font-family="Times,serif" font-size="14.00">internal/confui_sign.sock</text>
45</g>
46<!-- confirmationui_sign&#45;&gt;webRTC -->
47<g id="edge10" class="edge">
48<title>confirmationui_sign&#45;&gt;webRTC</title>
49<path fill="none" stroke="red" d="M1095.81,-336C1143.44,-336 1191.08,-336 1238.71,-336"/>
50<polygon fill="red" stroke="red" points="1095.61,-332.5 1085.61,-336 1095.61,-339.5 1095.61,-332.5"/>
51<polygon fill="red" stroke="red" points="1238.87,-339.5 1248.87,-336 1238.87,-332.5 1238.87,-339.5"/>
52</g>
53<!-- run_cvd -->
54<g id="node3" class="node">
55<title>run_cvd</title>
56<ellipse fill="none" stroke="black" cx="709.5" cy="-408" rx="39.79" ry="18"/>
57<text text-anchor="middle" x="709.5" y="-404.3" font-family="Times,serif" font-size="14.00">run_cvd</text>
58</g>
59<!-- secure_env -->
60<g id="node4" class="node">
61<title>secure_env</title>
62<ellipse fill="none" stroke="black" stroke-width="2" cx="709.5" cy="-336" rx="57.39" ry="18"/>
63<text text-anchor="start" x="673.5" y="-333.3" font-family="Times,serif" font-size="14.00"> </text>
64<text text-anchor="start" x="677.5" y="-333.3" font-family="Times,serif" font-weight="bold" font-size="14.00">secure_env</text>
65<text text-anchor="start" x="741.5" y="-333.3" font-family="Times,serif" font-size="14.00"> </text>
66</g>
67<!-- run_cvd&#45;&gt;secure_env -->
68<g id="edge2" class="edge">
69<title>run_cvd&#45;&gt;secure_env</title>
70<path fill="none" stroke="black" d="M709.5,-389.7C709.5,-381.98 709.5,-372.71 709.5,-364.11"/>
71<polygon fill="black" stroke="black" points="713,-364.1 709.5,-354.1 706,-364.1 713,-364.1"/>
72</g>
73<!-- secure_env&#45;&gt;confirmationui_sign -->
74<g id="edge9" class="edge">
75<title>secure_env&#45;&gt;confirmationui_sign</title>
76<path fill="none" stroke="red" d="M777,-336C824.94,-336 872.89,-336 920.83,-336"/>
77<polygon fill="red" stroke="red" points="776.73,-332.5 766.73,-336 776.73,-339.5 776.73,-332.5"/>
78<polygon fill="red" stroke="red" points="921.06,-339.5 931.06,-336 921.06,-332.5 921.06,-339.5"/>
79</g>
80<!-- host_keymaster_in -->
81<g id="node7" class="node">
82<title>host_keymaster_in</title>
83<polygon fill="none" stroke="blue" points="183,-282 0,-282 0,-246 183,-246 183,-282"/>
84<text text-anchor="middle" x="91.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/keymaster_fifo_vm.in</text>
85</g>
86<!-- secure_env&#45;&gt;host_keymaster_in -->
87<g id="edge19" class="edge">
88<title>secure_env&#45;&gt;host_keymaster_in</title>
89<path fill="none" stroke="blue" d="M654.65,-330.55C561.89,-322.77 367.94,-305.39 193.27,-282.05"/>
90<polygon fill="blue" stroke="blue" points="193.5,-278.55 183.12,-280.69 192.56,-285.49 193.5,-278.55"/>
91</g>
92<!-- host_keymaster_out -->
93<g id="node8" class="node">
94<title>host_keymaster_out</title>
95<polygon fill="none" stroke="blue" points="391.5,-282 201.5,-282 201.5,-246 391.5,-246 391.5,-282"/>
96<text text-anchor="middle" x="296.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/keymaster_fifo_vm.out</text>
97</g>
98<!-- secure_env&#45;&gt;host_keymaster_out -->
99<g id="edge17" class="edge">
100<title>secure_env&#45;&gt;host_keymaster_out</title>
101<path fill="none" stroke="blue" d="M650.46,-324.99C582.95,-313.55 471.47,-294.66 391.65,-281.13"/>
102<polygon fill="blue" stroke="blue" points="650.06,-328.47 660.5,-326.7 651.23,-321.57 650.06,-328.47"/>
103</g>
104<!-- host_gatekeeper_in -->
105<g id="node9" class="node">
106<title>host_gatekeeper_in</title>
107<polygon fill="none" stroke="green" points="595,-282 410,-282 410,-246 595,-246 595,-282"/>
108<text text-anchor="middle" x="502.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/gatekeeper_fifo_vm.in</text>
109</g>
110<!-- secure_env&#45;&gt;host_gatekeeper_in -->
111<g id="edge13" class="edge">
112<title>secure_env&#45;&gt;host_gatekeeper_in</title>
113<path fill="none" stroke="green" d="M672.01,-322.32C641.56,-312.02 598.01,-297.3 562.68,-285.35"/>
114<polygon fill="green" stroke="green" points="563.54,-281.95 552.95,-282.06 561.3,-288.58 563.54,-281.95"/>
115</g>
116<!-- host_gatekeeper_out -->
117<g id="node10" class="node">
118<title>host_gatekeeper_out</title>
119<polygon fill="none" stroke="green" points="805.5,-282 613.5,-282 613.5,-246 805.5,-246 805.5,-282"/>
120<text text-anchor="middle" x="709.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/gatekeeper_fifo_vm.out</text>
121</g>
122<!-- secure_env&#45;&gt;host_gatekeeper_out -->
123<g id="edge11" class="edge">
124<title>secure_env&#45;&gt;host_gatekeeper_out</title>
125<path fill="none" stroke="green" d="M709.5,-307.67C709.5,-299.05 709.5,-289.79 709.5,-282.1"/>
126<polygon fill="green" stroke="green" points="706,-307.7 709.5,-317.7 713,-307.7 706,-307.7"/>
127</g>
128<!-- host_keymint_in -->
129<g id="node13" class="node">
130<title>host_keymint_in</title>
131<polygon fill="none" stroke="blue" points="995.5,-282 823.5,-282 823.5,-246 995.5,-246 995.5,-282"/>
132<text text-anchor="middle" x="909.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/keymint_fifo_vm.in</text>
133</g>
134<!-- secure_env&#45;&gt;host_keymint_in -->
135<g id="edge26" class="edge">
136<title>secure_env&#45;&gt;host_keymint_in</title>
137<path fill="none" stroke="blue" d="M746.18,-322.16C775.44,-311.92 816.97,-297.39 850.83,-285.54"/>
138<polygon fill="blue" stroke="blue" points="852.33,-288.72 860.61,-282.11 850.02,-282.11 852.33,-288.72"/>
139</g>
140<!-- host_keymint_out -->
141<g id="node14" class="node">
142<title>host_keymint_out</title>
143<polygon fill="none" stroke="blue" points="1193,-282 1014,-282 1014,-246 1193,-246 1193,-282"/>
144<text text-anchor="middle" x="1103.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/keymint_fifo_vm.out</text>
145</g>
146<!-- secure_env&#45;&gt;host_keymint_out -->
147<g id="edge24" class="edge">
148<title>secure_env&#45;&gt;host_keymint_out</title>
149<path fill="none" stroke="blue" d="M768.27,-324.56C833.18,-313.03 938.45,-294.32 1013.71,-280.95"/>
150<polygon fill="blue" stroke="blue" points="767.44,-321.15 758.21,-326.35 768.67,-328.04 767.44,-321.15"/>
151</g>
152<!-- vmm -->
153<g id="node5" class="node">
154<title>vmm</title>
155<ellipse fill="none" stroke="black" cx="809.5" cy="-192" rx="64.19" ry="18"/>
156<text text-anchor="middle" x="809.5" y="-188.3" font-family="Times,serif" font-size="14.00">crosvm / qemu</text>
157</g>
158<!-- confirmationui_console -->
159<g id="node20" class="node">
160<title>confirmationui_console</title>
161<polygon fill="none" stroke="red" points="1039.5,-135 969.5,-135 969.5,-99 1039.5,-99 1039.5,-135"/>
162<text text-anchor="middle" x="1004.5" y="-113.3" font-family="Times,serif" font-size="14.00">/dev/hvc8</text>
163</g>
164<!-- vmm&#45;&gt;confirmationui_console -->
165<g id="edge7" class="edge">
166<title>vmm&#45;&gt;confirmationui_console</title>
167<path fill="none" stroke="red" d="M868.88,-177.74C881.45,-174.36 894.53,-170.42 906.5,-166 926.14,-158.74 947.09,-148.81 964.56,-139.85"/>
168<polygon fill="red" stroke="red" points="867.74,-174.42 858.95,-180.32 869.5,-181.19 867.74,-174.42"/>
169<polygon fill="red" stroke="red" points="966.62,-142.73 973.87,-135.01 963.39,-136.52 966.62,-142.73"/>
170</g>
171<!-- gatekeeper_console -->
172<g id="node21" class="node">
173<title>gatekeeper_console</title>
174<polygon fill="none" stroke="green" points="897.5,-135 827.5,-135 827.5,-99 897.5,-99 897.5,-135"/>
175<text text-anchor="middle" x="862.5" y="-113.3" font-family="Times,serif" font-size="14.00">/dev/hvc4</text>
176</g>
177<!-- vmm&#45;&gt;gatekeeper_console -->
178<g id="edge15" class="edge">
179<title>vmm&#45;&gt;gatekeeper_console</title>
180<path fill="none" stroke="green" d="M827.71,-165.92C833.02,-158.61 838.82,-150.62 844.13,-143.3"/>
181<polygon fill="green" stroke="green" points="824.84,-163.92 821.79,-174.07 830.5,-168.03 824.84,-163.92"/>
182<polygon fill="green" stroke="green" points="847.05,-145.24 850.09,-135.09 841.38,-141.13 847.05,-145.24"/>
183</g>
184<!-- keymaster_console -->
185<g id="node22" class="node">
186<title>keymaster_console</title>
187<polygon fill="none" stroke="blue" points="792.5,-135 722.5,-135 722.5,-99 792.5,-99 792.5,-135"/>
188<text text-anchor="middle" x="757.5" y="-113.3" font-family="Times,serif" font-size="14.00">/dev/hvc3</text>
189</g>
190<!-- vmm&#45;&gt;keymaster_console -->
191<g id="edge21" class="edge">
192<title>vmm&#45;&gt;keymaster_console</title>
193<path fill="none" stroke="blue" d="M791.63,-165.92C786.43,-158.61 780.74,-150.62 775.52,-143.3"/>
194<polygon fill="blue" stroke="blue" points="788.79,-167.95 797.44,-174.07 794.49,-163.89 788.79,-167.95"/>
195<polygon fill="blue" stroke="blue" points="778.33,-141.21 769.68,-135.09 772.63,-145.27 778.33,-141.21"/>
196</g>
197<!-- keymint_console -->
198<g id="node23" class="node">
199<title>keymint_console</title>
200<polygon fill="none" stroke="blue" points="583,-135 506,-135 506,-99 583,-99 583,-135"/>
201<text text-anchor="middle" x="544.5" y="-113.3" font-family="Times,serif" font-size="14.00">/dev/hvc11</text>
202</g>
203<!-- vmm&#45;&gt;keymint_console -->
204<g id="edge28" class="edge">
205<title>vmm&#45;&gt;keymint_console</title>
206<path fill="none" stroke="blue" d="M753.65,-176.68C740.47,-173.24 726.48,-169.53 713.5,-166 672.65,-154.88 626.42,-141.71 592.65,-131.98"/>
207<polygon fill="blue" stroke="blue" points="752.99,-180.12 763.54,-179.25 754.75,-173.35 752.99,-180.12"/>
208<polygon fill="blue" stroke="blue" points="593.61,-128.61 583.03,-129.2 591.67,-135.34 593.61,-128.61"/>
209</g>
210<!-- host_confirmationui_in -->
211<g id="node11" class="node">
212<title>host_confirmationui_in</title>
213<polygon fill="none" stroke="red" points="1372,-282 1211,-282 1211,-246 1372,-246 1372,-282"/>
214<text text-anchor="middle" x="1291.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/confui_fifo_vm.in</text>
215</g>
216<!-- webRTC&#45;&gt;host_confirmationui_in -->
217<g id="edge5" class="edge">
218<title>webRTC&#45;&gt;host_confirmationui_in</title>
219<path fill="none" stroke="red" d="M1291.5,-317.7C1291.5,-309.98 1291.5,-300.71 1291.5,-292.11"/>
220<polygon fill="red" stroke="red" points="1295,-292.1 1291.5,-282.1 1288,-292.1 1295,-292.1"/>
221</g>
222<!-- host_confirmationui_out -->
223<g id="node12" class="node">
224<title>host_confirmationui_out</title>
225<polygon fill="none" stroke="red" points="1558.5,-282 1390.5,-282 1390.5,-246 1558.5,-246 1558.5,-282"/>
226<text text-anchor="middle" x="1474.5" y="-260.3" font-family="Times,serif" font-size="14.00">internal/confui_fifo_vm.out</text>
227</g>
228<!-- webRTC&#45;&gt;host_confirmationui_out -->
229<g id="edge3" class="edge">
230<title>webRTC&#45;&gt;host_confirmationui_out</title>
231<path fill="none" stroke="red" d="M1331.57,-319.67C1360.65,-308.55 1400,-293.5 1430.05,-282"/>
232<polygon fill="red" stroke="red" points="1330.22,-316.44 1322.13,-323.28 1332.72,-322.98 1330.22,-316.44"/>
233</g>
234<!-- host_keymaster_in&#45;&gt;vmm -->
235<g id="edge20" class="edge">
236<title>host_keymaster_in&#45;&gt;vmm</title>
237<path fill="none" stroke="blue" d="M183.11,-247.25C186.28,-246.81 189.41,-246.39 192.5,-246 388.69,-221.1 621.5,-204.62 737.01,-197.32"/>
238<polygon fill="blue" stroke="blue" points="737.38,-200.8 747.14,-196.68 736.94,-193.81 737.38,-200.8"/>
239</g>
240<!-- host_keymaster_out&#45;&gt;vmm -->
241<g id="edge18" class="edge">
242<title>host_keymaster_out&#45;&gt;vmm</title>
243<path fill="none" stroke="blue" d="M402.02,-245.95C533.47,-226.91 674.52,-209.31 751.65,-199.94"/>
244<polygon fill="blue" stroke="blue" points="401.16,-242.54 391.77,-247.44 402.17,-249.47 401.16,-242.54"/>
245</g>
246<!-- host_gatekeeper_in&#45;&gt;vmm -->
247<g id="edge14" class="edge">
248<title>host_gatekeeper_in&#45;&gt;vmm</title>
249<path fill="none" stroke="green" d="M577.21,-245.97C630.84,-233.74 702.08,-217.49 751.46,-206.23"/>
250<polygon fill="green" stroke="green" points="752.37,-209.62 761.34,-203.98 750.82,-202.79 752.37,-209.62"/>
251</g>
252<!-- host_gatekeeper_out&#45;&gt;vmm -->
253<g id="edge12" class="edge">
254<title>host_gatekeeper_out&#45;&gt;vmm</title>
255<path fill="none" stroke="green" d="M742.22,-240.1C756.75,-229.92 773.51,-218.2 786.66,-208.99"/>
256<polygon fill="green" stroke="green" points="740.15,-237.27 733.96,-245.88 744.16,-243.01 740.15,-237.27"/>
257</g>
258<!-- host_confirmationui_in&#45;&gt;vmm -->
259<g id="edge6" class="edge">
260<title>host_confirmationui_in&#45;&gt;vmm</title>
261<path fill="none" stroke="red" d="M1210.53,-247.34C1207.82,-246.88 1205.14,-246.43 1202.5,-246 1089.02,-227.52 956.35,-210.6 877.82,-201.06"/>
262<polygon fill="red" stroke="red" points="877.93,-197.55 867.58,-199.82 877.09,-204.5 877.93,-197.55"/>
263</g>
264<!-- host_confirmationui_out&#45;&gt;vmm -->
265<g id="edge4" class="edge">
266<title>host_confirmationui_out&#45;&gt;vmm</title>
267<path fill="none" stroke="red" d="M1380.45,-245.92C1189.25,-220.04 974.89,-203.91 871.5,-196.94"/>
268<polygon fill="red" stroke="red" points="1380.02,-249.4 1390.4,-247.28 1380.97,-242.46 1380.02,-249.4"/>
269</g>
270<!-- host_keymint_in&#45;&gt;vmm -->
271<g id="edge27" class="edge">
272<title>host_keymint_in&#45;&gt;vmm</title>
273<path fill="none" stroke="blue" d="M885.04,-245.88C871.73,-236.56 855.11,-224.93 840.86,-214.95"/>
274<polygon fill="blue" stroke="blue" points="842.54,-211.85 832.34,-208.99 838.52,-217.59 842.54,-211.85"/>
275</g>
276<!-- host_keymint_out&#45;&gt;vmm -->
277<g id="edge25" class="edge">
278<title>host_keymint_out&#45;&gt;vmm</title>
279<path fill="none" stroke="blue" d="M1022.21,-243.64C969.06,-230.99 901.49,-214.9 856.94,-204.3"/>
280<polygon fill="blue" stroke="blue" points="1021.42,-247.05 1031.96,-245.97 1023.04,-240.24 1021.42,-247.05"/>
281</g>
282<!-- u_boot -->
283<g id="node15" class="node">
284<title>u_boot</title>
285<ellipse fill="none" stroke="black" cx="757.5" cy="-42" rx="33.6" ry="18"/>
286<text text-anchor="middle" x="757.5" y="-38.3" font-family="Times,serif" font-size="14.00">u&#45;boot</text>
287</g>
288<!-- confirmationui -->
289<g id="node16" class="node">
290<title>confirmationui</title>
291<ellipse fill="none" stroke="red" cx="1058.5" cy="-42" rx="88.28" ry="18"/>
292<text text-anchor="middle" x="1058.5" y="-38.3" font-family="Times,serif" font-size="14.00">ConfirmationUI HAL</text>
293</g>
294<!-- gatekeeper -->
295<g id="node17" class="node">
296<title>gatekeeper</title>
297<ellipse fill="none" stroke="green" cx="880.5" cy="-42" rx="71.49" ry="18"/>
298<text text-anchor="middle" x="880.5" y="-38.3" font-family="Times,serif" font-size="14.00">Gatekeeper HAL</text>
299</g>
300<!-- keymaster -->
301<g id="node18" class="node">
302<title>keymaster</title>
303<ellipse fill="none" stroke="blue" cx="617.5" cy="-42" rx="88.28" ry="18"/>
304<text text-anchor="middle" x="617.5" y="-38.3" font-family="Times,serif" font-size="14.00">KeyMint (C++) HAL</text>
305</g>
306<!-- keymint -->
307<g id="node19" class="node">
308<title>keymint</title>
309<ellipse fill="none" stroke="blue" cx="423.5" cy="-42" rx="87.99" ry="18"/>
310<text text-anchor="middle" x="423.5" y="-38.3" font-family="Times,serif" font-size="14.00">KeyMint (Rust) HAL</text>
311</g>
312<!-- confirmationui_console&#45;&gt;confirmationui -->
313<g id="edge8" class="edge">
314<title>confirmationui_console&#45;&gt;confirmationui</title>
315<path fill="none" stroke="red" d="M1023.32,-90.56C1028.71,-83.27 1034.58,-75.33 1039.96,-68.06"/>
316<polygon fill="red" stroke="red" points="1020.43,-88.58 1017.3,-98.7 1026.06,-92.74 1020.43,-88.58"/>
317<polygon fill="red" stroke="red" points="1042.85,-70.04 1045.98,-59.92 1037.22,-65.88 1042.85,-70.04"/>
318</g>
319<!-- gatekeeper_console&#45;&gt;gatekeeper -->
320<g id="edge16" class="edge">
321<title>gatekeeper_console&#45;&gt;gatekeeper</title>
322<path fill="none" stroke="green" d="M869.21,-88.79C870.72,-82.65 872.33,-76.13 873.84,-70"/>
323<polygon fill="green" stroke="green" points="865.76,-88.15 866.77,-98.7 872.56,-89.83 865.76,-88.15"/>
324<polygon fill="green" stroke="green" points="877.27,-70.72 876.26,-60.18 870.47,-69.05 877.27,-70.72"/>
325</g>
326<!-- keymaster_console&#45;&gt;u_boot -->
327<g id="edge23" class="edge">
328<title>keymaster_console&#45;&gt;u_boot</title>
329<path fill="none" stroke="blue" d="M757.5,-88.49C757.5,-82.55 757.5,-76.27 757.5,-70.33"/>
330<polygon fill="blue" stroke="blue" points="754,-88.7 757.5,-98.7 761,-88.7 754,-88.7"/>
331<polygon fill="blue" stroke="blue" points="761,-70.18 757.5,-60.18 754,-70.18 761,-70.18"/>
332</g>
333<!-- keymaster_console&#45;&gt;keymaster -->
334<g id="edge22" class="edge">
335<title>keymaster_console&#45;&gt;keymaster</title>
336<path fill="none" stroke="blue" d="M715.61,-94.18C713.54,-93.11 711.5,-92.04 709.5,-91 692.41,-82.09 673.53,-72.24 657.35,-63.8"/>
337<polygon fill="blue" stroke="blue" points="714.22,-97.41 724.71,-98.92 717.46,-91.2 714.22,-97.41"/>
338<polygon fill="blue" stroke="blue" points="658.65,-60.53 648.16,-59.01 655.41,-66.73 658.65,-60.53"/>
339</g>
340<!-- keymint_console&#45;&gt;keymint -->
341<g id="edge29" class="edge">
342<title>keymint_console&#45;&gt;keymint</title>
343<path fill="none" stroke="blue" d="M507.41,-93.63C492.04,-84.35 474.28,-73.64 459.07,-64.46"/>
344<polygon fill="blue" stroke="blue" points="505.76,-96.72 516.13,-98.88 509.38,-90.72 505.76,-96.72"/>
345<polygon fill="blue" stroke="blue" points="460.82,-61.43 450.45,-59.26 457.2,-67.42 460.82,-61.43"/>
346</g>
347</g>
348</svg>
349