Compare commits
No commits in common. "6ce8fb5cba699ed7bf23ad214ee1e5790653f27a" and "71a0c7ee41858f83ffb2b81524b4b3c1ca1864be" have entirely different histories.
6ce8fb5cba
...
71a0c7ee41
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 17 KiB |
@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="266.518pt" height="174.209pt" viewBox="0 0 266.518 174.209" version="1.2">
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="265.963pt" height="174.209pt" viewBox="0 0 265.963 174.209" version="1.2">
|
||||
<defs>
|
||||
<g>
|
||||
<symbol overflow="visible" id="glyph0-0">
|
||||
@ -38,6 +38,72 @@
|
||||
<symbol overflow="visible" id="glyph2-4">
|
||||
<path style="stroke:none;" d="M 4.15625 0 L 4.15625 -0.3125 L 3.84375 -0.3125 C 2.953125 -0.3125 2.921875 -0.421875 2.921875 -0.78125 L 2.921875 -6.34375 C 2.921875 -6.59375 2.921875 -6.609375 2.6875 -6.609375 C 2.078125 -5.96875 1.203125 -5.96875 0.890625 -5.96875 L 0.890625 -5.671875 C 1.078125 -5.671875 1.671875 -5.671875 2.1875 -5.921875 L 2.1875 -0.78125 C 2.1875 -0.421875 2.15625 -0.3125 1.265625 -0.3125 L 0.9375 -0.3125 L 0.9375 0 C 1.296875 -0.03125 2.15625 -0.03125 2.546875 -0.03125 C 2.953125 -0.03125 3.8125 -0.03125 4.15625 0 Z M 4.15625 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-5">
|
||||
<path style="stroke:none;" d="M 7.265625 -0.875 C 7.265625 -0.9375 7.265625 -1.046875 7.140625 -1.046875 C 7.03125 -1.046875 7.03125 -0.953125 7.015625 -0.890625 C 6.953125 -0.171875 6.609375 0 6.359375 0 C 5.875 0 5.796875 -0.5 5.65625 -1.421875 L 5.53125 -2.21875 C 5.34375 -2.859375 4.859375 -3.1875 4.3125 -3.375 C 5.28125 -3.609375 6.046875 -4.21875 6.046875 -4.984375 C 6.046875 -5.9375 4.921875 -6.78125 3.46875 -6.78125 L 0.34375 -6.78125 L 0.34375 -6.46875 L 0.578125 -6.46875 C 1.34375 -6.46875 1.375 -6.359375 1.375 -6 L 1.375 -0.78125 C 1.375 -0.421875 1.34375 -0.3125 0.578125 -0.3125 L 0.34375 -0.3125 L 0.34375 0 C 0.703125 -0.03125 1.40625 -0.03125 1.796875 -0.03125 C 2.1875 -0.03125 2.890625 -0.03125 3.25 0 L 3.25 -0.3125 L 3 -0.3125 C 2.25 -0.3125 2.21875 -0.421875 2.21875 -0.78125 L 2.21875 -3.28125 L 3.359375 -3.28125 C 3.515625 -3.28125 3.9375 -3.28125 4.28125 -2.953125 C 4.65625 -2.59375 4.65625 -2.28125 4.65625 -1.625 C 4.65625 -0.96875 4.65625 -0.578125 5.0625 -0.203125 C 5.484375 0.15625 6.015625 0.21875 6.3125 0.21875 C 7.09375 0.21875 7.265625 -0.59375 7.265625 -0.875 Z M 5.03125 -4.984375 C 5.03125 -4.3125 4.796875 -3.5 3.328125 -3.5 L 2.21875 -3.5 L 2.21875 -6.078125 C 2.21875 -6.296875 2.21875 -6.421875 2.4375 -6.453125 C 2.546875 -6.46875 2.828125 -6.46875 3.03125 -6.46875 C 3.921875 -6.46875 5.03125 -6.421875 5.03125 -4.984375 Z M 5.03125 -4.984375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-6">
|
||||
<path style="stroke:none;" d="M 4.125 -1.1875 C 4.125 -1.28125 4.03125 -1.296875 3.984375 -1.296875 C 3.90625 -1.296875 3.875 -1.234375 3.859375 -1.15625 C 3.515625 -0.140625 2.625 -0.140625 2.515625 -0.140625 C 2.03125 -0.140625 1.625 -0.4375 1.40625 -0.796875 C 1.09375 -1.28125 1.09375 -1.9375 1.09375 -2.296875 L 3.875 -2.296875 C 4.09375 -2.296875 4.125 -2.296875 4.125 -2.5 C 4.125 -3.484375 3.578125 -4.4375 2.34375 -4.4375 C 1.1875 -4.4375 0.28125 -3.421875 0.28125 -2.1875 C 0.28125 -0.859375 1.3125 0.109375 2.453125 0.109375 C 3.671875 0.109375 4.125 -0.984375 4.125 -1.1875 Z M 3.46875 -2.5 L 1.109375 -2.5 C 1.171875 -3.984375 2 -4.234375 2.34375 -4.234375 C 3.359375 -4.234375 3.46875 -2.890625 3.46875 -2.5 Z M 3.46875 -2.5 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-7">
|
||||
<path style="stroke:none;" d="M 3.546875 -6.296875 C 3.546875 -6.671875 3.171875 -7 2.65625 -7 C 1.953125 -7 1.109375 -6.46875 1.109375 -5.421875 L 1.109375 -4.28125 L 0.328125 -4.28125 L 0.328125 -3.96875 L 1.109375 -3.96875 L 1.109375 -0.75 C 1.109375 -0.3125 1 -0.3125 0.34375 -0.3125 L 0.34375 0 L 1.46875 -0.03125 C 1.859375 -0.03125 2.328125 -0.03125 2.734375 0 L 2.734375 -0.3125 L 2.515625 -0.3125 C 1.78125 -0.3125 1.765625 -0.421875 1.765625 -0.78125 L 1.765625 -3.96875 L 2.890625 -3.96875 L 2.890625 -4.28125 L 1.734375 -4.28125 L 1.734375 -5.421875 C 1.734375 -6.296875 2.21875 -6.78125 2.65625 -6.78125 C 2.671875 -6.78125 2.828125 -6.78125 2.96875 -6.703125 C 2.859375 -6.671875 2.671875 -6.53125 2.671875 -6.296875 C 2.671875 -6.0625 2.84375 -5.859375 3.109375 -5.859375 C 3.390625 -5.859375 3.546875 -6.0625 3.546875 -6.296875 Z M 3.546875 -6.296875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-8">
|
||||
<path style="stroke:none;" d="M 3.609375 -3.78125 C 3.609375 -4.09375 3.296875 -4.390625 2.875 -4.390625 C 2.15625 -4.390625 1.796875 -3.71875 1.65625 -3.296875 L 1.65625 -4.390625 L 0.28125 -4.28125 L 0.28125 -3.96875 C 0.96875 -3.96875 1.046875 -3.90625 1.046875 -3.40625 L 1.046875 -0.75 C 1.046875 -0.3125 0.9375 -0.3125 0.28125 -0.3125 L 0.28125 0 L 1.40625 -0.03125 C 1.8125 -0.03125 2.265625 -0.03125 2.671875 0 L 2.671875 -0.3125 L 2.453125 -0.3125 C 1.71875 -0.3125 1.703125 -0.421875 1.703125 -0.78125 L 1.703125 -2.296875 C 1.703125 -3.28125 2.125 -4.171875 2.875 -4.171875 C 2.953125 -4.171875 2.96875 -4.171875 2.984375 -4.15625 C 2.953125 -4.140625 2.765625 -4.03125 2.765625 -3.765625 C 2.765625 -3.5 2.96875 -3.34375 3.1875 -3.34375 C 3.359375 -3.34375 3.609375 -3.46875 3.609375 -3.78125 Z M 3.609375 -3.78125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-9">
|
||||
<path style="stroke:none;" d="M 5.3125 0 L 5.3125 -0.3125 C 4.796875 -0.3125 4.546875 -0.3125 4.53125 -0.609375 L 4.53125 -2.5 C 4.53125 -3.359375 4.53125 -3.65625 4.234375 -4.015625 C 4.09375 -4.1875 3.765625 -4.390625 3.1875 -4.390625 C 2.453125 -4.390625 2 -3.953125 1.71875 -3.34375 L 1.71875 -4.390625 L 0.3125 -4.28125 L 0.3125 -3.96875 C 1.015625 -3.96875 1.09375 -3.90625 1.09375 -3.40625 L 1.09375 -0.75 C 1.09375 -0.3125 0.984375 -0.3125 0.3125 -0.3125 L 0.3125 0 L 1.4375 -0.03125 L 2.546875 0 L 2.546875 -0.3125 C 1.890625 -0.3125 1.78125 -0.3125 1.78125 -0.75 L 1.78125 -2.578125 C 1.78125 -3.609375 2.484375 -4.171875 3.109375 -4.171875 C 3.734375 -4.171875 3.84375 -3.625 3.84375 -3.0625 L 3.84375 -0.75 C 3.84375 -0.3125 3.734375 -0.3125 3.078125 -0.3125 L 3.078125 0 L 4.203125 -0.03125 Z M 5.3125 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-10">
|
||||
<path style="stroke:none;" d="M 4.125 -1.1875 C 4.125 -1.28125 4.015625 -1.28125 3.984375 -1.28125 C 3.90625 -1.28125 3.875 -1.234375 3.859375 -1.1875 C 3.578125 -0.265625 2.921875 -0.140625 2.5625 -0.140625 C 2.03125 -0.140625 1.15625 -0.5625 1.15625 -2.15625 C 1.15625 -3.78125 1.96875 -4.203125 2.5 -4.203125 C 2.59375 -4.203125 3.21875 -4.1875 3.5625 -3.828125 C 3.15625 -3.796875 3.09375 -3.5 3.09375 -3.375 C 3.09375 -3.109375 3.28125 -2.921875 3.546875 -2.921875 C 3.8125 -2.921875 4.015625 -3.078125 4.015625 -3.390625 C 4.015625 -4.0625 3.25 -4.4375 2.484375 -4.4375 C 1.25 -4.4375 0.34375 -3.375 0.34375 -2.140625 C 0.34375 -0.875 1.3125 0.109375 2.46875 0.109375 C 3.796875 0.109375 4.125 -1.078125 4.125 -1.1875 Z M 4.125 -1.1875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-11">
|
||||
<path style="stroke:none;" d="M 6.796875 -4.484375 L 6.609375 -6.71875 L 0.546875 -6.71875 L 0.359375 -4.484375 L 0.609375 -4.484375 C 0.75 -6.078125 0.890625 -6.40625 2.390625 -6.40625 C 2.5625 -6.40625 2.828125 -6.40625 2.921875 -6.390625 C 3.140625 -6.34375 3.140625 -6.234375 3.140625 -6.015625 L 3.140625 -0.78125 C 3.140625 -0.453125 3.140625 -0.3125 2.09375 -0.3125 L 1.703125 -0.3125 L 1.703125 0 C 2.109375 -0.03125 3.109375 -0.03125 3.578125 -0.03125 C 4.03125 -0.03125 5.046875 -0.03125 5.453125 0 L 5.453125 -0.3125 L 5.0625 -0.3125 C 4.015625 -0.3125 4.015625 -0.453125 4.015625 -0.78125 L 4.015625 -6.015625 C 4.015625 -6.21875 4.015625 -6.34375 4.203125 -6.390625 C 4.3125 -6.40625 4.578125 -6.40625 4.765625 -6.40625 C 6.265625 -6.40625 6.40625 -6.078125 6.546875 -4.484375 Z M 6.796875 -4.484375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-12">
|
||||
<path style="stroke:none;" d="M 4.796875 -0.890625 L 4.796875 -1.4375 L 4.546875 -1.4375 L 4.546875 -0.890625 C 4.546875 -0.3125 4.296875 -0.25 4.1875 -0.25 C 3.859375 -0.25 3.8125 -0.6875 3.8125 -0.75 L 3.8125 -2.734375 C 3.8125 -3.140625 3.8125 -3.53125 3.46875 -3.90625 C 3.078125 -4.28125 2.578125 -4.4375 2.109375 -4.4375 C 1.296875 -4.4375 0.609375 -3.984375 0.609375 -3.328125 C 0.609375 -3.03125 0.796875 -2.859375 1.0625 -2.859375 C 1.34375 -2.859375 1.515625 -3.0625 1.515625 -3.3125 C 1.515625 -3.4375 1.46875 -3.765625 1.015625 -3.765625 C 1.28125 -4.125 1.765625 -4.234375 2.078125 -4.234375 C 2.5625 -4.234375 3.140625 -3.84375 3.140625 -2.953125 L 3.140625 -2.59375 C 2.625 -2.5625 1.9375 -2.53125 1.3125 -2.234375 C 0.5625 -1.890625 0.3125 -1.375 0.3125 -0.9375 C 0.3125 -0.140625 1.28125 0.109375 1.90625 0.109375 C 2.5625 0.109375 3.015625 -0.28125 3.203125 -0.75 C 3.25 -0.359375 3.515625 0.0625 3.984375 0.0625 C 4.1875 0.0625 4.796875 -0.078125 4.796875 -0.890625 Z M 3.140625 -1.390625 C 3.140625 -0.453125 2.421875 -0.109375 1.96875 -0.109375 C 1.484375 -0.109375 1.078125 -0.453125 1.078125 -0.953125 C 1.078125 -1.5 1.5 -2.328125 3.140625 -2.375 Z M 3.140625 -1.390625 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-13">
|
||||
<path style="stroke:none;" d="M 5.0625 0 L 5.0625 -0.3125 C 4.703125 -0.3125 4.484375 -0.3125 4.109375 -0.828125 L 2.84375 -2.609375 C 2.84375 -2.625 2.78125 -2.6875 2.78125 -2.71875 C 2.78125 -2.765625 3.5 -3.359375 3.59375 -3.4375 C 4.21875 -3.9375 4.640625 -3.953125 4.84375 -3.96875 L 4.84375 -4.28125 C 4.546875 -4.25 4.421875 -4.25 4.140625 -4.25 C 3.796875 -4.25 3.171875 -4.265625 3.03125 -4.28125 L 3.03125 -3.96875 C 3.21875 -3.953125 3.328125 -3.84375 3.328125 -3.71875 C 3.328125 -3.515625 3.1875 -3.40625 3.109375 -3.328125 L 1.703125 -2.125 L 1.703125 -6.890625 L 0.28125 -6.78125 L 0.28125 -6.46875 C 0.96875 -6.46875 1.046875 -6.40625 1.046875 -5.90625 L 1.046875 -0.75 C 1.046875 -0.3125 0.9375 -0.3125 0.28125 -0.3125 L 0.28125 0 L 1.359375 -0.03125 L 2.453125 0 L 2.453125 -0.3125 C 1.78125 -0.3125 1.671875 -0.3125 1.671875 -0.75 L 1.671875 -1.78125 L 2.3125 -2.328125 C 3.078125 -1.265625 3.5 -0.71875 3.5 -0.53125 C 3.5 -0.34375 3.328125 -0.3125 3.140625 -0.3125 L 3.140625 0 L 4.203125 -0.03125 C 4.5 -0.03125 4.78125 -0.015625 5.0625 0 Z M 5.0625 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-14">
|
||||
<path style="stroke:none;" d="M 2.453125 0 L 2.453125 -0.3125 C 1.796875 -0.3125 1.75 -0.359375 1.75 -0.75 L 1.75 -4.390625 L 0.359375 -4.28125 L 0.359375 -3.96875 C 1.015625 -3.96875 1.09375 -3.90625 1.09375 -3.421875 L 1.09375 -0.75 C 1.09375 -0.3125 0.984375 -0.3125 0.328125 -0.3125 L 0.328125 0 L 1.421875 -0.03125 C 1.765625 -0.03125 2.109375 -0.015625 2.453125 0 Z M 1.90625 -6 C 1.90625 -6.265625 1.671875 -6.515625 1.375 -6.515625 C 1.046875 -6.515625 0.84375 -6.234375 0.84375 -6 C 0.84375 -5.71875 1.078125 -5.46875 1.375 -5.46875 C 1.703125 -5.46875 1.90625 -5.75 1.90625 -6 Z M 1.90625 -6 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-15">
|
||||
<path style="stroke:none;" d="M 4.8125 -4.015625 C 4.8125 -4.171875 4.6875 -4.5 4.3125 -4.5 C 4.109375 -4.5 3.671875 -4.4375 3.25 -4.03125 C 2.84375 -4.359375 2.421875 -4.390625 2.203125 -4.390625 C 1.28125 -4.390625 0.59375 -3.703125 0.59375 -2.9375 C 0.59375 -2.5 0.8125 -2.125 1.0625 -1.921875 C 0.9375 -1.765625 0.75 -1.4375 0.75 -1.09375 C 0.75 -0.78125 0.890625 -0.40625 1.1875 -0.203125 C 0.59375 -0.046875 0.28125 0.390625 0.28125 0.78125 C 0.28125 1.5 1.265625 2.046875 2.46875 2.046875 C 3.640625 2.046875 4.671875 1.53125 4.671875 0.765625 C 4.671875 0.421875 4.53125 -0.09375 4.03125 -0.359375 C 3.5 -0.640625 2.921875 -0.640625 2.328125 -0.640625 C 2.078125 -0.640625 1.640625 -0.640625 1.578125 -0.65625 C 1.265625 -0.6875 1.046875 -1 1.046875 -1.3125 C 1.046875 -1.359375 1.046875 -1.59375 1.21875 -1.78125 C 1.609375 -1.515625 2.015625 -1.484375 2.203125 -1.484375 C 3.125 -1.484375 3.8125 -2.15625 3.8125 -2.921875 C 3.8125 -3.296875 3.65625 -3.65625 3.40625 -3.890625 C 3.765625 -4.234375 4.125 -4.28125 4.296875 -4.28125 C 4.296875 -4.28125 4.359375 -4.28125 4.390625 -4.265625 C 4.28125 -4.234375 4.234375 -4.125 4.234375 -4 C 4.234375 -3.828125 4.359375 -3.703125 4.53125 -3.703125 C 4.625 -3.703125 4.8125 -3.78125 4.8125 -4.015625 Z M 3.0625 -2.9375 C 3.0625 -2.671875 3.0625 -2.34375 2.90625 -2.109375 C 2.828125 -1.984375 2.59375 -1.703125 2.203125 -1.703125 C 1.34375 -1.703125 1.34375 -2.703125 1.34375 -2.921875 C 1.34375 -3.1875 1.34375 -3.515625 1.5 -3.765625 C 1.578125 -3.875 1.8125 -4.15625 2.203125 -4.15625 C 3.0625 -4.15625 3.0625 -3.171875 3.0625 -2.9375 Z M 4.15625 0.78125 C 4.15625 1.3125 3.453125 1.8125 2.484375 1.8125 C 1.484375 1.8125 0.796875 1.3125 0.796875 0.78125 C 0.796875 0.328125 1.171875 -0.046875 1.609375 -0.0625 L 2.1875 -0.0625 C 3.046875 -0.0625 4.15625 -0.0625 4.15625 0.78125 Z M 4.15625 0.78125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-16">
|
||||
<path style="stroke:none;" d="M 7.109375 -6.46875 L 7.109375 -6.78125 L 5.9375 -6.75 L 4.78125 -6.78125 L 4.78125 -6.46875 C 5.796875 -6.46875 5.796875 -6 5.796875 -5.734375 L 5.796875 -1.5 L 2.296875 -6.640625 C 2.21875 -6.765625 2.203125 -6.78125 2.015625 -6.78125 L 0.328125 -6.78125 L 0.328125 -6.46875 L 0.609375 -6.46875 C 0.765625 -6.46875 0.96875 -6.453125 1.109375 -6.453125 C 1.34375 -6.421875 1.34375 -6.40625 1.34375 -6.21875 L 1.34375 -1.046875 C 1.34375 -0.78125 1.34375 -0.3125 0.328125 -0.3125 L 0.328125 0 L 1.484375 -0.03125 L 2.65625 0 L 2.65625 -0.3125 C 1.625 -0.3125 1.625 -0.78125 1.625 -1.046875 L 1.625 -6.203125 C 1.671875 -6.15625 1.6875 -6.140625 1.71875 -6.078125 L 5.78125 -0.125 C 5.859375 -0.015625 5.875 0 5.9375 0 C 6.078125 0 6.078125 -0.0625 6.078125 -0.265625 L 6.078125 -5.734375 C 6.078125 -6 6.078125 -6.46875 7.109375 -6.46875 Z M 7.109375 -6.46875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-17">
|
||||
<path style="stroke:none;" d="M 4.671875 -2.125 C 4.671875 -3.390625 3.6875 -4.4375 2.484375 -4.4375 C 1.234375 -4.4375 0.28125 -3.359375 0.28125 -2.125 C 0.28125 -0.84375 1.3125 0.109375 2.46875 0.109375 C 3.671875 0.109375 4.671875 -0.859375 4.671875 -2.125 Z M 3.84375 -2.203125 C 3.84375 -1.84375 3.84375 -1.3125 3.625 -0.875 C 3.40625 -0.421875 2.96875 -0.140625 2.484375 -0.140625 C 2.046875 -0.140625 1.625 -0.34375 1.34375 -0.796875 C 1.09375 -1.234375 1.09375 -1.84375 1.09375 -2.203125 C 1.09375 -2.59375 1.09375 -3.125 1.34375 -3.5625 C 1.609375 -4.015625 2.078125 -4.234375 2.46875 -4.234375 C 2.90625 -4.234375 3.328125 -4.015625 3.59375 -3.578125 C 3.84375 -3.15625 3.84375 -2.578125 3.84375 -2.203125 Z M 3.84375 -2.203125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-18">
|
||||
<path style="stroke:none;" d="M 3.578125 -1.265625 C 3.578125 -1.796875 3.28125 -2.09375 3.15625 -2.21875 C 2.828125 -2.53125 2.4375 -2.609375 2.03125 -2.6875 C 1.46875 -2.796875 0.796875 -2.921875 0.796875 -3.5 C 0.796875 -3.84375 1.0625 -4.25 1.921875 -4.25 C 3 -4.25 3.0625 -3.359375 3.078125 -3.0625 C 3.078125 -2.96875 3.1875 -2.96875 3.1875 -2.96875 C 3.328125 -2.96875 3.328125 -3.015625 3.328125 -3.203125 L 3.328125 -4.203125 C 3.328125 -4.375 3.328125 -4.4375 3.21875 -4.4375 C 3.171875 -4.4375 3.140625 -4.4375 3.015625 -4.328125 C 2.984375 -4.28125 2.890625 -4.203125 2.84375 -4.171875 C 2.46875 -4.4375 2.0625 -4.4375 1.921875 -4.4375 C 0.703125 -4.4375 0.328125 -3.78125 0.328125 -3.21875 C 0.328125 -2.875 0.484375 -2.59375 0.75 -2.375 C 1.078125 -2.125 1.34375 -2.0625 2.0625 -1.921875 C 2.28125 -1.890625 3.09375 -1.71875 3.09375 -1.015625 C 3.09375 -0.5 2.75 -0.109375 1.96875 -0.109375 C 1.140625 -0.109375 0.78125 -0.671875 0.59375 -1.515625 C 0.5625 -1.640625 0.5625 -1.6875 0.453125 -1.6875 C 0.328125 -1.6875 0.328125 -1.625 0.328125 -1.4375 L 0.328125 -0.125 C 0.328125 0.046875 0.328125 0.109375 0.4375 0.109375 C 0.484375 0.109375 0.5 0.09375 0.6875 -0.09375 C 0.703125 -0.109375 0.703125 -0.125 0.890625 -0.3125 C 1.3125 0.09375 1.765625 0.109375 1.96875 0.109375 C 3.109375 0.109375 3.578125 -0.5625 3.578125 -1.265625 Z M 3.578125 -1.265625 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-19">
|
||||
<path style="stroke:none;" d="M 2.078125 0.5 L 2.078125 -4.390625 L 0.578125 -4.28125 L 0.578125 -3.96875 C 1.34375 -3.96875 1.421875 -3.90625 1.421875 -3.40625 L 1.421875 0.515625 C 1.421875 0.96875 1.34375 1.8125 0.703125 1.8125 C 0.65625 1.8125 0.421875 1.8125 0.171875 1.6875 C 0.3125 1.640625 0.515625 1.515625 0.515625 1.234375 C 0.515625 0.984375 0.34375 0.78125 0.0625 0.78125 C -0.21875 0.78125 -0.390625 0.984375 -0.390625 1.234375 C -0.390625 1.75 0.15625 2.03125 0.71875 2.03125 C 1.46875 2.03125 2.078125 1.40625 2.078125 0.5 Z M 2.078125 -6 C 2.078125 -6.265625 1.859375 -6.515625 1.5625 -6.515625 C 1.21875 -6.515625 1.015625 -6.234375 1.015625 -6 C 1.015625 -5.71875 1.25 -5.46875 1.546875 -5.46875 C 1.890625 -5.46875 2.078125 -5.75 2.078125 -6 Z M 2.078125 -6 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-20">
|
||||
<path style="stroke:none;" d="M 3.296875 -1.234375 L 3.296875 -1.796875 L 3.046875 -1.796875 L 3.046875 -1.25 C 3.046875 -0.515625 2.75 -0.140625 2.375 -0.140625 C 1.71875 -0.140625 1.71875 -1.046875 1.71875 -1.203125 L 1.71875 -3.96875 L 3.140625 -3.96875 L 3.140625 -4.28125 L 1.71875 -4.28125 L 1.71875 -6.109375 L 1.46875 -6.109375 C 1.453125 -5.28125 1.15625 -4.234375 0.1875 -4.1875 L 0.1875 -3.96875 L 1.03125 -3.96875 L 1.03125 -1.234375 C 1.03125 -0.015625 1.953125 0.109375 2.3125 0.109375 C 3.015625 0.109375 3.296875 -0.59375 3.296875 -1.234375 Z M 3.296875 -1.234375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-21">
|
||||
<path style="stroke:none;" d="M 6.453125 -1.8125 C 6.453125 -2.671875 5.640625 -3.421875 4.546875 -3.546875 C 5.5 -3.734375 6.1875 -4.359375 6.1875 -5.09375 C 6.1875 -5.96875 5.28125 -6.78125 3.984375 -6.78125 L 0.359375 -6.78125 L 0.359375 -6.46875 L 0.59375 -6.46875 C 1.359375 -6.46875 1.375 -6.359375 1.375 -6 L 1.375 -0.78125 C 1.375 -0.421875 1.359375 -0.3125 0.59375 -0.3125 L 0.359375 -0.3125 L 0.359375 0 L 4.25 0 C 5.5625 0 6.453125 -0.890625 6.453125 -1.8125 Z M 5.234375 -5.09375 C 5.234375 -4.46875 4.75 -3.625 3.640625 -3.625 L 2.203125 -3.625 L 2.203125 -6.078125 C 2.203125 -6.40625 2.21875 -6.46875 2.6875 -6.46875 L 3.921875 -6.46875 C 4.875 -6.46875 5.234375 -5.625 5.234375 -5.09375 Z M 5.46875 -1.828125 C 5.46875 -1.125 4.953125 -0.3125 3.921875 -0.3125 L 2.6875 -0.3125 C 2.21875 -0.3125 2.203125 -0.375 2.203125 -0.703125 L 2.203125 -3.40625 L 4.0625 -3.40625 C 5.046875 -3.40625 5.46875 -2.484375 5.46875 -1.828125 Z M 5.46875 -1.828125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-22">
|
||||
<path style="stroke:none;" d="M 5.234375 0 L 5.234375 -0.3125 C 4.53125 -0.3125 4.453125 -0.375 4.453125 -0.859375 L 4.453125 -6.890625 L 3.03125 -6.78125 L 3.03125 -6.46875 C 3.71875 -6.46875 3.796875 -6.40625 3.796875 -5.90625 L 3.796875 -3.765625 C 3.515625 -4.125 3.078125 -4.390625 2.546875 -4.390625 C 1.375 -4.390625 0.34375 -3.40625 0.34375 -2.140625 C 0.34375 -0.875 1.3125 0.109375 2.4375 0.109375 C 3.078125 0.109375 3.515625 -0.234375 3.765625 -0.546875 L 3.765625 0.109375 Z M 3.765625 -1.171875 C 3.765625 -0.984375 3.765625 -0.96875 3.65625 -0.796875 C 3.359375 -0.328125 2.921875 -0.109375 2.484375 -0.109375 C 2.046875 -0.109375 1.6875 -0.359375 1.453125 -0.75 C 1.1875 -1.15625 1.15625 -1.71875 1.15625 -2.125 C 1.15625 -2.484375 1.1875 -3.078125 1.46875 -3.53125 C 1.671875 -3.84375 2.046875 -4.171875 2.59375 -4.171875 C 2.9375 -4.171875 3.359375 -4.015625 3.65625 -3.578125 C 3.765625 -3.40625 3.765625 -3.390625 3.765625 -3.203125 Z M 3.765625 -1.171875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-23">
|
||||
<path style="stroke:none;" d="M 6.96875 -3.96875 L 6.96875 -4.28125 C 6.75 -4.25 6.46875 -4.25 6.25 -4.25 L 5.328125 -4.28125 L 5.328125 -3.96875 C 5.6875 -3.953125 5.90625 -3.78125 5.90625 -3.5 C 5.90625 -3.4375 5.90625 -3.40625 5.859375 -3.28125 L 4.953125 -0.75 L 3.96875 -3.515625 C 3.921875 -3.625 3.921875 -3.65625 3.921875 -3.703125 C 3.921875 -3.96875 4.3125 -3.96875 4.5 -3.96875 L 4.5 -4.28125 L 3.46875 -4.25 C 3.171875 -4.25 2.890625 -4.25 2.59375 -4.28125 L 2.59375 -3.96875 C 2.953125 -3.96875 3.109375 -3.953125 3.21875 -3.8125 C 3.265625 -3.765625 3.375 -3.46875 3.4375 -3.28125 L 2.59375 -0.875 L 1.640625 -3.515625 C 1.59375 -3.640625 1.59375 -3.65625 1.59375 -3.703125 C 1.59375 -3.96875 1.984375 -3.96875 2.1875 -3.96875 L 2.1875 -4.28125 L 1.09375 -4.25 L 0.171875 -4.28125 L 0.171875 -3.96875 C 0.671875 -3.96875 0.796875 -3.9375 0.90625 -3.625 L 2.15625 -0.109375 C 2.21875 0.03125 2.25 0.109375 2.375 0.109375 C 2.5 0.109375 2.515625 0.046875 2.5625 -0.09375 L 3.578125 -2.890625 L 4.578125 -0.078125 C 4.625 0.03125 4.65625 0.109375 4.78125 0.109375 C 4.90625 0.109375 4.9375 0.015625 4.984375 -0.078125 L 6.140625 -3.328125 C 6.3125 -3.828125 6.625 -3.953125 6.96875 -3.96875 Z M 6.96875 -3.96875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-24">
|
||||
<path style="stroke:none;" d="M 5.3125 0 L 5.3125 -0.3125 C 4.796875 -0.3125 4.546875 -0.3125 4.53125 -0.609375 L 4.53125 -2.5 C 4.53125 -3.359375 4.53125 -3.65625 4.234375 -4.015625 C 4.09375 -4.1875 3.765625 -4.390625 3.1875 -4.390625 C 2.34375 -4.390625 1.921875 -3.796875 1.75 -3.4375 L 1.75 -6.890625 L 0.3125 -6.78125 L 0.3125 -6.46875 C 1.015625 -6.46875 1.09375 -6.40625 1.09375 -5.90625 L 1.09375 -0.75 C 1.09375 -0.3125 0.984375 -0.3125 0.3125 -0.3125 L 0.3125 0 L 1.4375 -0.03125 L 2.546875 0 L 2.546875 -0.3125 C 1.890625 -0.3125 1.78125 -0.3125 1.78125 -0.75 L 1.78125 -2.578125 C 1.78125 -3.609375 2.484375 -4.171875 3.109375 -4.171875 C 3.734375 -4.171875 3.84375 -3.625 3.84375 -3.0625 L 3.84375 -0.75 C 3.84375 -0.3125 3.734375 -0.3125 3.078125 -0.3125 L 3.078125 0 L 4.203125 -0.03125 Z M 5.3125 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-25">
|
||||
<path style="stroke:none;" d="M 6.1875 -4.9375 C 6.1875 -5.90625 5.203125 -6.78125 3.84375 -6.78125 L 0.34375 -6.78125 L 0.34375 -6.46875 L 0.578125 -6.46875 C 1.34375 -6.46875 1.375 -6.359375 1.375 -6 L 1.375 -0.78125 C 1.375 -0.421875 1.34375 -0.3125 0.578125 -0.3125 L 0.34375 -0.3125 L 0.34375 0 C 0.6875 -0.03125 1.421875 -0.03125 1.8125 -0.03125 C 2.1875 -0.03125 2.921875 -0.03125 3.28125 0 L 3.28125 -0.3125 L 3.03125 -0.3125 C 2.265625 -0.3125 2.25 -0.421875 2.25 -0.78125 L 2.25 -3.140625 L 3.921875 -3.140625 C 5.125 -3.140625 6.1875 -3.9375 6.1875 -4.9375 Z M 5.171875 -4.9375 C 5.171875 -4.46875 5.171875 -3.390625 3.59375 -3.390625 L 2.21875 -3.390625 L 2.21875 -6.078125 C 2.21875 -6.40625 2.25 -6.46875 2.703125 -6.46875 L 3.59375 -6.46875 C 5.171875 -6.46875 5.171875 -5.421875 5.171875 -4.9375 Z M 5.171875 -4.9375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph2-26">
|
||||
<path style="stroke:none;" d="M 8.71875 0 L 8.71875 -0.3125 L 8.484375 -0.3125 C 7.71875 -0.3125 7.703125 -0.421875 7.703125 -0.78125 L 7.703125 -6 C 7.703125 -6.359375 7.71875 -6.46875 8.484375 -6.46875 L 8.71875 -6.46875 L 8.71875 -6.78125 L 7.046875 -6.78125 C 6.78125 -6.78125 6.78125 -6.765625 6.71875 -6.59375 L 4.546875 -1 L 2.390625 -6.5625 C 2.296875 -6.78125 2.265625 -6.78125 2.046875 -6.78125 L 0.359375 -6.78125 L 0.359375 -6.46875 L 0.609375 -6.46875 C 1.375 -6.46875 1.390625 -6.359375 1.390625 -6 L 1.390625 -1.046875 C 1.390625 -0.78125 1.390625 -0.3125 0.359375 -0.3125 L 0.359375 0 L 1.53125 -0.03125 L 2.6875 0 L 2.6875 -0.3125 C 1.671875 -0.3125 1.671875 -0.78125 1.671875 -1.046875 L 1.671875 -6.390625 L 4.0625 -0.21875 C 4.125 -0.09375 4.171875 0 4.265625 0 C 4.375 0 4.40625 -0.078125 4.4375 -0.1875 L 6.890625 -6.46875 L 6.890625 -0.78125 C 6.890625 -0.421875 6.875 -0.3125 6.109375 -0.3125 L 5.875 -0.3125 L 5.875 0 C 6.234375 -0.03125 6.921875 -0.03125 7.296875 -0.03125 C 7.6875 -0.03125 8.359375 -0.03125 8.71875 0 Z M 8.71875 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph3-0">
|
||||
<path style="stroke:none;" d=""/>
|
||||
</symbol>
|
||||
@ -51,288 +117,198 @@
|
||||
<path style="stroke:none;" d=""/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-1">
|
||||
<path style="stroke:none;" d="M 5.671875 -0.625 C 5.671875 -0.6875 5.671875 -0.765625 5.546875 -0.765625 C 5.453125 -0.765625 5.4375 -0.703125 5.4375 -0.625 C 5.390625 -0.234375 5.171875 -0.0625 4.953125 -0.0625 C 4.5625 -0.0625 4.5 -0.46875 4.421875 -1.09375 C 4.34375 -1.65625 4.328125 -1.765625 4.125 -1.984375 C 4.046875 -2.0625 3.859375 -2.25 3.484375 -2.359375 C 4.109375 -2.515625 4.734375 -2.921875 4.734375 -3.484375 C 4.734375 -4.171875 3.8125 -4.734375 2.734375 -4.734375 L 0.40625 -4.734375 L 0.40625 -4.484375 L 0.5625 -4.484375 C 1.109375 -4.484375 1.109375 -4.421875 1.109375 -4.171875 L 1.109375 -0.5625 C 1.109375 -0.328125 1.109375 -0.25 0.5625 -0.25 L 0.40625 -0.25 L 0.40625 0 L 1.421875 -0.03125 L 2.46875 0 L 2.46875 -0.25 L 2.296875 -0.25 C 1.765625 -0.25 1.75 -0.3125 1.75 -0.5625 L 1.75 -2.28125 L 2.671875 -2.28125 C 2.796875 -2.28125 3.15625 -2.28125 3.46875 -1.984375 C 3.703125 -1.78125 3.703125 -1.609375 3.703125 -1.140625 C 3.703125 -0.6875 3.703125 -0.40625 4.03125 -0.140625 C 4.328125 0.109375 4.734375 0.140625 4.921875 0.140625 C 5.515625 0.140625 5.671875 -0.421875 5.671875 -0.625 Z M 3.984375 -3.484375 C 3.984375 -2.703125 3.390625 -2.46875 2.65625 -2.46875 L 1.75 -2.46875 L 1.75 -4.21875 C 1.75 -4.40625 1.75 -4.453125 1.9375 -4.484375 C 1.984375 -4.484375 2.234375 -4.484375 2.375 -4.484375 C 3.03125 -4.484375 3.984375 -4.484375 3.984375 -3.484375 Z M 3.984375 -3.484375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-2">
|
||||
<path style="stroke:none;" d="M 3.25 -0.828125 C 3.25 -0.859375 3.234375 -0.921875 3.125 -0.921875 C 3.03125 -0.921875 3.03125 -0.890625 3 -0.8125 C 2.78125 -0.25 2.265625 -0.15625 2.015625 -0.15625 C 1.6875 -0.15625 1.375 -0.296875 1.171875 -0.5625 C 0.90625 -0.890625 0.90625 -1.3125 0.90625 -1.578125 L 3.046875 -1.578125 C 3.203125 -1.578125 3.25 -1.578125 3.25 -1.734375 C 3.25 -2.34375 2.90625 -3.09375 1.875 -3.09375 C 0.96875 -3.09375 0.265625 -2.375 0.265625 -1.515625 C 0.265625 -0.640625 1.046875 0.0625 1.96875 0.0625 C 2.90625 0.0625 3.25 -0.6875 3.25 -0.828125 Z M 2.765625 -1.765625 L 0.90625 -1.765625 C 0.984375 -2.734375 1.609375 -2.90625 1.875 -2.90625 C 2.71875 -2.90625 2.75 -1.9375 2.765625 -1.765625 Z M 2.765625 -1.765625 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-3">
|
||||
<path style="stroke:none;" d="M 2.765625 -4.375 C 2.765625 -4.671875 2.46875 -4.890625 2.078125 -4.890625 C 1.53125 -4.890625 0.90625 -4.5 0.90625 -3.765625 L 0.90625 -2.984375 L 0.3125 -2.984375 L 0.3125 -2.734375 L 0.90625 -2.734375 L 0.90625 -0.546875 C 0.90625 -0.25 0.84375 -0.25 0.390625 -0.25 L 0.390625 0 C 0.421875 0 0.890625 -0.03125 1.171875 -0.03125 L 2.078125 0 L 2.078125 -0.25 L 1.9375 -0.25 C 1.421875 -0.25 1.421875 -0.328125 1.421875 -0.5625 L 1.421875 -2.734375 L 2.296875 -2.734375 L 2.296875 -2.984375 L 1.40625 -2.984375 L 1.40625 -3.765625 C 1.40625 -4.390625 1.78125 -4.6875 2.078125 -4.6875 C 2.140625 -4.6875 2.203125 -4.671875 2.28125 -4.65625 C 2.171875 -4.59375 2.125 -4.484375 2.125 -4.375 C 2.125 -4.1875 2.25 -4.0625 2.4375 -4.0625 C 2.625 -4.0625 2.765625 -4.1875 2.765625 -4.375 Z M 2.765625 -4.375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-4">
|
||||
<path style="stroke:none;" d="M 1.515625 -0.390625 C 1.515625 -0.640625 1.328125 -0.796875 1.125 -0.796875 C 0.875 -0.796875 0.71875 -0.609375 0.71875 -0.40625 C 0.71875 -0.15625 0.921875 0 1.109375 0 C 1.359375 0 1.515625 -0.1875 1.515625 -0.390625 Z M 1.515625 -0.390625 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-5">
|
||||
<path style="stroke:none;" d="M 2.609375 -0.875 L 2.609375 -1.25 L 2.359375 -1.25 L 2.359375 -0.875 C 2.359375 -0.40625 2.140625 -0.15625 1.875 -0.15625 C 1.390625 -0.15625 1.390625 -0.734375 1.390625 -0.859375 L 1.390625 -2.734375 L 2.484375 -2.734375 L 2.484375 -2.984375 L 1.390625 -2.984375 L 1.390625 -4.265625 L 1.15625 -4.265625 C 1.15625 -3.640625 0.875 -2.953125 0.203125 -2.9375 L 0.203125 -2.734375 L 0.84375 -2.734375 L 0.84375 -0.875 C 0.84375 -0.09375 1.421875 0.0625 1.8125 0.0625 C 2.28125 0.0625 2.609375 -0.328125 2.609375 -0.875 Z M 2.609375 -0.875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-6">
|
||||
<path style="stroke:none;" d="M 2.828125 -2.609375 C 2.828125 -2.84375 2.609375 -3.0625 2.28125 -3.0625 C 1.921875 -3.0625 1.546875 -2.84375 1.34375 -2.3125 L 1.328125 -2.3125 L 1.328125 -3.0625 L 0.34375 -2.984375 L 0.34375 -2.734375 C 0.8125 -2.734375 0.859375 -2.6875 0.859375 -2.34375 L 0.859375 -0.546875 C 0.859375 -0.25 0.796875 -0.25 0.34375 -0.25 L 0.34375 0 C 0.375 0 0.84375 -0.03125 1.125 -0.03125 L 2.03125 0 L 2.03125 -0.25 L 1.890625 -0.25 C 1.375 -0.25 1.375 -0.328125 1.375 -0.5625 L 1.375 -1.578125 C 1.375 -2.171875 1.65625 -2.859375 2.3125 -2.859375 C 2.25 -2.8125 2.1875 -2.71875 2.1875 -2.609375 C 2.1875 -2.390625 2.375 -2.296875 2.5 -2.296875 C 2.671875 -2.296875 2.828125 -2.40625 2.828125 -2.609375 Z M 2.828125 -2.609375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-7">
|
||||
<path style="stroke:none;" d="M 3.78125 -0.625 L 3.78125 -1 L 3.53125 -1 L 3.53125 -0.625 C 3.53125 -0.5625 3.53125 -0.234375 3.28125 -0.234375 C 3.03125 -0.234375 3.03125 -0.5625 3.03125 -0.640625 L 3.03125 -1.859375 C 3.03125 -2.234375 3.03125 -2.484375 2.703125 -2.75 C 2.421875 -2.984375 2.09375 -3.09375 1.671875 -3.09375 C 1.015625 -3.09375 0.5625 -2.84375 0.5625 -2.421875 C 0.5625 -2.203125 0.703125 -2.078125 0.890625 -2.078125 C 1.078125 -2.078125 1.21875 -2.21875 1.21875 -2.40625 C 1.21875 -2.53125 1.15625 -2.671875 0.96875 -2.71875 C 1.21875 -2.90625 1.625 -2.90625 1.671875 -2.90625 C 2.046875 -2.90625 2.484375 -2.640625 2.484375 -2.0625 L 2.484375 -1.84375 C 2.09375 -1.828125 1.640625 -1.8125 1.125 -1.625 C 0.5 -1.390625 0.3125 -1.015625 0.3125 -0.703125 C 0.3125 -0.109375 1.03125 0.0625 1.53125 0.0625 C 2.078125 0.0625 2.40625 -0.25 2.546875 -0.515625 C 2.578125 -0.234375 2.765625 0.03125 3.09375 0.03125 C 3.09375 0.03125 3.78125 0.03125 3.78125 -0.625 Z M 2.484375 -0.984375 C 2.484375 -0.3125 1.890625 -0.125 1.578125 -0.125 C 1.234375 -0.125 0.890625 -0.359375 0.890625 -0.703125 C 0.890625 -1.078125 1.234375 -1.609375 2.484375 -1.671875 Z M 2.484375 -0.984375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-8">
|
||||
<path style="stroke:none;" d="M 3.25 -0.828125 C 3.25 -0.921875 3.15625 -0.921875 3.125 -0.921875 C 3.03125 -0.921875 3.03125 -0.890625 3 -0.796875 C 2.84375 -0.375 2.484375 -0.15625 2.046875 -0.15625 C 1.578125 -0.15625 0.953125 -0.5 0.953125 -1.5 C 0.953125 -2.390625 1.375 -2.875 2.03125 -2.875 C 2.109375 -2.875 2.453125 -2.875 2.703125 -2.765625 C 2.578125 -2.71875 2.5 -2.609375 2.5 -2.46875 C 2.5 -2.28125 2.640625 -2.140625 2.828125 -2.140625 C 3.015625 -2.140625 3.15625 -2.25 3.15625 -2.484375 C 3.15625 -3.09375 2.203125 -3.09375 2 -3.09375 C 0.96875 -3.09375 0.3125 -2.296875 0.3125 -1.5 C 0.3125 -0.625 1.0625 0.0625 1.96875 0.0625 C 3 0.0625 3.25 -0.75 3.25 -0.828125 Z M 3.25 -0.828125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-9">
|
||||
<path style="stroke:none;" d="M 3.96875 0 L 3.96875 -0.25 C 3.71875 -0.25 3.5625 -0.265625 3.359375 -0.515625 L 2.234375 -1.875 C 3.09375 -2.546875 3.328125 -2.71875 3.796875 -2.734375 L 3.796875 -2.984375 C 3.65625 -2.96875 3.46875 -2.96875 3.328125 -2.96875 C 3.046875 -2.96875 2.78125 -2.96875 2.5 -2.984375 L 2.5 -2.734375 C 2.59375 -2.71875 2.625 -2.671875 2.625 -2.609375 C 2.625 -2.5 2.484375 -2.375 2.40625 -2.3125 L 1.375 -1.515625 L 1.375 -4.8125 L 0.34375 -4.734375 L 0.34375 -4.484375 C 0.8125 -4.484375 0.859375 -4.4375 0.859375 -4.09375 L 0.859375 -0.546875 C 0.859375 -0.25 0.796875 -0.25 0.34375 -0.25 L 0.34375 0 C 0.59375 -0.015625 0.859375 -0.03125 1.109375 -0.03125 C 1.359375 -0.03125 1.625 -0.015625 1.875 0 L 1.875 -0.25 C 1.421875 -0.25 1.359375 -0.25 1.359375 -0.546875 L 1.359375 -1.203125 L 1.859375 -1.59375 L 2.609375 -0.65625 C 2.6875 -0.5625 2.78125 -0.46875 2.78125 -0.375 C 2.78125 -0.265625 2.65625 -0.25 2.578125 -0.25 L 2.578125 0 C 2.671875 0 3.15625 -0.03125 3.359375 -0.03125 C 3.5625 -0.03125 3.765625 -0.015625 3.96875 0 Z M 3.96875 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-10">
|
||||
<path style="stroke:none;" d="M 1.90625 0 L 1.90625 -0.25 C 1.5 -0.25 1.421875 -0.25 1.421875 -0.546875 L 1.421875 -3.0625 L 0.40625 -2.984375 L 0.40625 -2.734375 C 0.84375 -2.734375 0.90625 -2.6875 0.90625 -2.359375 L 0.90625 -0.546875 C 0.90625 -0.25 0.84375 -0.25 0.390625 -0.25 L 0.390625 0 C 0.390625 0 0.890625 -0.03125 1.171875 -0.03125 C 1.40625 -0.03125 1.65625 -0.015625 1.90625 0 Z M 1.515625 -4.171875 C 1.515625 -4.390625 1.34375 -4.578125 1.125 -4.578125 C 0.890625 -4.578125 0.734375 -4.390625 0.734375 -4.1875 C 0.734375 -3.96875 0.90625 -3.78125 1.125 -3.78125 C 1.359375 -3.78125 1.515625 -3.96875 1.515625 -4.171875 Z M 1.515625 -4.171875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-11">
|
||||
<path style="stroke:none;" d="M 4.09375 0 L 4.09375 -0.25 C 3.640625 -0.25 3.578125 -0.25 3.578125 -0.546875 L 3.578125 -2.109375 C 3.578125 -2.703125 3.28125 -3.0625 2.53125 -3.0625 C 1.96875 -3.0625 1.59375 -2.75 1.40625 -2.390625 L 1.390625 -2.390625 L 1.390625 -3.0625 L 0.375 -2.984375 L 0.375 -2.734375 C 0.84375 -2.734375 0.890625 -2.6875 0.890625 -2.34375 L 0.890625 -0.546875 C 0.890625 -0.25 0.828125 -0.25 0.375 -0.25 L 0.375 0 C 0.375 0 0.875 -0.03125 1.171875 -0.03125 C 1.421875 -0.03125 1.90625 0 1.96875 0 L 1.96875 -0.25 C 1.515625 -0.25 1.4375 -0.25 1.4375 -0.546875 L 1.4375 -1.796875 C 1.4375 -2.53125 2.015625 -2.859375 2.484375 -2.859375 C 2.96875 -2.859375 3.03125 -2.484375 3.03125 -2.125 L 3.03125 -0.546875 C 3.03125 -0.25 2.953125 -0.25 2.5 -0.25 L 2.5 0 C 2.5 0 3 -0.03125 3.296875 -0.03125 C 3.546875 -0.03125 4.03125 0 4.09375 0 Z M 4.09375 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-12">
|
||||
<path style="stroke:none;" d="M 3.78125 -2.78125 C 3.78125 -2.9375 3.65625 -3.125 3.375 -3.125 C 3.265625 -3.125 2.890625 -3.109375 2.5625 -2.8125 C 2.359375 -2.96875 2.0625 -3.0625 1.765625 -3.0625 C 1.046875 -3.0625 0.53125 -2.578125 0.53125 -2.046875 C 0.53125 -1.765625 0.671875 -1.515625 0.859375 -1.34375 C 0.8125 -1.28125 0.65625 -1.046875 0.65625 -0.78125 C 0.65625 -0.6875 0.671875 -0.359375 0.9375 -0.15625 C 0.625 -0.0625 0.265625 0.171875 0.265625 0.53125 C 0.265625 1.046875 1.03125 1.421875 1.96875 1.421875 C 2.84375 1.421875 3.671875 1.078125 3.671875 0.515625 C 3.671875 0.3125 3.59375 -0.0625 3.203125 -0.265625 C 2.796875 -0.484375 2.390625 -0.484375 1.71875 -0.484375 C 1.5625 -0.484375 1.3125 -0.484375 1.25 -0.5 C 1.03125 -0.546875 0.90625 -0.75 0.90625 -0.953125 C 0.90625 -1.125 0.953125 -1.171875 1 -1.234375 C 1.109375 -1.171875 1.359375 -1.015625 1.75 -1.015625 C 2.46875 -1.015625 2.984375 -1.5 2.984375 -2.046875 C 2.984375 -2.3125 2.859375 -2.53125 2.703125 -2.703125 C 3.015625 -2.921875 3.28125 -2.9375 3.40625 -2.9375 C 3.375 -2.90625 3.34375 -2.875 3.34375 -2.765625 C 3.34375 -2.625 3.4375 -2.546875 3.5625 -2.546875 C 3.65625 -2.546875 3.78125 -2.609375 3.78125 -2.78125 Z M 2.4375 -2.046875 C 2.4375 -1.921875 2.4375 -1.65625 2.296875 -1.46875 C 2.203125 -1.359375 2.015625 -1.234375 1.765625 -1.234375 C 1.078125 -1.234375 1.078125 -1.890625 1.078125 -2.046875 C 1.078125 -2.15625 1.078125 -2.421875 1.21875 -2.609375 C 1.3125 -2.71875 1.5 -2.84375 1.75 -2.84375 C 2.4375 -2.84375 2.4375 -2.1875 2.4375 -2.046875 Z M 3.25 0.53125 C 3.25 0.890625 2.703125 1.21875 1.96875 1.21875 C 1.234375 1.21875 0.6875 0.890625 0.6875 0.53125 C 0.6875 0.28125 0.921875 -0.015625 1.359375 -0.015625 L 1.765625 -0.015625 C 2.375 -0.015625 3.25 -0.015625 3.25 0.53125 Z M 3.25 0.53125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-13">
|
||||
<path style="stroke:none;" d="M 5.46875 -2.328125 C 5.46875 -3.65625 4.421875 -4.734375 3.140625 -4.734375 L 0.40625 -4.734375 L 0.40625 -4.484375 L 0.5625 -4.484375 C 1.109375 -4.484375 1.109375 -4.421875 1.109375 -4.171875 L 1.109375 -0.5625 C 1.109375 -0.328125 1.109375 -0.25 0.5625 -0.25 L 0.40625 -0.25 L 0.40625 0 L 3.140625 0 C 4.40625 0 5.46875 -1.03125 5.46875 -2.328125 Z M 4.765625 -2.328125 C 4.765625 -1.53125 4.5625 -1.109375 4.3125 -0.8125 C 4 -0.46875 3.5 -0.25 2.953125 -0.25 L 2.078125 -0.25 C 1.75 -0.25 1.75 -0.3125 1.75 -0.515625 L 1.75 -4.21875 C 1.75 -4.4375 1.75 -4.484375 2.078125 -4.484375 L 2.9375 -4.484375 C 3.53125 -4.484375 4.046875 -4.25 4.359375 -3.84375 C 4.640625 -3.46875 4.765625 -2.9375 4.765625 -2.328125 Z M 4.765625 -2.328125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-14">
|
||||
<path style="stroke:none;" d="M 2.828125 -0.90625 C 2.828125 -1.171875 2.703125 -1.375 2.53125 -1.546875 C 2.265625 -1.796875 1.9375 -1.84375 1.703125 -1.890625 C 1.140625 -1.984375 0.6875 -2.0625 0.6875 -2.4375 C 0.6875 -2.65625 0.875 -2.921875 1.546875 -2.921875 C 2.34375 -2.921875 2.375 -2.359375 2.390625 -2.171875 C 2.40625 -2.09375 2.484375 -2.09375 2.515625 -2.09375 C 2.625 -2.09375 2.625 -2.140625 2.625 -2.265625 L 2.625 -2.90625 C 2.625 -3.03125 2.625 -3.09375 2.53125 -3.09375 C 2.5 -3.09375 2.484375 -3.09375 2.390625 -3.015625 C 2.375 -3 2.3125 -2.9375 2.265625 -2.90625 C 2.0625 -3.046875 1.796875 -3.09375 1.546875 -3.09375 C 0.546875 -3.09375 0.3125 -2.578125 0.3125 -2.234375 C 0.3125 -2 0.40625 -1.828125 0.578125 -1.6875 C 0.84375 -1.453125 1.109375 -1.40625 1.53125 -1.34375 C 1.875 -1.28125 2.4375 -1.171875 2.4375 -0.71875 C 2.4375 -0.4375 2.25 -0.125 1.59375 -0.125 C 0.921875 -0.125 0.6875 -0.5625 0.5625 -1.03125 C 0.53125 -1.125 0.53125 -1.15625 0.4375 -1.15625 C 0.3125 -1.15625 0.3125 -1.109375 0.3125 -0.96875 L 0.3125 -0.109375 C 0.3125 0 0.3125 0.0625 0.40625 0.0625 C 0.46875 0.0625 0.609375 -0.078125 0.75 -0.234375 C 1.046875 0.0625 1.421875 0.0625 1.59375 0.0625 C 2.484375 0.0625 2.828125 -0.421875 2.828125 -0.90625 Z M 2.828125 -0.90625 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-15">
|
||||
<path style="stroke:none;" d="M 1.6875 0.3125 L 1.6875 -3.0625 L 0.59375 -2.984375 L 0.59375 -2.734375 C 1.109375 -2.734375 1.171875 -2.6875 1.171875 -2.34375 L 1.171875 0.328125 C 1.171875 0.59375 1.109375 1.21875 0.640625 1.21875 C 0.625 1.21875 0.453125 1.21875 0.296875 1.15625 C 0.3125 1.140625 0.46875 1.0625 0.46875 0.859375 C 0.46875 0.671875 0.328125 0.53125 0.140625 0.53125 C -0.0625 0.53125 -0.1875 0.671875 -0.1875 0.859375 C -0.1875 1.234375 0.234375 1.421875 0.65625 1.421875 C 1.21875 1.421875 1.6875 0.984375 1.6875 0.3125 Z M 1.6875 -4.171875 C 1.6875 -4.390625 1.515625 -4.578125 1.296875 -4.578125 C 1.046875 -4.578125 0.890625 -4.390625 0.890625 -4.1875 C 0.890625 -3.96875 1.0625 -3.78125 1.296875 -3.78125 C 1.53125 -3.78125 1.6875 -3.96875 1.6875 -4.171875 Z M 1.6875 -4.171875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-16">
|
||||
<path style="stroke:none;" d="M 3.671875 -1.484375 C 3.671875 -2.34375 2.921875 -3.09375 1.96875 -3.09375 C 1.015625 -3.09375 0.265625 -2.34375 0.265625 -1.484375 C 0.265625 -0.625 1.03125 0.0625 1.96875 0.0625 C 2.90625 0.0625 3.671875 -0.625 3.671875 -1.484375 Z M 3.03125 -1.546875 C 3.03125 -1.203125 3.015625 -0.84375 2.8125 -0.5625 C 2.625 -0.296875 2.3125 -0.15625 1.96875 -0.15625 C 1.71875 -0.15625 1.34375 -0.234375 1.109375 -0.578125 C 0.921875 -0.859375 0.90625 -1.21875 0.90625 -1.546875 C 0.90625 -1.84375 0.90625 -2.25 1.15625 -2.546875 C 1.328125 -2.75 1.609375 -2.90625 1.96875 -2.90625 C 2.375 -2.90625 2.671875 -2.703125 2.828125 -2.484375 C 3.015625 -2.21875 3.03125 -1.875 3.03125 -1.546875 Z M 3.03125 -1.546875 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-17">
|
||||
<path style="stroke:none;" d="M 5.453125 -4.484375 L 5.453125 -4.734375 C 5.171875 -4.71875 4.890625 -4.703125 4.609375 -4.703125 C 4.328125 -4.703125 4.046875 -4.71875 3.765625 -4.734375 L 3.765625 -4.484375 C 4.46875 -4.484375 4.46875 -4.171875 4.46875 -3.984375 L 4.46875 -1.046875 L 1.8125 -4.640625 C 1.734375 -4.734375 1.734375 -4.734375 1.59375 -4.734375 L 0.390625 -4.734375 L 0.390625 -4.484375 L 0.59375 -4.484375 C 0.890625 -4.484375 1.0625 -4.453125 1.109375 -4.453125 L 1.109375 -0.75 C 1.109375 -0.5625 1.109375 -0.25 0.390625 -0.25 L 0.390625 0 C 0.671875 -0.015625 0.953125 -0.03125 1.234375 -0.03125 C 1.515625 -0.03125 1.796875 -0.015625 2.078125 0 L 2.078125 -0.25 C 1.359375 -0.25 1.359375 -0.5625 1.359375 -0.75 L 1.359375 -4.25 L 4.453125 -0.109375 C 4.515625 0 4.515625 0 4.609375 0 C 4.734375 0 4.734375 -0.0625 4.734375 -0.1875 L 4.734375 -3.984375 C 4.734375 -4.171875 4.734375 -4.484375 5.453125 -4.484375 Z M 5.453125 -4.484375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-18">
|
||||
<path style="stroke:none;" d="M 4.09375 0 L 4.09375 -0.25 C 3.625 -0.25 3.578125 -0.296875 3.578125 -0.640625 L 3.578125 -3.0625 L 2.5 -2.984375 L 2.5 -2.734375 C 2.96875 -2.734375 3.03125 -2.6875 3.03125 -2.34375 L 3.03125 -1.15625 C 3.03125 -0.546875 2.625 -0.125 2.109375 -0.125 C 1.46875 -0.125 1.4375 -0.421875 1.4375 -0.78125 L 1.4375 -3.0625 L 0.375 -2.984375 L 0.375 -2.734375 C 0.890625 -2.734375 0.890625 -2.71875 0.890625 -2.09375 L 0.890625 -1.046875 C 0.890625 -0.578125 0.890625 0.0625 2.046875 0.0625 C 2.203125 0.0625 2.71875 0.0625 3.046875 -0.515625 L 3.046875 0.0625 Z M 4.09375 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-19">
|
||||
<path style="stroke:none;" d="M 5.046875 -1.265625 C 5.046875 -1.875 4.4375 -2.390625 3.59375 -2.484375 C 4.28125 -2.609375 4.84375 -3.03125 4.84375 -3.5625 C 4.84375 -4.1875 4.109375 -4.734375 3.15625 -4.734375 L 0.421875 -4.734375 L 0.421875 -4.484375 L 0.578125 -4.484375 C 1.109375 -4.484375 1.125 -4.421875 1.125 -4.171875 L 1.125 -0.5625 C 1.125 -0.328125 1.109375 -0.25 0.578125 -0.25 L 0.421875 -0.25 L 0.421875 0 L 3.359375 0 C 4.34375 0 5.046875 -0.609375 5.046875 -1.265625 Z M 4.15625 -3.5625 C 4.15625 -3.0625 3.6875 -2.5625 2.890625 -2.5625 L 1.734375 -2.5625 L 1.734375 -4.21875 C 1.734375 -4.4375 1.75 -4.484375 2.078125 -4.484375 L 3.09375 -4.484375 C 3.78125 -4.484375 4.15625 -4 4.15625 -3.5625 Z M 4.34375 -1.28125 C 4.34375 -0.765625 3.875 -0.25 3.109375 -0.25 L 2.078125 -0.25 C 1.75 -0.25 1.734375 -0.3125 1.734375 -0.515625 L 1.734375 -2.359375 L 3.21875 -2.359375 C 3.953125 -2.359375 4.34375 -1.765625 4.34375 -1.28125 Z M 4.34375 -1.28125 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-20">
|
||||
<path style="stroke:none;" d="M 4.03125 0 L 4.03125 -0.25 C 3.5625 -0.25 3.515625 -0.296875 3.515625 -0.640625 L 3.515625 -4.8125 L 2.46875 -4.734375 L 2.46875 -4.484375 C 2.9375 -4.484375 2.984375 -4.4375 2.984375 -4.09375 L 2.984375 -2.65625 C 2.734375 -2.90625 2.40625 -3.0625 2.015625 -3.0625 C 1.09375 -3.0625 0.3125 -2.359375 0.3125 -1.484375 C 0.3125 -0.625 1.046875 0.0625 1.9375 0.0625 C 2.5 0.0625 2.84375 -0.234375 2.96875 -0.359375 L 2.96875 0.0625 Z M 2.96875 -0.734375 C 2.78125 -0.40625 2.421875 -0.125 1.984375 -0.125 C 1.59375 -0.125 1.3125 -0.359375 1.171875 -0.5625 C 1.03125 -0.765625 0.953125 -1.046875 0.953125 -1.484375 C 0.953125 -1.640625 0.953125 -2.171875 1.234375 -2.484375 C 1.515625 -2.796875 1.859375 -2.859375 2.046875 -2.859375 C 2.390625 -2.859375 2.6875 -2.71875 2.875 -2.46875 C 2.96875 -2.359375 2.96875 -2.34375 2.96875 -2.21875 Z M 2.96875 -0.734375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-21">
|
||||
<path style="stroke:none;" d="M 5.4375 -2.734375 L 5.4375 -2.984375 C 5.25 -2.96875 5.140625 -2.96875 4.9375 -2.96875 C 4.734375 -2.96875 4.46875 -2.96875 4.265625 -2.984375 L 4.265625 -2.734375 C 4.5 -2.734375 4.625 -2.609375 4.625 -2.4375 C 4.625 -2.375 4.625 -2.359375 4.578125 -2.265625 L 3.90625 -0.546875 L 3.15625 -2.4375 C 3.140625 -2.46875 3.125 -2.53125 3.125 -2.5625 C 3.125 -2.71875 3.296875 -2.734375 3.5 -2.734375 L 3.5 -2.984375 C 3.25 -2.96875 3 -2.96875 2.75 -2.96875 C 2.546875 -2.96875 2.34375 -2.96875 2.140625 -2.984375 L 2.140625 -2.734375 C 2.296875 -2.734375 2.4375 -2.734375 2.53125 -2.6875 C 2.625 -2.609375 2.6875 -2.375 2.6875 -2.375 C 2.6875 -2.375 2.671875 -2.328125 2.65625 -2.296875 L 2.015625 -0.640625 L 1.3125 -2.4375 C 1.265625 -2.53125 1.265625 -2.546875 1.265625 -2.5625 C 1.265625 -2.734375 1.515625 -2.734375 1.640625 -2.734375 L 1.640625 -2.984375 C 1.640625 -2.984375 1.140625 -2.96875 0.859375 -2.96875 C 0.640625 -2.96875 0.421875 -2.96875 0.203125 -2.984375 L 0.203125 -2.734375 C 0.484375 -2.734375 0.625 -2.734375 0.703125 -2.546875 L 1.671875 -0.09375 C 1.71875 0.015625 1.734375 0.0625 1.859375 0.0625 C 1.984375 0.0625 2 0.015625 2.046875 -0.078125 L 2.828125 -2.0625 L 3.59375 -0.09375 C 3.640625 0 3.65625 0.0625 3.78125 0.0625 C 3.90625 0.0625 3.9375 0.015625 3.96875 -0.09375 L 4.859375 -2.3125 C 5 -2.65625 5.21875 -2.734375 5.4375 -2.734375 Z M 5.4375 -2.734375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-22">
|
||||
<path style="stroke:none;" d="M 4.09375 0 L 4.09375 -0.25 C 3.640625 -0.25 3.578125 -0.25 3.578125 -0.546875 L 3.578125 -2.109375 C 3.578125 -2.703125 3.28125 -3.0625 2.53125 -3.0625 C 1.921875 -3.0625 1.578125 -2.6875 1.421875 -2.421875 L 1.421875 -4.8125 L 0.375 -4.734375 L 0.375 -4.484375 C 0.84375 -4.484375 0.890625 -4.4375 0.890625 -4.09375 L 0.890625 -0.546875 C 0.890625 -0.25 0.828125 -0.25 0.375 -0.25 L 0.375 0 C 0.375 0 0.875 -0.03125 1.171875 -0.03125 C 1.421875 -0.03125 1.90625 0 1.96875 0 L 1.96875 -0.25 C 1.515625 -0.25 1.4375 -0.25 1.4375 -0.546875 L 1.4375 -1.796875 C 1.4375 -2.53125 2.015625 -2.859375 2.484375 -2.859375 C 2.96875 -2.859375 3.03125 -2.484375 3.03125 -2.125 L 3.03125 -0.546875 C 3.03125 -0.25 2.953125 -0.25 2.5 -0.25 L 2.5 0 C 2.5 0 3 -0.03125 3.296875 -0.03125 C 3.546875 -0.03125 4.03125 0 4.09375 0 Z M 4.09375 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-23">
|
||||
<path style="stroke:none;" d="M 4.828125 -3.4375 C 4.828125 -4.125 4.0625 -4.734375 3.03125 -4.734375 L 0.40625 -4.734375 L 0.40625 -4.484375 L 0.5625 -4.484375 C 1.109375 -4.484375 1.109375 -4.421875 1.109375 -4.171875 L 1.109375 -0.5625 C 1.109375 -0.328125 1.109375 -0.25 0.5625 -0.25 L 0.40625 -0.25 L 0.40625 0 L 1.4375 -0.03125 L 2.484375 0 L 2.484375 -0.25 L 2.328125 -0.25 C 1.796875 -0.25 1.78125 -0.3125 1.78125 -0.5625 L 1.78125 -2.15625 L 3.03125 -2.15625 C 4.046875 -2.15625 4.828125 -2.734375 4.828125 -3.4375 Z M 4.09375 -3.4375 C 4.09375 -3.125 4.09375 -2.375 2.859375 -2.375 L 1.75 -2.375 L 1.75 -4.21875 C 1.75 -4.4375 1.75 -4.484375 2.078125 -4.484375 L 2.859375 -4.484375 C 4.03125 -4.484375 4.09375 -3.84375 4.09375 -3.4375 Z M 4.09375 -3.4375 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph4-24">
|
||||
<path style="stroke:none;" d="M 6.6875 0 L 6.6875 -0.25 L 6.53125 -0.25 C 6 -0.25 5.984375 -0.3125 5.984375 -0.5625 L 5.984375 -4.171875 C 5.984375 -4.40625 6 -4.484375 6.53125 -4.484375 L 6.6875 -4.484375 L 6.6875 -4.734375 L 5.484375 -4.734375 C 5.34375 -4.734375 5.28125 -4.734375 5.234375 -4.59375 L 3.5625 -0.671875 L 1.90625 -4.578125 C 1.84375 -4.734375 1.796875 -4.734375 1.640625 -4.734375 L 0.4375 -4.734375 L 0.4375 -4.484375 L 0.59375 -4.484375 C 1.125 -4.484375 1.140625 -4.421875 1.140625 -4.171875 L 1.140625 -0.75 C 1.140625 -0.5625 1.140625 -0.25 0.4375 -0.25 L 0.4375 0 C 0.71875 -0.015625 0.984375 -0.03125 1.28125 -0.03125 C 1.5625 -0.03125 1.84375 -0.015625 2.125 0 L 2.125 -0.25 C 1.40625 -0.25 1.40625 -0.5625 1.40625 -0.75 L 1.40625 -4.40625 L 1.421875 -4.40625 L 3.21875 -0.15625 C 3.25 -0.078125 3.28125 0 3.390625 0 C 3.4375 0 3.5 -0.015625 3.5625 -0.140625 L 5.390625 -4.484375 L 5.390625 -0.5625 C 5.390625 -0.328125 5.390625 -0.25 4.84375 -0.25 L 4.6875 -0.25 L 4.6875 0 L 5.6875 -0.03125 Z M 6.6875 0 "/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph5-0">
|
||||
<path style="stroke:none;" d=""/>
|
||||
</symbol>
|
||||
<symbol overflow="visible" id="glyph5-1">
|
||||
<path style="stroke:none;" d="M 3.4375 -0.71875 C 3.4375 -0.75 3.375 -0.828125 3.3125 -0.828125 C 3.28125 -0.828125 3.265625 -0.8125 3.203125 -0.765625 C 2.65625 -0.125 1.859375 -0.125 1.734375 -0.125 C 1.234375 -0.125 1 -0.46875 1 -0.890625 C 1 -1.09375 1.109375 -1.859375 1.46875 -2.328125 C 1.734375 -2.671875 2.09375 -2.859375 2.4375 -2.859375 C 2.53125 -2.859375 2.859375 -2.84375 3.03125 -2.65625 C 2.78125 -2.609375 2.6875 -2.421875 2.6875 -2.265625 C 2.6875 -2.078125 2.828125 -2.015625 2.953125 -2.015625 C 3.109375 -2.015625 3.34375 -2.125 3.34375 -2.453125 C 3.34375 -2.921875 2.8125 -3.0625 2.4375 -3.0625 C 1.390625 -3.0625 0.4375 -2.109375 0.4375 -1.140625 C 0.4375 -0.546875 0.84375 0.0625 1.71875 0.0625 C 2.890625 0.0625 3.4375 -0.625 3.4375 -0.71875 Z M 3.4375 -0.71875 "/>
|
||||
</symbol>
|
||||
</g>
|
||||
<clipPath id="clip1">
|
||||
<path d="M 238 105 L 265.675781 105 L 265.675781 138 L 238 138 Z M 238 105 "/>
|
||||
<path d="M 238 105 L 265.34375 105 L 265.34375 138 L 238 138 Z M 238 105 "/>
|
||||
</clipPath>
|
||||
<clipPath id="clip2">
|
||||
<path d="M 238 35 L 265.675781 35 L 265.675781 67 L 238 67 Z M 238 35 "/>
|
||||
<path d="M 238 35 L 265.34375 35 L 265.34375 67 L 238 67 Z M 238 35 "/>
|
||||
</clipPath>
|
||||
<clipPath id="clip3">
|
||||
<path d="M 40 1 L 265.675781 1 L 265.675781 101 L 40 101 Z M 40 1 "/>
|
||||
<path d="M 41 1 L 265.34375 1 L 265.34375 101 L 41 101 Z M 41 1 "/>
|
||||
</clipPath>
|
||||
<clipPath id="clip4">
|
||||
<path d="M 40 128 L 265.675781 128 L 265.675781 173.421875 L 40 173.421875 Z M 40 128 "/>
|
||||
<path d="M 41 128 L 265.34375 128 L 265.34375 173.421875 L 41 173.421875 Z M 41 128 "/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
<g id="surface1">
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M -8.503774 -14.175013 L 213.637021 -14.175013 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 256.644531 121.636719 L 252.222656 119.960938 L 253.691406 121.636719 L 252.222656 123.308594 Z M 256.644531 121.636719 "/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M -8.505271 -14.175013 L 213.635524 -14.175013 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 256.867188 121.636719 L 252.441406 119.960938 L 253.914062 121.636719 L 252.441406 123.308594 Z M 256.867188 121.636719 "/>
|
||||
<g clip-path="url(#clip1)" clip-rule="nonzero">
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.052486 -0.00162309 L 1.610533 1.681767 L 3.085952 -0.00162309 L 1.610533 -1.681089 Z M 6.052486 -0.00162309 " transform="matrix(0.99548,0,0,-0.99548,250.619402,121.635103)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.054913 -0.00162309 L 1.609037 1.681767 L 3.08838 -0.00162309 L 1.609037 -1.681089 Z M 6.054913 -0.00162309 " transform="matrix(0.99548,0,0,-0.99548,250.839642,121.635103)"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-1" x="254.790185" y="117.833972"/>
|
||||
<use xlink:href="#glyph0-1" x="255.010425" y="117.833972"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M -0.000495339 -4.631878 L -0.000495339 -65.198608 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.053947 0.000495339 L 1.60807 1.683886 L 3.087413 0.000495339 L 1.60807 -1.682895 Z M 6.053947 0.000495339 " transform="matrix(0,-0.99548,-0.99548,0,40.773931,114.964083)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.00193188 -4.631878 L 0.00193188 -65.198608 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.053947 -0.00193188 L 1.60807 1.681458 L 3.087413 -0.00193188 L 1.60807 -1.681398 Z M 6.053947 -0.00193188 " transform="matrix(0,-0.99548,-0.99548,0,40.994171,114.964083)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph1-1" x="4.166149" y="110.005517"/>
|
||||
<use xlink:href="#glyph1-1" x="4.386389" y="110.005517"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-2" x="11.328628" y="110.005517"/>
|
||||
<use xlink:href="#glyph0-2" x="11.548868" y="110.005517"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-1" x="18.077982" y="110.005517"/>
|
||||
<use xlink:href="#glyph2-1" x="18.298222" y="110.005517"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-3" x="21.934472" y="110.005517"/>
|
||||
<use xlink:href="#glyph0-3" x="22.154712" y="110.005517"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-1" x="26.583828" y="110.005517"/>
|
||||
<use xlink:href="#glyph0-1" x="26.804068" y="110.005517"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-2" x="33.115703" y="110.005517"/>
|
||||
<use xlink:href="#glyph2-2" x="33.335943" y="110.005517"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M -8.503774 56.692182 L 213.637021 56.692182 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 256.644531 51.089844 L 252.222656 49.414062 L 253.691406 51.089844 L 252.222656 52.765625 Z M 256.644531 51.089844 "/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M -8.505271 56.692182 L 213.635524 56.692182 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 256.867188 51.089844 L 252.441406 49.414062 L 253.914062 51.089844 L 252.441406 52.765625 Z M 256.867188 51.089844 "/>
|
||||
<g clip-path="url(#clip2)" clip-rule="nonzero">
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.052486 -0.00143837 L 1.610533 1.681952 L 3.085952 -0.00143837 L 1.610533 -1.684829 Z M 6.052486 -0.00143837 " transform="matrix(0.99548,0,0,-0.99548,250.619402,51.088412)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.054913 -0.00143837 L 1.609037 1.681952 L 3.08838 -0.00143837 L 1.609037 -1.684829 Z M 6.054913 -0.00143837 " transform="matrix(0.99548,0,0,-0.99548,250.839642,51.088412)"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-1" x="254.790185" y="47.287291"/>
|
||||
<use xlink:href="#glyph0-1" x="255.010425" y="47.287291"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M -0.000495339 14.171865 L -0.000495339 94.578271 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.054199 0.000495339 L 1.608323 1.683886 L 3.087666 0.000495339 L 1.608323 -1.682895 Z M 6.054199 0.000495339 " transform="matrix(0,-0.99548,-0.99548,0,40.773931,16.198709)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 0.00193188 14.171865 L 0.00193188 94.578271 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.054199 -0.00193188 L 1.608323 1.681458 L 3.087666 -0.00193188 L 1.608323 -1.681398 Z M 6.054199 -0.00193188 " transform="matrix(0,-0.99548,-0.99548,0,40.994171,16.198709)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph3-1" x="5.818646" y="11.24096"/>
|
||||
<use xlink:href="#glyph3-1" x="6.038886" y="11.24096"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-2" x="8.573139" y="11.24096"/>
|
||||
<use xlink:href="#glyph0-2" x="8.793379" y="11.24096"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-1" x="15.322493" y="11.24096"/>
|
||||
<use xlink:href="#glyph2-1" x="15.542733" y="11.24096"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-3" x="19.179978" y="11.24096"/>
|
||||
<use xlink:href="#glyph0-3" x="19.400218" y="11.24096"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-1" x="23.829335" y="11.24096"/>
|
||||
<use xlink:href="#glyph0-1" x="24.049575" y="11.24096"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-2" x="30.36121" y="11.24096"/>
|
||||
<use xlink:href="#glyph2-2" x="30.58145" y="11.24096"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph3-1" x="34.217699" y="11.24096"/>
|
||||
<use xlink:href="#glyph3-1" x="34.437939" y="11.24096"/>
|
||||
</g>
|
||||
<g clip-path="url(#clip3)" clip-rule="nonzero">
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.172944 92.125779 L 56.69326 70.865621 L 170.080772 42.518743 L 212.601089 21.258584 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.171447 92.125779 L 56.691764 70.865621 L 170.079275 42.518743 L 212.599592 21.258584 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph3-2" x="69.710543" y="21.770152"/>
|
||||
<use xlink:href="#glyph3-2" x="69.930783" y="21.770152"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-3" x="77.424518" y="21.770152"/>
|
||||
<use xlink:href="#glyph2-3" x="77.644758" y="21.770152"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph3-2" x="147.311196" y="46.461043"/>
|
||||
<use xlink:href="#glyph3-2" x="147.531436" y="46.461043"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-4" x="155.02517" y="46.461043"/>
|
||||
<use xlink:href="#glyph2-4" x="155.24541" y="46.461043"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph3-2" x="214.77388" y="85.827299"/>
|
||||
<use xlink:href="#glyph3-2" x="214.99412" y="85.827299"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-3" x="222.487854" y="85.827299"/>
|
||||
<use xlink:href="#glyph2-3" x="222.708094" y="85.827299"/>
|
||||
</g>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,50%,50%);fill-opacity:1;" d="M 54.882812 21.457031 L 97.210938 42.621094 L 54.882812 42.621094 Z M 54.882812 21.457031 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,50%,50%);fill-opacity:1;" d="M 210.085938 59.554688 L 252.414062 80.71875 L 252.414062 59.554688 Z M 210.085938 59.554688 "/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 35.433102 60.565156 L 35.433102 42.518743 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.053251 0.000397979 L 1.607374 1.683788 L 3.086717 0.000397979 L 1.607374 -1.682992 Z M 6.053251 0.000397979 " transform="matrix(0,-0.99548,-0.99548,0,76.047271,50.061047)"/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,50%,50%);fill-opacity:1;" d="M 55.101562 21.457031 L 97.429688 42.621094 L 55.101562 42.621094 Z M 55.101562 21.457031 "/>
|
||||
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,50%,50%);fill-opacity:1;" d="M 210.304688 59.554688 L 252.632812 80.71875 L 252.632812 59.554688 Z M 210.304688 59.554688 "/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 35.431605 60.565156 L 35.431605 42.518743 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.053251 0.00189474 L 1.607374 1.681361 L 3.086717 0.00189474 L 1.607374 -1.681495 Z M 6.053251 0.00189474 " transform="matrix(0,-0.99548,-0.99548,0,76.267511,50.061047)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-1" x="53.18458" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-2" x="58.942505" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-3" x="62.468489" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-4" x="64.927444" y="73.781991"/>
|
||||
<use xlink:href="#glyph2-5" x="55.384829" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-6" x="62.685152" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-7" x="67.093511" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-6" x="70.124321" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-8" x="74.53268" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-6" x="78.417392" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-9" x="82.825751" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-10" x="88.335953" y="75.831684"/>
|
||||
<use xlink:href="#glyph2-6" x="92.744312" y="75.831684"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-5" x="70.699254" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-6" x="73.798287" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-7" x="76.89732" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-8" x="80.850254" y="73.781991"/>
|
||||
<use xlink:href="#glyph2-11" x="57.382758" y="87.732648"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-9" x="84.161026" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-10" x="88.327782" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-11" x="90.572914" y="73.781991"/>
|
||||
<use xlink:href="#glyph4-12" x="94.953492" y="73.781991"/>
|
||||
<use xlink:href="#glyph2-8" x="63.722068" y="87.732648"/>
|
||||
<use xlink:href="#glyph2-12" x="67.60678" y="87.732648"/>
|
||||
<use xlink:href="#glyph2-10" x="72.565564" y="87.732648"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-13" x="51.025384" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-10" x="56.996437" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-14" x="59.24157" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-5" x="62.383645" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-4" x="65.482678" y="85.682955"/>
|
||||
<use xlink:href="#glyph2-13" x="76.696232" y="87.732648"/>
|
||||
<use xlink:href="#glyph2-14" x="81.930725" y="87.732648"/>
|
||||
<use xlink:href="#glyph2-9" x="84.685825" y="87.732648"/>
|
||||
<use xlink:href="#glyph2-15" x="90.196027" y="87.732648"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 191.339434 52.823131 L 191.339434 70.865621 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.052174 -0.00152636 L 1.610221 1.681864 L 3.08564 -0.00152636 L 1.610221 -1.684917 Z M 6.052174 -0.00152636 " transform="matrix(0,0.99548,0.99548,0,231.470269,52.115807)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph2-16" x="219.732605" y="19.349145"/>
|
||||
<use xlink:href="#glyph2-17" x="227.170781" y="19.349145"/>
|
||||
<use xlink:href="#glyph2-14" x="232.129566" y="19.349145"/>
|
||||
<use xlink:href="#glyph2-18" x="234.884667" y="19.349145"/>
|
||||
<use xlink:href="#glyph2-6" x="238.797148" y="19.349145"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-6" x="71.254489" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-2" x="74.353522" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-15" x="77.879505" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-2" x="80.33846" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-8" x="83.864443" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-5" x="87.390426" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-10" x="90.48946" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-16" x="92.734592" y="85.682955"/>
|
||||
<use xlink:href="#glyph4-11" x="96.687526" y="85.682955"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 191.34093 52.823131 L 191.34093 70.865621 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.052174 -0.0000295946 L 1.610221 1.683361 L 3.08564 -0.0000295946 L 1.610221 -1.68342 Z M 6.052174 -0.0000295946 " transform="matrix(0,0.99548,0.99548,0,231.250029,52.115807)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-17" x="200.623132" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-16" x="206.477555" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-10" x="210.430488" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-14" x="212.675621" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-2" x="215.817696" y="33.178353"/>
|
||||
<use xlink:href="#glyph2-5" x="211.150572" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-6" x="218.450894" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-19" x="222.859254" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-6" x="225.890063" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-10" x="230.298422" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-20" x="234.706782" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-14" x="238.563724" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-17" x="241.318825" y="31.250108"/>
|
||||
<use xlink:href="#glyph2-9" x="246.277609" y="31.250108"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-7" x="222.016457" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-5" x="225.96939" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-5" x="229.068423" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-2" x="232.167456" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-11" x="235.69344" y="33.178353"/>
|
||||
<use xlink:href="#glyph0-1" x="148.760853" y="59.160381"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-18" x="239.858807" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-7" x="244.239384" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-5" x="248.192318" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-10" x="251.291351" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-16" x="253.536484" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-11" x="257.489417" y="33.178353"/>
|
||||
<use xlink:href="#glyph4-1" x="154.933825" y="60.648624"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 113.385519 38.63792 L 113.385519 31.931827 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.051435 0.00172055 L 1.609482 1.681187 L 3.088825 0.00172055 L 1.609482 -1.68167 Z M 6.051435 0.00172055 " transform="matrix(0,-0.99548,-0.99548,0,153.8689,71.887364)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-1" x="148.540613" y="59.160381"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph5-1" x="154.713585" y="60.648624"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 113.387016 38.63792 L 113.387016 31.931827 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.051435 0.000223787 L 1.609482 1.683614 L 3.088825 0.000223787 L 1.609482 -1.683166 Z M 6.051435 0.000223787 " transform="matrix(0,-0.99548,-0.99548,0,153.64866,71.887364)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-19" x="134.635749" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-7" x="140.179852" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-11" x="144.132786" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-20" x="148.513363" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-21" x="152.893941" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-10" x="158.555369" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-20" x="160.800502" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-5" x="165.18108" y="84.320142"/>
|
||||
<use xlink:href="#glyph4-22" x="168.280113" y="84.320142"/>
|
||||
<use xlink:href="#glyph2-21" x="129.969178" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-12" x="136.993792" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-9" x="141.952576" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-22" x="147.462778" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-23" x="152.972979" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-14" x="160.135447" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-22" x="162.890548" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-20" x="168.400749" y="86.369836"/>
|
||||
<use xlink:href="#glyph2-24" x="172.257692" y="86.369836"/>
|
||||
</g>
|
||||
<g clip-path="url(#clip4)" clip-rule="nonzero">
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.172944 -56.69533 L 56.69326 -56.69533 C 80.366671 -56.69533 89.713606 -35.435172 113.387016 -35.435172 C 137.060426 -35.435172 146.407362 -56.69533 170.080772 -56.69533 L 212.601089 -56.69533 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.172944 -56.69533 L 56.69326 -56.69533 C 80.366671 -56.69533 89.713606 -35.435172 113.387016 -35.435172 C 137.060426 -35.435172 146.407362 -56.69533 170.080772 -56.69533 L 212.601089 -56.69533 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.171447 -56.69533 L 56.691764 -56.69533 C 80.369098 -56.69533 89.712109 -35.435172 113.385519 -35.435172 C 137.062853 -35.435172 146.405865 -56.69533 170.079275 -56.69533 L 212.599592 -56.69533 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 14.171447 -56.69533 L 56.691764 -56.69533 C 80.369098 -56.69533 89.712109 -35.435172 113.385519 -35.435172 C 137.062853 -35.435172 146.405865 -56.69533 170.079275 -56.69533 L 212.599592 -56.69533 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:2.98883,2.98883;stroke-miterlimit:10;" d="M 113.387016 -56.69533 L 113.387016 -40.065475 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.053829 0.000223787 L 1.607953 1.683614 L 3.087296 0.000223787 L 1.607953 -1.683166 Z M 6.053829 0.000223787 " transform="matrix(0,-0.99548,-0.99548,0,153.64866,150.237404)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:2.98883,2.98883;stroke-miterlimit:10;" d="M 113.385519 -56.69533 L 113.385519 -40.065475 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<path style="fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 6.053829 0.00172055 L 1.607953 1.681187 L 3.087296 0.00172055 L 1.607953 -1.68167 Z M 6.053829 0.00172055 " transform="matrix(0,-0.99548,-0.99548,0,153.8689,150.237404)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-23" x="129.761879" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-22" x="135.092854" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-7" x="139.473432" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-14" x="143.426365" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-2" x="146.568441" y="137.647011"/>
|
||||
<use xlink:href="#glyph2-25" x="123.866885" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-24" x="130.616783" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-12" x="136.126984" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-18" x="141.085769" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-6" x="144.998249" y="137.068637"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph4-24" x="152.767201" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-7" x="159.902475" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-6" x="163.855408" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-12" x="166.954441" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-10" x="170.907375" y="137.647011"/>
|
||||
<use xlink:href="#glyph4-11" x="173.152507" y="137.647011"/>
|
||||
<use xlink:href="#glyph2-26" x="152.709159" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-12" x="161.800595" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-8" x="166.759379" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-15" x="170.644091" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-14" x="175.602876" y="137.068637"/>
|
||||
<use xlink:href="#glyph2-9" x="178.357976" y="137.068637"/>
|
||||
</g>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:2.98883,2.98883;stroke-miterlimit:10;" d="M -0.000495339 -56.69533 L 212.601089 -56.69533 " transform="matrix(0.99548,0,0,-0.99548,40.773931,107.525777)"/>
|
||||
<path style="fill:none;stroke-width:0.99628;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-dasharray:2.98883,2.98883;stroke-miterlimit:10;" d="M 0.00193188 -56.69533 L 212.599592 -56.69533 " transform="matrix(0.99548,0,0,-0.99548,40.994171,107.525777)"/>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph3-2" x="23.249501" y="166.442265"/>
|
||||
<use xlink:href="#glyph3-2" x="23.469741" y="166.442265"/>
|
||||
</g>
|
||||
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
|
||||
<use xlink:href="#glyph0-4" x="30.963475" y="166.442265"/>
|
||||
<use xlink:href="#glyph0-4" x="31.183715" y="166.442265"/>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 46 KiB |
400
ieee.csl
400
ieee.csl
@ -1,400 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<style xmlns="http://purl.org/net/xbiblio/csl" class="in-text" version="1.0" demote-non-dropping-particle="sort-only">
|
||||
<info>
|
||||
<title>IEEE</title>
|
||||
<id>http://www.zotero.org/styles/ieee</id>
|
||||
<link href="http://www.zotero.org/styles/ieee" rel="self"/>
|
||||
<link href="https://ieeeauthorcenter.ieee.org/wp-content/uploads/IEEE-Reference-Guide.pdf" rel="documentation"/>
|
||||
<link href="https://journals.ieeeauthorcenter.ieee.org/your-role-in-article-production/ieee-editorial-style-manual/" rel="documentation"/>
|
||||
<author>
|
||||
<name>Michael Berkowitz</name>
|
||||
<email>mberkowi@gmu.edu</email>
|
||||
</author>
|
||||
<contributor>
|
||||
<name>Julian Onions</name>
|
||||
<email>julian.onions@gmail.com</email>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Rintze Zelle</name>
|
||||
<uri>http://twitter.com/rintzezelle</uri>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Stephen Frank</name>
|
||||
<uri>http://www.zotero.org/sfrank</uri>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Sebastian Karcher</name>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Giuseppe Silano</name>
|
||||
<email>g.silano89@gmail.com</email>
|
||||
<uri>http://giuseppesilano.net</uri>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Patrick O'Brien</name>
|
||||
</contributor>
|
||||
<contributor>
|
||||
<name>Brenton M. Wiernik</name>
|
||||
</contributor>
|
||||
<category citation-format="numeric"/>
|
||||
<category field="engineering"/>
|
||||
<category field="generic-base"/>
|
||||
<summary>IEEE style as per the 2018 guidelines, V 11.12.2018.</summary>
|
||||
<updated>2020-06-15T03:21:46+00:00</updated>
|
||||
<rights license="http://creativecommons.org/licenses/by-sa/3.0/">This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 License</rights>
|
||||
</info>
|
||||
<locale xml:lang="en">
|
||||
<terms>
|
||||
<term name="chapter" form="short">ch.</term>
|
||||
<term name="presented at">presented at the</term>
|
||||
<term name="available at">available</term>
|
||||
</terms>
|
||||
</locale>
|
||||
<!-- Macros -->
|
||||
<macro name="status">
|
||||
<choose>
|
||||
<if variable="page issue volume" match="none">
|
||||
<text variable="status" text-case="capitalize-first" suffix="" font-weight="bold"/>
|
||||
</if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="edition">
|
||||
<choose>
|
||||
<if type="bill book chapter graphic legal_case legislation motion_picture paper-conference report song" match="any">
|
||||
<choose>
|
||||
<if is-numeric="edition">
|
||||
<group delimiter=" ">
|
||||
<number variable="edition" form="ordinal"/>
|
||||
<text term="edition" form="short"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="edition" text-case="capitalize-first" suffix="."/>
|
||||
</else>
|
||||
</choose>
|
||||
</if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="issued">
|
||||
<choose>
|
||||
<if type="article-journal report" match="any">
|
||||
<date variable="issued">
|
||||
<date-part name="month" form="short" suffix=" "/>
|
||||
<date-part name="year" form="long"/>
|
||||
</date>
|
||||
</if>
|
||||
<else-if type="bill book chapter graphic legal_case legislation motion_picture song thesis" match="any">
|
||||
<date variable="issued">
|
||||
<date-part name="year" form="long"/>
|
||||
</date>
|
||||
</else-if>
|
||||
<else-if type="paper-conference" match="any">
|
||||
<date variable="issued">
|
||||
<date-part name="month" form="short"/>
|
||||
<date-part name="year" prefix=" "/>
|
||||
</date>
|
||||
</else-if>
|
||||
<else>
|
||||
<date variable="issued">
|
||||
<date-part name="month" form="short" suffix=" "/>
|
||||
<date-part name="day" form="numeric-leading-zeros" suffix=", "/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="author">
|
||||
<names variable="author">
|
||||
<name and="text" et-al-min="7" et-al-use-first="1" initialize-with=". "/>
|
||||
<label form="short" prefix=", " text-case="capitalize-first"/>
|
||||
<et-al font-style="italic"/>
|
||||
<substitute>
|
||||
<names variable="editor"/>
|
||||
<names variable="translator"/>
|
||||
</substitute>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="editor">
|
||||
<names variable="editor">
|
||||
<name initialize-with=". " delimiter=", " and="text"/>
|
||||
<label form="short" prefix=", " text-case="capitalize-first"/>
|
||||
</names>
|
||||
</macro>
|
||||
<macro name="locators">
|
||||
<group delimiter=", ">
|
||||
<text macro="edition"/>
|
||||
<group delimiter=" ">
|
||||
<text term="volume" form="short"/>
|
||||
<number variable="volume" form="numeric"/>
|
||||
</group>
|
||||
<group delimiter=" ">
|
||||
<number variable="number-of-volumes" form="numeric"/>
|
||||
<text term="volume" form="short" plural="true"/>
|
||||
</group>
|
||||
<group delimiter=" ">
|
||||
<text term="issue" form="short"/>
|
||||
<number variable="issue" form="numeric"/>
|
||||
</group>
|
||||
</group>
|
||||
</macro>
|
||||
<macro name="title">
|
||||
<choose>
|
||||
<if type="bill book graphic legal_case legislation motion_picture song" match="any">
|
||||
<text variable="title" font-style="italic"/>
|
||||
</if>
|
||||
<else>
|
||||
<text variable="title" quotes="true"/>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="publisher">
|
||||
<choose>
|
||||
<if type="bill book chapter graphic legal_case legislation motion_picture paper-conference song" match="any">
|
||||
<group delimiter=": ">
|
||||
<text variable="publisher-place"/>
|
||||
<text variable="publisher"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<group delimiter=", ">
|
||||
<text variable="publisher"/>
|
||||
<text variable="publisher-place"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="event">
|
||||
<choose>
|
||||
<if type="paper-conference speech" match="any">
|
||||
<choose>
|
||||
<!-- Published Conference Paper -->
|
||||
<if variable="collection-editor editor editorial-director issue page volume" match="any">
|
||||
<group delimiter=", ">
|
||||
<group delimiter=" ">
|
||||
<text term="in"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
</group>
|
||||
<text variable="event-place"/>
|
||||
</group>
|
||||
</if>
|
||||
<!-- Unpublished Conference Paper -->
|
||||
<else>
|
||||
<group delimiter=", ">
|
||||
<group delimiter=" ">
|
||||
<text term="presented at"/>
|
||||
<text variable="event"/>
|
||||
</group>
|
||||
<text variable="event-place"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</if>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="access">
|
||||
<choose>
|
||||
<if type="webpage post post-weblog" match="any">
|
||||
<choose>
|
||||
<if variable="URL">
|
||||
<group delimiter=" ">
|
||||
<text variable="URL"/>
|
||||
<group delimiter=" " prefix="(" suffix=")">
|
||||
<text term="accessed"/>
|
||||
<date variable="accessed">
|
||||
<date-part name="month" form="short" strip-periods="false"/>
|
||||
<date-part name="day" form="numeric-leading-zeros" prefix=" " suffix=", "/>
|
||||
<date-part name="year" form="long"/>
|
||||
</date>
|
||||
</group>
|
||||
</group>
|
||||
</if>
|
||||
</choose>
|
||||
</if>
|
||||
<else-if match="any" variable="DOI">
|
||||
<text variable="DOI" prefix="doi: "/>
|
||||
</else-if>
|
||||
<else>
|
||||
<group delimiter=". ">
|
||||
<group delimiter=": ">
|
||||
<text term="accessed" text-case="capitalize-first"/>
|
||||
<date variable="accessed">
|
||||
<date-part name="month" form="short" suffix=" "/>
|
||||
<date-part name="day" form="numeric-leading-zeros" suffix=", "/>
|
||||
<date-part name="year"/>
|
||||
</date>
|
||||
</group>
|
||||
<text term="online" prefix="[" suffix="]" text-case="capitalize-first"/>
|
||||
<group delimiter=": ">
|
||||
<text term="available at" text-case="capitalize-first"/>
|
||||
<text variable="URL"/>
|
||||
</group>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="page">
|
||||
<choose>
|
||||
<if type="article-journal" variable="number" match="all">
|
||||
<group delimiter=" ">
|
||||
<text value="Art."/>
|
||||
<text term="issue" form="short"/>
|
||||
<text variable="number"/>
|
||||
</group>
|
||||
</if>
|
||||
<else>
|
||||
<group delimiter=" ">
|
||||
<label variable="page" form="short"/>
|
||||
<text variable="page"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</macro>
|
||||
<macro name="citation-locator">
|
||||
<group delimiter=" ">
|
||||
<choose>
|
||||
<if locator="page">
|
||||
<label variable="locator" form="short"/>
|
||||
</if>
|
||||
<else>
|
||||
<label variable="locator" form="short" text-case="capitalize-first"/>
|
||||
</else>
|
||||
</choose>
|
||||
<text variable="locator"/>
|
||||
</group>
|
||||
</macro>
|
||||
<!-- Citation -->
|
||||
<citation collapse="citation-number">
|
||||
<sort>
|
||||
<key variable="citation-number"/>
|
||||
</sort>
|
||||
<layout delimiter=", ">
|
||||
<group prefix="[" suffix="]" delimiter=", ">
|
||||
<text variable="citation-number"/>
|
||||
<text macro="citation-locator"/>
|
||||
</group>
|
||||
</layout>
|
||||
</citation>
|
||||
<!-- Bibliography -->
|
||||
<bibliography entry-spacing="0" second-field-align="flush">
|
||||
<layout suffix=".">
|
||||
<!-- Citation Number -->
|
||||
<text variable="citation-number" prefix="[" suffix="]"/>
|
||||
<!-- Author(s) -->
|
||||
<text macro="author" suffix=", "/>
|
||||
<!-- Rest of Citation -->
|
||||
<choose>
|
||||
<!-- Specific Formats -->
|
||||
<if type="article-journal">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text variable="container-title" font-style="italic" form="short"/>
|
||||
<text macro="locators"/>
|
||||
<text macro="page"/>
|
||||
<text macro="issued"/>
|
||||
<text macro="status"/>
|
||||
<text macro="access"/>
|
||||
</group>
|
||||
</if>
|
||||
<else-if type="paper-conference speech" match="any">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text macro="event"/>
|
||||
<text macro="issued"/>
|
||||
<text macro="locators"/>
|
||||
<text macro="page"/>
|
||||
<text macro="status"/>
|
||||
<text macro="access"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="report">
|
||||
<group delimiter=". ">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text macro="publisher"/>
|
||||
<group delimiter=" ">
|
||||
<text variable="genre"/>
|
||||
<text variable="number"/>
|
||||
</group>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
<text macro="access"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="thesis">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text variable="genre"/>
|
||||
<text macro="publisher"/>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="webpage post-weblog post" match="any">
|
||||
<group delimiter=", " suffix=". ">
|
||||
<text macro="title"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
<text macro="access"/>
|
||||
</else-if>
|
||||
<else-if type="patent">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text variable="number"/>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<!-- Generic/Fallback Formats -->
|
||||
<else-if type="bill book graphic legal_case legislation motion_picture report song" match="any">
|
||||
<group delimiter=", " suffix=". ">
|
||||
<text macro="title"/>
|
||||
<text macro="locators"/>
|
||||
</group>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<text macro="issued"/>
|
||||
<text macro="page"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="article-magazine article-newspaper broadcast interview manuscript map patent personal_communication song speech thesis webpage" match="any">
|
||||
<group delimiter=", ">
|
||||
<text macro="title"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
<text macro="locators"/>
|
||||
<text macro="publisher"/>
|
||||
<text macro="page"/>
|
||||
<text macro="issued"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else-if type="chapter paper-conference" match="any">
|
||||
<group delimiter=", " suffix=", ">
|
||||
<text macro="title"/>
|
||||
<group delimiter=" ">
|
||||
<text term="in"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
</group>
|
||||
<text macro="locators"/>
|
||||
</group>
|
||||
<text macro="editor" suffix=" "/>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<text macro="issued"/>
|
||||
<text macro="page"/>
|
||||
</group>
|
||||
</else-if>
|
||||
<else>
|
||||
<group delimiter=", " suffix=". ">
|
||||
<text macro="title"/>
|
||||
<text variable="container-title" font-style="italic"/>
|
||||
<text macro="locators"/>
|
||||
</group>
|
||||
<group delimiter=", ">
|
||||
<text macro="publisher"/>
|
||||
<text macro="page"/>
|
||||
<text macro="issued"/>
|
||||
<text macro="access"/>
|
||||
</group>
|
||||
</else>
|
||||
</choose>
|
||||
</layout>
|
||||
</bibliography>
|
||||
</style>
|
955
index.html
955
index.html
File diff suppressed because it is too large
Load Diff
317
index.org
317
index.org
@ -14,8 +14,6 @@
|
||||
|
||||
#+HTML_MATHJAX: align: center tagside: right font: TeX
|
||||
|
||||
#+CSL_STYLE: ieee.csl
|
||||
|
||||
#+PROPERTY: header-args:matlab :session *MATLAB*
|
||||
#+PROPERTY: header-args:matlab+ :comments org
|
||||
#+PROPERTY: header-args:matlab+ :results none
|
||||
@ -80,21 +78,22 @@ The general structure of this document is as follows:
|
||||
|
||||
** Introduction :ignore:
|
||||
|
||||
# - Section [[sec:model_based_control_methodology]]
|
||||
# - Section [[sec:comp_classical_modern_robust_control]]
|
||||
# - Section [[sec:example_system]]
|
||||
- Section [[sec:model_based_control_methodology]]
|
||||
- Section [[sec:comp_classical_modern_robust_control]]
|
||||
- Section [[sec:example_system]]
|
||||
|
||||
** Model Based Control - Methodology
|
||||
<<sec:model_based_control_methodology>>
|
||||
|
||||
The typical methodology for *Model Based Control* techniques is schematically shown in Figure [[fig:control-procedure]].
|
||||
|
||||
The typical methodology when applying Model Based Control to a plant is schematically shown in Figure [[fig:control-procedure]].
|
||||
It consists of three steps:
|
||||
1. *Identification or modeling*: a mathematical model $G(s)$ representing the plant dynamics is obtained
|
||||
1. *Identification or modeling*: $\Longrightarrow$ mathematical model
|
||||
2. *Translate the specifications into mathematical criteria*:
|
||||
- _Specifications_: Response Time, Noise Rejection, Maximum input amplitude, Robustness, ...
|
||||
- _Mathematical Criteria_: Cost Function, Shape of transfer function, Phase/Gain margin, Roll-Off, ...
|
||||
3. *Synthesis*: research of a controller $K(s)$ that satisfies the specifications for the model of the system
|
||||
- _Mathematical Criteria_: Cost Function, Shape of TF
|
||||
# - Cost Function, Needed Bandwidth, Roll-off, ...
|
||||
# - $\Longrightarrow$ We will use the $\mathcal{H}_\infty$ Norm
|
||||
3. *Synthesis*: research of $K$ that satisfies the specifications for the model of the system
|
||||
|
||||
#+begin_src latex :file control-procedure.pdf
|
||||
\begin{tikzpicture}
|
||||
@ -126,44 +125,20 @@ It consists of three steps:
|
||||
#+RESULTS:
|
||||
[[file:figs/control-procedure.png]]
|
||||
|
||||
In this document, we will suppose a model of the plant is available (step 1 already performed), and we will focus on steps 2 and 3.
|
||||
In this document, we will mainly focus on steps 2 and 3.
|
||||
|
||||
|
||||
In Section [[sec:open_loop_shaping]], steps 2 and 3 will be described for a control techniques called *classical (open-)loop shaping*.
|
||||
|
||||
Then, steps 2 and 3 for the *$\mathcal{H}_\infty$ Loop Shaping* of closed-loop transfer functions will be discussed in Sections [[sec:modern_interpretation_specification]], [[sec:closed-loop-shaping]] and [[sec:h_infinity_mixed_sensitivity]].
|
||||
Step 2 will be discussed in Section [[sec:modern_interpretation_specification]].
|
||||
There are two main methods for the controller synthesis (step 3):
|
||||
- /open/ loop shaping discussed in Section [[sec:open_loop_shaping]]
|
||||
- /closed/ loop shaping discussed in Sections [[sec:modern_interpretation_specification]] and [[sec:h_infinity_mixed_sensitivity]]
|
||||
|
||||
** From Classical Control to Robust Control
|
||||
<<sec:comp_classical_modern_robust_control>>
|
||||
|
||||
Many different model based control techniques have been developed since the birth of /classical control theory/ in the '30s.
|
||||
|
||||
|
||||
*Classical control* methods were developed starting from 1930 based on tools such as the Laplace and Fourier transforms.
|
||||
It was then natural to study systems in the frequency domain using tools such as the Bode and Nyquist plots.
|
||||
Controllers were manually tuned to optimize criteria such as control bandwidth, gain and phase margins.
|
||||
|
||||
|
||||
The '60s saw the development of control techniques based on a state-space.
|
||||
Linear algebra and matrices were used instead of the frequency domain tool of the class control theory.
|
||||
This allows multi-inputs multi-outputs systems to be easily treated.
|
||||
Kalman introduced the well known /Kalman estimator/ as well the notion of optimality by minimizing quadratic cost functions.
|
||||
This set of developments is loosely termed *Modern Control* theory.
|
||||
|
||||
|
||||
By the 1980's, modern control theory was shown to have some robustness issues and to lack the intuitive tools that the classical control methods were offering.
|
||||
This led to a new control theory called *Robust control* that blends the best features of classical and modern techniques.
|
||||
This robust control theory is the subject of this document.
|
||||
|
||||
|
||||
The three presented control methods are compared in Table [[tab:comparison_control_methods]].
|
||||
|
||||
Note that in parallel, there have been numerous other developments, including non-linear control, adaptive control, machine-learning control just to name a few.
|
||||
|
||||
#+name: tab:comparison_control_methods
|
||||
#+caption: Table summurazing the main differences between classical, modern and robust control
|
||||
| <l> | <c> | <c> | <c> |
|
||||
| | *Classical Control* | *Modern Control* | *Robust Control* |
|
||||
| <l> | <c> | <c> | <c> |
|
||||
|-------------------------+------------------------------------+--------------------------------------+-------------------------------------------------------------------------|
|
||||
| *Date* | 1930- | 1960- | 1980- |
|
||||
|-------------------------+------------------------------------+--------------------------------------+-------------------------------------------------------------------------|
|
||||
@ -172,7 +147,6 @@ Note that in parallel, there have been numerous other developments, including no
|
||||
| | Bode Plots | | Open/Closed Loop Shaping |
|
||||
| | Phase and Gain margins | | Weighting Functions |
|
||||
| | | | Disk margin |
|
||||
| | | | Singular Value Decomposition |
|
||||
|-------------------------+------------------------------------+--------------------------------------+-------------------------------------------------------------------------|
|
||||
| *Control Architectures* | Proportional, Integral, Derivative | Full State Feedback, LQR | General Control Configuration |
|
||||
| | Leads, Lags | Kalman Filters, LQG | Generalized Plant |
|
||||
@ -185,7 +159,6 @@ Note that in parallel, there have been numerous other developments, including no
|
||||
|-------------------------+------------------------------------+--------------------------------------+-------------------------------------------------------------------------|
|
||||
| *Disadvantages* | Manual Method | No Guaranteed Robustness | Required knowledge of specific tools |
|
||||
| | Only SISO | Difficult Rejection of Perturbations | Need a reasonably good model of the system |
|
||||
| | No clear way to limit input usage | | |
|
||||
|
||||
#+begin_src latex :file robustness_performance.pdf
|
||||
\begin{tikzpicture}
|
||||
@ -256,23 +229,17 @@ Note that in parallel, there have been numerous other developments, including no
|
||||
\end{tikzpicture}
|
||||
#+end_src
|
||||
|
||||
# #+name: fig:robustness_performance
|
||||
# #+caption: Comparison of the performance and robustness of classical control methods, modern control methods and robust control methods. The required information on the plant to succesfuly apply each of the control methods are indicated by the colors.
|
||||
# #+RESULTS:
|
||||
# [[file:figs/robustness_performance.png]]
|
||||
#+name: fig:robustness_performance
|
||||
#+caption: Comparison of the performance and robustness of classical control methods, modern control methods and robust control methods. The required information on the plant to succesfuly apply each of the control methods are indicated by the colors.
|
||||
#+RESULTS:
|
||||
[[file:figs/robustness_performance.png]]
|
||||
|
||||
** Example System
|
||||
<<sec:example_system>>
|
||||
|
||||
Throughout this document, multiple examples and practical application of presented control strategies will be provided.
|
||||
Most of them will be applied on a physical system presented in this section.
|
||||
|
||||
This system is shown in Figure [[fig:mech_sys_1dof_inertial_contr]].
|
||||
It could represent an active suspension stage supporting a payload.
|
||||
The /inertial/ motion of the payload is measured using an inertial sensor and this is feedback to a force actuator.
|
||||
Such system could be used to actively isolate the payload (disturbance rejection problem) or to make it follow a trajectory (tracking problem).
|
||||
|
||||
The notations used on Figure [[fig:mech_sys_1dof_inertial_contr]] are listed and described in Table [[tab:example_notations]].
|
||||
Let's consider the model shown in Figure [[fig:mech_sys_1dof_inertial_contr]].
|
||||
It could represent a suspension system with a payload to position or isolate using an force actuator and an inertial sensor.
|
||||
The notations used are listed in Table [[tab:example_notations]].
|
||||
|
||||
#+begin_src latex :file mech_sys_1dof_inertial_contr.pdf
|
||||
\begin{tikzpicture}
|
||||
@ -352,7 +319,7 @@ You can follow this generic procedure:
|
||||
#+HTML: </details>
|
||||
#+end_exercice
|
||||
|
||||
Having obtained $G(s)$ and $G_d(s)$, we can transform the system shown in Figure [[fig:mech_sys_1dof_inertial_contr]] into a classical feedback architecture as shown in Figure [[fig:open_loop_shaping]].
|
||||
Having obtained $G(s)$ and $G_d(s)$, we can transform the system shown in Figure [[fig:mech_sys_1dof_inertial_contr]] into a classical feedback form as shown in Figure [[fig:open_loop_shaping]].
|
||||
|
||||
#+begin_src latex :file classical_feedback_test_system.pdf
|
||||
\begin{tikzpicture}
|
||||
@ -374,7 +341,7 @@ Having obtained $G(s)$ and $G_d(s)$, we can transform the system shown in Figure
|
||||
#+end_src
|
||||
|
||||
#+name: fig:classical_feedback_test_system
|
||||
#+caption: Block diagram corresponding to the example system of Figure [[fig:mech_sys_1dof_inertial_contr]]
|
||||
#+caption: Block diagram corresponding to the example system
|
||||
#+RESULTS:
|
||||
[[file:figs/classical_feedback_test_system.png]]
|
||||
|
||||
@ -386,14 +353,12 @@ Let's define the system parameters on Matlab.
|
||||
m = 10; % Mass [kg]
|
||||
#+end_src
|
||||
|
||||
And now the system dynamics $G(s)$ and $G_d(s)$.
|
||||
And now the system dynamics $G(s)$ and $G_d(s)$ (their bode plots are shown in Figures [[fig:bode_plot_example_afm]] and [[fig:bode_plot_example_Gd]]).
|
||||
#+begin_src matlab +n -r
|
||||
G = 1/(m*s^2 + c*s + k); % Plant
|
||||
Gd = (c*s + k)/(m*s^2 + c*s + k); % Disturbance
|
||||
#+end_src
|
||||
|
||||
The Bode plots of $G(s)$ and $G_d(s)$ are shown in Figures [[fig:bode_plot_example_afm]] and [[fig:bode_plot_example_Gd]].
|
||||
|
||||
#+begin_src matlab :exports none
|
||||
freqs = logspace(0, 3, 1000);
|
||||
|
||||
@ -457,27 +422,24 @@ The Bode plots of $G(s)$ and $G_d(s)$ are shown in Figures [[fig:bode_plot_examp
|
||||
|
||||
** Introduction :ignore:
|
||||
|
||||
After an introduction to classical Loop Shaping in Section [[sec:open_loop_shaping_introduction]], a practical example is given in Section [[sec:loop_shaping_example]].
|
||||
Such Loop Shaping is usually performed manually with tools coming from the classical control theory.
|
||||
|
||||
However, the $\mathcal{H}_\infty$ synthesis can be used to automate the Loop Shaping process.
|
||||
This is presented in Section [[sec:h_infinity_open_loop_shaping]] and applied on the same example in Section [[sec:h_infinity_open_loop_shaping_example]].
|
||||
- Section [[sec:open_loop_shaping_introduction]]
|
||||
- Section [[sec:loop_shaping_example]]
|
||||
- Section [[sec:h_infinity_open_loop_shaping]]
|
||||
- Section [[sec:h_infinity_open_loop_shaping_example]]
|
||||
|
||||
** Introduction to Loop Shaping
|
||||
<<sec:open_loop_shaping_introduction>>
|
||||
|
||||
#+begin_definition
|
||||
*Loop Shaping* refers to a control design procedure that involves explicitly shaping the magnitude of the *Loop Transfer Function* $L(s)$.
|
||||
*Loop Shaping* refers to a design procedure that involves explicitly shaping the magnitude of the *Loop Transfer Function* $L(s)$.
|
||||
#+end_definition
|
||||
|
||||
#+begin_definition
|
||||
The *Loop Gain* (or Loop transfer function) $L(s)$ usually refers to as the product of the controller and the plant (see Figure [[fig:open_loop_shaping]]):
|
||||
The *Loop Gain* $L(s)$ usually refers to as the product of the controller and the plant ("Gain around the loop", see Figure [[fig:open_loop_shaping]]):
|
||||
\begin{equation}
|
||||
L(s) = G(s) \cdot K(s) \label{eq:loop_gain}
|
||||
\end{equation}
|
||||
|
||||
Its name comes from the fact that this is actually the "gain around the loop".
|
||||
|
||||
#+begin_src latex :file open_loop_shaping.pdf
|
||||
\begin{tikzpicture}
|
||||
\node[addb={+}{}{}{}{-}] (addsub) at (0, 0){};
|
||||
@ -504,19 +466,17 @@ Its name comes from the fact that this is actually the "gain around the loop".
|
||||
[[file:figs/open_loop_shaping.png]]
|
||||
#+end_definition
|
||||
|
||||
This synthesis method is one of main way controllers are design in the classical control theory.
|
||||
It is widely used and generally successful as many characteristics of the closed-loop system depend on the shape of the open loop gain $L(s)$ such as:
|
||||
- *Good Tracking*: $L$ large
|
||||
This synthesis method is widely used as many characteristics of the closed-loop system depend on the shape of the open loop gain $L(s)$ such as:
|
||||
- *Performance*: $L$ large
|
||||
- *Good disturbance rejection*: $L$ large
|
||||
- *Attenuation of measurement noise on plant output*: $L$ small
|
||||
- *Small magnitude of input signal*: $L$ small
|
||||
- *Limitation of measurement noise on plant output*: $L$ small
|
||||
- *Small magnitude of input signal*: $K$ and $L$ small
|
||||
- *Nominal stability*: $L$ small (RHP zeros and time delays)
|
||||
- *Robust stability*: $L$ small (neglected dynamics)
|
||||
|
||||
The shaping of the Loop Gain is done manually by combining several leads, lags, notches...
|
||||
This process is very much simplified by the fact that the loop gain $L(s)$ depends *linearly* on $K(s)$ eqref:eq:loop_gain.
|
||||
A typical wanted Loop Shape is shown in Figure [[fig:open_loop_shaping_shape]].
|
||||
Another interesting Loop shape called "Bode Step" is described in cite:lurie02_system_archit_trades_using_bode.
|
||||
The Open Loop shape is usually done manually has the loop gain $L(s)$ depends linearly on $K(s)$ eqref:eq:loop_gain.
|
||||
|
||||
$K(s)$ then consists of a combination of leads, lags, notches, etc. such that $L(s)$ has the wanted shape (an example is shown in Figure [[fig:open_loop_shaping_shape]]).
|
||||
|
||||
#+begin_src latex :file open_loop_shaping_shape.pdf
|
||||
\begin{tikzpicture}
|
||||
@ -537,12 +497,12 @@ Another interesting Loop shape called "Bode Step" is described in cite:lurie02_s
|
||||
\path[shift={(0,1.8)}, fill=red!50!white] (0.5, 1.25) -- (2, 0.5) -| coordinate[near start](lfshaping) cycle;
|
||||
\path[shift={(0,2.2)}, fill=red!50!white] (6, -0.5) -- (7.5, -1.25) |- coordinate[near end](hfshaping) cycle;
|
||||
|
||||
\draw[<-] (lfshaping) -- ++(0, -0.8) node[below, align=center]{{\scriptsize Ref. tracking}\\{\scriptsize Dist. rejection}};
|
||||
\draw[<-] (hfshaping) -- ++(0, 0.8) node[above, align=center]{{\scriptsize Noise attenuation}};
|
||||
\draw[<-] (lfshaping) -- ++(0, -0.8) node[below, align=center]{Reference\\Tracking};
|
||||
\draw[<-] (hfshaping) -- ++(0, 0.8) node[above, align=center]{Noise\\Rejection};
|
||||
|
||||
% Crossover frequency
|
||||
\node[below] (wc) at (4,2){$\omega_c$};
|
||||
\draw[<-] (wc.south) -- ++(0, -0.4) node[below, align=center]{{\scriptsize Bandwidth}};
|
||||
\draw[<-] (wc.south) -- ++(0, -0.4) node[below, align=center]{Bandwidth};
|
||||
|
||||
% Phase
|
||||
\draw[] (0.5, -2) -- (2, -2)[out=0, in=-180] to (4, -1.25)[out=0, in=-180] to
|
||||
@ -550,7 +510,7 @@ Another interesting Loop shape called "Bode Step" is described in cite:lurie02_s
|
||||
-1.25)[out=0, in=-180] to (6, -2) -- (7.5, -2);
|
||||
|
||||
% Phase Margin
|
||||
\draw[->, dashed] (4, -2) -- (4, -1.25) node[above]{{\scriptsize Phase Margin}};
|
||||
\draw[->, dashed] (4, -2) -- (4, -1.25) node[above]{Phase Margin};
|
||||
\draw[dashed] (0, -2) node[left]{$-\pi$} -- (7.5, -2);
|
||||
\end{tikzpicture}
|
||||
#+end_src
|
||||
@ -560,42 +520,27 @@ Another interesting Loop shape called "Bode Step" is described in cite:lurie02_s
|
||||
#+RESULTS:
|
||||
[[file:figs/open_loop_shaping_shape.png]]
|
||||
|
||||
The shaping of *closed-loop* transfer functions is obviously not as simple as they don't depend linearly on $K(s)$.
|
||||
But this is were the $\mathcal{H}_\infty$ Synthesis will be useful!
|
||||
More details on that in Sections [[sec:modern_interpretation_specification]] and [[sec:closed-loop-shaping]].
|
||||
|
||||
** Example of Manual Open Loop Shaping
|
||||
** Example of Open Loop Shaping
|
||||
<<sec:loop_shaping_example>>
|
||||
|
||||
#+begin_exampl
|
||||
Let's take our example system described in Section [[sec:example_system]] and design a controller using the Open-Loop shaping synthesis approach.
|
||||
The specifications are:
|
||||
1. *Disturbance rejection*: Highest possible rejection below 1Hz
|
||||
2. *Positioning speed*: Bandwidth of approximately 10Hz
|
||||
3. *Noise attenuation*: Roll-off of -40dB/decade past 30Hz
|
||||
4. *Robustness*: Gain margin > 3dB and Phase margin > 30 deg
|
||||
Let's take our example system and try to apply the Open-Loop shaping strategy to design a controller that fulfils the following specifications:
|
||||
- *Performance*: Bandwidth of approximately 10Hz
|
||||
- *Noise Attenuation*: Roll-off of -40dB/decade past 30Hz
|
||||
- *Robustness*: Gain margin > 3dB and Phase margin > 30 deg
|
||||
#+end_exampl
|
||||
|
||||
#+begin_exercice
|
||||
Using =SISOTOOL=, design a controller that fulfills the specifications.
|
||||
Using =SISOTOOL=, design a controller that fulfill the specifications.
|
||||
|
||||
#+begin_src matlab :eval no :tangle no
|
||||
sisotool(G)
|
||||
#+end_src
|
||||
|
||||
#+HTML: <details><summary>Hint</summary>
|
||||
You can follow this procedure:
|
||||
1. In order to have good disturbance rejection at low frequency, add a simple or double *integrator*
|
||||
2. In terms of the loop gain, the *bandwidth* can be defined at the frequency $\omega_c$ where $|l(j\omega_c)|$ first crosses 1 from above.
|
||||
Therefore, adjust the *gain* such that $L(j\omega)$ crosses 1 at around 10Hz
|
||||
3. The roll-off at high frequency for noise attenuation should already be good enough.
|
||||
If not, add a *low pass filter*
|
||||
4. Add a *Lead* centered around the crossover frequency (10 Hz) and tune it such that sufficient phase margin is added.
|
||||
Verify that the gain margin is good enough.
|
||||
#+HTML: </details>
|
||||
#+end_exercice
|
||||
|
||||
Let's say we came up with the following controller.
|
||||
In order to have the wanted Roll-off, two integrators are used, a lead is also added to have sufficient phase margin.
|
||||
|
||||
The obtained controller is shown below, and the bode plot of the Loop Gain is shown in Figure [[fig:loop_gain_manual_afm]].
|
||||
#+begin_src matlab
|
||||
K = 14e8 * ... % Gain
|
||||
1/(s^2) * ... % Double Integrator
|
||||
@ -603,22 +548,6 @@ Let's say we came up with the following controller.
|
||||
(1 + s/(2*pi*10/sqrt(8)))/(1 + s/(2*pi*10*sqrt(8))); % Lead
|
||||
#+end_src
|
||||
|
||||
The bode plot of the Loop Gain is shown in Figure [[fig:loop_gain_manual_afm]] and we can verify that we have the wanted stability margins using the =margin= command:
|
||||
#+begin_src matlab
|
||||
[Gm, Pm, ~, Wc] = margin(G*K)
|
||||
#+end_src
|
||||
|
||||
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
|
||||
data2orgtable([Gm; Pm; Wc/2/pi], {'Gain Margin $> 3$ [dB]', 'Phase Margin $> 30$ [deg]', 'Crossover $\approx 10$ [Hz]'}, {'Requirements', 'Manual Method'}, ' %.1f ');
|
||||
#+end_src
|
||||
|
||||
#+RESULTS:
|
||||
| Requirements | Manual Method |
|
||||
|-----------------------------+---------------|
|
||||
| Gain Margin $> 3$ [dB] | 3.1 |
|
||||
| Phase Margin $> 30$ [deg] | 35.4 |
|
||||
| Crossover $\approx 10$ [Hz] | 10.1 |
|
||||
|
||||
#+begin_src matlab :exports none
|
||||
freqs = logspace(0, 3, 1000);
|
||||
|
||||
@ -655,62 +584,106 @@ The bode plot of the Loop Gain is shown in Figure [[fig:loop_gain_manual_afm]] a
|
||||
#+RESULTS:
|
||||
[[file:figs/loop_gain_manual_afm.png]]
|
||||
|
||||
And we can verify that we have the wanted stability margins:
|
||||
#+begin_src matlab
|
||||
[Gm, Pm, ~, Wc] = margin(G*K)
|
||||
#+end_src
|
||||
|
||||
#+begin_src matlab :exports results :results value table replace :tangle no :post addhdr(*this*)
|
||||
data2orgtable([Gm; Pm; Wc/2/pi], {'Gain Margin $> 3$ [dB]', 'Phase Margin $> 30$ [deg]', 'Crossover $\approx 10$ [Hz]'}, {'Requirements', 'Manual Method'}, ' %.1f ');
|
||||
#+end_src
|
||||
|
||||
#+RESULTS:
|
||||
| Requirements | Manual Method |
|
||||
|-----------------------------+---------------|
|
||||
| Gain Margin $> 3$ [dB] | 3.1 |
|
||||
| Phase Margin $> 30$ [deg] | 35.4 |
|
||||
| Crossover $\approx 10$ [Hz] | 10.1 |
|
||||
|
||||
** $\mathcal{H}_\infty$ Loop Shaping Synthesis
|
||||
<<sec:h_infinity_open_loop_shaping>>
|
||||
|
||||
The synthesis of controllers based on the Loop Shaping method can be automated using the $\mathcal{H}_\infty$ Synthesis.
|
||||
The Open Loop Shaping synthesis can be performed using the $\mathcal{H}_\infty$ Synthesis.
|
||||
|
||||
Using Matlab, it can be easily performed using the =loopsyn= command:
|
||||
Even though we will not go into details, we will provide one example.
|
||||
|
||||
Using Matlab, the $\mathcal{H}_\infty$ Loop Shaping Synthesis can be performed using the =loopsyn= command:
|
||||
#+begin_src matlab :eval no :tangle no
|
||||
K = loopsyn(G, Lw);
|
||||
K = loopsyn(G, Gd);
|
||||
#+end_src
|
||||
where:
|
||||
- =G= is the (LTI) plant
|
||||
- =Lw= is the wanted loop shape
|
||||
- =Gd= is the wanted loop shape
|
||||
- =K= is the synthesize controller
|
||||
|
||||
#+begin_seealso
|
||||
Matlab documentation of =loopsyn= ([[https://www.mathworks.com/help/robust/ref/loopsyn.html][link]]).
|
||||
#+end_seealso
|
||||
|
||||
Therefore, by just providing the wanted loop shape and the plant model, the $\mathcal{H}_\infty$ Loop Shaping synthesis generates a /stabilizing/ controller such that the obtained loop gain $L(s)$ matches the specified one with an accuracy $\gamma$.
|
||||
|
||||
Even though we will not go into details and explain how such synthesis is working, an example is provided in the next section.
|
||||
|
||||
** Example of the $\mathcal{H}_\infty$ Loop Shaping Synthesis
|
||||
<<sec:h_infinity_open_loop_shaping_example>>
|
||||
|
||||
To apply the $\mathcal{H}_\infty$ Loop Shaping Synthesis, the wanted shape of the loop gain should be determined from the specifications.
|
||||
This is summarized in Table [[tab:open_loop_shaping_specifications]].
|
||||
Let's reuse the previous plant.
|
||||
|
||||
Such shape corresponds to the typical wanted Loop gain Shape shown in Figure [[fig:open_loop_shaping_shape]].
|
||||
Translate the specification into the wanted shape of the open loop gain.
|
||||
- *Performance*: Bandwidth of approximately 10Hz: $|L_w(j2 \pi 10)| = 1$
|
||||
- *Noise Attenuation*: Roll-off of -40dB/decade past 30Hz
|
||||
- *Robustness*: Gain margin > 3dB and Phase margin > 30 deg
|
||||
|
||||
#+name: tab:open_loop_shaping_specifications
|
||||
#+caption: Wanted Loop Shape corresponding to each specification
|
||||
| | Specification | Corresponding Loop Shape |
|
||||
|-------------------------+---------------------------------------------+-----------------------------------------------------------------|
|
||||
| *Disturbance Rejection* | Highest possible rejection below 1Hz | Slope of -40dB/decade at low frequency to have a high loop gain |
|
||||
| *Positioning Speed* | Bandwidth of approximately 10Hz | $L$ crosses 1 at 10Hz: $\vert L_w(j2 \pi 10)\vert = 1$ |
|
||||
| *Noise Attenuation* | Roll-off of -40dB/decade past 30Hz | Roll-off of -40dB/decade past 30Hz |
|
||||
| *Robustness* | Gain margin > 3dB and Phase margin > 30 deg | Slope of -20dB/decade near the crossover |
|
||||
|
||||
Then, a (stable, minimum phase) transfer function $L_w(s)$ should be created that has the same gain as the wanted shape of the Loop gain.
|
||||
For this example, a double integrator and a lead centered on 10Hz are used.
|
||||
Then the gain is adjusted such that the $|L_w(j2 \pi 10)| = 1$.
|
||||
|
||||
Using Matlab, we have:
|
||||
#+begin_src matlab
|
||||
Lw = 2.3e3 * ...
|
||||
1/(s^2) * ... % Double Integrator
|
||||
(1 + s/(2*pi*10/sqrt(3)))/(1 + s/(2*pi*10*sqrt(3))); % Lead
|
||||
#+end_src
|
||||
|
||||
The $\mathcal{H}_\infty$ open loop shaping synthesis is then performed using the =loopsyn= command:
|
||||
The $\mathcal{H}_\infty$ optimal open loop shaping synthesis is performed using the =loopsyn= command:
|
||||
#+begin_src matlab
|
||||
[K, ~, GAM] = loopsyn(G, Lw);
|
||||
#+end_src
|
||||
|
||||
The obtained Loop Gain is shown in Figure [[fig:open_loop_shaping_hinf_L]] and matches the specified one by a factor $\gamma \approx 2$.
|
||||
#+begin_important
|
||||
It is always important to analyze the controller after the synthesis is performed.
|
||||
|
||||
In the end, a synthesize controller is just a combination of low pass filters, high pass filters, notches, leads, etc.
|
||||
#+end_important
|
||||
|
||||
Let's briefly analyze the obtained controller which bode plot is shown in Figure [[fig:open_loop_shaping_hinf_K]]:
|
||||
- two integrators are used at low frequency to have the wanted low frequency high gain
|
||||
- a lead is added centered with the crossover frequency to increase the phase margin
|
||||
- a notch is added at the resonance of the plant to increase the gain margin (this is very typical of $\mathcal{H}_\infty$ controllers, and can be an issue, more info on that latter)
|
||||
|
||||
#+begin_src matlab :exports none
|
||||
freqs = logspace(0, 3, 1000);
|
||||
|
||||
figure;
|
||||
tiledlayout(3, 1, 'TileSpacing', 'None', 'Padding', 'None');
|
||||
|
||||
ax1 = nexttile([2,1]);
|
||||
plot(freqs, abs(squeeze(freqresp(K, freqs, 'Hz'))));
|
||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
|
||||
ylabel('Magnitude'); set(gca, 'XTickLabel',[]);
|
||||
hold off;
|
||||
|
||||
ax2 = nexttile;
|
||||
plot(freqs, 180/pi*angle(squeeze(freqresp(K, freqs, 'Hz'))));
|
||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'lin');
|
||||
yticks(-360:90:360); ylim([-180, 90]);
|
||||
xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
|
||||
|
||||
linkaxes([ax1,ax2],'x');
|
||||
xlim([freqs(1), freqs(end)]);
|
||||
#+end_src
|
||||
|
||||
#+begin_src matlab :tangle no :exports results :results file replace
|
||||
exportFig('figs/open_loop_shaping_hinf_K.pdf', 'width', 'wide', 'height', 'normal');
|
||||
#+end_src
|
||||
|
||||
#+name: fig:open_loop_shaping_hinf_K
|
||||
#+caption: Obtained controller $K$ using the open-loop $\mathcal{H}_\infty$ shaping
|
||||
#+RESULTS:
|
||||
[[file:figs/open_loop_shaping_hinf_K.png]]
|
||||
|
||||
The obtained Loop Gain is shown in Figure [[fig:open_loop_shaping_hinf_L]] and matches the specified one by a factor $\gamma$.
|
||||
|
||||
#+begin_src matlab :exports none
|
||||
freqs = logspace(0, 3, 1000);
|
||||
@ -752,51 +725,7 @@ The obtained Loop Gain is shown in Figure [[fig:open_loop_shaping_hinf_L]] and m
|
||||
#+RESULTS:
|
||||
[[file:figs/open_loop_shaping_hinf_L.png]]
|
||||
|
||||
|
||||
#+begin_important
|
||||
When using the $\mathcal{H}_\infty$ Synthesis, it is usually recommended to analyze the obtained controller.
|
||||
|
||||
This is usually done by breaking down the controller into simple elements such as low pass filters, high pass filters, notches, leads, etc.
|
||||
#+end_important
|
||||
|
||||
Let's briefly analyze the obtained controller which bode plot is shown in Figure [[fig:open_loop_shaping_hinf_K]]:
|
||||
- two integrators are used at low frequency to have the wanted low frequency high gain
|
||||
- a lead is added centered with the crossover frequency to increase the phase margin
|
||||
- a notch is added at the resonance of the plant to increase the gain margin (this is very typical of $\mathcal{H}_\infty$ controllers, and can be an issue, more info on that latter)
|
||||
|
||||
#+begin_src matlab :exports none
|
||||
freqs = logspace(0, 3, 1000);
|
||||
|
||||
figure;
|
||||
tiledlayout(3, 1, 'TileSpacing', 'None', 'Padding', 'None');
|
||||
|
||||
ax1 = nexttile([2,1]);
|
||||
plot(freqs, abs(squeeze(freqresp(K, freqs, 'Hz'))));
|
||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'log');
|
||||
ylabel('Magnitude'); set(gca, 'XTickLabel',[]);
|
||||
hold off;
|
||||
|
||||
ax2 = nexttile;
|
||||
plot(freqs, 180/pi*angle(squeeze(freqresp(K, freqs, 'Hz'))));
|
||||
set(gca, 'XScale', 'log'); set(gca, 'YScale', 'lin');
|
||||
yticks(-360:90:360); ylim([-180, 90]);
|
||||
xlabel('Frequency [Hz]'); ylabel('Phase [deg]');
|
||||
|
||||
linkaxes([ax1,ax2],'x');
|
||||
xlim([freqs(1), freqs(end)]);
|
||||
#+end_src
|
||||
|
||||
#+begin_src matlab :tangle no :exports results :results file replace
|
||||
exportFig('figs/open_loop_shaping_hinf_K.pdf', 'width', 'wide', 'height', 'normal');
|
||||
#+end_src
|
||||
|
||||
#+name: fig:open_loop_shaping_hinf_K
|
||||
#+caption: Obtained controller $K$ using the open-loop $\mathcal{H}_\infty$ shaping
|
||||
#+RESULTS:
|
||||
[[file:figs/open_loop_shaping_hinf_K.png]]
|
||||
|
||||
|
||||
Let's finally compare the obtained stability margins of the $\mathcal{H}_\infty$ controller and of the manually developed controller in Table [[tab:open_loop_shaping_compare]].
|
||||
Let's now compare the obtained stability margins of the $\mathcal{H}_\infty$ controller and of the manually developed controller in Table [[tab:open_loop_shaping_compare]].
|
||||
|
||||
#+begin_src matlab :exports none
|
||||
[Gm_2, Pm_2, ~, Wc_2] = margin(G*K)
|
||||
|
Loading…
Reference in New Issue
Block a user