Compare commits

..

3 commits

Author SHA1 Message Date
9fadf57f82
Merge remote-tracking branch 'iteasyndikat/batman' into merge-all
Manual merge at work time reference

Signed-off-by: Tyrolyean <tyrolyean@tyrolyean.net>
2020-03-31 23:46:16 +02:00
510a6149d1
Added corrections at last minute
Signed-off-by: Tyrolyean <tyrolyean@tyrolyean.net>
2020-03-31 23:45:03 +02:00
24c636e82a
Fix work reference 2020-03-31 23:37:40 +02:00
15 changed files with 584 additions and 83 deletions

Binary file not shown.

View file

@ -0,0 +1,447 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="628pt" height="862pt" viewBox="0 0 628 862" version="1.1">
<defs>
<g>
<symbol overflow="visible" id="glyph0-0">
<path style="stroke:none;" d="M 0.640625 2.265625 L 0.640625 -9.015625 L 7.03125 -9.015625 L 7.03125 2.265625 Z M 1.359375 1.546875 L 6.328125 1.546875 L 6.328125 -8.296875 L 1.359375 -8.296875 Z M 1.359375 1.546875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-1">
<path style="stroke:none;" d="M 1.25 -9.328125 L 2.515625 -9.328125 L 2.515625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-2">
<path style="stroke:none;" d="M 1.25 -9.328125 L 2.953125 -9.328125 L 7.09375 -1.53125 L 7.09375 -9.328125 L 8.3125 -9.328125 L 8.3125 0 L 6.609375 0 L 2.484375 -7.796875 L 2.484375 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-3">
<path style="stroke:none;" d="M -0.03125 -9.328125 L 7.859375 -9.328125 L 7.859375 -8.265625 L 4.546875 -8.265625 L 4.546875 0 L 3.28125 0 L 3.28125 -8.265625 L -0.03125 -8.265625 Z M -0.03125 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-4">
<path style="stroke:none;" d="M 4.375 -8.078125 L 2.65625 -3.4375 L 6.09375 -3.4375 Z M 3.65625 -9.328125 L 5.09375 -9.328125 L 8.640625 0 L 7.328125 0 L 6.484375 -2.390625 L 2.28125 -2.390625 L 1.4375 0 L 0.09375 0 Z M 3.65625 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-5">
<path style="stroke:none;" d="M 1.25 -9.328125 L 2.515625 -9.328125 L 2.515625 -1.0625 L 7.0625 -1.0625 L 7.0625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-6">
<path style="stroke:none;" d="M 6.84375 -9.015625 L 6.84375 -7.796875 C 6.363281 -8.023438 5.910156 -8.191406 5.484375 -8.296875 C 5.066406 -8.410156 4.660156 -8.46875 4.265625 -8.46875 C 3.578125 -8.46875 3.046875 -8.332031 2.671875 -8.0625 C 2.296875 -7.800781 2.109375 -7.425781 2.109375 -6.9375 C 2.109375 -6.519531 2.234375 -6.207031 2.484375 -6 C 2.734375 -5.789062 3.203125 -5.625 3.890625 -5.5 L 4.65625 -5.34375 C 5.59375 -5.15625 6.285156 -4.835938 6.734375 -4.390625 C 7.179688 -3.941406 7.40625 -3.335938 7.40625 -2.578125 C 7.40625 -1.671875 7.101562 -0.984375 6.5 -0.515625 C 5.894531 -0.046875 5.007812 0.1875 3.84375 0.1875 C 3.394531 0.1875 2.921875 0.132812 2.421875 0.03125 C 1.929688 -0.0703125 1.414062 -0.21875 0.875 -0.40625 L 0.875 -1.71875 C 1.394531 -1.425781 1.898438 -1.207031 2.390625 -1.0625 C 2.878906 -0.914062 3.363281 -0.84375 3.84375 -0.84375 C 4.5625 -0.84375 5.113281 -0.984375 5.5 -1.265625 C 5.894531 -1.546875 6.09375 -1.953125 6.09375 -2.484375 C 6.09375 -2.941406 5.953125 -3.296875 5.671875 -3.546875 C 5.390625 -3.804688 4.925781 -4.003906 4.28125 -4.140625 L 3.515625 -4.28125 C 2.578125 -4.46875 1.894531 -4.757812 1.46875 -5.15625 C 1.050781 -5.5625 0.84375 -6.117188 0.84375 -6.828125 C 0.84375 -7.660156 1.132812 -8.3125 1.71875 -8.78125 C 2.300781 -9.257812 3.101562 -9.5 4.125 -9.5 C 4.5625 -9.5 5.003906 -9.457031 5.453125 -9.375 C 5.910156 -9.300781 6.375 -9.179688 6.84375 -9.015625 Z M 6.84375 -9.015625 "/>
</symbol>
<symbol overflow="visible" id="glyph0-7">
<path style="stroke:none;" d="M 5.046875 -8.46875 C 4.128906 -8.46875 3.398438 -8.125 2.859375 -7.4375 C 2.316406 -6.757812 2.046875 -5.832031 2.046875 -4.65625 C 2.046875 -3.476562 2.316406 -2.546875 2.859375 -1.859375 C 3.398438 -1.179688 4.128906 -0.84375 5.046875 -0.84375 C 5.960938 -0.84375 6.6875 -1.179688 7.21875 -1.859375 C 7.75 -2.546875 8.015625 -3.476562 8.015625 -4.65625 C 8.015625 -5.832031 7.75 -6.757812 7.21875 -7.4375 C 6.6875 -8.125 5.960938 -8.46875 5.046875 -8.46875 Z M 5.046875 -9.5 C 6.347656 -9.5 7.390625 -9.054688 8.171875 -8.171875 C 8.960938 -7.296875 9.359375 -6.125 9.359375 -4.65625 C 9.359375 -3.1875 8.960938 -2.007812 8.171875 -1.125 C 7.390625 -0.25 6.347656 0.1875 5.046875 0.1875 C 3.734375 0.1875 2.679688 -0.25 1.890625 -1.125 C 1.109375 -2 0.71875 -3.175781 0.71875 -4.65625 C 0.71875 -6.125 1.109375 -7.296875 1.890625 -8.171875 C 2.679688 -9.054688 3.734375 -9.5 5.046875 -9.5 Z M 5.046875 -9.5 "/>
</symbol>
<symbol overflow="visible" id="glyph0-8">
<path style="stroke:none;" d=""/>
</symbol>
<symbol overflow="visible" id="glyph0-9">
<path style="stroke:none;" d="M 5.6875 -4.375 C 5.957031 -4.28125 6.21875 -4.082031 6.46875 -3.78125 C 6.726562 -3.488281 6.984375 -3.078125 7.234375 -2.546875 L 8.515625 0 L 7.171875 0 L 5.96875 -2.390625 C 5.664062 -3.015625 5.367188 -3.425781 5.078125 -3.625 C 4.785156 -3.832031 4.390625 -3.9375 3.890625 -3.9375 L 2.515625 -3.9375 L 2.515625 0 L 1.25 0 L 1.25 -9.328125 L 4.109375 -9.328125 C 5.171875 -9.328125 5.960938 -9.101562 6.484375 -8.65625 C 7.015625 -8.207031 7.28125 -7.535156 7.28125 -6.640625 C 7.28125 -6.054688 7.140625 -5.566406 6.859375 -5.171875 C 6.585938 -4.785156 6.195312 -4.519531 5.6875 -4.375 Z M 2.515625 -8.296875 L 2.515625 -4.984375 L 4.109375 -4.984375 C 4.710938 -4.984375 5.171875 -5.125 5.484375 -5.40625 C 5.796875 -5.6875 5.953125 -6.097656 5.953125 -6.640625 C 5.953125 -7.179688 5.796875 -7.59375 5.484375 -7.875 C 5.171875 -8.15625 4.710938 -8.296875 4.109375 -8.296875 Z M 2.515625 -8.296875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-10">
<path style="stroke:none;" d="M 1.109375 -9.328125 L 2.375 -9.328125 L 2.375 -3.65625 C 2.375 -2.65625 2.554688 -1.9375 2.921875 -1.5 C 3.285156 -1.0625 3.875 -0.84375 4.6875 -0.84375 C 5.5 -0.84375 6.082031 -1.0625 6.4375 -1.5 C 6.800781 -1.9375 6.984375 -2.65625 6.984375 -3.65625 L 6.984375 -9.328125 L 8.25 -9.328125 L 8.25 -3.5 C 8.25 -2.289062 7.945312 -1.375 7.34375 -0.75 C 6.75 -0.125 5.863281 0.1875 4.6875 0.1875 C 3.507812 0.1875 2.617188 -0.125 2.015625 -0.75 C 1.410156 -1.375 1.109375 -2.289062 1.109375 -3.5 Z M 1.109375 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-11">
<path style="stroke:none;" d="M 1.25 -9.328125 L 7.15625 -9.328125 L 7.15625 -8.265625 L 2.515625 -8.265625 L 2.515625 -5.5 L 6.953125 -5.5 L 6.953125 -4.4375 L 2.515625 -4.4375 L 2.515625 -1.0625 L 7.265625 -1.0625 L 7.265625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-12">
<path style="stroke:none;" d="M 7.1875 -3.78125 L 7.1875 -3.21875 L 1.90625 -3.21875 C 1.957031 -2.425781 2.195312 -1.820312 2.625 -1.40625 C 3.050781 -1 3.644531 -0.796875 4.40625 -0.796875 C 4.84375 -0.796875 5.269531 -0.847656 5.6875 -0.953125 C 6.101562 -1.066406 6.515625 -1.226562 6.921875 -1.4375 L 6.921875 -0.359375 C 6.515625 -0.179688 6.09375 -0.046875 5.65625 0.046875 C 5.21875 0.140625 4.78125 0.1875 4.34375 0.1875 C 3.21875 0.1875 2.328125 -0.132812 1.671875 -0.78125 C 1.023438 -1.4375 0.703125 -2.320312 0.703125 -3.4375 C 0.703125 -4.582031 1.007812 -5.488281 1.625 -6.15625 C 2.25 -6.832031 3.085938 -7.171875 4.140625 -7.171875 C 5.078125 -7.171875 5.816406 -6.863281 6.359375 -6.25 C 6.910156 -5.644531 7.1875 -4.820312 7.1875 -3.78125 Z M 6.046875 -4.125 C 6.035156 -4.75 5.859375 -5.25 5.515625 -5.625 C 5.171875 -6 4.71875 -6.1875 4.15625 -6.1875 C 3.507812 -6.1875 2.992188 -6.003906 2.609375 -5.640625 C 2.222656 -5.285156 2 -4.78125 1.9375 -4.125 Z M 6.046875 -4.125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-13">
<path style="stroke:none;" d="M 4.390625 -3.515625 C 3.460938 -3.515625 2.816406 -3.40625 2.453125 -3.1875 C 2.097656 -2.976562 1.921875 -2.617188 1.921875 -2.109375 C 1.921875 -1.703125 2.050781 -1.378906 2.3125 -1.140625 C 2.582031 -0.898438 2.953125 -0.78125 3.421875 -0.78125 C 4.054688 -0.78125 4.566406 -1.003906 4.953125 -1.453125 C 5.335938 -1.910156 5.53125 -2.515625 5.53125 -3.265625 L 5.53125 -3.515625 Z M 6.671875 -4 L 6.671875 0 L 5.53125 0 L 5.53125 -1.0625 C 5.269531 -0.632812 4.941406 -0.316406 4.546875 -0.109375 C 4.160156 0.0859375 3.679688 0.1875 3.109375 0.1875 C 2.390625 0.1875 1.816406 -0.015625 1.390625 -0.421875 C 0.972656 -0.828125 0.765625 -1.363281 0.765625 -2.03125 C 0.765625 -2.820312 1.023438 -3.414062 1.546875 -3.8125 C 2.078125 -4.21875 2.867188 -4.421875 3.921875 -4.421875 L 5.53125 -4.421875 L 5.53125 -4.53125 C 5.53125 -5.0625 5.351562 -5.46875 5 -5.75 C 4.65625 -6.039062 4.171875 -6.1875 3.546875 -6.1875 C 3.140625 -6.1875 2.75 -6.140625 2.375 -6.046875 C 2 -5.953125 1.632812 -5.8125 1.28125 -5.625 L 1.28125 -6.671875 C 1.695312 -6.835938 2.101562 -6.960938 2.5 -7.046875 C 2.894531 -7.128906 3.28125 -7.171875 3.65625 -7.171875 C 4.675781 -7.171875 5.429688 -6.90625 5.921875 -6.375 C 6.421875 -5.851562 6.671875 -5.0625 6.671875 -4 Z M 6.671875 -4 "/>
</symbol>
<symbol overflow="visible" id="glyph0-14">
<path style="stroke:none;" d="M 5.8125 -5.9375 L 5.8125 -9.71875 L 6.953125 -9.71875 L 6.953125 0 L 5.8125 0 L 5.8125 -1.046875 C 5.570312 -0.628906 5.265625 -0.316406 4.890625 -0.109375 C 4.523438 0.0859375 4.082031 0.1875 3.5625 0.1875 C 2.71875 0.1875 2.03125 -0.148438 1.5 -0.828125 C 0.96875 -1.503906 0.703125 -2.394531 0.703125 -3.5 C 0.703125 -4.59375 0.96875 -5.476562 1.5 -6.15625 C 2.03125 -6.832031 2.71875 -7.171875 3.5625 -7.171875 C 4.082031 -7.171875 4.523438 -7.066406 4.890625 -6.859375 C 5.265625 -6.660156 5.570312 -6.351562 5.8125 -5.9375 Z M 1.890625 -3.5 C 1.890625 -2.644531 2.0625 -1.976562 2.40625 -1.5 C 2.757812 -1.019531 3.238281 -0.78125 3.84375 -0.78125 C 4.457031 -0.78125 4.9375 -1.019531 5.28125 -1.5 C 5.632812 -1.976562 5.8125 -2.644531 5.8125 -3.5 C 5.8125 -4.34375 5.632812 -5.003906 5.28125 -5.484375 C 4.9375 -5.960938 4.457031 -6.203125 3.84375 -6.203125 C 3.238281 -6.203125 2.757812 -5.960938 2.40625 -5.484375 C 2.0625 -5.003906 1.890625 -4.34375 1.890625 -3.5 Z M 1.890625 -3.5 "/>
</symbol>
<symbol overflow="visible" id="glyph0-15">
<path style="stroke:none;" d="M 4.75 -9.71875 L 4.75 -8.765625 L 3.65625 -8.765625 C 3.238281 -8.765625 2.945312 -8.679688 2.78125 -8.515625 C 2.625 -8.347656 2.546875 -8.046875 2.546875 -7.609375 L 2.546875 -7 L 4.4375 -7 L 4.4375 -6.109375 L 2.546875 -6.109375 L 2.546875 0 L 1.390625 0 L 1.390625 -6.109375 L 0.296875 -6.109375 L 0.296875 -7 L 1.390625 -7 L 1.390625 -7.484375 C 1.390625 -8.265625 1.570312 -8.832031 1.9375 -9.1875 C 2.300781 -9.539062 2.875 -9.71875 3.65625 -9.71875 Z M 4.75 -9.71875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-16">
<path style="stroke:none;" d="M 5.265625 -5.921875 C 5.128906 -5.992188 4.984375 -6.046875 4.828125 -6.078125 C 4.679688 -6.117188 4.519531 -6.140625 4.34375 -6.140625 C 3.6875 -6.140625 3.179688 -5.925781 2.828125 -5.5 C 2.484375 -5.082031 2.3125 -4.476562 2.3125 -3.6875 L 2.3125 0 L 1.15625 0 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.90625 C 2.5625 -6.332031 2.878906 -6.648438 3.265625 -6.859375 C 3.648438 -7.066406 4.117188 -7.171875 4.671875 -7.171875 C 4.753906 -7.171875 4.84375 -7.164062 4.9375 -7.15625 C 5.03125 -7.144531 5.132812 -7.128906 5.25 -7.109375 Z M 5.265625 -5.921875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-17">
<path style="stroke:none;" d="M 3.921875 -6.1875 C 3.304688 -6.1875 2.816406 -5.945312 2.453125 -5.46875 C 2.097656 -4.988281 1.921875 -4.332031 1.921875 -3.5 C 1.921875 -2.65625 2.097656 -1.992188 2.453125 -1.515625 C 2.804688 -1.035156 3.296875 -0.796875 3.921875 -0.796875 C 4.535156 -0.796875 5.019531 -1.035156 5.375 -1.515625 C 5.726562 -2.003906 5.90625 -2.664062 5.90625 -3.5 C 5.90625 -4.320312 5.726562 -4.972656 5.375 -5.453125 C 5.019531 -5.941406 4.535156 -6.1875 3.921875 -6.1875 Z M 3.921875 -7.171875 C 4.921875 -7.171875 5.703125 -6.84375 6.265625 -6.1875 C 6.835938 -5.539062 7.125 -4.644531 7.125 -3.5 C 7.125 -2.351562 6.835938 -1.453125 6.265625 -0.796875 C 5.703125 -0.140625 4.921875 0.1875 3.921875 0.1875 C 2.910156 0.1875 2.117188 -0.140625 1.546875 -0.796875 C 0.984375 -1.453125 0.703125 -2.351562 0.703125 -3.5 C 0.703125 -4.644531 0.984375 -5.539062 1.546875 -6.1875 C 2.117188 -6.84375 2.910156 -7.171875 3.921875 -7.171875 Z M 3.921875 -7.171875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-18">
<path style="stroke:none;" d="M 6.65625 -5.65625 C 6.9375 -6.164062 7.273438 -6.546875 7.671875 -6.796875 C 8.078125 -7.046875 8.550781 -7.171875 9.09375 -7.171875 C 9.820312 -7.171875 10.382812 -6.914062 10.78125 -6.40625 C 11.175781 -5.894531 11.375 -5.164062 11.375 -4.21875 L 11.375 0 L 10.21875 0 L 10.21875 -4.1875 C 10.21875 -4.851562 10.097656 -5.347656 9.859375 -5.671875 C 9.628906 -6.003906 9.269531 -6.171875 8.78125 -6.171875 C 8.1875 -6.171875 7.710938 -5.972656 7.359375 -5.578125 C 7.015625 -5.179688 6.84375 -4.640625 6.84375 -3.953125 L 6.84375 0 L 5.6875 0 L 5.6875 -4.1875 C 5.6875 -4.863281 5.566406 -5.363281 5.328125 -5.6875 C 5.097656 -6.007812 4.734375 -6.171875 4.234375 -6.171875 C 3.648438 -6.171875 3.179688 -5.96875 2.828125 -5.5625 C 2.484375 -5.164062 2.3125 -4.628906 2.3125 -3.953125 L 2.3125 0 L 1.15625 0 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.90625 C 2.582031 -6.332031 2.898438 -6.648438 3.265625 -6.859375 C 3.628906 -7.066406 4.0625 -7.171875 4.5625 -7.171875 C 5.070312 -7.171875 5.503906 -7.039062 5.859375 -6.78125 C 6.222656 -6.519531 6.488281 -6.144531 6.65625 -5.65625 Z M 6.65625 -5.65625 "/>
</symbol>
<symbol overflow="visible" id="glyph0-19">
<path style="stroke:none;" d="M 1.203125 -7 L 2.359375 -7 L 2.359375 0 L 1.203125 0 Z M 1.203125 -9.71875 L 2.359375 -9.71875 L 2.359375 -8.265625 L 1.203125 -8.265625 Z M 1.203125 -9.71875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-20">
<path style="stroke:none;" d="M 7.015625 -4.21875 L 7.015625 0 L 5.875 0 L 5.875 -4.1875 C 5.875 -4.851562 5.742188 -5.347656 5.484375 -5.671875 C 5.222656 -6.003906 4.835938 -6.171875 4.328125 -6.171875 C 3.703125 -6.171875 3.207031 -5.972656 2.84375 -5.578125 C 2.488281 -5.179688 2.3125 -4.640625 2.3125 -3.953125 L 2.3125 0 L 1.15625 0 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.90625 C 2.59375 -6.332031 2.914062 -6.648438 3.28125 -6.859375 C 3.65625 -7.066406 4.085938 -7.171875 4.578125 -7.171875 C 5.378906 -7.171875 5.984375 -6.921875 6.390625 -6.421875 C 6.804688 -5.921875 7.015625 -5.1875 7.015625 -4.21875 Z M 7.015625 -4.21875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-21">
<path style="stroke:none;" d="M 2.34375 -8.984375 L 2.34375 -7 L 4.71875 -7 L 4.71875 -6.109375 L 2.34375 -6.109375 L 2.34375 -2.3125 C 2.34375 -1.738281 2.421875 -1.367188 2.578125 -1.203125 C 2.734375 -1.046875 3.050781 -0.96875 3.53125 -0.96875 L 4.71875 -0.96875 L 4.71875 0 L 3.53125 0 C 2.644531 0 2.03125 -0.164062 1.6875 -0.5 C 1.351562 -0.832031 1.1875 -1.4375 1.1875 -2.3125 L 1.1875 -6.109375 L 0.34375 -6.109375 L 0.34375 -7 L 1.1875 -7 L 1.1875 -8.984375 Z M 2.34375 -8.984375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-22">
<path style="stroke:none;" d="M 1.09375 -2.765625 L 1.09375 -7 L 2.234375 -7 L 2.234375 -2.8125 C 2.234375 -2.144531 2.363281 -1.644531 2.625 -1.3125 C 2.882812 -0.976562 3.269531 -0.8125 3.78125 -0.8125 C 4.40625 -0.8125 4.894531 -1.007812 5.25 -1.40625 C 5.613281 -1.800781 5.796875 -2.34375 5.796875 -3.03125 L 5.796875 -7 L 6.953125 -7 L 6.953125 0 L 5.796875 0 L 5.796875 -1.078125 C 5.515625 -0.648438 5.191406 -0.332031 4.828125 -0.125 C 4.460938 0.0820312 4.035156 0.1875 3.546875 0.1875 C 2.742188 0.1875 2.132812 -0.0625 1.71875 -0.5625 C 1.300781 -1.0625 1.09375 -1.796875 1.09375 -2.765625 Z M 3.984375 -7.171875 Z M 3.984375 -7.171875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-23">
<path style="stroke:none;" d="M 5.671875 -6.796875 L 5.671875 -5.703125 C 5.347656 -5.867188 5.007812 -5.992188 4.65625 -6.078125 C 4.300781 -6.160156 3.9375 -6.203125 3.5625 -6.203125 C 3 -6.203125 2.570312 -6.113281 2.28125 -5.9375 C 2 -5.769531 1.859375 -5.507812 1.859375 -5.15625 C 1.859375 -4.882812 1.957031 -4.671875 2.15625 -4.515625 C 2.363281 -4.367188 2.773438 -4.226562 3.390625 -4.09375 L 3.78125 -4 C 4.601562 -3.832031 5.1875 -3.585938 5.53125 -3.265625 C 5.875 -2.941406 6.046875 -2.5 6.046875 -1.9375 C 6.046875 -1.28125 5.785156 -0.757812 5.265625 -0.375 C 4.753906 0 4.050781 0.1875 3.15625 0.1875 C 2.78125 0.1875 2.390625 0.148438 1.984375 0.078125 C 1.578125 0.00390625 1.144531 -0.101562 0.6875 -0.25 L 0.6875 -1.4375 C 1.113281 -1.21875 1.53125 -1.050781 1.9375 -0.9375 C 2.351562 -0.832031 2.765625 -0.78125 3.171875 -0.78125 C 3.710938 -0.78125 4.128906 -0.875 4.421875 -1.0625 C 4.710938 -1.25 4.859375 -1.507812 4.859375 -1.84375 C 4.859375 -2.15625 4.753906 -2.394531 4.546875 -2.5625 C 4.335938 -2.726562 3.875 -2.890625 3.15625 -3.046875 L 2.765625 -3.140625 C 2.046875 -3.285156 1.53125 -3.515625 1.21875 -3.828125 C 0.90625 -4.140625 0.75 -4.566406 0.75 -5.109375 C 0.75 -5.765625 0.976562 -6.269531 1.4375 -6.625 C 1.90625 -6.988281 2.570312 -7.171875 3.4375 -7.171875 C 3.851562 -7.171875 4.25 -7.140625 4.625 -7.078125 C 5 -7.015625 5.347656 -6.921875 5.671875 -6.796875 Z M 5.671875 -6.796875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-24">
<path style="stroke:none;" d="M 5.8125 -3.578125 C 5.8125 -4.410156 5.640625 -5.054688 5.296875 -5.515625 C 4.953125 -5.972656 4.46875 -6.203125 3.84375 -6.203125 C 3.226562 -6.203125 2.75 -5.972656 2.40625 -5.515625 C 2.0625 -5.054688 1.890625 -4.410156 1.890625 -3.578125 C 1.890625 -2.753906 2.0625 -2.113281 2.40625 -1.65625 C 2.75 -1.195312 3.226562 -0.96875 3.84375 -0.96875 C 4.46875 -0.96875 4.953125 -1.195312 5.296875 -1.65625 C 5.640625 -2.113281 5.8125 -2.753906 5.8125 -3.578125 Z M 6.953125 -0.875 C 6.953125 0.320312 6.6875 1.207031 6.15625 1.78125 C 5.632812 2.363281 4.828125 2.65625 3.734375 2.65625 C 3.328125 2.65625 2.945312 2.625 2.59375 2.5625 C 2.238281 2.507812 1.890625 2.421875 1.546875 2.296875 L 1.546875 1.171875 C 1.890625 1.359375 2.222656 1.492188 2.546875 1.578125 C 2.878906 1.671875 3.21875 1.71875 3.5625 1.71875 C 4.3125 1.71875 4.875 1.519531 5.25 1.125 C 5.625 0.726562 5.8125 0.132812 5.8125 -0.65625 L 5.8125 -1.234375 C 5.570312 -0.816406 5.265625 -0.503906 4.890625 -0.296875 C 4.523438 -0.0976562 4.082031 0 3.5625 0 C 2.707031 0 2.015625 -0.328125 1.484375 -0.984375 C 0.960938 -1.640625 0.703125 -2.503906 0.703125 -3.578125 C 0.703125 -4.660156 0.960938 -5.53125 1.484375 -6.1875 C 2.015625 -6.84375 2.707031 -7.171875 3.5625 -7.171875 C 4.082031 -7.171875 4.523438 -7.066406 4.890625 -6.859375 C 5.265625 -6.648438 5.570312 -6.34375 5.8125 -5.9375 L 5.8125 -7 L 6.953125 -7 Z M 6.953125 -0.875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-25">
<path style="stroke:none;" d="M 2.515625 -8.296875 L 2.515625 -1.03125 L 4.046875 -1.03125 C 5.328125 -1.03125 6.265625 -1.320312 6.859375 -1.90625 C 7.460938 -2.488281 7.765625 -3.410156 7.765625 -4.671875 C 7.765625 -5.921875 7.460938 -6.835938 6.859375 -7.421875 C 6.265625 -8.003906 5.328125 -8.296875 4.046875 -8.296875 Z M 1.25 -9.328125 L 3.84375 -9.328125 C 5.65625 -9.328125 6.984375 -8.953125 7.828125 -8.203125 C 8.671875 -7.453125 9.09375 -6.273438 9.09375 -4.671875 C 9.09375 -3.066406 8.664062 -1.882812 7.8125 -1.125 C 6.96875 -0.375 5.644531 0 3.84375 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-26">
<path style="stroke:none;" d="M 7.015625 -7 L 4.5 -3.59375 L 7.15625 0 L 5.796875 0 L 3.765625 -2.75 L 1.71875 0 L 0.375 0 L 3.09375 -3.65625 L 0.59375 -7 L 1.953125 -7 L 3.8125 -4.5 L 5.671875 -7 Z M 7.015625 -7 "/>
</symbol>
<symbol overflow="visible" id="glyph0-27">
<path style="stroke:none;" d="M 6.25 -6.734375 L 6.25 -5.65625 C 5.914062 -5.832031 5.585938 -5.960938 5.265625 -6.046875 C 4.941406 -6.140625 4.613281 -6.1875 4.28125 -6.1875 C 3.53125 -6.1875 2.945312 -5.953125 2.53125 -5.484375 C 2.125 -5.015625 1.921875 -4.351562 1.921875 -3.5 C 1.921875 -2.644531 2.125 -1.976562 2.53125 -1.5 C 2.945312 -1.03125 3.53125 -0.796875 4.28125 -0.796875 C 4.613281 -0.796875 4.941406 -0.835938 5.265625 -0.921875 C 5.585938 -1.015625 5.914062 -1.148438 6.25 -1.328125 L 6.25 -0.265625 C 5.925781 -0.117188 5.59375 -0.0078125 5.25 0.0625 C 4.90625 0.144531 4.539062 0.1875 4.15625 0.1875 C 3.09375 0.1875 2.25 -0.144531 1.625 -0.8125 C 1.007812 -1.476562 0.703125 -2.375 0.703125 -3.5 C 0.703125 -4.632812 1.015625 -5.53125 1.640625 -6.1875 C 2.273438 -6.84375 3.132812 -7.171875 4.21875 -7.171875 C 4.570312 -7.171875 4.914062 -7.132812 5.25 -7.0625 C 5.59375 -6.988281 5.925781 -6.878906 6.25 -6.734375 Z M 6.25 -6.734375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-28">
<path style="stroke:none;" d="M 7.015625 -4.21875 L 7.015625 0 L 5.875 0 L 5.875 -4.1875 C 5.875 -4.851562 5.742188 -5.347656 5.484375 -5.671875 C 5.222656 -6.003906 4.835938 -6.171875 4.328125 -6.171875 C 3.703125 -6.171875 3.207031 -5.972656 2.84375 -5.578125 C 2.488281 -5.179688 2.3125 -4.640625 2.3125 -3.953125 L 2.3125 0 L 1.15625 0 L 1.15625 -9.71875 L 2.3125 -9.71875 L 2.3125 -5.90625 C 2.59375 -6.332031 2.914062 -6.648438 3.28125 -6.859375 C 3.65625 -7.066406 4.085938 -7.171875 4.578125 -7.171875 C 5.378906 -7.171875 5.984375 -6.921875 6.390625 -6.421875 C 6.804688 -5.921875 7.015625 -5.1875 7.015625 -4.21875 Z M 7.015625 -4.21875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-29">
<path style="stroke:none;" d="M 2.4375 -1.59375 L 3.71875 -1.59375 L 3.71875 0 L 2.4375 0 Z M 3.671875 -2.5 L 2.484375 -2.5 L 2.484375 -3.46875 C 2.484375 -3.882812 2.539062 -4.226562 2.65625 -4.5 C 2.769531 -4.769531 3.015625 -5.085938 3.390625 -5.453125 L 3.953125 -6 C 4.191406 -6.226562 4.363281 -6.4375 4.46875 -6.625 C 4.570312 -6.820312 4.625 -7.023438 4.625 -7.234375 C 4.625 -7.597656 4.488281 -7.894531 4.21875 -8.125 C 3.945312 -8.351562 3.585938 -8.46875 3.140625 -8.46875 C 2.804688 -8.46875 2.453125 -8.394531 2.078125 -8.25 C 1.710938 -8.101562 1.328125 -7.890625 0.921875 -7.609375 L 0.921875 -8.796875 C 1.304688 -9.023438 1.703125 -9.195312 2.109375 -9.3125 C 2.515625 -9.4375 2.929688 -9.5 3.359375 -9.5 C 4.117188 -9.5 4.734375 -9.296875 5.203125 -8.890625 C 5.671875 -8.484375 5.90625 -7.953125 5.90625 -7.296875 C 5.90625 -6.972656 5.828125 -6.671875 5.671875 -6.390625 C 5.523438 -6.109375 5.265625 -5.785156 4.890625 -5.421875 L 4.34375 -4.890625 C 4.144531 -4.691406 4.003906 -4.535156 3.921875 -4.421875 C 3.835938 -4.316406 3.78125 -4.210938 3.75 -4.109375 C 3.726562 -4.015625 3.707031 -3.90625 3.6875 -3.78125 C 3.675781 -3.65625 3.671875 -3.488281 3.671875 -3.28125 Z M 3.671875 -2.5 "/>
</symbol>
<symbol overflow="visible" id="glyph0-30">
<path style="stroke:none;" d="M 2.515625 -8.296875 L 2.515625 -4.78125 L 4.109375 -4.78125 C 4.691406 -4.78125 5.144531 -4.929688 5.46875 -5.234375 C 5.789062 -5.546875 5.953125 -5.984375 5.953125 -6.546875 C 5.953125 -7.097656 5.789062 -7.523438 5.46875 -7.828125 C 5.144531 -8.140625 4.691406 -8.296875 4.109375 -8.296875 Z M 1.25 -9.328125 L 4.109375 -9.328125 C 5.148438 -9.328125 5.9375 -9.085938 6.46875 -8.609375 C 7.007812 -8.140625 7.28125 -7.453125 7.28125 -6.546875 C 7.28125 -5.617188 7.007812 -4.921875 6.46875 -4.453125 C 5.9375 -3.984375 5.148438 -3.75 4.109375 -3.75 L 2.515625 -3.75 L 2.515625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-31">
<path style="stroke:none;" d="M 2.3125 -1.046875 L 2.3125 2.65625 L 1.15625 2.65625 L 1.15625 -7 L 2.3125 -7 L 2.3125 -5.9375 C 2.5625 -6.351562 2.867188 -6.660156 3.234375 -6.859375 C 3.597656 -7.066406 4.039062 -7.171875 4.5625 -7.171875 C 5.40625 -7.171875 6.09375 -6.832031 6.625 -6.15625 C 7.15625 -5.476562 7.421875 -4.59375 7.421875 -3.5 C 7.421875 -2.394531 7.15625 -1.503906 6.625 -0.828125 C 6.09375 -0.148438 5.40625 0.1875 4.5625 0.1875 C 4.039062 0.1875 3.597656 0.0859375 3.234375 -0.109375 C 2.867188 -0.316406 2.5625 -0.628906 2.3125 -1.046875 Z M 6.234375 -3.5 C 6.234375 -4.34375 6.054688 -5.003906 5.703125 -5.484375 C 5.359375 -5.960938 4.882812 -6.203125 4.28125 -6.203125 C 3.664062 -6.203125 3.179688 -5.960938 2.828125 -5.484375 C 2.484375 -5.003906 2.3125 -4.34375 2.3125 -3.5 C 2.3125 -2.644531 2.484375 -1.976562 2.828125 -1.5 C 3.179688 -1.019531 3.664062 -0.78125 4.28125 -0.78125 C 4.882812 -0.78125 5.359375 -1.019531 5.703125 -1.5 C 6.054688 -1.976562 6.234375 -2.644531 6.234375 -3.5 Z M 6.234375 -3.5 "/>
</symbol>
<symbol overflow="visible" id="glyph0-32">
<path style="stroke:none;" d="M 7.609375 -1.328125 L 7.609375 -3.84375 L 5.5625 -3.84375 L 5.5625 -4.875 L 8.859375 -4.875 L 8.859375 -0.875 C 8.378906 -0.519531 7.84375 -0.253906 7.25 -0.078125 C 6.664062 0.0976562 6.039062 0.1875 5.375 0.1875 C 3.914062 0.1875 2.773438 -0.238281 1.953125 -1.09375 C 1.128906 -1.945312 0.71875 -3.132812 0.71875 -4.65625 C 0.71875 -6.175781 1.128906 -7.363281 1.953125 -8.21875 C 2.773438 -9.070312 3.914062 -9.5 5.375 -9.5 C 5.976562 -9.5 6.550781 -9.421875 7.09375 -9.265625 C 7.644531 -9.117188 8.15625 -8.898438 8.625 -8.609375 L 8.625 -7.265625 C 8.15625 -7.660156 7.65625 -7.957031 7.125 -8.15625 C 6.601562 -8.351562 6.054688 -8.453125 5.484375 -8.453125 C 4.335938 -8.453125 3.476562 -8.132812 2.90625 -7.5 C 2.332031 -6.863281 2.046875 -5.914062 2.046875 -4.65625 C 2.046875 -3.394531 2.332031 -2.445312 2.90625 -1.8125 C 3.476562 -1.175781 4.335938 -0.859375 5.484375 -0.859375 C 5.929688 -0.859375 6.328125 -0.894531 6.671875 -0.96875 C 7.023438 -1.050781 7.335938 -1.171875 7.609375 -1.328125 Z M 7.609375 -1.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-33">
<path style="stroke:none;" d="M 8.234375 -8.609375 L 8.234375 -7.28125 C 7.816406 -7.675781 7.363281 -7.96875 6.875 -8.15625 C 6.394531 -8.351562 5.882812 -8.453125 5.34375 -8.453125 C 4.28125 -8.453125 3.460938 -8.125 2.890625 -7.46875 C 2.328125 -6.820312 2.046875 -5.882812 2.046875 -4.65625 C 2.046875 -3.425781 2.328125 -2.484375 2.890625 -1.828125 C 3.460938 -1.179688 4.28125 -0.859375 5.34375 -0.859375 C 5.882812 -0.859375 6.394531 -0.953125 6.875 -1.140625 C 7.363281 -1.335938 7.816406 -1.632812 8.234375 -2.03125 L 8.234375 -0.71875 C 7.796875 -0.414062 7.328125 -0.1875 6.828125 -0.03125 C 6.335938 0.113281 5.820312 0.1875 5.28125 0.1875 C 3.863281 0.1875 2.75 -0.242188 1.9375 -1.109375 C 1.125 -1.972656 0.71875 -3.15625 0.71875 -4.65625 C 0.71875 -6.15625 1.125 -7.335938 1.9375 -8.203125 C 2.75 -9.066406 3.863281 -9.5 5.28125 -9.5 C 5.832031 -9.5 6.351562 -9.421875 6.84375 -9.265625 C 7.34375 -9.117188 7.804688 -8.898438 8.234375 -8.609375 Z M 8.234375 -8.609375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-34">
<path style="stroke:none;" d="M 1.25 -9.328125 L 6.609375 -9.328125 L 6.609375 -8.265625 L 2.515625 -8.265625 L 2.515625 -5.515625 L 6.21875 -5.515625 L 6.21875 -4.453125 L 2.515625 -4.453125 L 2.515625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-35">
<path style="stroke:none;" d="M 4.125 0.65625 C 3.789062 1.488281 3.46875 2.03125 3.15625 2.28125 C 2.851562 2.53125 2.445312 2.65625 1.9375 2.65625 L 1.015625 2.65625 L 1.015625 1.703125 L 1.6875 1.703125 C 2 1.703125 2.242188 1.625 2.421875 1.46875 C 2.597656 1.320312 2.789062 0.96875 3 0.40625 L 3.21875 -0.109375 L 0.375 -7 L 1.59375 -7 L 3.78125 -1.53125 L 5.96875 -7 L 7.1875 -7 Z M 4.125 0.65625 "/>
</symbol>
<symbol overflow="visible" id="glyph0-36">
<path style="stroke:none;" d="M -0.03125 -9.328125 L 1.328125 -9.328125 L 3.921875 -5.5 L 6.484375 -9.328125 L 7.84375 -9.328125 L 4.546875 -4.4375 L 4.546875 0 L 3.28125 0 L 3.28125 -4.4375 Z M -0.03125 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-37">
<path style="stroke:none;" d="M 1.203125 -9.71875 L 2.359375 -9.71875 L 2.359375 0 L 1.203125 0 Z M 1.203125 -9.71875 "/>
</symbol>
<symbol overflow="visible" id="glyph0-38">
<path style="stroke:none;" d="M 6.859375 -7 L 6.859375 0 L 5.703125 0 L 5.703125 -6.109375 L 2.546875 -6.109375 L 2.546875 0 L 1.390625 0 L 1.390625 -6.109375 L 0.296875 -6.109375 L 0.296875 -7 L 1.390625 -7 L 1.390625 -7.484375 C 1.390625 -8.242188 1.566406 -8.804688 1.921875 -9.171875 C 2.285156 -9.535156 2.84375 -9.71875 3.59375 -9.71875 L 4.75 -9.71875 L 4.75 -8.765625 L 3.65625 -8.765625 C 3.238281 -8.765625 2.945312 -8.679688 2.78125 -8.515625 C 2.625 -8.347656 2.546875 -8.046875 2.546875 -7.609375 L 2.546875 -7 Z M 5.703125 -9.703125 L 6.859375 -9.703125 L 6.859375 -8.25 L 5.703125 -8.25 Z M 5.703125 -9.703125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-39">
<path style="stroke:none;" d="M 0.53125 -7 L 1.6875 -7 L 3.125 -1.53125 L 4.5625 -7 L 5.90625 -7 L 7.34375 -1.53125 L 8.78125 -7 L 9.921875 -7 L 8.09375 0 L 6.734375 0 L 5.234375 -5.734375 L 3.71875 0 L 2.375 0 Z M 0.53125 -7 "/>
</symbol>
<symbol overflow="visible" id="glyph0-40">
<path style="stroke:none;" d="M 1.25 -9.328125 L 2.515625 -9.328125 L 2.515625 -5.5 L 7.109375 -5.5 L 7.109375 -9.328125 L 8.359375 -9.328125 L 8.359375 0 L 7.109375 0 L 7.109375 -4.4375 L 2.515625 -4.4375 L 2.515625 0 L 1.25 0 Z M 1.25 -9.328125 "/>
</symbol>
<symbol overflow="visible" id="glyph0-41">
<path style="stroke:none;" d="M 6.234375 -3.5 C 6.234375 -4.34375 6.054688 -5.003906 5.703125 -5.484375 C 5.359375 -5.960938 4.882812 -6.203125 4.28125 -6.203125 C 3.664062 -6.203125 3.179688 -5.960938 2.828125 -5.484375 C 2.484375 -5.003906 2.3125 -4.34375 2.3125 -3.5 C 2.3125 -2.644531 2.484375 -1.976562 2.828125 -1.5 C 3.179688 -1.019531 3.664062 -0.78125 4.28125 -0.78125 C 4.882812 -0.78125 5.359375 -1.019531 5.703125 -1.5 C 6.054688 -1.976562 6.234375 -2.644531 6.234375 -3.5 Z M 2.3125 -5.9375 C 2.5625 -6.351562 2.867188 -6.660156 3.234375 -6.859375 C 3.597656 -7.066406 4.039062 -7.171875 4.5625 -7.171875 C 5.40625 -7.171875 6.09375 -6.832031 6.625 -6.15625 C 7.15625 -5.476562 7.421875 -4.59375 7.421875 -3.5 C 7.421875 -2.394531 7.15625 -1.503906 6.625 -0.828125 C 6.09375 -0.148438 5.40625 0.1875 4.5625 0.1875 C 4.039062 0.1875 3.597656 0.0859375 3.234375 -0.109375 C 2.867188 -0.316406 2.5625 -0.628906 2.3125 -1.046875 L 2.3125 0 L 1.15625 0 L 1.15625 -9.71875 L 2.3125 -9.71875 Z M 2.3125 -5.9375 "/>
</symbol>
<symbol overflow="visible" id="glyph0-42">
<path style="stroke:none;" d="M 0.375 -7 L 1.59375 -7 L 3.78125 -1.125 L 5.96875 -7 L 7.1875 -7 L 4.5625 0 L 3 0 Z M 0.375 -7 "/>
</symbol>
</g>
</defs>
<g id="surface16018">
<rect x="0" y="0" width="628" height="862" style="fill:rgb(100%,100%,100%);fill-opacity:1;stroke:none;"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 8.696344 8.77579 L 19.529351 8.77579 L 19.529351 10.67579 L 8.696344 10.67579 Z M 8.696344 8.77579 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="134.675781" y="23.88878"/>
<use xlink:href="#glyph0-2" x="138.56467" y="23.88878"/>
<use xlink:href="#glyph0-1" x="148.009115" y="23.88878"/>
<use xlink:href="#glyph0-3" x="151.898003" y="23.88878"/>
<use xlink:href="#glyph0-1" x="159.675781" y="23.88878"/>
<use xlink:href="#glyph0-4" x="163.56467" y="23.88878"/>
<use xlink:href="#glyph0-5" x="172.453559" y="23.88878"/>
<use xlink:href="#glyph0-1" x="179.675781" y="23.88878"/>
<use xlink:href="#glyph0-6" x="183.56467" y="23.88878"/>
<use xlink:href="#glyph0-4" x="191.898003" y="23.88878"/>
<use xlink:href="#glyph0-3" x="199.675781" y="23.88878"/>
<use xlink:href="#glyph0-1" x="207.453559" y="23.88878"/>
<use xlink:href="#glyph0-7" x="211.342448" y="23.88878"/>
<use xlink:href="#glyph0-2" x="221.342448" y="23.88878"/>
<use xlink:href="#glyph0-8" x="230.786892" y="23.88878"/>
<use xlink:href="#glyph0-9" x="234.953559" y="23.88878"/>
<use xlink:href="#glyph0-7" x="243.842448" y="23.88878"/>
<use xlink:href="#glyph0-10" x="253.842448" y="23.88878"/>
<use xlink:href="#glyph0-3" x="263.286892" y="23.88878"/>
<use xlink:href="#glyph0-1" x="271.06467" y="23.88878"/>
<use xlink:href="#glyph0-2" x="274.953559" y="23.88878"/>
<use xlink:href="#glyph0-11" x="284.398003" y="23.88878"/>
<use xlink:href="#glyph0-6" x="292.453559" y="23.88878"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 7.414703 12.878134 L 20.662164 12.878134 L 20.662164 15.578134 L 7.414703 15.578134 Z M 7.414703 12.878134 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-9" x="161.9375" y="105.935655"/>
<use xlink:href="#glyph0-12" x="170.270833" y="105.935655"/>
<use xlink:href="#glyph0-13" x="178.048611" y="105.935655"/>
<use xlink:href="#glyph0-14" x="185.826389" y="105.935655"/>
<use xlink:href="#glyph0-8" x="193.881944" y="105.935655"/>
<use xlink:href="#glyph0-15" x="198.048611" y="105.935655"/>
<use xlink:href="#glyph0-16" x="202.493056" y="105.935655"/>
<use xlink:href="#glyph0-17" x="207.493056" y="105.935655"/>
<use xlink:href="#glyph0-18" x="215.270833" y="105.935655"/>
<use xlink:href="#glyph0-8" x="227.770833" y="105.935655"/>
<use xlink:href="#glyph0-10" x="231.9375" y="105.935655"/>
<use xlink:href="#glyph0-4" x="241.381944" y="105.935655"/>
<use xlink:href="#glyph0-9" x="250.270833" y="105.935655"/>
<use xlink:href="#glyph0-3" x="258.326389" y="105.935655"/>
<use xlink:href="#glyph0-8" x="266.104167" y="105.935655"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="152.074219" y="121.935655"/>
<use xlink:href="#glyph0-19" x="159.296441" y="121.935655"/>
<use xlink:href="#glyph0-20" x="162.907552" y="121.935655"/>
<use xlink:href="#glyph0-12" x="170.963108" y="121.935655"/>
<use xlink:href="#glyph0-8" x="178.740885" y="121.935655"/>
<use xlink:href="#glyph0-6" x="182.907552" y="121.935655"/>
<use xlink:href="#glyph0-21" x="190.963108" y="121.935655"/>
<use xlink:href="#glyph0-13" x="195.963108" y="121.935655"/>
<use xlink:href="#glyph0-21" x="203.740885" y="121.935655"/>
<use xlink:href="#glyph0-22" x="208.740885" y="121.935655"/>
<use xlink:href="#glyph0-23" x="216.796441" y="121.935655"/>
<use xlink:href="#glyph0-8" x="223.463108" y="121.935655"/>
<use xlink:href="#glyph0-9" x="227.629774" y="121.935655"/>
<use xlink:href="#glyph0-12" x="235.963108" y="121.935655"/>
<use xlink:href="#glyph0-24" x="243.740885" y="121.935655"/>
<use xlink:href="#glyph0-19" x="251.796441" y="121.935655"/>
<use xlink:href="#glyph0-23" x="255.407552" y="121.935655"/>
<use xlink:href="#glyph0-21" x="262.074219" y="121.935655"/>
<use xlink:href="#glyph0-12" x="267.074219" y="121.935655"/>
<use xlink:href="#glyph0-16" x="274.851997" y="121.935655"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.103375 17.770321 L 19.294 21.117978 L 14.103375 24.465634 L 8.912555 21.117978 Z M 14.103375 17.770321 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="153.800781" y="251.73253"/>
<use xlink:href="#glyph0-23" x="157.68967" y="251.73253"/>
<use xlink:href="#glyph0-8" x="164.356337" y="251.73253"/>
<use xlink:href="#glyph0-25" x="168.523003" y="251.73253"/>
<use xlink:href="#glyph0-13" x="178.245226" y="251.73253"/>
<use xlink:href="#glyph0-21" x="186.023003" y="251.73253"/>
<use xlink:href="#glyph0-13" x="191.023003" y="251.73253"/>
<use xlink:href="#glyph0-8" x="198.800781" y="251.73253"/>
<use xlink:href="#glyph0-19" x="202.967448" y="251.73253"/>
<use xlink:href="#glyph0-20" x="206.578559" y="251.73253"/>
<use xlink:href="#glyph0-8" x="214.634115" y="251.73253"/>
<use xlink:href="#glyph0-9" x="218.800781" y="251.73253"/>
<use xlink:href="#glyph0-26" x="227.68967" y="251.73253"/>
<use xlink:href="#glyph0-8" x="235.18967" y="251.73253"/>
<use xlink:href="#glyph0-5" x="239.356337" y="251.73253"/>
<use xlink:href="#glyph0-13" x="246.578559" y="251.73253"/>
<use xlink:href="#glyph0-21" x="254.356337" y="251.73253"/>
<use xlink:href="#glyph0-27" x="259.356337" y="251.73253"/>
<use xlink:href="#glyph0-28" x="266.300781" y="251.73253"/>
<use xlink:href="#glyph0-29" x="274.356337" y="251.73253"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.112945 10.67579 L 14.057086 12.328524 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 13.807086 12.320126 L 14.040094 12.828134 L 14.306891 12.336923 Z M 13.807086 12.320126 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.038336 15.578134 L 14.086969 17.220712 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 13.837164 17.228134 L 14.101812 17.720517 L 14.336969 17.21329 Z M 13.837164 17.228134 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 24.382086 20.220321 L 34.624664 20.220321 L 34.624664 22.120321 L 24.382086 22.120321 Z M 24.382086 20.220321 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-30" x="434.296875" y="252.779405"/>
<use xlink:href="#glyph0-16" x="441.796875" y="252.779405"/>
<use xlink:href="#glyph0-17" x="446.796875" y="252.779405"/>
<use xlink:href="#glyph0-27" x="454.574653" y="252.779405"/>
<use xlink:href="#glyph0-12" x="461.519097" y="252.779405"/>
<use xlink:href="#glyph0-23" x="469.296875" y="252.779405"/>
<use xlink:href="#glyph0-23" x="475.963542" y="252.779405"/>
<use xlink:href="#glyph0-8" x="482.630208" y="252.779405"/>
<use xlink:href="#glyph0-19" x="486.796875" y="252.779405"/>
<use xlink:href="#glyph0-20" x="490.407986" y="252.779405"/>
<use xlink:href="#glyph0-31" x="498.463542" y="252.779405"/>
<use xlink:href="#glyph0-22" x="506.519097" y="252.779405"/>
<use xlink:href="#glyph0-21" x="514.574653" y="252.779405"/>
<use xlink:href="#glyph0-8" x="519.574653" y="252.779405"/>
<use xlink:href="#glyph0-22" x="523.741319" y="252.779405"/>
<use xlink:href="#glyph0-23" x="531.796875" y="252.779405"/>
<use xlink:href="#glyph0-12" x="538.463542" y="252.779405"/>
<use xlink:href="#glyph0-16" x="546.241319" y="252.779405"/>
<use xlink:href="#glyph0-8" x="551.519097" y="252.779405"/>
<use xlink:href="#glyph0-27" x="555.685764" y="252.779405"/>
<use xlink:href="#glyph0-28" x="562.630208" y="252.779405"/>
<use xlink:href="#glyph0-13" x="570.685764" y="252.779405"/>
<use xlink:href="#glyph0-16" x="578.463542" y="252.779405"/>
<use xlink:href="#glyph0-13" x="583.741319" y="252.779405"/>
<use xlink:href="#glyph0-27" x="591.519097" y="252.779405"/>
<use xlink:href="#glyph0-21" x="598.463542" y="252.779405"/>
<use xlink:href="#glyph0-12" x="603.463542" y="252.779405"/>
<use xlink:href="#glyph0-16" x="611.241319" y="252.779405"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 19.293805 21.118173 L 23.836969 21.164657 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 23.83443 21.414657 L 24.336969 21.169931 L 23.839508 20.914853 Z M 23.83443 21.414657 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 11.033258 26.804892 L 17.073297 26.804892 L 17.073297 28.704892 L 11.033258 28.704892 Z M 11.033258 26.804892 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-32" x="166.960938" y="384.470812"/>
<use xlink:href="#glyph0-12" x="176.960938" y="384.470812"/>
<use xlink:href="#glyph0-21" x="184.738715" y="384.470812"/>
<use xlink:href="#glyph0-8" x="189.738715" y="384.470812"/>
<use xlink:href="#glyph0-25" x="193.905382" y="384.470812"/>
<use xlink:href="#glyph0-4" x="203.627604" y="384.470812"/>
<use xlink:href="#glyph0-33" x="212.238715" y="384.470812"/>
<use xlink:href="#glyph0-8" x="221.127604" y="384.470812"/>
<use xlink:href="#glyph0-6" x="225.294271" y="384.470812"/>
<use xlink:href="#glyph0-21" x="233.349826" y="384.470812"/>
<use xlink:href="#glyph0-13" x="238.349826" y="384.470812"/>
<use xlink:href="#glyph0-21" x="246.127604" y="384.470812"/>
<use xlink:href="#glyph0-22" x="251.127604" y="384.470812"/>
<use xlink:href="#glyph0-23" x="259.18316" y="384.470812"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.103375 24.465829 L 14.065094 26.255087 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 13.815094 26.249618 L 14.054351 26.754892 L 14.315094 26.26036 Z M 13.815094 26.249618 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 27.614508 22.170712 L 17.556891 27.49747 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 17.439898 27.276571 L 17.114898 27.731454 L 17.673883 27.718368 Z M 17.439898 27.276571 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.068219 31.703329 L 18.290094 33.814267 L 14.068219 35.925204 L 9.846148 33.814267 Z M 14.068219 31.703329 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="172.257813" y="505.654405"/>
<use xlink:href="#glyph0-23" x="176.146701" y="505.654405"/>
<use xlink:href="#glyph0-8" x="182.813368" y="505.654405"/>
<use xlink:href="#glyph0-34" x="186.980035" y="505.654405"/>
<use xlink:href="#glyph0-1" x="194.480035" y="505.654405"/>
<use xlink:href="#glyph0-34" x="198.368924" y="505.654405"/>
<use xlink:href="#glyph0-7" x="205.868924" y="505.654405"/>
<use xlink:href="#glyph0-8" x="215.868924" y="505.654405"/>
<use xlink:href="#glyph0-11" x="220.03559" y="505.654405"/>
<use xlink:href="#glyph0-18" x="228.091146" y="505.654405"/>
<use xlink:href="#glyph0-31" x="240.591146" y="505.654405"/>
<use xlink:href="#glyph0-21" x="248.646701" y="505.654405"/>
<use xlink:href="#glyph0-35" x="253.646701" y="505.654405"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-36" x="352.394531" y="235.896593"/>
<use xlink:href="#glyph0-11" x="360.172309" y="235.896593"/>
<use xlink:href="#glyph0-6" x="368.227865" y="235.896593"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-2" x="233.394531" y="335.896593"/>
<use xlink:href="#glyph0-7" x="242.838976" y="335.896593"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.053375 28.704892 L 14.065484 31.156454 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 13.815484 31.157626 L 14.067828 31.656454 L 14.315289 31.155087 Z M 13.815484 31.157626 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 23.785211 32.849423 L 32.310211 32.849423 L 32.310211 34.749423 L 23.785211 34.749423 Z M 23.785211 32.849423 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-34" x="421.984375" y="505.35753"/>
<use xlink:href="#glyph0-19" x="428.373264" y="505.35753"/>
<use xlink:href="#glyph0-37" x="431.984375" y="505.35753"/>
<use xlink:href="#glyph0-37" x="435.595486" y="505.35753"/>
<use xlink:href="#glyph0-8" x="439.206597" y="505.35753"/>
<use xlink:href="#glyph0-38" x="443.373264" y="505.35753"/>
<use xlink:href="#glyph0-15" x="451.428819" y="505.35753"/>
<use xlink:href="#glyph0-17" x="455.873264" y="505.35753"/>
<use xlink:href="#glyph0-8" x="463.651042" y="505.35753"/>
<use xlink:href="#glyph0-39" x="467.817708" y="505.35753"/>
<use xlink:href="#glyph0-19" x="478.373264" y="505.35753"/>
<use xlink:href="#glyph0-21" x="481.984375" y="505.35753"/>
<use xlink:href="#glyph0-28" x="486.984375" y="505.35753"/>
<use xlink:href="#glyph0-8" x="495.039931" y="505.35753"/>
<use xlink:href="#glyph0-23" x="499.206597" y="505.35753"/>
<use xlink:href="#glyph0-17" x="505.873264" y="505.35753"/>
<use xlink:href="#glyph0-22" x="513.651042" y="505.35753"/>
<use xlink:href="#glyph0-20" x="521.706597" y="505.35753"/>
<use xlink:href="#glyph0-14" x="529.762153" y="505.35753"/>
<use xlink:href="#glyph0-8" x="537.817708" y="505.35753"/>
<use xlink:href="#glyph0-14" x="541.984375" y="505.35753"/>
<use xlink:href="#glyph0-13" x="550.039931" y="505.35753"/>
<use xlink:href="#glyph0-21" x="557.817708" y="505.35753"/>
<use xlink:href="#glyph0-13" x="562.817708" y="505.35753"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 18.283844 33.814267 L 23.23775 33.80079 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 23.238531 34.05079 L 23.73775 33.799618 L 23.237164 33.55079 Z M 23.238531 34.05079 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 10.534625 39.201767 L 17.572125 39.201767 L 17.572125 41.101767 L 10.534625 41.101767 Z M 10.534625 39.201767 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-30" x="157.097656" y="632.408312"/>
<use xlink:href="#glyph0-16" x="164.597656" y="632.408312"/>
<use xlink:href="#glyph0-17" x="169.597656" y="632.408312"/>
<use xlink:href="#glyph0-27" x="177.375434" y="632.408312"/>
<use xlink:href="#glyph0-12" x="184.319878" y="632.408312"/>
<use xlink:href="#glyph0-23" x="192.097656" y="632.408312"/>
<use xlink:href="#glyph0-23" x="198.764323" y="632.408312"/>
<use xlink:href="#glyph0-8" x="205.43099" y="632.408312"/>
<use xlink:href="#glyph0-10" x="209.597656" y="632.408312"/>
<use xlink:href="#glyph0-23" x="219.042101" y="632.408312"/>
<use xlink:href="#glyph0-12" x="225.708767" y="632.408312"/>
<use xlink:href="#glyph0-16" x="233.486545" y="632.408312"/>
<use xlink:href="#glyph0-8" x="238.764323" y="632.408312"/>
<use xlink:href="#glyph0-19" x="242.93099" y="632.408312"/>
<use xlink:href="#glyph0-20" x="246.542101" y="632.408312"/>
<use xlink:href="#glyph0-31" x="254.597656" y="632.408312"/>
<use xlink:href="#glyph0-22" x="262.653212" y="632.408312"/>
<use xlink:href="#glyph0-21" x="270.708767" y="632.408312"/>
</g>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.088141 44.267587 L 19.547711 48.023056 L 14.088141 51.778524 L 8.628766 48.023056 Z M 14.088141 44.267587 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-40" x="151.132812" y="781.834093"/>
<use xlink:href="#glyph0-13" x="160.855035" y="781.834093"/>
<use xlink:href="#glyph0-23" x="168.632812" y="781.834093"/>
<use xlink:href="#glyph0-8" x="175.299479" y="781.834093"/>
<use xlink:href="#glyph0-27" x="179.466146" y="781.834093"/>
<use xlink:href="#glyph0-17" x="186.41059" y="781.834093"/>
<use xlink:href="#glyph0-18" x="194.188368" y="781.834093"/>
<use xlink:href="#glyph0-18" x="206.688368" y="781.834093"/>
<use xlink:href="#glyph0-13" x="219.188368" y="781.834093"/>
<use xlink:href="#glyph0-20" x="226.966146" y="781.834093"/>
<use xlink:href="#glyph0-14" x="235.021701" y="781.834093"/>
<use xlink:href="#glyph0-8" x="243.077257" y="781.834093"/>
<use xlink:href="#glyph0-41" x="247.243924" y="781.834093"/>
<use xlink:href="#glyph0-12" x="255.299479" y="781.834093"/>
<use xlink:href="#glyph0-12" x="263.077257" y="781.834093"/>
<use xlink:href="#glyph0-20" x="270.855035" y="781.834093"/>
<use xlink:href="#glyph0-8" x="278.91059" y="781.834093"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-15" x="174.179688" y="797.834093"/>
<use xlink:href="#glyph0-22" x="178.624132" y="797.834093"/>
<use xlink:href="#glyph0-37" x="186.679688" y="797.834093"/>
<use xlink:href="#glyph0-37" x="190.290799" y="797.834093"/>
<use xlink:href="#glyph0-35" x="193.90191" y="797.834093"/>
<use xlink:href="#glyph0-8" x="201.40191" y="797.834093"/>
<use xlink:href="#glyph0-16" x="205.568576" y="797.834093"/>
<use xlink:href="#glyph0-12" x="210.568576" y="797.834093"/>
<use xlink:href="#glyph0-27" x="218.346354" y="797.834093"/>
<use xlink:href="#glyph0-12" x="225.290799" y="797.834093"/>
<use xlink:href="#glyph0-19" x="233.068576" y="797.834093"/>
<use xlink:href="#glyph0-42" x="236.679688" y="797.834093"/>
<use xlink:href="#glyph0-12" x="244.179688" y="797.834093"/>
<use xlink:href="#glyph0-14" x="251.957465" y="797.834093"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.068023 35.922079 L 14.055719 38.651767 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 13.805719 38.650595 L 14.05357 39.151767 L 14.305719 38.652938 Z M 13.805719 38.650595 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 26.398883 34.799032 L 18.038726 39.86661 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 17.909039 39.652938 L 17.610992 40.12579 L 18.168219 40.080478 Z M 17.909039 39.652938 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.061773 41.152157 L 14.083453 43.721884 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 13.833453 43.724032 L 14.08775 44.221884 L 14.333453 43.719735 Z M 13.833453 43.724032 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(100%,100%,100%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 22.199078 47.031259 L 31.049078 47.031259 L 31.049078 48.931259 L 22.199078 48.931259 Z M 22.199078 47.031259 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-30" x="409.761719" y="788.994249"/>
<use xlink:href="#glyph0-16" x="417.261719" y="788.994249"/>
<use xlink:href="#glyph0-17" x="422.261719" y="788.994249"/>
<use xlink:href="#glyph0-27" x="430.039497" y="788.994249"/>
<use xlink:href="#glyph0-12" x="436.983941" y="788.994249"/>
<use xlink:href="#glyph0-23" x="444.761719" y="788.994249"/>
<use xlink:href="#glyph0-23" x="451.428385" y="788.994249"/>
<use xlink:href="#glyph0-8" x="458.095052" y="788.994249"/>
<use xlink:href="#glyph0-27" x="462.261719" y="788.994249"/>
<use xlink:href="#glyph0-17" x="469.206163" y="788.994249"/>
<use xlink:href="#glyph0-18" x="476.983941" y="788.994249"/>
<use xlink:href="#glyph0-18" x="489.483941" y="788.994249"/>
<use xlink:href="#glyph0-13" x="501.983941" y="788.994249"/>
<use xlink:href="#glyph0-20" x="509.761719" y="788.994249"/>
<use xlink:href="#glyph0-14" x="517.817274" y="788.994249"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 19.578375 47.994735 L 21.649078 47.983993 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 21.650445 48.233993 L 22.149078 47.981454 L 21.647906 47.733993 Z M 21.650445 48.233993 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-2" x="231.5" y="580.431749"/>
<use xlink:href="#glyph0-7" x="240.944444" y="580.431749"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-36" x="324.015625" y="491.541124"/>
<use xlink:href="#glyph0-11" x="331.793403" y="491.541124"/>
<use xlink:href="#glyph0-6" x="339.848958" y="491.541124"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-36" x="327.714844" y="772.314562"/>
<use xlink:href="#glyph0-11" x="335.492622" y="772.314562"/>
<use xlink:href="#glyph0-6" x="343.548177" y="772.314562"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-2" x="88.597656" y="736.79503"/>
<use xlink:href="#glyph0-7" x="98.042101" y="736.79503"/>
</g>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 17.343023 50.050595 C 20.46607 50.876767 23.786969 50.476181 26.624078 48.931259 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 17.414312 49.823446 L 16.862555 49.913485 L 17.265484 50.300985 Z M 17.414312 49.823446 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill:none;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 7.150836 14.710751 C 4.379547 19.883603 3.054742 25.708212 3.31607 31.570907 C 3.577203 37.433407 5.414703 43.117196 8.635016 48.023056 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
<path style="fill-rule:evenodd;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.1;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 7.365094 14.830282 L 7.390289 14.271884 L 6.92857 14.586728 Z M 7.365094 14.830282 " transform="matrix(20,0,0,20,-64.672967,-174.5158)"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 56 KiB

BIN
main.pdf (Stored with Git LFS)

Binary file not shown.

View file

@ -186,13 +186,10 @@ geschlechtsunabh"angig verstanden werden soll.
\section{Projektmanagement} \section{Projektmanagement}
\subsection{Schlussfolgerung / Projekterfahrung} \subsection{Schlussfolgerung / Projekterfahrung}
\input{sections/Anhang/schlussfolgerung.tex} \input{sections/Anhang/schlussfolgerung.tex}
\subsection{Projektplanung}
\DP\input{sections/Anhang/planung.tex}
\subsection{Projektterminplanung} \subsection{Projektterminplanung}
\allAuth\input{sections/Anhang/Projektterminplanung/projektterminplanung.tex} \allAuth\input{sections/Anhang/Projektterminplanung/projektterminplanung.tex}
%\subsection{Arbeitsnachweis Diplomarbeit} \allAuth\input{sections/Anhang/flash.tex}
%\MR\input{sections/Anhang/Arbeitsnachweis/arbeitsnachweisMR.tex}
\AB\subfile{sections/vhdl_intro/vhdl_intro.tex} \AB\subfile{sections/vhdl_intro/vhdl_intro.tex}
\end{appendices} \end{appendices}

View file

@ -5,16 +5,14 @@ about the internal workings of a computer system and the lack of material to
demonstrate these, hardware should be developed for educational purposes. demonstrate these, hardware should be developed for educational purposes.
This hardware should not be too complex to understand but still demonstrate basic This hardware should not be too complex to understand but still demonstrate basic
tasks of a computer system. The targeted computing tasks are human interface tasks of a computer system. The targeted computing tasks are human interface
device controllers, under which a \textbf{D}igital to \textbf{A}nalog device controllers, for which
\textbf{C}onverter\footnote{From now on reffered to simply as DAC} and a serial schematics and a working implementation in the hardware building
console with TIA-/EIA-232 compliant voltage levels were chosen. For these style of the Hackerspace should be built. All nescessary hardware will be
peripherials schematics and a working implementation in the hardware building provided by the Hackerspace. If possible, already present hardware should be
style of the hackerspace should be built. All nescessary hardware will be used, or, if impossible, new one will be ordered. All schematics should, where
provided by the Hackerspace. If possible already present hardware should be
used, if impossible new one will be ordered. All schematics should, where
possible, be constructed in Free software such as Kicad or GNU-EDA. possible, be constructed in Free software such as Kicad or GNU-EDA.
If possible software-examples should be written as well, though the complexity If possible, software-examples should be written as well, though the complexity
of these are coupled to the time left to spend on the project. Software should of these is coupled to the time left to spend on the project. Software should
be written in C, the coding convention is left to the implementer. be written in C, the coding convention is left to the implementer.

View file

@ -189,68 +189,69 @@ Table \ref{tab:brauns_work} shows the times worked.
\hline \hline
2019-12-01 & 3 & Investigate Free toolchains \\ 2019-12-01 & 3 & Investigate Free toolchains \\
\hline \hline
2019-01-02 & 0.5 & Code cleanup \\ 2020-01-02 & 0.5 & Code cleanup \\
\hline \hline
2019-01-12 & 4 & Work toward free toolchain \\ 2020-01-12 & 4 & Work toward free toolchain \\
\hline \hline
2019-01-18 & 5 & Toolchain testing and debugging \\ 2020-01-18 & 5 & Toolchain testing and debugging \\
\hline \hline
2019-01-23 & 1 & UART improvements \\ 2020-01-23 & 1 & UART improvements \\
\hline \hline
2019-01-24 & 6 & Switch whole project to Free toolchain \\ 2020-01-24 & 6 & Switch whole project to Free toolchain \\
\hline \hline
2019-01-25 & 3 & Memory self-test routines \\ 2020-01-25 & 3 & Memory self-test routines \\
\hline \hline
2019-01-25 & 0.5 & Prepare ALU for mul/div \\ 2020-01-25 & 0.5 & Prepare ALU for mul/div \\
\hline \hline
2019-02-01 & 7 & Simplify core \\ 2020-02-01 & 7 & Simplify core \\
\hline \hline
2019-02-02 & 5 & Compliance tests and core bug fixing \\ 2020-02-02 & 5 & Compliance tests and core bug fixing \\
\hline \hline
2019-02-02 & 2 & GitLab CI \\ 2020-02-02 & 2 & GitLab CI \\
\hline \hline
2019-02-04 & 1 & Update toolchain \\ 2020-02-04 & 1 & Update toolchain \\
\hline \hline
2019-02-08 & 5 & Investigate LiteEth ethernet core \\ 2020-02-08 & 5 & Investigate LiteEth ethernet core \\
\hline \hline
2019-02-09 & 5 & Develop missing LiteEth features \\ 2020-02-09 & 5 & Develop missing LiteEth features \\
\hline \hline
2019-02-11 & 4 & Add LiteEth to SoC \\ 2020-02-11 & 4 & Add LiteEth to SoC \\
\hline \hline
2019-02-16 & 2 & LiteEth debugging firmware routines \\ 2020-02-16 & 2 & LiteEth debugging firmware routines \\
\hline \hline
2019-02-18 & 4 & LiteEth simulation model \\ 2020-02-18 & 4 & LiteEth simulation model \\
\hline \hline
2019-03-01 & 2 & Dependency updates \\ 2020-03-01 & 2 & Dependency updates \\
\hline \hline
2019-03-02 & 2 & Merge synthesis and simulation socs \\ 2020-03-02 & 2 & Merge synthesis and simulation socs \\
\hline \hline
2019-03-06 & 2 & External bus interface \\ 2020-03-06 & 2 & External bus interface \\
\hline \hline
2019-03-06 & 3 & Test external bus \\ 2020-03-06 & 3 & Test external bus \\
\hline \hline
2019-03-09 & 3 & Debug UART boot \\ 2020-03-09 & 3 & Debug UART boot \\
\hline \hline
2019-03-15 & 1 & Remove Vivado support \\ 2020-03-15 & 1 & Remove Vivado support \\
\hline \hline
2019-03-28 & 4 & Documentation \\ 2020-03-28 & 4 & Documentation \\
\hline \hline
2019-03-28 & 1 & Refactor ALU \\ 2020-03-28 & 1 & Refactor ALU \\
\hline \hline
2019-03-29 & 2 & Documentation \\ 2020-03-29 & 2 & Documentation \\
\hline \hline
2019-03-29 & 3 & Add formal verification \\ 2020-03-29 & 3 & Add formal verification \\
\hline \hline
2019-03-30 & 3 & Documentation \\ 2020-03-30 & 3 & Documentation \\
\hline \hline
2019-03-31 & 4 & Documentation \\ 2020-03-31 & 4 & Documentation \\
\hline \hline
\hline \hline
2020-04-01 & \textbf{SUM} & 277h\\ 2020-04-01 & \textbf{SUM during school year} & 150h\\
\hline
\caption{Work time reference - Brauns} \caption{Work time reference - Brauns}
\label{tab:brauns_work} \label{tab:brauns_work}
\end{longtable} \end{longtable}
\newpage
\paragraph{Plank} \paragraph{Plank}
Table \ref{tab:plank_work} shows the times worked. Table \ref{tab:plank_work} shows the times worked.

57
sections/Anhang/flash.tex Normal file
View file

@ -0,0 +1,57 @@
\section{Contents of the flash drive}
This section outlines the contents of the flash drive, which are two folders
``AB`` and ``DP``, one containg the files of Armin Brauns and one for Daniel
Plank respectively.
\subsection{Armin Brauns}
\begin{itemize}
\item \texttt{external/}: External dependencies as submodules
\item \texttt{firmware/}: See \texttt{firmare/README.md}
\item \texttt{sim/}: GHDL wave options and GTKWave save files for test bench
traces
\item \texttt{tests/}: High-level tests
\begin{itemize}
\item \texttt{formal/}: SymbiYosys formal verification tests
\item \texttt{riscv-compliance-target/}: YARM target for RISC-V compliance
test suite
\end{itemize}
\item \texttt{vhdl/}: All VHDL code
\begin{itemize}
\item \texttt{components/}: Various SoC components
\item \texttt{core/}: The YARM processor core
\item \texttt{memories/}: Various memory primitives, tweaked to work with
yosys
\item \texttt{simulation/}: Simulation models for primitives and external
IP
\item \texttt{tests/}: Test benches
\end{itemize}
\end{itemize}
\subsection{Daniel Plank}
\begin{table}[H]
\centering
\begin{tabular}{| c | r |}
\hline
\textbf{Directory} & \textbf{Contents}\\
\hline
\hline
code & Code sampkes written for this thesis\\
\hline
dipl & The source code for this thesis in \LaTeX\\
\hline
documents & Datasheets and documents referenced in this thesis\\
\hline
MS1 & The original milestone test plans, high level design and documents for MS1\\
\hline
schematics & Schematics for KiCAD used in this thesis\\
\hline
textadv & The textadventure written for the hardware peripherials\\
\hline
\end{tabular}
\caption{Contents of the DP directory on the flash drive}
\label{tab:flash_DP}
\end{table}

View file

@ -1,8 +1,8 @@
Aus der Projektimplementierung konnten viele Lehren gezogen werden. Messungen Aus der Projektimplementierung konnten viele Lehren gezogen werden. Messungen,
welche mittels des Analog Discovery durchgeführt wurden sind bis zu ungefähr welche mittels des Analog Discoverys durchgeführt wurden, sind bis zu ungefähr
1MHz Frequenz gut zu gebrauchen werden danach jedoch sehr stark fehlerhaft. Alle 1MHz Frequenz gut zu gebrauchen, werden danach jedoch sehr stark fehlerhaft. Alle
Bauteile in THT Bauform zu verwenden vereinfachte Messungen am Steckbrett Bauteile in THT Bauform zu verwenden vereinfachte Messungen am Steckbrett
erheblich, jedoch werden diese bei hohen Frequenzen unzuverlässig. Viele erheblich, jedoch werden diese bei hohen Frequenzen unzuverlässig. Viele
Implementationsdetails wurden durch mündlich übergebene Hinweise verbessert Implementationsdetails wurden durch mündlich übergebene Hinweise verbessert,
was zeigt wie wichtig zwischenmenschliche Kommunikation in technischen Bereichen was zeigt, wie wichtig zwischenmenschliche Kommunikation in technischen
ist. Bereichen ist.

View file

@ -4,21 +4,22 @@ Planning of the peripherals was done based on the information provided on large
parts by David Oberhollenzer. A lot of his advice contributed heavily to the parts by David Oberhollenzer. A lot of his advice contributed heavily to the
direction the development went. direction the development went.
\subsubsection{Peripherial selection} \subsubsection{Peripheral selection}
The selection of the hardware peripherals was done based on implementation The selection of the hardware peripherals was done based on implementation
difficulty, common use in computer systems, relevance in current times and difficulty, common use in computer systems, relevance in current times and
wether they were fitting for demonstrative purposes. whether they were fitting for demonstrative purposes.
\paragraph{Serial communication interface} \paragraph{Serial Communication interface}
Serial communication interfaces have been around for a long time. They have been Serial communication interfaces have been around for a long time. They have been
used for many different applications from early mouse pointer devices used for many different applications from early mouse pointer devices
\cite{232mouse} to user input terminals\cite{vt100} \cite{232mouse} to user input terminals\cite{vt100}
which are far away from the real computer system. They are still very common in which are far away from the real computer system. They are still very common in
smaller embedded sytems and in the server space where they are used as a simple smaller embedded systems and in the server space, where they are used as a
simple
and less error prone way to interface with the operating system and programs and less error prone way to interface with the operating system and programs
running there. They are fairly easy to implement as there are a interface running there. They are fairly easy to implement as there are interface
ICs which provide a more generic interface for serial communications ICs which provide a more generic interface for serial communications
\cite{pc16550}. Most SOCs \cite{pc16550}. Most SOCs
\footnote{SOC... System on a Chip} have some form of serial communication \footnote{SOC... System on a Chip} have some form of serial communication
@ -33,24 +34,24 @@ parallel-ports for expansions and the ISA-Bus
\footnote{ISA...Industry Standard Architecture} was for some time the main way \footnote{ISA...Industry Standard Architecture} was for some time the main way
of expansion for PCs of expansion for PCs
\footnote{PC in this thesis referrs to Computer Systems using the x86 \footnote{PC in this thesis referrs to Computer Systems using the x86
Architecture}. Most younger people remeber parallel ports as the port for Architecture}. Most younger people remember parallel ports as the port for
printers on their home PCs. A prallel port is easy to implement because it has printers on their home PCs. A parallel port is easy to implement because it has
simmilar use of control, data and address lines like a processor uses internally simmilar use of control, data and address lines as a processor uses internally
anyways\cite{laval_parallel}. Usage of the standard IEEE 1284 port limits the anyway\cite{laval_parallel}. Usage of the standard IEEE 1284 port limits the
design to the signals on this port or makes the use of the signals on this port design to the signals on this port or makes the use of the signals on this port
obligatory. obligatory.
\paragraph{Digital to Analog Converter} \paragraph{Digital to Analog Converter}
Digital to Analog Converters or more commonly DACs are used on all modern PCs Digital to Analog Converters (or more commonly DACs) are used on all modern PCs
for sound output. They have been around for longer and some external sound card for sound output. They have been around for longer and some external sound card
interfaces have been standardisedlike AC '97\cite{ac97}. Implementation of a interfaces have been standardised like AC '97\cite{ac97}. Implementation of a
standard audio interface requires higher speed connections or more precise standard audio interface requires higher speed connections or more precise
timing for ac97 for example. Earlier computer systems did not have a sound card timing for ac97 for example. Earlier computer systems did not have a sound card
as it doesn't have import usage for computing and user input tasks and later as it doesn't have important usage for computing and user input tasks and later
on computer systems only had a PC speaker for diagnostics such as the IBM PC AT on computer systems only had a PC speaker for diagnostics such as the IBM PC AT
\cite{ibmpc} which can only procude one specific frequency and does not have a \cite{ibmpc} which can only procude one specific frequency and does not have a
DAC. A dac is not easy to implement as it requires a constant sampling rate and DAC. A DAC is not easy to implement as it requires a constant sampling rate and
a buffer to be of any practical use. a buffer to be of any practical use.
\paragraph{Graphical output / GPU} \paragraph{Graphical output / GPU}
@ -61,10 +62,10 @@ either a heavy load on the processor or dedicated hardware and due to the mostly
scientific use it was easier to just print the caracters as letters via a scientific use it was easier to just print the caracters as letters via a
printer. Drawing characters printer. Drawing characters
onto a screen is by itself not an easy task as it requires, for example for onto a screen is by itself not an easy task as it requires, for example for
VGA a Digital to Analog Converter with 25MHz sampling rate and a buffer to VGA, a Digital to Analog Converter with 25MHz sampling rate and a buffer to
contain all needed data for one frame or at least parts of it, while the CPU contain all needed data for one frame or at least parts of it, while the CPU
renders the frame\cite{vga}. Screen output is one of the if not the most common renders the frame\cite{vga}. Screen output is one of the, if not the most,
form of output on a computer today. common form of output on a computer today.
\paragraph{Inter Integrated Circuit} \paragraph{Inter Integrated Circuit}
@ -80,7 +81,7 @@ understanding of IIC as it is only known in technical fields.
\paragraph{Utility analysis} \paragraph{Utility analysis}
Among the above mentioned processor peripherals from the criteria mentioned Among the above mentioned processor peripherals from the criteria mentioned
before a utility analysis was performed. To do this different point have been before a utility analysis was performed. To do this, different points have been
credited for the criteria mentioned which can be seen in Table credited for the criteria mentioned which can be seen in Table
\ref{tab:utility_base}. The multipliers in Table \ref{tab:utility_base} have \ref{tab:utility_base}. The multipliers in Table \ref{tab:utility_base} have
been applied to the points and the sums in Table \ref{tab:utility_result} been applied to the points and the sums in Table \ref{tab:utility_result}

View file

@ -81,7 +81,7 @@ in figure \ref{fig:textadv_pexfl}.
\begin{figure}[H] \begin{figure}[H]
\centering \centering
\input{charts/flowchart_textadv.tex} \includesvg[height=.95\textheight]{charts/flowchart_textadv.svg}
\caption{A Flow-Chart of the program execution path} \caption{A Flow-Chart of the program execution path}
\label{fig:textadv_pexfl} \label{fig:textadv_pexfl}
\end{figure} \end{figure}

View file

@ -1,10 +1,9 @@
\begin{otherlanguage}{ngerman} \begin{otherlanguage}{ngerman}
Diese Diplomarbeit beschäftigt sich mit der Arbeitsweise von Prozessoren Diese Diplomarbeit beschäftigt sich mit der Arbeitsweise von Prozessoren
und Prozessorperipherie in moderner und traditioneller Form. Sie versucht und Prozessorperipherie in moderner und traditioneller Form. Sie versucht den
anschaulich den
Aufbau eines Computersystems in Hard- und Software zu veranschaulichen Aufbau eines Computersystems in Hard- und Software zu veranschaulichen
sowie diesen zu erklären. Dafür wurde auf einem XILINX FPGA ein RISC-V32I sowie diesen zu erklären. Dafür wurde auf einem Xilinx-FPGA ein RISC-V32I
Prozessor in VHDL Prozessor in VHDL
implementiert, sowie diverse Parallelbus-gebundene Hardwareperipherie entwickelt implementiert, sowie diverse Parallelbus-gebundene Hardwareperipherie entwickelt
und gebaut. Als Harwareperipherie wurde ein 8-Bit 2-Kanal DAC und eine serielle und gebaut. Als Harwareperipherie wurde ein 8-Bit 2-Kanal DAC und eine serielle

View file

@ -1,4 +1,4 @@
\documentclass[../../Diplomschrift.tex]{subfiles} \documentclass[../../main.tex]{subfiles}
\begin{document} \begin{document}
@ -12,7 +12,7 @@ The core implements the \instrset{} architecture as specified by the RISC-V stan
\label{fig:core-diagram} \label{fig:core-diagram}
\end{figure} \end{figure}
As can be seen in \ref{fig:core-diagram}, it is constructed according to the traditional stages of a RISC pipeline: As can be seen in \autoref{fig:core-diagram}, it is constructed according to the traditional stages of a RISC pipeline:
\begin{description} \begin{description}
\item[Fetch] fetches the next instruction from memory. \item[Fetch] fetches the next instruction from memory.

View file

@ -1,4 +1,4 @@
\documentclass[../../Diplomschrift.tex]{subfiles} \documentclass[../../main.tex]{subfiles}
\begin{document} \begin{document}
\section{FPGA Development} \section{FPGA Development}
@ -60,7 +60,7 @@ To refresh the reader's memory on the VHDL language, and as a quick guide for th
\subsubsection{Vendor Tools} \subsubsection{Vendor Tools}
The conventional way to work with FPGA designs is to use the FPGA vendor's development solution for simulation, synthesis and place-and-route. All of these tools are proprietary software specialized to a certain FPGA manufacturer, so a change of hardware also requires changing to a completely different software solution. The conventional way to work with FPGA designs is to use the FPGA vendor's development environment for simulation, synthesis and place-and-route. All of these tools are proprietary software specialized to a certain FPGA manufacturer, so a change of hardware also requires changing to a completely different software solution.
Vendor tools are usually free-of-charge for basic usage, but this also means there is no guaranteed support. During the development of this project, several bugs and missing features were found in vendor tools that required workarounds. Vendor tools are usually free-of-charge for basic usage, but this also means there is no guaranteed support. During the development of this project, several bugs and missing features were found in vendor tools that required workarounds.

View file

@ -1,8 +1,8 @@
In early 2018, more than a year before the official start of the project, after In early 2018, more than a year before the official start of the project, after
searching for a subject for the diploma thesis, the idea of building a computer searching for a subject for the diploma thesis, the idea of building a computer
from scratch had come up. Multiple suggestions on how to implement it and the from scratch had come up. Multiple suggestions on how to implement it were
scope of the project were gathered. Originally, the goal was to gathered. Originally, the goal was to
design a computer consisting of seperate plug-in cards, one instruction would design a computer consisting of seperate plug-in cards, one instruction
residing on each. This would open up the ``black box`` of modern processor residing on each. This would open up the ``black box`` of modern processor
design, showing the basic components at a macroscopic scale. design, showing the basic components at a macroscopic scale.
@ -10,8 +10,8 @@ The project's aim was later
redirected due to concerns about difficulty, and an FPGA-based design was opted redirected due to concerns about difficulty, and an FPGA-based design was opted
for instead. After for instead. After
several months of implementation time, the project was split into two parts: the several months of implementation time, the project was split into two parts: the
peripherals and the core processor. During the development process, and to get peripherals and the processor core. During the development process, and to get
back to the original goal of making a processor understandable, the back to the original goal of making a processor more understandable, the
peripherals changed from being implemented in VHDL back to hardware. peripherals changed from being implemented in VHDL back to hardware.
This increased the required effort, but would result in a far more This increased the required effort, but would result in a far more
understandable final product. understandable final product.
@ -25,7 +25,8 @@ software instead.
\label{sec:free-software} \label{sec:free-software}
For most of today's processors, documentation only exists on the execution of For most of today's processors, documentation only exists on the execution of
programs (the runtime), not for their internals. In order the have the biggest programs (the runtime environment), not for their internals. In order to have
the biggest
possible educational potential, this project is entirely "Free as in speech": possible educational potential, this project is entirely "Free as in speech":
All involved software and hardware designs, as well as all the tools and All involved software and hardware designs, as well as all the tools and
utilities required to create them, comply with the Free Software Foundation's utilities required to create them, comply with the Free Software Foundation's

View file

@ -1,4 +1,4 @@
The project is fully implemented with all functionality originally targeted. The project has been fully implemented with all functionality originally targeted.
The system has been tested and verified. All example code has been The system has been tested and verified. All example code has been
documented and tested. Hardware implementations were created using documented and tested. Hardware implementations were created using
Free software\footnote{See \autoref{sec:free-software}} programs, while the Free software\footnote{See \autoref{sec:free-software}} programs, while the