1<?xml version="1.0" encoding="UTF-8" standalone="no"?> 2<!-- Created with Inkscape (http://www.inkscape.org/) --> 3 4<!-- SPDX-License-Identifier: BSD-3-Clause --> 5<!-- Copyright(c) 2010-2014 Intel Corporation --> 6 7<svg 8 xmlns:dc="http://purl.org/dc/elements/1.1/" 9 xmlns:cc="http://creativecommons.org/ns#" 10 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 11 xmlns:svg="http://www.w3.org/2000/svg" 12 xmlns="http://www.w3.org/2000/svg" 13 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 14 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 15 width="576.07806" 16 height="152.68279" 17 id="svg2" 18 version="1.1" 19 inkscape:version="0.48.4 r9939" 20 sodipodi:docname="ring-modulo1.svg"> 21 <defs 22 id="defs4"> 23 <marker 24 inkscape:stockid="Arrow1Mstart" 25 orient="auto" 26 refY="0" 27 refX="0" 28 id="Arrow1Mstart" 29 style="overflow:visible"> 30 <path 31 id="path3599" 32 d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" 33 style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" 34 transform="matrix(0.4,0,0,0.4,4,0)" 35 inkscape:connector-curvature="0" /> 36 </marker> 37 <marker 38 inkscape:stockid="Arrow1Lstart" 39 orient="auto" 40 refY="0" 41 refX="0" 42 id="Arrow1Lstart" 43 style="overflow:visible"> 44 <path 45 id="path3593" 46 d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" 47 style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" 48 transform="matrix(0.8,0,0,0.8,10,0)" 49 inkscape:connector-curvature="0" /> 50 </marker> 51 <marker 52 inkscape:stockid="Arrow2Lend" 53 orient="auto" 54 refY="0" 55 refX="0" 56 id="Arrow2Lend" 57 style="overflow:visible"> 58 <path 59 id="path3614" 60 style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round" 61 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" 62 transform="matrix(-1.1,0,0,-1.1,-1.1,0)" 63 inkscape:connector-curvature="0" /> 64 </marker> 65 <inkscape:perspective 66 sodipodi:type="inkscape:persp3d" 67 inkscape:vp_x="0 : 526.18109 : 1" 68 inkscape:vp_y="0 : 1000 : 0" 69 inkscape:vp_z="744.09448 : 526.18109 : 1" 70 inkscape:persp3d-origin="372.04724 : 350.78739 : 1" 71 id="perspective10" /> 72 <inkscape:perspective 73 id="perspective4048" 74 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 75 inkscape:vp_z="1 : 0.5 : 1" 76 inkscape:vp_y="0 : 1000 : 0" 77 inkscape:vp_x="0 : 0.5 : 1" 78 sodipodi:type="inkscape:persp3d" /> 79 <inkscape:perspective 80 id="perspective4048-7" 81 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 82 inkscape:vp_z="1 : 0.5 : 1" 83 inkscape:vp_y="0 : 1000 : 0" 84 inkscape:vp_x="0 : 0.5 : 1" 85 sodipodi:type="inkscape:persp3d" /> 86 <inkscape:perspective 87 id="perspective4048-4" 88 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 89 inkscape:vp_z="1 : 0.5 : 1" 90 inkscape:vp_y="0 : 1000 : 0" 91 inkscape:vp_x="0 : 0.5 : 1" 92 sodipodi:type="inkscape:persp3d" /> 93 <inkscape:perspective 94 id="perspective4048-0" 95 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 96 inkscape:vp_z="1 : 0.5 : 1" 97 inkscape:vp_y="0 : 1000 : 0" 98 inkscape:vp_x="0 : 0.5 : 1" 99 sodipodi:type="inkscape:persp3d" /> 100 <inkscape:perspective 101 id="perspective4048-6" 102 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 103 inkscape:vp_z="1 : 0.5 : 1" 104 inkscape:vp_y="0 : 1000 : 0" 105 inkscape:vp_x="0 : 0.5 : 1" 106 sodipodi:type="inkscape:persp3d" /> 107 <inkscape:perspective 108 id="perspective4048-06" 109 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 110 inkscape:vp_z="1 : 0.5 : 1" 111 inkscape:vp_y="0 : 1000 : 0" 112 inkscape:vp_x="0 : 0.5 : 1" 113 sodipodi:type="inkscape:persp3d" /> 114 <inkscape:perspective 115 id="perspective4115" 116 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 117 inkscape:vp_z="1 : 0.5 : 1" 118 inkscape:vp_y="0 : 1000 : 0" 119 inkscape:vp_x="0 : 0.5 : 1" 120 sodipodi:type="inkscape:persp3d" /> 121 <inkscape:perspective 122 id="perspective4115-6" 123 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 124 inkscape:vp_z="1 : 0.5 : 1" 125 inkscape:vp_y="0 : 1000 : 0" 126 inkscape:vp_x="0 : 0.5 : 1" 127 sodipodi:type="inkscape:persp3d" /> 128 <inkscape:perspective 129 id="perspective4115-5" 130 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 131 inkscape:vp_z="1 : 0.5 : 1" 132 inkscape:vp_y="0 : 1000 : 0" 133 inkscape:vp_x="0 : 0.5 : 1" 134 sodipodi:type="inkscape:persp3d" /> 135 <inkscape:perspective 136 id="perspective4157" 137 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 138 inkscape:vp_z="1 : 0.5 : 1" 139 inkscape:vp_y="0 : 1000 : 0" 140 inkscape:vp_x="0 : 0.5 : 1" 141 sodipodi:type="inkscape:persp3d" /> 142 <inkscape:perspective 143 id="perspective4157-7" 144 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 145 inkscape:vp_z="1 : 0.5 : 1" 146 inkscape:vp_y="0 : 1000 : 0" 147 inkscape:vp_x="0 : 0.5 : 1" 148 sodipodi:type="inkscape:persp3d" /> 149 <inkscape:perspective 150 id="perspective4157-5" 151 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 152 inkscape:vp_z="1 : 0.5 : 1" 153 inkscape:vp_y="0 : 1000 : 0" 154 inkscape:vp_x="0 : 0.5 : 1" 155 sodipodi:type="inkscape:persp3d" /> 156 <inkscape:perspective 157 id="perspective4157-3" 158 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 159 inkscape:vp_z="1 : 0.5 : 1" 160 inkscape:vp_y="0 : 1000 : 0" 161 inkscape:vp_x="0 : 0.5 : 1" 162 sodipodi:type="inkscape:persp3d" /> 163 <inkscape:perspective 164 id="perspective4157-4" 165 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 166 inkscape:vp_z="1 : 0.5 : 1" 167 inkscape:vp_y="0 : 1000 : 0" 168 inkscape:vp_x="0 : 0.5 : 1" 169 sodipodi:type="inkscape:persp3d" /> 170 <inkscape:perspective 171 id="perspective4157-2" 172 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 173 inkscape:vp_z="1 : 0.5 : 1" 174 inkscape:vp_y="0 : 1000 : 0" 175 inkscape:vp_x="0 : 0.5 : 1" 176 sodipodi:type="inkscape:persp3d" /> 177 <inkscape:perspective 178 id="perspective4157-74" 179 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 180 inkscape:vp_z="1 : 0.5 : 1" 181 inkscape:vp_y="0 : 1000 : 0" 182 inkscape:vp_x="0 : 0.5 : 1" 183 sodipodi:type="inkscape:persp3d" /> 184 <inkscape:perspective 185 id="perspective4157-0" 186 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 187 inkscape:vp_z="1 : 0.5 : 1" 188 inkscape:vp_y="0 : 1000 : 0" 189 inkscape:vp_x="0 : 0.5 : 1" 190 sodipodi:type="inkscape:persp3d" /> 191 <inkscape:perspective 192 id="perspective4246" 193 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 194 inkscape:vp_z="1 : 0.5 : 1" 195 inkscape:vp_y="0 : 1000 : 0" 196 inkscape:vp_x="0 : 0.5 : 1" 197 sodipodi:type="inkscape:persp3d" /> 198 <inkscape:perspective 199 id="perspective4246-8" 200 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 201 inkscape:vp_z="1 : 0.5 : 1" 202 inkscape:vp_y="0 : 1000 : 0" 203 inkscape:vp_x="0 : 0.5 : 1" 204 sodipodi:type="inkscape:persp3d" /> 205 <inkscape:perspective 206 id="perspective4246-1" 207 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 208 inkscape:vp_z="1 : 0.5 : 1" 209 inkscape:vp_y="0 : 1000 : 0" 210 inkscape:vp_x="0 : 0.5 : 1" 211 sodipodi:type="inkscape:persp3d" /> 212 <inkscape:perspective 213 id="perspective4246-0" 214 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 215 inkscape:vp_z="1 : 0.5 : 1" 216 inkscape:vp_y="0 : 1000 : 0" 217 inkscape:vp_x="0 : 0.5 : 1" 218 sodipodi:type="inkscape:persp3d" /> 219 <inkscape:perspective 220 id="perspective4246-2" 221 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 222 inkscape:vp_z="1 : 0.5 : 1" 223 inkscape:vp_y="0 : 1000 : 0" 224 inkscape:vp_x="0 : 0.5 : 1" 225 sodipodi:type="inkscape:persp3d" /> 226 <inkscape:perspective 227 id="perspective4246-9" 228 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 229 inkscape:vp_z="1 : 0.5 : 1" 230 inkscape:vp_y="0 : 1000 : 0" 231 inkscape:vp_x="0 : 0.5 : 1" 232 sodipodi:type="inkscape:persp3d" /> 233 <inkscape:perspective 234 id="perspective4246-4" 235 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 236 inkscape:vp_z="1 : 0.5 : 1" 237 inkscape:vp_y="0 : 1000 : 0" 238 inkscape:vp_x="0 : 0.5 : 1" 239 sodipodi:type="inkscape:persp3d" /> 240 <inkscape:perspective 241 id="perspective4246-17" 242 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 243 inkscape:vp_z="1 : 0.5 : 1" 244 inkscape:vp_y="0 : 1000 : 0" 245 inkscape:vp_x="0 : 0.5 : 1" 246 sodipodi:type="inkscape:persp3d" /> 247 <inkscape:perspective 248 id="perspective4246-26" 249 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 250 inkscape:vp_z="1 : 0.5 : 1" 251 inkscape:vp_y="0 : 1000 : 0" 252 inkscape:vp_x="0 : 0.5 : 1" 253 sodipodi:type="inkscape:persp3d" /> 254 <inkscape:perspective 255 id="perspective4373" 256 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 257 inkscape:vp_z="1 : 0.5 : 1" 258 inkscape:vp_y="0 : 1000 : 0" 259 inkscape:vp_x="0 : 0.5 : 1" 260 sodipodi:type="inkscape:persp3d" /> 261 <inkscape:perspective 262 id="perspective4373-9" 263 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 264 inkscape:vp_z="1 : 0.5 : 1" 265 inkscape:vp_y="0 : 1000 : 0" 266 inkscape:vp_x="0 : 0.5 : 1" 267 sodipodi:type="inkscape:persp3d" /> 268 <inkscape:perspective 269 id="perspective4409" 270 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 271 inkscape:vp_z="1 : 0.5 : 1" 272 inkscape:vp_y="0 : 1000 : 0" 273 inkscape:vp_x="0 : 0.5 : 1" 274 sodipodi:type="inkscape:persp3d" /> 275 <inkscape:perspective 276 id="perspective4434" 277 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 278 inkscape:vp_z="1 : 0.5 : 1" 279 inkscape:vp_y="0 : 1000 : 0" 280 inkscape:vp_x="0 : 0.5 : 1" 281 sodipodi:type="inkscape:persp3d" /> 282 <inkscape:perspective 283 id="perspective4459" 284 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 285 inkscape:vp_z="1 : 0.5 : 1" 286 inkscape:vp_y="0 : 1000 : 0" 287 inkscape:vp_x="0 : 0.5 : 1" 288 sodipodi:type="inkscape:persp3d" /> 289 <inkscape:perspective 290 id="perspective4490" 291 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 292 inkscape:vp_z="1 : 0.5 : 1" 293 inkscape:vp_y="0 : 1000 : 0" 294 inkscape:vp_x="0 : 0.5 : 1" 295 sodipodi:type="inkscape:persp3d" /> 296 <inkscape:perspective 297 id="perspective5102" 298 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 299 inkscape:vp_z="1 : 0.5 : 1" 300 inkscape:vp_y="0 : 1000 : 0" 301 inkscape:vp_x="0 : 0.5 : 1" 302 sodipodi:type="inkscape:persp3d" /> 303 <inkscape:perspective 304 id="perspective5974" 305 inkscape:persp3d-origin="0.5 : 0.33333333 : 1" 306 inkscape:vp_z="1 : 0.5 : 1" 307 inkscape:vp_y="0 : 1000 : 0" 308 inkscape:vp_x="0 : 0.5 : 1" 309 sodipodi:type="inkscape:persp3d" /> 310 <marker 311 inkscape:stockid="Arrow1Mstart" 312 orient="auto" 313 refY="0" 314 refX="0" 315 id="Arrow1Mstart-3" 316 style="overflow:visible"> 317 <path 318 id="path3599-9" 319 d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" 320 style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" 321 transform="matrix(0.4,0,0,0.4,4,0)" 322 inkscape:connector-curvature="0" /> 323 </marker> 324 <marker 325 inkscape:stockid="Arrow1Mend" 326 orient="auto" 327 refY="0" 328 refX="0" 329 id="Arrow1Mend" 330 style="overflow:visible"> 331 <path 332 id="path3602" 333 d="M 0,0 5,-5 -12.5,0 5,5 0,0 z" 334 style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none" 335 transform="matrix(-0.4,0,0,-0.4,-4,0)" 336 inkscape:connector-curvature="0" /> 337 </marker> 338 </defs> 339 <sodipodi:namedview 340 id="base" 341 pagecolor="#ffffff" 342 bordercolor="#666666" 343 borderopacity="1.0" 344 inkscape:pageopacity="0.0" 345 inkscape:pageshadow="2" 346 inkscape:zoom="3.959798" 347 inkscape:cx="393.92211" 348 inkscape:cy="95.26088" 349 inkscape:document-units="px" 350 inkscape:current-layer="layer1" 351 showgrid="false" 352 inkscape:window-width="1424" 353 inkscape:window-height="1059" 354 inkscape:window-x="271" 355 inkscape:window-y="29" 356 inkscape:window-maximized="0" 357 fit-margin-top="0.1" 358 fit-margin-left="0.1" 359 fit-margin-right="0.1" 360 fit-margin-bottom="0.1" /> 361 <metadata 362 id="metadata7"> 363 <rdf:RDF> 364 <cc:Work 365 rdf:about=""> 366 <dc:format>image/svg+xml</dc:format> 367 <dc:type 368 rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 369 <dc:title /> 370 </cc:Work> 371 </rdf:RDF> 372 </metadata> 373 <g 374 inkscape:label="Layer 1" 375 inkscape:groupmode="layer" 376 id="layer1" 377 transform="translate(-78.921385,-378.7493)"> 378 <path 379 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" 380 d="m 98.571429,407.3798 c 555.000001,0 555.000001,0 555.000001,0" 381 id="path2816" 382 inkscape:connector-curvature="0" /> 383 <path 384 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 385 d="m 113.57143,401.6479 0,11.42857" 386 id="path4038" 387 inkscape:connector-curvature="0" /> 388 <path 389 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 390 d="m 162.61904,401.6479 0,11.42857" 391 id="path4038-4" 392 inkscape:connector-curvature="0" /> 393 <path 394 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 395 d="m 211.66667,401.6479 0,11.42857" 396 id="path4038-8" 397 inkscape:connector-curvature="0" /> 398 <path 399 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 400 d="m 260.71427,401.6479 0,11.42857" 401 id="path4038-5" 402 inkscape:connector-curvature="0" /> 403 <path 404 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 405 d="m 309.76191,401.6479 0,11.42857" 406 id="path4038-3" 407 inkscape:connector-curvature="0" /> 408 <path 409 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 410 d="m 358.80952,401.6479 0,11.42857" 411 id="path4038-1" 412 inkscape:connector-curvature="0" /> 413 <path 414 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 415 d="m 407.85712,401.6479 0,11.42857" 416 id="path4038-32" 417 inkscape:connector-curvature="0" /> 418 <path 419 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 420 d="m 456.90477,401.6479 0,11.42857" 421 id="path4038-32-0" 422 inkscape:connector-curvature="0" /> 423 <path 424 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 425 d="m 505.95238,401.6479 0,11.42857" 426 id="path4038-32-1" 427 inkscape:connector-curvature="0" /> 428 <path 429 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 430 d="m 555,401.6479 0,11.42857" 431 id="path4038-32-5" 432 inkscape:connector-curvature="0" /> 433 <rect 434 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 435 id="rect4147" 436 width="47.098743" 437 height="14.773863" 438 x="113.51569" 439 y="424.23651" 440 rx="4.7096338" 441 ry="4.3015814" /> 442 <rect 443 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 444 id="rect4147-4" 445 width="47.098743" 446 height="14.773863" 447 x="162.81586" 448 y="424.23651" 449 rx="4.7096338" 450 ry="4.3015814" /> 451 <rect 452 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 453 id="rect4147-6" 454 width="47.098743" 455 height="14.773863" 456 x="212.11604" 457 y="424.23651" 458 rx="4.7096338" 459 ry="4.3015814" /> 460 <rect 461 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 462 id="rect4147-69" 463 width="47.098743" 464 height="14.773863" 465 x="261.41623" 466 y="424.23651" 467 rx="4.7096338" 468 ry="4.3015814" /> 469 <rect 470 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 471 id="rect4147-7" 472 width="47.098743" 473 height="14.773863" 474 x="310.7164" 475 y="424.23651" 476 rx="4.7096338" 477 ry="4.3015814" /> 478 <rect 479 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 480 id="rect4147-5" 481 width="47.098743" 482 height="14.773863" 483 x="360.01657" 484 y="424.23651" 485 rx="4.7096338" 486 ry="4.3015814" /> 487 <rect 488 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 489 id="rect4147-54" 490 width="47.098743" 491 height="14.773863" 492 x="409.31677" 493 y="424.23651" 494 rx="4.7096338" 495 ry="4.3015814" /> 496 <rect 497 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 498 id="rect4147-43" 499 width="47.098743" 500 height="14.773863" 501 x="458.61694" 502 y="424.23651" 503 rx="4.7096338" 504 ry="4.3015814" /> 505 <rect 506 style="fill:#ffae0a;fill-opacity:1;stroke:#000000;stroke-width:1.14199996;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" 507 id="rect4147-78" 508 width="47.098743" 509 height="14.773863" 510 x="507.91714" 511 y="424.23651" 512 rx="4.7096338" 513 ry="4.3015814" /> 514 <text 515 xml:space="preserve" 516 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 517 x="110.10663" 518 y="397.88794" 519 id="text4234"><tspan 520 sodipodi:role="line" 521 id="tspan4236" 522 x="110.10663" 523 y="397.88794">0</tspan></text> 524 <text 525 xml:space="preserve" 526 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 527 x="146.47003" 528 y="397.88794" 529 id="text4234-6"><tspan 530 sodipodi:role="line" 531 id="tspan4236-8" 532 x="146.47003" 533 y="397.88794">16384</tspan></text> 534 <text 535 xml:space="preserve" 536 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 537 x="196.06828" 538 y="397.88794" 539 id="text4234-4"><tspan 540 sodipodi:role="line" 541 id="tspan4236-3" 542 x="196.06828" 543 y="397.88794">32768</tspan></text> 544 <text 545 xml:space="preserve" 546 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 547 x="245.73245" 548 y="397.88794" 549 id="text4234-49"><tspan 550 sodipodi:role="line" 551 id="tspan4236-2" 552 x="245.73245" 553 y="397.88794">49152</tspan></text> 554 <text 555 xml:space="preserve" 556 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 557 x="294.8107" 558 y="397.88794" 559 id="text4234-68"><tspan 560 sodipodi:role="line" 561 id="tspan4236-9" 562 x="294.8107" 563 y="397.88794">65536</tspan></text> 564 <text 565 xml:space="preserve" 566 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 567 x="306.93814" 568 y="386.27118" 569 id="text4234-66"><tspan 570 sodipodi:role="line" 571 id="tspan4236-4" 572 x="306.93814" 573 y="386.27118">0</tspan></text> 574 <text 575 xml:space="preserve" 576 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 577 x="503.41278" 578 y="386.27118" 579 id="text4234-2"><tspan 580 sodipodi:role="line" 581 id="tspan4236-72" 582 x="503.41278" 583 y="386.27118">0</tspan></text> 584 <text 585 xml:space="preserve" 586 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 587 x="343.9451" 588 y="397.88794" 589 id="text4234-6-1"><tspan 590 sodipodi:role="line" 591 id="tspan4236-8-5" 592 x="343.9451" 593 y="397.88794">16384</tspan></text> 594 <text 595 xml:space="preserve" 596 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 597 x="541.42017" 598 y="397.88794" 599 id="text4234-6-4"><tspan 600 sodipodi:role="line" 601 id="tspan4236-8-9" 602 x="541.42017" 603 y="397.88794">16384</tspan></text> 604 <text 605 xml:space="preserve" 606 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 607 x="393.54333" 608 y="397.88794" 609 id="text4234-4-0"><tspan 610 sodipodi:role="line" 611 id="tspan4236-3-9" 612 x="393.54333" 613 y="397.88794">32768</tspan></text> 614 <text 615 xml:space="preserve" 616 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 617 x="443.20752" 618 y="397.88794" 619 id="text4234-49-1"><tspan 620 sodipodi:role="line" 621 id="tspan4236-2-7" 622 x="443.20752" 623 y="397.88794">49152</tspan></text> 624 <text 625 xml:space="preserve" 626 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 627 x="492.28577" 628 y="397.88794" 629 id="text4234-68-7"><tspan 630 sodipodi:role="line" 631 id="tspan4236-9-1" 632 x="492.28577" 633 y="397.88794">65536</tspan></text> 634 <text 635 xml:space="preserve" 636 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 637 x="125.76399" 638 y="434.6539" 639 id="text4476"><tspan 640 sodipodi:role="line" 641 id="tspan4478" 642 x="125.76399" 643 y="434.6539">ring</tspan></text> 644 <path 645 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Mstart)" 646 d="m 322.23865,441.72497 0,21.21321" 647 id="path4480" 648 inkscape:connector-curvature="0" /> 649 <path 650 style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Mstart)" 651 d="m 346.9874,441.72497 0,21.21321" 652 id="path4480-1" 653 inkscape:connector-curvature="0" /> 654 <text 655 xml:space="preserve" 656 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 657 x="315.1676" 658 y="473.50385" 659 id="text5070"><tspan 660 sodipodi:role="line" 661 id="tspan5072" 662 x="315.1676" 663 y="473.50385">ch</tspan><tspan 664 sodipodi:role="line" 665 x="315.1676" 666 y="486.00385" 667 id="tspan5074">ct</tspan></text> 668 <text 669 xml:space="preserve" 670 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 671 x="341.41125" 672 y="472.53461" 673 id="text5076"><tspan 674 sodipodi:role="line" 675 id="tspan5078" 676 x="341.41125" 677 y="472.53461">ph</tspan><tspan 678 sodipodi:role="line" 679 x="341.41125" 680 y="485.03461" 681 id="tspan5080">pt</tspan></text> 682 <rect 683 style="fill:#5a750a;fill-opacity:1;stroke:none" 684 id="rect5082" 685 width="24.95269" 686 height="13.550571" 687 x="322.15198" 688 y="424.93753" /> 689 <text 690 xml:space="preserve" 691 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 692 x="582.85803" 693 y="421.52191" 694 id="text5084"><tspan 695 sodipodi:role="line" 696 id="tspan5086" 697 x="582.85803" 698 y="421.52191">value for</tspan><tspan 699 sodipodi:role="line" 700 x="582.85803" 701 y="434.02191" 702 id="tspan5088">indexes</tspan><tspan 703 sodipodi:role="line" 704 x="582.85803" 705 y="446.52191" 706 id="tspan5090">(prod_head,</tspan><tspan 707 sodipodi:role="line" 708 x="582.85803" 709 y="459.02191" 710 id="tspan5092">prod_tail, ...)</tspan></text> 711 <rect 712 style="fill:#5a750a;fill-opacity:1;stroke:none" 713 id="rect5082-5" 714 width="24.95269" 715 height="13.550571" 716 x="404.71667" 717 y="492.80005" /> 718 <text 719 xml:space="preserve" 720 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 721 x="434.3656" 722 y="502.33414" 723 id="text5116"><tspan 724 sodipodi:role="line" 725 x="434.3656" 726 y="502.33414" 727 id="tspan5293">used entries in ring</tspan></text> 728 <text 729 xml:space="preserve" 730 style="font-size:10px;font-style:normal;font-weight:normal;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 731 x="78.791893" 732 y="466.47369" 733 id="text5261"><tspan 734 sodipodi:role="line" 735 id="tspan5263" 736 x="78.791893" 737 y="466.47369">size = 16384</tspan><tspan 738 sodipodi:role="line" 739 x="78.791893" 740 y="478.97369" 741 id="tspan5291">mask = 16383</tspan><tspan 742 sodipodi:role="line" 743 x="78.791893" 744 y="491.47369" 745 id="tspan5289">ph = pt = 14000</tspan><tspan 746 sodipodi:role="line" 747 x="78.791893" 748 y="503.97369" 749 id="tspan5265">ct = ch = 3000</tspan><tspan 750 sodipodi:role="line" 751 x="78.791893" 752 y="516.47369" 753 id="tspan5267">used_entries = (pt - ch) % 65536 = 11000</tspan><tspan 754 sodipodi:role="line" 755 x="78.791893" 756 y="528.97369" 757 id="tspan5287">free_entries = (mask + ct - ph) % 65536 = 5383</tspan></text> 758 <path 759 style="fill:#5a750a;fill-opacity:1;stroke:#fd0004;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:url(#Arrow1Mstart);marker-end:url(#Arrow1Mend)" 760 d="m 324.78109,452.09355 20.16896,0" 761 id="path5384" 762 sodipodi:nodetypes="cc" 763 inkscape:connector-curvature="0" /> 764 <text 765 xml:space="preserve" 766 style="font-size:4.97793007px;font-style:normal;font-weight:normal;fill:#ff0000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans" 767 x="323.23074" 768 y="458.94891" 769 id="text5962"><tspan 770 sodipodi:role="line" 771 id="tspan5964" 772 x="323.23074" 773 y="458.94891">used_entries</tspan></text> 774 </g> 775</svg> 776