1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<svg
3   xmlns:dc="http://purl.org/dc/elements/1.1/"
4   xmlns:cc="http://creativecommons.org/ns#"
5   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
6   xmlns:svg="http://www.w3.org/2000/svg"
7   xmlns="http://www.w3.org/2000/svg"
8   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
9   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
10   id="svg8"
11   version="1.1"
12   viewBox="0 0 200 150"
13   height="150mm"
14   width="200mm">
15  <defs
16     id="defs2">
17    <marker
18       inkscape:stockid="Arrow2Lend"
19       orient="auto"
20       refY="0"
21       refX="0"
22       id="marker1403"
23       style="overflow:visible"
24       inkscape:isstock="true">
25      <path
26         id="path1401"
27         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
28         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
29         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
30    </marker>
31    <marker
32       inkscape:stockid="Arrow2Lend"
33       orient="auto"
34       refY="0"
35       refX="0"
36       id="marker1393"
37       style="overflow:visible"
38       inkscape:isstock="true">
39      <path
40         id="path1391"
41         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
42         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
43         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
44    </marker>
45    <marker
46       inkscape:stockid="Arrow2Lend"
47       orient="auto"
48       refY="0"
49       refX="0"
50       id="marker1383"
51       style="overflow:visible"
52       inkscape:isstock="true">
53      <path
54         id="path1381"
55         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
56         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
57         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
58    </marker>
59    <marker
60       inkscape:stockid="Arrow2Lend"
61       orient="auto"
62       refY="0"
63       refX="0"
64       id="marker1373"
65       style="overflow:visible"
66       inkscape:isstock="true">
67      <path
68         id="path1371"
69         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
70         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
71         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
72    </marker>
73    <marker
74       inkscape:stockid="Arrow2Lend"
75       orient="auto"
76       refY="0"
77       refX="0"
78       id="marker1363"
79       style="overflow:visible"
80       inkscape:isstock="true">
81      <path
82         id="path1361"
83         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
84         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
85         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
86    </marker>
87    <marker
88       inkscape:stockid="Arrow2Lend"
89       orient="auto"
90       refY="0"
91       refX="0"
92       id="marker1353"
93       style="overflow:visible"
94       inkscape:isstock="true">
95      <path
96         id="path1351"
97         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
98         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
99         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
100    </marker>
101    <marker
102       inkscape:stockid="Arrow2Lend"
103       orient="auto"
104       refY="0"
105       refX="0"
106       id="marker1343"
107       style="overflow:visible"
108       inkscape:isstock="true">
109      <path
110         id="path1341"
111         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
112         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
113         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
114    </marker>
115    <marker
116       inkscape:stockid="Arrow2Lend"
117       orient="auto"
118       refY="0"
119       refX="0"
120       id="marker1333"
121       style="overflow:visible"
122       inkscape:isstock="true">
123      <path
124         id="path1331"
125         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
126         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
127         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
128    </marker>
129    <marker
130       inkscape:stockid="Arrow2Lend"
131       orient="auto"
132       refY="0"
133       refX="0"
134       id="marker1323"
135       style="overflow:visible"
136       inkscape:isstock="true">
137      <path
138         id="path1321"
139         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
140         d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
141         transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
142    </marker>
143  </defs>
144  <g
145     id="layer1"
146     inkscape:groupmode="layer"
147     inkscape:label="Layer 1">
148    <text
149       id="text855"
150       y="140.22917"
151       x="15.875002"
152       style="font-size:4.93889px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
153       xml:space="preserve"><tspan
154         dx="0"
155         style="font-size:4.93889px;stroke-width:0.264583"
156         y="140.22917"
157         x="15.875002"
158         id="tspan853"
159         sodipodi:role="line">Overwritten: {p-&gt;x, p-&gt;y, p-&gt;z}</tspan></text>
160    <text
161       xml:space="preserve"
162       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
163       x="108.47917"
164       y="140.22917"
165       id="text855-4"><tspan
166         sodipodi:role="line"
167         id="tspan853-1"
168         x="108.47917"
169         y="140.22917"
170         style="font-size:4.9389px;stroke-width:0.264583"
171         dx="0">Overwritten: {p-&gt;x, p-&gt;z}</tspan></text>
172    <text
173       id="text855-4-1"
174       y="119.06249"
175       x="66.145836"
176       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
177       xml:space="preserve"><tspan
178         dx="0"
179         style="font-size:4.9389px;stroke-width:0.264583"
180         y="119.06249"
181         x="66.145836"
182         id="tspan853-1-1"
183         sodipodi:role="line">Overwritten: {p-&gt;x, p-&gt;z}</tspan></text>
184    <text
185       id="text855-4-19"
186       y="111.12498"
187       x="140.22916"
188       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
189       xml:space="preserve"><tspan
190         dx="0"
191         style="font-size:4.9389px;stroke-width:0.264583"
192         y="111.12498"
193         x="140.22916"
194         id="tspan853-1-0"
195         sodipodi:role="line">Overwritten: {p-&gt;q}</tspan></text>
196    <text
197       id="text855-4-2"
198       y="95.249992"
199       x="103.1875"
200       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
201       xml:space="preserve"><tspan
202         dx="0"
203         style="font-size:4.9389px;stroke-width:0.264583"
204         y="95.249992"
205         x="103.1875"
206         id="tspan853-1-00"
207         sodipodi:role="line">Overwritten: {}</tspan></text>
208    <path
209       sodipodi:nodetypes="cc"
210       id="path909"
211       d="M 66.145835,134.93749 100.54167,121.70832"
212       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1393)" />
213    <path
214       sodipodi:nodetypes="cc"
215       id="path911"
216       d="m 140.22917,134.93749 -39.6875,-13.22917"
217       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1403)" />
218    <path
219       sodipodi:nodetypes="cc"
220       id="path913"
221       d="M 100.54167,113.77082 123.03126,96.572903"
222       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1373)" />
223    <path
224       sodipodi:nodetypes="cc"
225       id="path915"
226       d="M 161.39584,105.83332 123.03126,96.572903"
227       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1383)" />
228    <text
229       xml:space="preserve"
230       style="font-size:6.35px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
231       x="7.9375"
232       y="92.604179"
233       id="text855-4-2-6"><tspan
234         sodipodi:role="line"
235         id="tspan853-1-00-3"
236         x="7.9375"
237         y="92.604179"
238         style="font-size:6.35px;stroke-width:0.264583">Normal states</tspan></text>
239    <rect
240       y="84.666672"
241       x="2.6458333"
242       height="60.854164"
243       width="195.79167"
244       id="rect935"
245       style="fill:none;stroke:#000000;stroke-width:0.264999" />
246    <rect
247       y="2.6458333"
248       x="2.6458333"
249       height="71.4375"
250       width="195.79167"
251       id="rect937"
252       style="fill:none;stroke:#000000;stroke-width:0.264999" />
253    <text
254       id="text855-4-2-6-8"
255       y="10.583333"
256       x="7.9375"
257       style="font-size:6.35px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
258       xml:space="preserve"><tspan
259         style="font-size:6.35px;stroke-width:0.264583"
260         y="10.583333"
261         x="7.9375"
262         id="tspan853-1-00-3-4"
263         sodipodi:role="line">Failure states</tspan></text>
264    <text
265       xml:space="preserve"
266       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
267       x="5.2916665"
268       y="68.791672"
269       id="text855-4-2-8"><tspan
270         sodipodi:role="line"
271         id="tspan853-1-00-5"
272         x="5.2916665"
273         y="68.791672"
274         style="font-size:4.9389px;stroke-width:0.264583">{Unsafe read at line 3}</tspan></text>
275    <text
276       id="text855-4-2-8-1"
277       y="68.791672"
278       x="66.145836"
279       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
280       xml:space="preserve"><tspan
281         style="font-size:4.9389px;stroke-width:0.264583"
282         y="68.791672"
283         x="66.145836"
284         id="tspan853-1-00-5-1"
285         sodipodi:role="line">{Pointer escape at line 5}</tspan></text>
286    <text
287       id="text855-4-2-8-8"
288       y="68.791672"
289       x="134.9375"
290       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
291       xml:space="preserve"><tspan
292         style="font-size:4.9389px;stroke-width:0.264583"
293         y="68.791672"
294         x="134.9375"
295         id="tspan853-1-00-5-8"
296         sodipodi:role="line">{Unsafe read at line 7}</tspan></text>
297    <text
298       id="text855-4-2-8-9"
299       y="44.979164"
300       x="7.9375"
301       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
302       xml:space="preserve"><tspan
303         style="font-size:4.9389px;stroke-width:0.264583"
304         y="44.979164"
305         x="7.9375"
306         id="tspan853-1-00-5-4"
307         sodipodi:role="line">{Unsafe read at line 3, Pointer escape at line 5}</tspan></text>
308    <path
309       id="path1019"
310       d="m 31.75,63.499999 31.749999,-15.875"
311       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1333)" />
312    <path
313       id="path1021"
314       d="m 100.54167,63.499999 -37.041671,-15.875"
315       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1343)" />
316    <text
317       xml:space="preserve"
318       style="font-size:4.9389px;line-height:1.25;font-family:sans-serif;word-spacing:0px;stroke-width:0.264583"
319       x="10.583333"
320       y="23.812502"
321       id="text855-4-2-8-9-8"><tspan
322         id="tspan1041"
323         sodipodi:role="line"
324         x="10.583333"
325         y="23.812502"
326         style="font-size:4.9389px;stroke-width:0.264583">{Unsafe read at line 3, Pointer escape at line 5, Unsafe read at line 7}</tspan></text>
327    <path
328       id="path1045"
329       d="M 74.083332,39.687499 124.35417,26.458333"
330       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1353)" />
331    <path
332       id="path1047"
333       d="M 161.39583,63.499999 124.35417,26.458333"
334       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1363)" />
335    <path
336       id="path1049"
337       d="M 100.54167,84.666666 V 74.083333"
338       style="fill:none;stroke:#000000;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1323)" />
339  </g>
340</svg>
341