Skip to content

Instantly share code, notes, and snippets.

@mtorchiano
Last active March 13, 2022 15:33
Show Gist options
  • Save mtorchiano/5fafd8cd625d01ba6b7b83d6df6157f0 to your computer and use it in GitHub Desktop.
Save mtorchiano/5fafd8cd625d01ba6b7b83d6df6157f0 to your computer and use it in GitHub Desktop.
Fibonacci sequence generation using Java Stream API

Fibonacci sequence generation using Java Stream API

Possible solutions and relative performance

Solutions

The generation of a Fibonacci sequence can be carried on in several ways:

  • using the generate() method
    • leaning on an external class to keep the state and perform the computation (method fibonacciGG())
    • using a lambda with an external class just to keep the state (method fibonacciGLP())
    • using a lambda storing the state into an external array (method fibonacciGLa())
  • using the iterate() method
    • using a lambda with an external class to keep the state (method fibonacciILP())
    • using a lambda with an array to keep the state (method fibonacciILa())
    • using a lambda with an array to keep the state that is re-created at each iteration (method fibonacciILan())

The four implementations are shown in file FibonacciStream.java in the corresponding methods.

Performance

The time performance of the five alternatives above are reported in the following table and illustrated in the diagram.

Solution Method Time Throughput
generate(Generator class) fibonacciGG() 94.5 106
generate(lambda, array) fibonacciGLP() 98.5 102
generate(lambda, Pair) fibonacciGLa() 93.5 107
iterate(lambda, new array) fibonacciILan() 70.0 143
iterate(lambda, array) fibonacciILP() 35.0 286
iterate(lambda, Pair) fibonacciILa() 31.0 323

The performance are based on CPU times collected on a Mac with 2.3 GHz Intel Core i7.

The time measure is the time required to generate a 10M numbers sequence.

The throughput is expressed in Million numbers generated per second.

Conclusions

The two best iterate() solutions outperfom the generate() based solutions by almost three times.

In both cases we observe that the array variants are performing slightly worsed than the ones using an external class. This is likely due to the additional checks performed when accessing an array.

The new array version of the iterate() deserves some additional consideration. It is the solution typically suggested in several places (several stackoverflow answers) as it is the most compact and possibly elegant. Unfortunately it creates a new object every iteration, this solution is inefficient both from a time and memory occupation perspectives.

package streams;
import java.util.stream.LongStream;
import java.util.stream.Stream;
public class FibonacciStream {
public static LongStream fibonacciGG() {
class FibonacciGenerator{
int prev=0;
int prevPrev=0;
public int next() {
int result = prev+prevPrev;
if(prevPrev==0) result=1;
prevPrev = prev;
return prev = result;
}
}
FibonacciGenerator g=new FibonacciGenerator();
return LongStream.generate(g::next);
}
public static LongStream fibonacciGLa() {
long[] fibo = {0,0};
return LongStream.generate(()->{
long result = fibo[0]+fibo[1];
if(fibo[1]==0) result=1;
fibo[1] = fibo[0];
return fibo[0] = result;
});
}
public static LongStream fibonacciGLP() {
class Pair{
long prev;
long prevPrev;
}
Pair fib = new Pair();
return LongStream.generate(()->{
long result = fib.prev+fib.prevPrev;
if(fib.prevPrev==0) result=1;
fib.prevPrev = fib.prev;
return fib.prev = result;
});
}
public static LongStream fibonacciILa() {
return Stream.iterate(new long[] {1,0}, (f)->{
long result = f[0]+f[1];
if(f[1]==0) result=1;
f[1] = f[0];
f[0] = result;
return f;
})
.mapToLong( f -> f[0]);
}
public static LongStream fibonacciILP() {
class Pair { long pre=1; long prePre=0; }
return Stream.iterate(new Pair(), (p)->{
long result = p.pre+p.prePre;
if(p.prePre==0) result=1;
p.prePre = p.pre;
p.pre = result;
return p;
})
.mapToLong( p -> p.pre);
}
public static LongStream fibonacciILan() {
return Stream.iterate(new long[] {1,0},
(f)-> new long[] {f[0]+f[1], f[0]})
.mapToLong( f -> f[0]);
}
}
Display the source blob
Display the rendered blob
Raw
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="576pt" height="360pt" viewBox="0 0 576 360" version="1.1">
<defs>
<g>
<symbol overflow="visible" id="glyph0-0">
<path style="stroke:none;" d="M 1.5 0 L 1.5 -9 L 10.5 -9 L 10.5 0 Z M 2.25 -0.75 L 9.75 -0.75 L 9.75 -8.25 L 2.25 -8.25 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-1">
<path style="stroke:none;" d="M 3.046875 -8.296875 C 3.796875 -8.296875 4.414062 -7.898438 4.90625 -7.109375 C 5.394531 -6.328125 5.640625 -5.328125 5.640625 -4.109375 C 5.640625 -2.867188 5.394531 -1.859375 4.90625 -1.078125 C 4.414062 -0.304688 3.78125 0.078125 3 0.078125 C 2.207031 0.078125 1.570312 -0.300781 1.09375 -1.0625 C 0.613281 -1.820312 0.375 -2.832031 0.375 -4.09375 C 0.375 -5.332031 0.617188 -6.34375 1.109375 -7.125 C 1.609375 -7.90625 2.253906 -8.296875 3.046875 -8.296875 Z M 3.0625 -7.171875 L 3 -7.171875 C 2.550781 -7.171875 2.191406 -6.894531 1.921875 -6.34375 C 1.660156 -5.789062 1.53125 -5.046875 1.53125 -4.109375 C 1.53125 -3.140625 1.660156 -2.378906 1.921875 -1.828125 C 2.179688 -1.273438 2.535156 -1 2.984375 -1 C 3.441406 -1 3.800781 -1.273438 4.0625 -1.828125 C 4.320312 -2.378906 4.453125 -3.125 4.453125 -4.0625 C 4.453125 -5.007812 4.328125 -5.765625 4.078125 -6.328125 C 3.828125 -6.890625 3.488281 -7.171875 3.0625 -7.171875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-2">
<path style="stroke:none;" d="M 1.21875 -8.1875 L 4.84375 -8.1875 L 4.84375 -7.140625 L 2.28125 -7.140625 L 2.28125 -5.078125 C 2.363281 -5.085938 2.445312 -5.09375 2.53125 -5.09375 C 3.320312 -5.09375 3.972656 -4.847656 4.484375 -4.359375 C 4.992188 -3.878906 5.25 -3.265625 5.25 -2.515625 C 5.25 -1.742188 4.992188 -1.117188 4.484375 -0.640625 C 3.984375 -0.160156 3.332031 0.078125 2.53125 0.078125 C 1.863281 0.078125 1.21875 -0.0820312 0.59375 -0.40625 L 0.59375 -1.609375 C 1.1875 -1.222656 1.765625 -1.03125 2.328125 -1.03125 C 2.816406 -1.03125 3.226562 -1.171875 3.5625 -1.453125 C 3.894531 -1.742188 4.0625 -2.097656 4.0625 -2.515625 C 4.0625 -2.953125 3.878906 -3.316406 3.515625 -3.609375 C 3.160156 -3.898438 2.707031 -4.046875 2.15625 -4.046875 C 1.695312 -4.046875 1.382812 -4.003906 1.21875 -3.921875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-3">
<path style="stroke:none;" d="M 2.421875 -8.1875 L 3.59375 -8.1875 L 3.59375 0 L 2.421875 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-4">
<path style="stroke:none;" d="M 2.46875 -1.125 L 5.59375 -1.125 L 5.59375 0 L 0.40625 0 L 0.40625 -0.078125 L 0.90625 -0.65625 C 1.675781 -1.613281 2.285156 -2.421875 2.734375 -3.078125 C 3.191406 -3.742188 3.488281 -4.25 3.625 -4.59375 C 3.769531 -4.9375 3.84375 -5.273438 3.84375 -5.609375 C 3.84375 -6.066406 3.707031 -6.429688 3.4375 -6.703125 C 3.175781 -6.984375 2.832031 -7.125 2.40625 -7.125 C 2.070312 -7.125 1.742188 -7.023438 1.421875 -6.828125 C 1.109375 -6.640625 0.828125 -6.375 0.578125 -6.03125 L 0.578125 -7.515625 C 1.210938 -8.035156 1.867188 -8.296875 2.546875 -8.296875 C 3.253906 -8.296875 3.835938 -8.054688 4.296875 -7.578125 C 4.765625 -7.097656 5 -6.492188 5 -5.765625 C 5 -5.429688 4.941406 -5.078125 4.828125 -4.703125 C 4.710938 -4.335938 4.507812 -3.910156 4.21875 -3.421875 C 3.925781 -2.929688 3.425781 -2.269531 2.71875 -1.4375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-5">
<path style="stroke:none;" d="M 2.15625 -4.765625 L 2.234375 -4.765625 C 2.742188 -4.765625 3.128906 -4.867188 3.390625 -5.078125 C 3.660156 -5.285156 3.796875 -5.59375 3.796875 -6 C 3.796875 -6.363281 3.664062 -6.65625 3.40625 -6.875 C 3.15625 -7.101562 2.816406 -7.21875 2.390625 -7.21875 C 1.960938 -7.21875 1.488281 -7.085938 0.96875 -6.828125 L 0.96875 -7.953125 C 1.445312 -8.179688 1.96875 -8.296875 2.53125 -8.296875 C 3.28125 -8.296875 3.875 -8.097656 4.3125 -7.703125 C 4.75 -7.316406 4.96875 -6.78125 4.96875 -6.09375 C 4.96875 -5.675781 4.882812 -5.328125 4.71875 -5.046875 C 4.550781 -4.765625 4.285156 -4.519531 3.921875 -4.3125 C 4.234375 -4.1875 4.460938 -4.035156 4.609375 -3.859375 C 4.765625 -3.679688 4.882812 -3.460938 4.96875 -3.203125 C 5.050781 -2.941406 5.09375 -2.664062 5.09375 -2.375 C 5.09375 -1.664062 4.851562 -1.078125 4.375 -0.609375 C 3.894531 -0.140625 3.289062 0.09375 2.5625 0.09375 C 1.945312 0.09375 1.347656 -0.0546875 0.765625 -0.359375 L 0.765625 -1.640625 C 1.378906 -1.253906 1.976562 -1.0625 2.5625 -1.0625 C 2.957031 -1.0625 3.273438 -1.175781 3.515625 -1.40625 C 3.753906 -1.644531 3.875 -1.957031 3.875 -2.34375 C 3.875 -2.664062 3.773438 -2.945312 3.578125 -3.1875 C 3.460938 -3.320312 3.332031 -3.421875 3.1875 -3.484375 C 3.050781 -3.554688 2.742188 -3.617188 2.265625 -3.671875 L 2.15625 -3.6875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-6">
<path style="stroke:none;" d="M 0.203125 -8.203125 L 7.046875 -8.203125 L 7.046875 -7.15625 L 4.1875 -7.15625 L 4.1875 0 L 3.015625 0 L 3.015625 -7.15625 L 0.203125 -7.15625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-7">
<path style="stroke:none;" d="M 0.734375 -8.1875 L 1.796875 -8.1875 L 1.796875 -4.6875 C 2.242188 -5.226562 2.796875 -5.5 3.453125 -5.5 C 3.816406 -5.5 4.140625 -5.40625 4.421875 -5.21875 C 4.710938 -5.039062 4.925781 -4.796875 5.0625 -4.484375 C 5.195312 -4.171875 5.265625 -3.703125 5.265625 -3.078125 L 5.265625 0 L 4.203125 0 L 4.203125 -3.328125 C 4.203125 -3.722656 4.101562 -4.039062 3.90625 -4.28125 C 3.71875 -4.519531 3.460938 -4.640625 3.140625 -4.640625 C 2.910156 -4.640625 2.691406 -4.578125 2.484375 -4.453125 C 2.273438 -4.335938 2.046875 -4.140625 1.796875 -3.859375 L 1.796875 0 L 0.734375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-8">
<path style="stroke:none;" d="M 1.90625 -5.390625 L 1.90625 -4.15625 L 1.953125 -4.25 C 2.472656 -5.082031 2.988281 -5.5 3.5 -5.5 C 3.90625 -5.5 4.328125 -5.296875 4.765625 -4.890625 L 4.203125 -3.953125 C 3.828125 -4.304688 3.484375 -4.484375 3.171875 -4.484375 C 2.828125 -4.484375 2.53125 -4.316406 2.28125 -3.984375 C 2.03125 -3.660156 1.90625 -3.269531 1.90625 -2.8125 L 1.90625 0 L 0.828125 0 L 0.828125 -5.390625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-9">
<path style="stroke:none;" d="M 3.328125 -5.40625 C 4.148438 -5.40625 4.832031 -5.140625 5.375 -4.609375 C 5.914062 -4.078125 6.1875 -3.410156 6.1875 -2.609375 C 6.1875 -1.835938 5.910156 -1.191406 5.359375 -0.671875 C 4.816406 -0.160156 4.125 0.09375 3.28125 0.09375 C 2.476562 0.09375 1.804688 -0.164062 1.265625 -0.6875 C 0.722656 -1.207031 0.453125 -1.859375 0.453125 -2.640625 C 0.453125 -3.429688 0.722656 -4.085938 1.265625 -4.609375 C 1.816406 -5.140625 2.503906 -5.40625 3.328125 -5.40625 Z M 3.28125 -4.4375 C 2.769531 -4.4375 2.347656 -4.269531 2.015625 -3.9375 C 1.691406 -3.601562 1.53125 -3.175781 1.53125 -2.65625 C 1.53125 -2.132812 1.695312 -1.710938 2.03125 -1.390625 C 2.363281 -1.066406 2.796875 -0.90625 3.328125 -0.90625 C 3.847656 -0.90625 4.273438 -1.066406 4.609375 -1.390625 C 4.941406 -1.722656 5.109375 -2.148438 5.109375 -2.671875 C 5.109375 -3.179688 4.929688 -3.601562 4.578125 -3.9375 C 4.234375 -4.269531 3.800781 -4.4375 3.28125 -4.4375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-10">
<path style="stroke:none;" d="M 4.1875 0 L 4.1875 -0.6875 C 3.957031 -0.4375 3.695312 -0.242188 3.40625 -0.109375 C 3.125 0.0234375 2.835938 0.09375 2.546875 0.09375 C 2.203125 0.09375 1.882812 0.0078125 1.59375 -0.15625 C 1.3125 -0.332031 1.097656 -0.566406 0.953125 -0.859375 C 0.804688 -1.148438 0.734375 -1.628906 0.734375 -2.296875 L 0.734375 -5.390625 L 1.796875 -5.390625 L 1.796875 -2.3125 C 1.796875 -1.75 1.875 -1.351562 2.03125 -1.125 C 2.195312 -0.90625 2.484375 -0.796875 2.890625 -0.796875 C 3.398438 -0.796875 3.832031 -1.039062 4.1875 -1.53125 L 4.1875 -5.390625 L 5.25 -5.390625 L 5.25 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-11">
<path style="stroke:none;" d="M 0.484375 -3.53125 C 0.484375 -4.101562 0.691406 -4.554688 1.109375 -4.890625 C 1.523438 -5.222656 2.097656 -5.390625 2.828125 -5.390625 L 5.046875 -5.390625 L 5.046875 -4.5625 L 3.96875 -4.5625 C 4.175781 -4.34375 4.320312 -4.144531 4.40625 -3.96875 C 4.488281 -3.789062 4.53125 -3.59375 4.53125 -3.375 C 4.53125 -3.09375 4.445312 -2.816406 4.28125 -2.546875 C 4.125 -2.273438 3.914062 -2.066406 3.65625 -1.921875 C 3.40625 -1.773438 2.992188 -1.660156 2.421875 -1.578125 C 2.023438 -1.515625 1.828125 -1.375 1.828125 -1.15625 C 1.828125 -1.03125 1.898438 -0.925781 2.046875 -0.84375 C 2.203125 -0.769531 2.472656 -0.6875 2.859375 -0.59375 C 3.523438 -0.445312 3.953125 -0.332031 4.140625 -0.25 C 4.328125 -0.175781 4.5 -0.0625 4.65625 0.09375 C 4.914062 0.351562 5.046875 0.675781 5.046875 1.0625 C 5.046875 1.570312 4.816406 1.976562 4.359375 2.28125 C 3.898438 2.59375 3.289062 2.75 2.53125 2.75 C 1.757812 2.75 1.144531 2.59375 0.6875 2.28125 C 0.226562 1.976562 0 1.570312 0 1.0625 C 0 0.320312 0.453125 -0.148438 1.359375 -0.359375 C 0.992188 -0.585938 0.8125 -0.816406 0.8125 -1.046875 C 0.8125 -1.210938 0.890625 -1.363281 1.046875 -1.5 C 1.203125 -1.644531 1.410156 -1.753906 1.671875 -1.828125 C 0.878906 -2.171875 0.484375 -2.738281 0.484375 -3.53125 Z M 2.484375 -4.46875 C 2.191406 -4.46875 1.941406 -4.367188 1.734375 -4.171875 C 1.535156 -3.972656 1.4375 -3.738281 1.4375 -3.46875 C 1.4375 -3.1875 1.535156 -2.957031 1.734375 -2.78125 C 1.941406 -2.601562 2.195312 -2.515625 2.5 -2.515625 C 2.800781 -2.515625 3.050781 -2.601562 3.25 -2.78125 C 3.445312 -2.96875 3.546875 -3.203125 3.546875 -3.484375 C 3.546875 -3.765625 3.441406 -4 3.234375 -4.1875 C 3.035156 -4.375 2.785156 -4.46875 2.484375 -4.46875 Z M 2.234375 0.25 C 1.867188 0.25 1.570312 0.320312 1.34375 0.46875 C 1.125 0.625 1.015625 0.820312 1.015625 1.0625 C 1.015625 1.625 1.515625 1.90625 2.515625 1.90625 C 2.984375 1.90625 3.347656 1.832031 3.609375 1.6875 C 3.867188 1.550781 4 1.359375 4 1.109375 C 4 0.859375 3.832031 0.648438 3.5 0.484375 C 3.175781 0.328125 2.753906 0.25 2.234375 0.25 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-12">
<path style="stroke:none;" d="M 0.6875 2.75 L 0.6875 -5.390625 L 2.5625 -5.390625 C 3.507812 -5.390625 4.25 -5.148438 4.78125 -4.671875 C 5.320312 -4.203125 5.59375 -3.535156 5.59375 -2.671875 C 5.59375 -1.867188 5.335938 -1.207031 4.828125 -0.6875 C 4.328125 -0.164062 3.691406 0.09375 2.921875 0.09375 C 2.578125 0.09375 2.195312 0.015625 1.78125 -0.140625 L 1.78125 2.75 Z M 2.53125 -4.390625 L 1.78125 -4.390625 L 1.78125 -1.078125 C 2.101562 -0.910156 2.445312 -0.828125 2.8125 -0.828125 C 3.3125 -0.828125 3.71875 -1 4.03125 -1.34375 C 4.351562 -1.695312 4.515625 -2.144531 4.515625 -2.6875 C 4.515625 -3.039062 4.4375 -3.351562 4.28125 -3.625 C 4.132812 -3.894531 3.929688 -4.085938 3.671875 -4.203125 C 3.410156 -4.328125 3.03125 -4.390625 2.53125 -4.390625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-13">
<path style="stroke:none;" d="M 0 -4.53125 L 2 -6.5 L 2 -5.390625 L 3.703125 -5.390625 L 3.703125 -4.4375 L 2 -4.4375 L 2 -1.78125 C 2 -1.164062 2.253906 -0.859375 2.765625 -0.859375 C 3.148438 -0.859375 3.554688 -0.988281 3.984375 -1.25 L 3.984375 -0.25 C 3.578125 -0.0195312 3.128906 0.09375 2.640625 0.09375 C 2.148438 0.09375 1.742188 -0.046875 1.421875 -0.328125 C 1.316406 -0.421875 1.234375 -0.519531 1.171875 -0.625 C 1.109375 -0.726562 1.050781 -0.867188 1 -1.046875 C 0.957031 -1.222656 0.9375 -1.554688 0.9375 -2.046875 L 0.9375 -4.4375 L 0 -4.4375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-14">
<path style="stroke:none;" d=""/>
</symbol>
<symbol overflow="visible" id="glyph0-15">
<path style="stroke:none;" d="M 1.03125 -8.1875 L 3.828125 -8.1875 L 3.828125 -7.21875 L 2.1875 -7.21875 L 2.1875 1.6875 L 3.828125 1.6875 L 3.828125 2.640625 L 1.03125 2.640625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-16">
<path style="stroke:none;" d="M 7.421875 -8.1875 L 8.515625 -8.1875 L 8.515625 0 L 7.328125 0 L 7.328125 -6.375 L 4.8125 -3.203125 L 4.59375 -3.203125 L 2.046875 -6.375 L 2.046875 0 L 0.875 0 L 0.875 -8.1875 L 1.984375 -8.1875 L 4.703125 -4.828125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-17">
<path style="stroke:none;" d="M 1.828125 -5.390625 L 1.828125 -4.703125 C 2.296875 -5.234375 2.835938 -5.5 3.453125 -5.5 C 3.785156 -5.5 4.09375 -5.410156 4.375 -5.234375 C 4.664062 -5.054688 4.882812 -4.816406 5.03125 -4.515625 C 5.1875 -4.210938 5.265625 -3.734375 5.265625 -3.078125 L 5.265625 0 L 4.203125 0 L 4.203125 -3.078125 C 4.203125 -3.617188 4.117188 -4.007812 3.953125 -4.25 C 3.785156 -4.488281 3.503906 -4.609375 3.109375 -4.609375 C 2.597656 -4.609375 2.171875 -4.351562 1.828125 -3.84375 L 1.828125 0 L 0.734375 0 L 0.734375 -5.390625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-18">
<path style="stroke:none;" d="M 5.171875 -3.921875 L 5.171875 0 L 4.109375 0 L 4.109375 -3 C 4.109375 -3.59375 4.023438 -4.007812 3.859375 -4.25 C 3.703125 -4.488281 3.425781 -4.609375 3.03125 -4.609375 C 2.800781 -4.609375 2.59375 -4.554688 2.40625 -4.453125 C 2.226562 -4.347656 2.019531 -4.171875 1.78125 -3.921875 L 1.78125 0 L 0.703125 0 L 0.703125 -5.390625 L 1.78125 -5.390625 L 1.78125 -4.6875 C 2.320312 -5.226562 2.851562 -5.5 3.375 -5.5 C 4.050781 -5.5 4.578125 -5.175781 4.953125 -4.53125 C 5.523438 -5.1875 6.125 -5.515625 6.75 -5.515625 C 7.269531 -5.515625 7.695312 -5.320312 8.03125 -4.9375 C 8.375 -4.550781 8.546875 -3.96875 8.546875 -3.1875 L 8.546875 0 L 7.484375 0 L 7.484375 -3.1875 C 7.484375 -3.644531 7.390625 -3.988281 7.203125 -4.21875 C 7.015625 -4.457031 6.75 -4.578125 6.40625 -4.578125 C 5.96875 -4.578125 5.554688 -4.359375 5.171875 -3.921875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-19">
<path style="stroke:none;" d="M 0.703125 -8.1875 L 1.78125 -8.1875 L 1.78125 -5 C 2.238281 -5.34375 2.726562 -5.515625 3.25 -5.515625 C 3.9375 -5.515625 4.492188 -5.253906 4.921875 -4.734375 C 5.359375 -4.222656 5.578125 -3.5625 5.578125 -2.75 C 5.578125 -1.882812 5.316406 -1.191406 4.796875 -0.671875 C 4.285156 -0.160156 3.59375 0.09375 2.71875 0.09375 C 2.375 0.09375 2.007812 0.0546875 1.625 -0.015625 C 1.238281 -0.0859375 0.929688 -0.179688 0.703125 -0.296875 Z M 1.78125 -3.984375 L 1.78125 -1.0625 C 2.144531 -0.957031 2.515625 -0.90625 2.890625 -0.90625 C 3.367188 -0.90625 3.753906 -1.070312 4.046875 -1.40625 C 4.347656 -1.738281 4.5 -2.171875 4.5 -2.703125 C 4.5 -3.234375 4.359375 -3.664062 4.078125 -4 C 3.796875 -4.34375 3.429688 -4.515625 2.984375 -4.515625 C 2.585938 -4.515625 2.1875 -4.335938 1.78125 -3.984375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-20">
<path style="stroke:none;" d="M 5.34375 -2.609375 L 1.5625 -2.609375 C 1.582031 -2.085938 1.753906 -1.675781 2.078125 -1.375 C 2.398438 -1.070312 2.8125 -0.921875 3.3125 -0.921875 C 4.007812 -0.921875 4.65625 -1.140625 5.25 -1.578125 L 5.25 -0.53125 C 4.925781 -0.3125 4.601562 -0.15625 4.28125 -0.0625 C 3.957031 0.03125 3.578125 0.078125 3.140625 0.078125 C 2.546875 0.078125 2.066406 -0.0390625 1.703125 -0.28125 C 1.335938 -0.53125 1.046875 -0.863281 0.828125 -1.28125 C 0.609375 -1.695312 0.5 -2.175781 0.5 -2.71875 C 0.5 -3.539062 0.726562 -4.207031 1.1875 -4.71875 C 1.65625 -5.238281 2.257812 -5.5 3 -5.5 C 3.71875 -5.5 4.285156 -5.25 4.703125 -4.75 C 5.128906 -4.25 5.34375 -3.578125 5.34375 -2.734375 Z M 1.578125 -3.234375 L 4.296875 -3.234375 C 4.265625 -3.660156 4.132812 -3.988281 3.90625 -4.21875 C 3.6875 -4.457031 3.382812 -4.578125 3 -4.578125 C 2.613281 -4.578125 2.296875 -4.457031 2.046875 -4.21875 C 1.804688 -3.988281 1.648438 -3.660156 1.578125 -3.234375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-21">
<path style="stroke:none;" d="M 0.5 -0.390625 L 0.5 -1.53125 C 0.789062 -1.320312 1.09375 -1.148438 1.40625 -1.015625 C 1.726562 -0.890625 1.992188 -0.828125 2.203125 -0.828125 C 2.429688 -0.828125 2.625 -0.878906 2.78125 -0.984375 C 2.945312 -1.097656 3.03125 -1.234375 3.03125 -1.390625 C 3.03125 -1.546875 2.976562 -1.671875 2.875 -1.765625 C 2.769531 -1.867188 2.546875 -2.019531 2.203125 -2.21875 C 1.515625 -2.601562 1.0625 -2.929688 0.84375 -3.203125 C 0.632812 -3.472656 0.53125 -3.769531 0.53125 -4.09375 C 0.53125 -4.507812 0.691406 -4.847656 1.015625 -5.109375 C 1.335938 -5.367188 1.75 -5.5 2.25 -5.5 C 2.78125 -5.5 3.320312 -5.347656 3.875 -5.046875 L 3.875 -4 C 3.25 -4.382812 2.734375 -4.578125 2.328125 -4.578125 C 2.117188 -4.578125 1.953125 -4.53125 1.828125 -4.4375 C 1.703125 -4.351562 1.640625 -4.238281 1.640625 -4.09375 C 1.640625 -3.96875 1.695312 -3.847656 1.8125 -3.734375 C 1.925781 -3.617188 2.128906 -3.484375 2.421875 -3.328125 L 2.796875 -3.109375 C 3.691406 -2.597656 4.140625 -2.035156 4.140625 -1.421875 C 4.140625 -0.972656 3.96875 -0.609375 3.625 -0.328125 C 3.28125 -0.046875 2.835938 0.09375 2.296875 0.09375 C 1.972656 0.09375 1.6875 0.0625 1.4375 0 C 1.1875 -0.0703125 0.875 -0.203125 0.5 -0.390625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-22">
<path style="stroke:none;" d="M 2.96875 2.640625 L 0.1875 2.640625 L 0.1875 1.6875 L 1.8125 1.6875 L 1.8125 -7.21875 L 0.1875 -7.21875 L 0.1875 -8.1875 L 2.96875 -8.1875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-23">
<path style="stroke:none;" d="M 4.140625 -3.234375 L 4.140625 -0.953125 C 4.140625 -0.765625 4.203125 -0.671875 4.328125 -0.671875 C 4.460938 -0.671875 4.664062 -0.769531 4.9375 -0.96875 L 4.9375 -0.3125 C 4.695312 -0.15625 4.5 -0.0507812 4.34375 0 C 4.195312 0.0625 4.046875 0.09375 3.890625 0.09375 C 3.429688 0.09375 3.160156 -0.0859375 3.078125 -0.453125 C 2.628906 -0.0976562 2.148438 0.078125 1.640625 0.078125 C 1.265625 0.078125 0.953125 -0.0390625 0.703125 -0.28125 C 0.453125 -0.53125 0.328125 -0.84375 0.328125 -1.21875 C 0.328125 -1.5625 0.445312 -1.863281 0.6875 -2.125 C 0.9375 -2.394531 1.285156 -2.609375 1.734375 -2.765625 L 3.09375 -3.234375 L 3.09375 -3.53125 C 3.09375 -4.175781 2.769531 -4.5 2.125 -4.5 C 1.539062 -4.5 0.972656 -4.195312 0.421875 -3.59375 L 0.421875 -4.765625 C 0.835938 -5.253906 1.429688 -5.5 2.203125 -5.5 C 2.785156 -5.5 3.253906 -5.347656 3.609375 -5.046875 C 3.722656 -4.941406 3.828125 -4.804688 3.921875 -4.640625 C 4.015625 -4.484375 4.070312 -4.320312 4.09375 -4.15625 C 4.125 -4 4.140625 -3.691406 4.140625 -3.234375 Z M 3.09375 -1.0625 L 3.09375 -2.671875 L 2.375 -2.390625 C 2.007812 -2.242188 1.753906 -2.097656 1.609375 -1.953125 C 1.460938 -1.804688 1.390625 -1.625 1.390625 -1.40625 C 1.390625 -1.1875 1.457031 -1.003906 1.59375 -0.859375 C 1.738281 -0.722656 1.925781 -0.65625 2.15625 -0.65625 C 2.488281 -0.65625 2.800781 -0.789062 3.09375 -1.0625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-24">
<path style="stroke:none;" d="M 3.078125 -8.296875 L 3.734375 -8.296875 C 3.242188 -7.566406 2.890625 -6.941406 2.671875 -6.421875 C 2.453125 -5.910156 2.285156 -5.320312 2.171875 -4.65625 C 2.054688 -3.988281 2 -3.34375 2 -2.71875 C 2 -0.59375 2.578125 1.226562 3.734375 2.75 L 3.078125 2.75 L 2.890625 2.53125 C 2.453125 2 2.125 1.5625 1.90625 1.21875 C 1.695312 0.882812 1.488281 0.445312 1.28125 -0.09375 C 0.9375 -0.96875 0.765625 -1.859375 0.765625 -2.765625 C 0.765625 -3.679688 0.929688 -4.566406 1.265625 -5.421875 C 1.609375 -6.285156 2.210938 -7.242188 3.078125 -8.296875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-25">
<path style="stroke:none;" d="M 5.328125 -4.03125 L 8.078125 -4.03125 L 8.078125 -0.5625 C 7.066406 -0.125 6.066406 0.09375 5.078125 0.09375 C 3.722656 0.09375 2.640625 -0.300781 1.828125 -1.09375 C 1.015625 -1.882812 0.609375 -2.859375 0.609375 -4.015625 C 0.609375 -5.242188 1.023438 -6.265625 1.859375 -7.078125 C 2.703125 -7.890625 3.757812 -8.296875 5.03125 -8.296875 C 5.488281 -8.296875 5.925781 -8.242188 6.34375 -8.140625 C 6.757812 -8.046875 7.28125 -7.863281 7.90625 -7.59375 L 7.90625 -6.40625 C 6.9375 -6.96875 5.96875 -7.25 5 -7.25 C 4.101562 -7.25 3.347656 -6.941406 2.734375 -6.328125 C 2.128906 -5.722656 1.828125 -4.976562 1.828125 -4.09375 C 1.828125 -3.164062 2.128906 -2.40625 2.734375 -1.8125 C 3.347656 -1.21875 4.140625 -0.921875 5.109375 -0.921875 C 5.578125 -0.921875 6.140625 -1.03125 6.796875 -1.25 L 6.90625 -1.28125 L 6.90625 -2.984375 L 5.328125 -2.984375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-26">
<path style="stroke:none;" d="M 4.796875 -1.265625 L 4.796875 -0.203125 C 4.265625 -0.00390625 3.742188 0.09375 3.234375 0.09375 C 2.390625 0.09375 1.710938 -0.15625 1.203125 -0.65625 C 0.703125 -1.15625 0.453125 -1.828125 0.453125 -2.671875 C 0.453125 -3.515625 0.695312 -4.195312 1.1875 -4.71875 C 1.675781 -5.238281 2.320312 -5.5 3.125 -5.5 C 3.394531 -5.5 3.640625 -5.472656 3.859375 -5.421875 C 4.085938 -5.367188 4.363281 -5.269531 4.6875 -5.125 L 4.6875 -3.984375 C 4.144531 -4.328125 3.644531 -4.5 3.1875 -4.5 C 2.707031 -4.5 2.3125 -4.328125 2 -3.984375 C 1.6875 -3.648438 1.53125 -3.222656 1.53125 -2.703125 C 1.53125 -2.148438 1.695312 -1.710938 2.03125 -1.390625 C 2.363281 -1.066406 2.816406 -0.90625 3.390625 -0.90625 C 3.796875 -0.90625 4.265625 -1.023438 4.796875 -1.265625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-27">
<path style="stroke:none;" d="M 0.78125 -8.1875 L 1.84375 -8.1875 L 1.84375 0 L 0.78125 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-28">
<path style="stroke:none;" d="M 0.796875 2.75 L 0.140625 2.75 C 0.648438 1.976562 1.007812 1.328125 1.21875 0.796875 C 1.4375 0.265625 1.597656 -0.316406 1.703125 -0.953125 C 1.816406 -1.597656 1.875 -2.210938 1.875 -2.796875 C 1.875 -3.472656 1.8125 -4.128906 1.6875 -4.765625 C 1.5625 -5.398438 1.375 -6.003906 1.125 -6.578125 C 0.882812 -7.148438 0.554688 -7.722656 0.140625 -8.296875 L 0.796875 -8.296875 L 0.984375 -8.078125 C 1.421875 -7.554688 1.742188 -7.125 1.953125 -6.78125 C 2.171875 -6.445312 2.382812 -6.003906 2.59375 -5.453125 C 2.9375 -4.585938 3.109375 -3.691406 3.109375 -2.765625 C 3.109375 -1.890625 2.953125 -1.039062 2.640625 -0.21875 C 2.492188 0.1875 2.300781 0.585938 2.0625 0.984375 C 1.832031 1.390625 1.410156 1.976562 0.796875 2.75 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-29">
<path style="stroke:none;" d="M 4.359375 -8.1875 L 5.421875 -8.1875 L 5.421875 0 L 3.140625 0 C 2.347656 0 1.710938 -0.25 1.234375 -0.75 C 0.765625 -1.257812 0.53125 -1.9375 0.53125 -2.78125 C 0.53125 -3.570312 0.773438 -4.222656 1.265625 -4.734375 C 1.765625 -5.253906 2.40625 -5.515625 3.1875 -5.515625 C 3.539062 -5.515625 3.929688 -5.4375 4.359375 -5.28125 Z M 4.359375 -0.921875 L 4.359375 -4.328125 C 4.023438 -4.492188 3.6875 -4.578125 3.34375 -4.578125 C 2.8125 -4.578125 2.390625 -4.40625 2.078125 -4.0625 C 1.765625 -3.71875 1.609375 -3.25 1.609375 -2.65625 C 1.609375 -2.101562 1.742188 -1.675781 2.015625 -1.375 C 2.179688 -1.195312 2.351562 -1.078125 2.53125 -1.015625 C 2.71875 -0.953125 3.050781 -0.921875 3.53125 -0.921875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-30">
<path style="stroke:none;" d="M 0.59375 1.421875 L 0.59375 1.203125 C 0.757812 1.035156 0.878906 0.863281 0.953125 0.6875 C 1.023438 0.519531 1.066406 0.289062 1.078125 0 C 0.660156 -0.125 0.453125 -0.378906 0.453125 -0.765625 C 0.453125 -0.972656 0.523438 -1.15625 0.671875 -1.3125 C 0.816406 -1.46875 0.984375 -1.546875 1.171875 -1.546875 C 1.410156 -1.546875 1.609375 -1.441406 1.765625 -1.234375 C 1.921875 -1.023438 2 -0.753906 2 -0.421875 C 2 0.015625 1.875 0.394531 1.625 0.71875 C 1.375 1.050781 1.03125 1.285156 0.59375 1.421875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-31">
<path style="stroke:none;" d="M 4.0625 -5.390625 L 5.25 -5.390625 L 1.4375 2.75 L 0.25 2.75 L 2.09375 -1.15625 L 0 -5.390625 L 1.21875 -5.390625 L 2.671875 -2.34375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-32">
<path style="stroke:none;" d="M 0.84375 0 L 0.84375 -8.203125 L 3.4375 -8.203125 C 4.21875 -8.203125 4.835938 -7.988281 5.296875 -7.5625 C 5.765625 -7.144531 6 -6.578125 6 -5.859375 C 6 -5.390625 5.878906 -4.96875 5.640625 -4.59375 C 5.398438 -4.226562 5.070312 -3.960938 4.65625 -3.796875 C 4.25 -3.628906 3.660156 -3.546875 2.890625 -3.546875 L 2.015625 -3.546875 L 2.015625 0 Z M 3.234375 -7.15625 L 2.015625 -7.15625 L 2.015625 -4.59375 L 3.296875 -4.59375 C 3.773438 -4.59375 4.140625 -4.703125 4.390625 -4.921875 C 4.648438 -5.148438 4.78125 -5.472656 4.78125 -5.890625 C 4.78125 -6.734375 4.265625 -7.15625 3.234375 -7.15625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-33">
<path style="stroke:none;" d="M 1.3125 -7.65625 C 1.488281 -7.65625 1.640625 -7.59375 1.765625 -7.46875 C 1.890625 -7.351562 1.953125 -7.207031 1.953125 -7.03125 C 1.953125 -6.863281 1.890625 -6.71875 1.765625 -6.59375 C 1.640625 -6.46875 1.488281 -6.40625 1.3125 -6.40625 C 1.144531 -6.40625 1 -6.46875 0.875 -6.59375 C 0.75 -6.71875 0.6875 -6.863281 0.6875 -7.03125 C 0.6875 -7.195312 0.75 -7.34375 0.875 -7.46875 C 1 -7.59375 1.144531 -7.65625 1.3125 -7.65625 Z M 0.78125 -5.390625 L 1.84375 -5.390625 L 1.84375 0 L 0.78125 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph0-34">
<path style="stroke:none;" d="M 7.484375 -5.390625 L 8.625 -5.390625 L 6.25 0.09375 L 5.921875 0.09375 L 4.3125 -3.65625 L 2.75 0.09375 L 2.40625 0.09375 L 0 -5.390625 L 1.140625 -5.390625 L 2.5625 -2.125 L 3.921875 -5.390625 L 4.71875 -5.390625 L 6.078125 -2.125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-0">
<path style="stroke:none;" d="M 2.125 0 L 2.125 -12.75 L 14.875 -12.75 L 14.875 0 Z M 3.1875 -1.0625 L 13.8125 -1.0625 L 13.8125 -11.6875 L 3.1875 -11.6875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-1">
<path style="stroke:none;" d="M 4.15625 -4.859375 L 2.890625 -5.625 C 2.097656 -6.101562 1.535156 -6.578125 1.203125 -7.046875 C 0.867188 -7.515625 0.703125 -8.054688 0.703125 -8.671875 C 0.703125 -9.578125 1.015625 -10.316406 1.640625 -10.890625 C 2.273438 -11.460938 3.101562 -11.75 4.125 -11.75 C 5.082031 -11.75 5.96875 -11.476562 6.78125 -10.9375 L 6.78125 -9.046875 C 5.945312 -9.847656 5.046875 -10.25 4.078125 -10.25 C 3.535156 -10.25 3.085938 -10.125 2.734375 -9.875 C 2.390625 -9.625 2.21875 -9.300781 2.21875 -8.90625 C 2.21875 -8.5625 2.34375 -8.234375 2.59375 -7.921875 C 2.851562 -7.617188 3.269531 -7.300781 3.84375 -6.96875 L 5.109375 -6.21875 C 6.523438 -5.382812 7.234375 -4.3125 7.234375 -3 C 7.234375 -2.070312 6.921875 -1.316406 6.296875 -0.734375 C 5.679688 -0.148438 4.875 0.140625 3.875 0.140625 C 2.726562 0.140625 1.6875 -0.210938 0.75 -0.921875 L 0.75 -3.03125 C 1.644531 -1.894531 2.679688 -1.328125 3.859375 -1.328125 C 4.378906 -1.328125 4.8125 -1.472656 5.15625 -1.765625 C 5.5 -2.054688 5.671875 -2.421875 5.671875 -2.859375 C 5.671875 -3.566406 5.164062 -4.234375 4.15625 -4.859375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-2">
<path style="stroke:none;" d="M 4.71875 -7.65625 C 5.882812 -7.65625 6.851562 -7.28125 7.625 -6.53125 C 8.394531 -5.78125 8.78125 -4.835938 8.78125 -3.703125 C 8.78125 -2.597656 8.390625 -1.679688 7.609375 -0.953125 C 6.828125 -0.222656 5.84375 0.140625 4.65625 0.140625 C 3.507812 0.140625 2.550781 -0.226562 1.78125 -0.96875 C 1.007812 -1.707031 0.625 -2.632812 0.625 -3.75 C 0.625 -4.863281 1.015625 -5.789062 1.796875 -6.53125 C 2.578125 -7.28125 3.550781 -7.65625 4.71875 -7.65625 Z M 4.640625 -6.296875 C 3.910156 -6.296875 3.3125 -6.054688 2.84375 -5.578125 C 2.382812 -5.097656 2.15625 -4.492188 2.15625 -3.765625 C 2.15625 -3.035156 2.394531 -2.4375 2.875 -1.96875 C 3.351562 -1.507812 3.960938 -1.28125 4.703125 -1.28125 C 5.441406 -1.28125 6.046875 -1.515625 6.515625 -1.984375 C 6.992188 -2.453125 7.234375 -3.050781 7.234375 -3.78125 C 7.234375 -4.5 6.988281 -5.097656 6.5 -5.578125 C 6.007812 -6.054688 5.390625 -6.296875 4.640625 -6.296875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-3">
<path style="stroke:none;" d="M 1.109375 -11.59375 L 2.609375 -11.59375 L 2.609375 0 L 1.109375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-4">
<path style="stroke:none;" d="M 5.9375 0 L 5.9375 -0.96875 C 5.613281 -0.625 5.242188 -0.351562 4.828125 -0.15625 C 4.421875 0.0390625 4.015625 0.140625 3.609375 0.140625 C 3.117188 0.140625 2.671875 0.0195312 2.265625 -0.21875 C 1.859375 -0.46875 1.550781 -0.796875 1.34375 -1.203125 C 1.132812 -1.617188 1.03125 -2.304688 1.03125 -3.265625 L 1.03125 -7.640625 L 2.546875 -7.640625 L 2.546875 -3.28125 C 2.546875 -2.476562 2.660156 -1.914062 2.890625 -1.59375 C 3.117188 -1.28125 3.519531 -1.125 4.09375 -1.125 C 4.820312 -1.125 5.4375 -1.472656 5.9375 -2.171875 L 5.9375 -7.640625 L 7.453125 -7.640625 L 7.453125 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-5">
<path style="stroke:none;" d="M 0 -6.421875 L 2.84375 -9.21875 L 2.84375 -7.640625 L 5.25 -7.640625 L 5.25 -6.28125 L 2.84375 -6.28125 L 2.84375 -2.53125 C 2.84375 -1.65625 3.203125 -1.21875 3.921875 -1.21875 C 4.460938 -1.21875 5.035156 -1.398438 5.640625 -1.765625 L 5.640625 -0.359375 C 5.054688 -0.0234375 4.425781 0.140625 3.75 0.140625 C 3.050781 0.140625 2.472656 -0.0625 2.015625 -0.46875 C 1.867188 -0.59375 1.75 -0.726562 1.65625 -0.875 C 1.5625 -1.03125 1.484375 -1.226562 1.421875 -1.46875 C 1.359375 -1.71875 1.328125 -2.191406 1.328125 -2.890625 L 1.328125 -6.28125 L 0 -6.28125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-6">
<path style="stroke:none;" d="M 1.84375 -10.84375 C 2.09375 -10.84375 2.304688 -10.753906 2.484375 -10.578125 C 2.660156 -10.410156 2.75 -10.207031 2.75 -9.96875 C 2.75 -9.71875 2.660156 -9.503906 2.484375 -9.328125 C 2.304688 -9.148438 2.09375 -9.0625 1.84375 -9.0625 C 1.613281 -9.0625 1.410156 -9.148438 1.234375 -9.328125 C 1.054688 -9.515625 0.96875 -9.726562 0.96875 -9.96875 C 0.96875 -10.195312 1.054688 -10.398438 1.234375 -10.578125 C 1.410156 -10.753906 1.613281 -10.84375 1.84375 -10.84375 Z M 1.109375 -7.640625 L 2.609375 -7.640625 L 2.609375 0 L 1.109375 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph1-7">
<path style="stroke:none;" d="M 2.578125 -7.640625 L 2.578125 -6.671875 C 3.253906 -7.410156 4.019531 -7.78125 4.875 -7.78125 C 5.351562 -7.78125 5.796875 -7.65625 6.203125 -7.40625 C 6.617188 -7.164062 6.929688 -6.832031 7.140625 -6.40625 C 7.359375 -5.976562 7.46875 -5.296875 7.46875 -4.359375 L 7.46875 0 L 5.953125 0 L 5.953125 -4.34375 C 5.953125 -5.125 5.832031 -5.679688 5.59375 -6.015625 C 5.351562 -6.359375 4.957031 -6.53125 4.40625 -6.53125 C 3.6875 -6.53125 3.078125 -6.171875 2.578125 -5.453125 L 2.578125 0 L 1.03125 0 L 1.03125 -7.640625 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-0">
<path style="stroke:none;" d="M 0.75 0 L 0.75 -4.5 L 5.25 -4.5 L 5.25 0 Z M 1.125 -0.375 L 4.875 -0.375 L 4.875 -4.125 L 1.125 -4.125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-1">
<path style="stroke:none;" d="M 1.21875 -4.09375 L 1.796875 -4.09375 L 1.796875 0 L 1.21875 0 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-2">
<path style="stroke:none;" d="M 1.53125 -4.140625 C 1.90625 -4.140625 2.210938 -3.941406 2.453125 -3.546875 C 2.703125 -3.160156 2.828125 -2.664062 2.828125 -2.0625 C 2.828125 -1.4375 2.703125 -0.925781 2.453125 -0.53125 C 2.210938 -0.144531 1.894531 0.046875 1.5 0.046875 C 1.101562 0.046875 0.785156 -0.144531 0.546875 -0.53125 C 0.304688 -0.914062 0.1875 -1.421875 0.1875 -2.046875 C 0.1875 -2.671875 0.304688 -3.175781 0.546875 -3.5625 C 0.796875 -3.945312 1.125 -4.140625 1.53125 -4.140625 Z M 1.53125 -3.59375 L 1.5 -3.59375 C 1.269531 -3.59375 1.085938 -3.453125 0.953125 -3.171875 C 0.828125 -2.898438 0.765625 -2.523438 0.765625 -2.046875 C 0.765625 -1.566406 0.828125 -1.1875 0.953125 -0.90625 C 1.085938 -0.632812 1.269531 -0.5 1.5 -0.5 C 1.71875 -0.5 1.894531 -0.632812 2.03125 -0.90625 C 2.164062 -1.1875 2.234375 -1.5625 2.234375 -2.03125 C 2.234375 -2.507812 2.164062 -2.890625 2.03125 -3.171875 C 1.90625 -3.453125 1.738281 -3.59375 1.53125 -3.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-3">
<path style="stroke:none;" d="M 1.84375 -4.109375 L 1.90625 -4.140625 L 2.25 -3.703125 C 1.9375 -3.492188 1.675781 -3.269531 1.46875 -3.03125 C 1.269531 -2.800781 1.113281 -2.523438 1 -2.203125 C 1.21875 -2.304688 1.4375 -2.359375 1.65625 -2.359375 C 1.976562 -2.359375 2.25 -2.242188 2.46875 -2.015625 C 2.6875 -1.785156 2.796875 -1.507812 2.796875 -1.1875 C 2.796875 -0.84375 2.675781 -0.550781 2.4375 -0.3125 C 2.195312 -0.0703125 1.90625 0.046875 1.5625 0.046875 C 1.175781 0.046875 0.863281 -0.0859375 0.625 -0.359375 C 0.382812 -0.628906 0.265625 -0.984375 0.265625 -1.421875 C 0.265625 -1.742188 0.328125 -2.066406 0.453125 -2.390625 C 0.578125 -2.722656 0.753906 -3.03125 0.984375 -3.3125 C 1.210938 -3.59375 1.5 -3.859375 1.84375 -4.109375 Z M 0.875 -1.59375 C 0.863281 -1.5 0.859375 -1.394531 0.859375 -1.28125 C 0.859375 -1.050781 0.921875 -0.863281 1.046875 -0.71875 C 1.179688 -0.570312 1.351562 -0.5 1.5625 -0.5 C 1.75 -0.5 1.90625 -0.5625 2.03125 -0.6875 C 2.15625 -0.8125 2.21875 -0.96875 2.21875 -1.15625 C 2.21875 -1.351562 2.148438 -1.515625 2.015625 -1.640625 C 1.890625 -1.765625 1.71875 -1.828125 1.5 -1.828125 C 1.394531 -1.828125 1.296875 -1.804688 1.203125 -1.765625 C 1.117188 -1.734375 1.007812 -1.675781 0.875 -1.59375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-4">
<path style="stroke:none;" d="M 1.234375 -0.5625 L 2.796875 -0.5625 L 2.796875 0 L 0.203125 0 L 0.203125 -0.046875 L 0.453125 -0.328125 C 0.835938 -0.804688 1.144531 -1.210938 1.375 -1.546875 C 1.601562 -1.878906 1.75 -2.128906 1.8125 -2.296875 C 1.882812 -2.460938 1.921875 -2.628906 1.921875 -2.796875 C 1.921875 -3.023438 1.851562 -3.207031 1.71875 -3.34375 C 1.59375 -3.488281 1.421875 -3.5625 1.203125 -3.5625 C 1.035156 -3.5625 0.875 -3.515625 0.71875 -3.421875 C 0.5625 -3.328125 0.414062 -3.191406 0.28125 -3.015625 L 0.28125 -3.75 C 0.601562 -4.007812 0.929688 -4.140625 1.265625 -4.140625 C 1.628906 -4.140625 1.925781 -4.019531 2.15625 -3.78125 C 2.382812 -3.550781 2.5 -3.25 2.5 -2.875 C 2.5 -2.71875 2.46875 -2.546875 2.40625 -2.359375 C 2.351562 -2.171875 2.253906 -1.953125 2.109375 -1.703125 C 1.960938 -1.460938 1.710938 -1.132812 1.359375 -0.71875 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-5">
<path style="stroke:none;" d="M 0.296875 -4.09375 L 2.9375 -4.09375 L 1.09375 0.046875 L 0.5625 -0.171875 L 2.0625 -3.53125 L 0.296875 -3.53125 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-6">
<path style="stroke:none;" d="M 2.125 -4.140625 L 2.375 -4.140625 L 2.375 -1.84375 L 2.828125 -1.84375 L 2.828125 -1.34375 L 2.375 -1.34375 L 2.375 0 L 1.796875 0 L 1.796875 -1.34375 L 0.0625 -1.34375 L 0.0625 -1.609375 Z M 1.796875 -1.84375 L 1.796875 -3.03125 L 0.859375 -1.84375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-7">
<path style="stroke:none;" d="M 1.078125 -2.375 L 1.109375 -2.375 C 1.367188 -2.375 1.566406 -2.425781 1.703125 -2.53125 C 1.835938 -2.644531 1.90625 -2.800781 1.90625 -3 C 1.90625 -3.175781 1.835938 -3.320312 1.703125 -3.4375 C 1.578125 -3.550781 1.410156 -3.609375 1.203125 -3.609375 C 0.984375 -3.609375 0.742188 -3.539062 0.484375 -3.40625 L 0.484375 -3.96875 C 0.722656 -4.09375 0.984375 -4.15625 1.265625 -4.15625 C 1.640625 -4.15625 1.9375 -4.054688 2.15625 -3.859375 C 2.375 -3.660156 2.484375 -3.390625 2.484375 -3.046875 C 2.484375 -2.835938 2.441406 -2.660156 2.359375 -2.515625 C 2.273438 -2.378906 2.140625 -2.257812 1.953125 -2.15625 C 2.117188 -2.09375 2.238281 -2.015625 2.3125 -1.921875 C 2.382812 -1.835938 2.441406 -1.726562 2.484375 -1.59375 C 2.523438 -1.46875 2.546875 -1.332031 2.546875 -1.1875 C 2.546875 -0.832031 2.425781 -0.535156 2.1875 -0.296875 C 1.945312 -0.0664062 1.644531 0.046875 1.28125 0.046875 C 0.96875 0.046875 0.671875 -0.0234375 0.390625 -0.171875 L 0.390625 -0.8125 C 0.691406 -0.625 0.988281 -0.53125 1.28125 -0.53125 C 1.476562 -0.53125 1.632812 -0.585938 1.75 -0.703125 C 1.875 -0.816406 1.9375 -0.972656 1.9375 -1.171875 C 1.9375 -1.328125 1.890625 -1.46875 1.796875 -1.59375 C 1.734375 -1.664062 1.664062 -1.71875 1.59375 -1.75 C 1.519531 -1.78125 1.367188 -1.8125 1.140625 -1.84375 L 1.078125 -1.84375 Z "/>
</symbol>
<symbol overflow="visible" id="glyph2-8">
<path style="stroke:none;" d="M 0.28125 -3 C 0.28125 -3.3125 0.398438 -3.578125 0.640625 -3.796875 C 0.890625 -4.023438 1.1875 -4.140625 1.53125 -4.140625 C 1.875 -4.140625 2.160156 -4.03125 2.390625 -3.8125 C 2.628906 -3.59375 2.75 -3.320312 2.75 -3 C 2.75 -2.632812 2.578125 -2.332031 2.234375 -2.09375 C 2.617188 -1.875 2.8125 -1.550781 2.8125 -1.125 C 2.8125 -0.78125 2.6875 -0.5 2.4375 -0.28125 C 2.1875 -0.0625 1.875 0.046875 1.5 0.046875 C 1.132812 0.046875 0.820312 -0.0625 0.5625 -0.28125 C 0.3125 -0.507812 0.1875 -0.789062 0.1875 -1.125 C 0.1875 -1.539062 0.382812 -1.863281 0.78125 -2.09375 C 0.601562 -2.226562 0.472656 -2.363281 0.390625 -2.5 C 0.316406 -2.644531 0.28125 -2.8125 0.28125 -3 Z M 2.171875 -2.984375 C 2.171875 -3.160156 2.109375 -3.304688 1.984375 -3.421875 C 1.859375 -3.535156 1.703125 -3.59375 1.515625 -3.59375 C 1.328125 -3.59375 1.171875 -3.535156 1.046875 -3.421875 C 0.929688 -3.304688 0.875 -3.160156 0.875 -2.984375 C 0.875 -2.816406 0.9375 -2.671875 1.0625 -2.546875 C 1.1875 -2.421875 1.34375 -2.359375 1.53125 -2.359375 C 1.707031 -2.359375 1.859375 -2.414062 1.984375 -2.53125 C 2.109375 -2.65625 2.171875 -2.804688 2.171875 -2.984375 Z M 2.21875 -1.09375 L 2.21875 -1.15625 C 2.21875 -1.34375 2.148438 -1.492188 2.015625 -1.609375 C 1.878906 -1.734375 1.707031 -1.796875 1.5 -1.796875 C 1.289062 -1.796875 1.117188 -1.734375 0.984375 -1.609375 C 0.847656 -1.492188 0.78125 -1.34375 0.78125 -1.15625 C 0.78125 -0.96875 0.847656 -0.8125 0.984375 -0.6875 C 1.117188 -0.570312 1.296875 -0.515625 1.515625 -0.515625 C 1.710938 -0.515625 1.878906 -0.566406 2.015625 -0.671875 C 2.148438 -0.785156 2.21875 -0.925781 2.21875 -1.09375 Z "/>
</symbol>
</g>
<clipPath id="clip1">
<path d="M 159 290 L 562.601562 290 L 562.601562 292 L 159 292 Z "/>
</clipPath>
<clipPath id="clip2">
<path d="M 159 240 L 562.601562 240 L 562.601562 241 L 159 241 Z "/>
</clipPath>
<clipPath id="clip3">
<path d="M 159 189 L 562.601562 189 L 562.601562 191 L 159 191 Z "/>
</clipPath>
<clipPath id="clip4">
<path d="M 159 139 L 562.601562 139 L 562.601562 141 L 159 141 Z "/>
</clipPath>
<clipPath id="clip5">
<path d="M 159 88 L 562.601562 88 L 562.601562 90 L 159 90 Z "/>
</clipPath>
<clipPath id="clip6">
<path d="M 159 38 L 562.601562 38 L 562.601562 40 L 159 40 Z "/>
</clipPath>
</defs>
<g id="surface1">
<rect x="0" y="0" width="576" height="360" style="fill:rgb(100%,100%,100%);fill-opacity:1;stroke:none;"/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 279.074219 290.878906 C 279.074219 294.480469 273.675781 294.480469 273.675781 290.878906 C 273.675781 287.28125 279.074219 287.28125 279.074219 290.878906 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 274.328125 240.480469 C 274.328125 244.078125 268.929688 244.078125 268.929688 240.480469 C 268.929688 236.878906 274.328125 236.878906 274.328125 240.480469 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 280.328125 190.078125 C 280.328125 193.679688 274.925781 193.679688 274.925781 190.078125 C 274.925781 186.480469 280.328125 186.480469 280.328125 190.078125 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 319.988281 139.679688 C 319.988281 143.28125 314.589844 143.28125 314.589844 139.679688 C 314.589844 136.078125 319.988281 136.078125 319.988281 139.679688 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 477.8125 89.28125 C 477.8125 92.878906 472.414062 92.878906 472.414062 89.28125 C 472.414062 85.679688 477.8125 85.679688 477.8125 89.28125 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(0%,0%,0%);fill-opacity:1;" d="M 518.542969 38.878906 C 518.542969 42.480469 513.140625 42.480469 513.140625 38.878906 C 513.140625 35.28125 518.542969 35.28125 518.542969 38.878906 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 159.464844 300.960938 L 546.132812 300.960938 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 159.464844 300.960938 L 159.464844 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 214.703125 300.960938 L 214.703125 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 269.941406 300.960938 L 269.941406 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 325.179688 300.960938 L 325.179688 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 380.417969 300.960938 L 380.417969 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 435.65625 300.960938 L 435.65625 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 490.894531 300.960938 L 490.894531 308.160156 "/>
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 546.132812 300.960938 L 546.132812 308.160156 "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-1" x="156.464844" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-2" x="208.703125" y="326.878906"/>
<use xlink:href="#glyph0-1" x="214.703125" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-3" x="260.941406" y="326.878906"/>
<use xlink:href="#glyph0-1" x="266.941406" y="326.878906"/>
<use xlink:href="#glyph0-1" x="272.941406" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-3" x="316.179688" y="326.878906"/>
<use xlink:href="#glyph0-2" x="322.179688" y="326.878906"/>
<use xlink:href="#glyph0-1" x="328.179688" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-4" x="371.417969" y="326.878906"/>
<use xlink:href="#glyph0-1" x="377.417969" y="326.878906"/>
<use xlink:href="#glyph0-1" x="383.417969" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-4" x="426.65625" y="326.878906"/>
<use xlink:href="#glyph0-2" x="432.65625" y="326.878906"/>
<use xlink:href="#glyph0-1" x="438.65625" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="481.894531" y="326.878906"/>
<use xlink:href="#glyph0-1" x="487.894531" y="326.878906"/>
<use xlink:href="#glyph0-1" x="493.894531" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-5" x="537.132812" y="326.878906"/>
<use xlink:href="#glyph0-2" x="543.132812" y="326.878906"/>
<use xlink:href="#glyph0-1" x="549.132812" y="326.878906"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-6" x="276.839844" y="355.679688"/>
<use xlink:href="#glyph0-7" x="284.087891" y="355.679688"/>
<use xlink:href="#glyph0-8" x="290.087891" y="355.679688"/>
<use xlink:href="#glyph0-9" x="294.839844" y="355.679688"/>
<use xlink:href="#glyph0-10" x="301.460938" y="355.679688"/>
<use xlink:href="#glyph0-11" x="307.460938" y="355.679688"/>
<use xlink:href="#glyph0-7" x="312.582031" y="355.679688"/>
<use xlink:href="#glyph0-12" x="318.582031" y="355.679688"/>
<use xlink:href="#glyph0-10" x="324.582031" y="355.679688"/>
<use xlink:href="#glyph0-13" x="330.582031" y="355.679688"/>
<use xlink:href="#glyph0-14" x="334.578125" y="355.679688"/>
<use xlink:href="#glyph0-15" x="337.912109" y="355.679688"/>
<use xlink:href="#glyph0-16" x="341.908203" y="355.679688"/>
<use xlink:href="#glyph0-14" x="351.277344" y="355.679688"/>
<use xlink:href="#glyph0-17" x="354.611328" y="355.679688"/>
<use xlink:href="#glyph0-10" x="360.611328" y="355.679688"/>
<use xlink:href="#glyph0-18" x="366.611328" y="355.679688"/>
<use xlink:href="#glyph0-19" x="375.863281" y="355.679688"/>
<use xlink:href="#glyph0-20" x="381.863281" y="355.679688"/>
<use xlink:href="#glyph0-8" x="387.611328" y="355.679688"/>
<use xlink:href="#glyph0-21" x="392.363281" y="355.679688"/>
<use xlink:href="#glyph0-14" x="396.980469" y="355.679688"/>
<use xlink:href="#glyph0-12" x="400.314453" y="355.679688"/>
<use xlink:href="#glyph0-20" x="406.314453" y="355.679688"/>
<use xlink:href="#glyph0-8" x="412.0625" y="355.679688"/>
<use xlink:href="#glyph0-14" x="416.814453" y="355.679688"/>
<use xlink:href="#glyph0-21" x="420.148438" y="355.679688"/>
<use xlink:href="#glyph0-22" x="424.765625" y="355.679688"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-11" x="31.210938" y="294.972656"/>
<use xlink:href="#glyph0-20" x="36.332031" y="294.972656"/>
<use xlink:href="#glyph0-17" x="42.080078" y="294.972656"/>
<use xlink:href="#glyph0-20" x="48.080078" y="294.972656"/>
<use xlink:href="#glyph0-8" x="53.828125" y="294.972656"/>
<use xlink:href="#glyph0-23" x="58.580078" y="294.972656"/>
<use xlink:href="#glyph0-13" x="63.701172" y="294.972656"/>
<use xlink:href="#glyph0-20" x="67.697266" y="294.972656"/>
<use xlink:href="#glyph0-24" x="73.445312" y="294.972656"/>
<use xlink:href="#glyph0-25" x="77.324219" y="294.972656"/>
<use xlink:href="#glyph0-20" x="86.207031" y="294.972656"/>
<use xlink:href="#glyph0-17" x="91.955078" y="294.972656"/>
<use xlink:href="#glyph0-20" x="97.955078" y="294.972656"/>
<use xlink:href="#glyph0-8" x="103.703125" y="294.972656"/>
<use xlink:href="#glyph0-23" x="108.455078" y="294.972656"/>
<use xlink:href="#glyph0-13" x="113.576172" y="294.972656"/>
<use xlink:href="#glyph0-9" x="117.572266" y="294.972656"/>
<use xlink:href="#glyph0-8" x="124.193359" y="294.972656"/>
<use xlink:href="#glyph0-14" x="128.945312" y="294.972656"/>
<use xlink:href="#glyph0-26" x="132.279297" y="294.972656"/>
<use xlink:href="#glyph0-27" x="137.535156" y="294.972656"/>
<use xlink:href="#glyph0-23" x="140.166016" y="294.972656"/>
<use xlink:href="#glyph0-21" x="145.287109" y="294.972656"/>
<use xlink:href="#glyph0-21" x="149.904297" y="294.972656"/>
<use xlink:href="#glyph0-28" x="154.521484" y="294.972656"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-11" x="43.195312" y="244.574219"/>
<use xlink:href="#glyph0-20" x="48.316406" y="244.574219"/>
<use xlink:href="#glyph0-17" x="54.064453" y="244.574219"/>
<use xlink:href="#glyph0-20" x="60.064453" y="244.574219"/>
<use xlink:href="#glyph0-8" x="65.8125" y="244.574219"/>
<use xlink:href="#glyph0-23" x="70.564453" y="244.574219"/>
<use xlink:href="#glyph0-13" x="75.685547" y="244.574219"/>
<use xlink:href="#glyph0-20" x="79.681641" y="244.574219"/>
<use xlink:href="#glyph0-24" x="85.429688" y="244.574219"/>
<use xlink:href="#glyph0-27" x="89.308594" y="244.574219"/>
<use xlink:href="#glyph0-23" x="91.939453" y="244.574219"/>
<use xlink:href="#glyph0-18" x="97.060547" y="244.574219"/>
<use xlink:href="#glyph0-19" x="106.3125" y="244.574219"/>
<use xlink:href="#glyph0-29" x="112.3125" y="244.574219"/>
<use xlink:href="#glyph0-23" x="118.429688" y="244.574219"/>
<use xlink:href="#glyph0-30" x="123.550781" y="244.574219"/>
<use xlink:href="#glyph0-14" x="126.181641" y="244.574219"/>
<use xlink:href="#glyph0-23" x="129.515625" y="244.574219"/>
<use xlink:href="#glyph0-8" x="134.636719" y="244.574219"/>
<use xlink:href="#glyph0-8" x="139.388672" y="244.574219"/>
<use xlink:href="#glyph0-23" x="144.140625" y="244.574219"/>
<use xlink:href="#glyph0-31" x="149.261719" y="244.574219"/>
<use xlink:href="#glyph0-28" x="154.517578" y="244.574219"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-11" x="49.578125" y="194.171875"/>
<use xlink:href="#glyph0-20" x="54.699219" y="194.171875"/>
<use xlink:href="#glyph0-17" x="60.447266" y="194.171875"/>
<use xlink:href="#glyph0-20" x="66.447266" y="194.171875"/>
<use xlink:href="#glyph0-8" x="72.195312" y="194.171875"/>
<use xlink:href="#glyph0-23" x="76.947266" y="194.171875"/>
<use xlink:href="#glyph0-13" x="82.068359" y="194.171875"/>
<use xlink:href="#glyph0-20" x="86.064453" y="194.171875"/>
<use xlink:href="#glyph0-24" x="91.8125" y="194.171875"/>
<use xlink:href="#glyph0-27" x="95.691406" y="194.171875"/>
<use xlink:href="#glyph0-23" x="98.322266" y="194.171875"/>
<use xlink:href="#glyph0-18" x="103.443359" y="194.171875"/>
<use xlink:href="#glyph0-19" x="112.695312" y="194.171875"/>
<use xlink:href="#glyph0-29" x="118.695312" y="194.171875"/>
<use xlink:href="#glyph0-23" x="124.8125" y="194.171875"/>
<use xlink:href="#glyph0-30" x="129.933594" y="194.171875"/>
<use xlink:href="#glyph0-14" x="132.564453" y="194.171875"/>
<use xlink:href="#glyph0-32" x="135.898438" y="194.171875"/>
<use xlink:href="#glyph0-23" x="142.015625" y="194.171875"/>
<use xlink:href="#glyph0-33" x="147.136719" y="194.171875"/>
<use xlink:href="#glyph0-8" x="149.767578" y="194.171875"/>
<use xlink:href="#glyph0-28" x="154.519531" y="194.171875"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-33" x="27.09375" y="143.773438"/>
<use xlink:href="#glyph0-13" x="29.724609" y="143.773438"/>
<use xlink:href="#glyph0-20" x="33.720703" y="143.773438"/>
<use xlink:href="#glyph0-8" x="39.46875" y="143.773438"/>
<use xlink:href="#glyph0-23" x="44.220703" y="143.773438"/>
<use xlink:href="#glyph0-13" x="49.341797" y="143.773438"/>
<use xlink:href="#glyph0-20" x="53.337891" y="143.773438"/>
<use xlink:href="#glyph0-24" x="59.085938" y="143.773438"/>
<use xlink:href="#glyph0-27" x="62.964844" y="143.773438"/>
<use xlink:href="#glyph0-23" x="65.595703" y="143.773438"/>
<use xlink:href="#glyph0-18" x="70.716797" y="143.773438"/>
<use xlink:href="#glyph0-19" x="79.96875" y="143.773438"/>
<use xlink:href="#glyph0-29" x="85.96875" y="143.773438"/>
<use xlink:href="#glyph0-23" x="92.085938" y="143.773438"/>
<use xlink:href="#glyph0-30" x="97.207031" y="143.773438"/>
<use xlink:href="#glyph0-14" x="99.837891" y="143.773438"/>
<use xlink:href="#glyph0-23" x="103.171875" y="143.773438"/>
<use xlink:href="#glyph0-8" x="108.292969" y="143.773438"/>
<use xlink:href="#glyph0-8" x="113.044922" y="143.773438"/>
<use xlink:href="#glyph0-23" x="117.796875" y="143.773438"/>
<use xlink:href="#glyph0-31" x="122.917969" y="143.773438"/>
<use xlink:href="#glyph0-30" x="128.173828" y="143.773438"/>
<use xlink:href="#glyph0-14" x="130.804688" y="143.773438"/>
<use xlink:href="#glyph0-17" x="134.138672" y="143.773438"/>
<use xlink:href="#glyph0-20" x="140.138672" y="143.773438"/>
<use xlink:href="#glyph0-34" x="145.886719" y="143.773438"/>
<use xlink:href="#glyph0-28" x="154.517578" y="143.773438"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-33" x="53.4375" y="93.375"/>
<use xlink:href="#glyph0-13" x="56.068359" y="93.375"/>
<use xlink:href="#glyph0-20" x="60.064453" y="93.375"/>
<use xlink:href="#glyph0-8" x="65.8125" y="93.375"/>
<use xlink:href="#glyph0-23" x="70.564453" y="93.375"/>
<use xlink:href="#glyph0-13" x="75.685547" y="93.375"/>
<use xlink:href="#glyph0-20" x="79.681641" y="93.375"/>
<use xlink:href="#glyph0-24" x="85.429688" y="93.375"/>
<use xlink:href="#glyph0-27" x="89.308594" y="93.375"/>
<use xlink:href="#glyph0-23" x="91.939453" y="93.375"/>
<use xlink:href="#glyph0-18" x="97.060547" y="93.375"/>
<use xlink:href="#glyph0-19" x="106.3125" y="93.375"/>
<use xlink:href="#glyph0-29" x="112.3125" y="93.375"/>
<use xlink:href="#glyph0-23" x="118.429688" y="93.375"/>
<use xlink:href="#glyph0-30" x="123.550781" y="93.375"/>
<use xlink:href="#glyph0-14" x="126.181641" y="93.375"/>
<use xlink:href="#glyph0-23" x="129.515625" y="93.375"/>
<use xlink:href="#glyph0-8" x="134.636719" y="93.375"/>
<use xlink:href="#glyph0-8" x="139.388672" y="93.375"/>
<use xlink:href="#glyph0-23" x="144.140625" y="93.375"/>
<use xlink:href="#glyph0-31" x="149.261719" y="93.375"/>
<use xlink:href="#glyph0-28" x="154.517578" y="93.375"/>
</g>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph0-33" x="59.820312" y="42.972656"/>
<use xlink:href="#glyph0-13" x="62.451172" y="42.972656"/>
<use xlink:href="#glyph0-20" x="66.447266" y="42.972656"/>
<use xlink:href="#glyph0-8" x="72.195312" y="42.972656"/>
<use xlink:href="#glyph0-23" x="76.947266" y="42.972656"/>
<use xlink:href="#glyph0-13" x="82.068359" y="42.972656"/>
<use xlink:href="#glyph0-20" x="86.064453" y="42.972656"/>
<use xlink:href="#glyph0-24" x="91.8125" y="42.972656"/>
<use xlink:href="#glyph0-27" x="95.691406" y="42.972656"/>
<use xlink:href="#glyph0-23" x="98.322266" y="42.972656"/>
<use xlink:href="#glyph0-18" x="103.443359" y="42.972656"/>
<use xlink:href="#glyph0-19" x="112.695312" y="42.972656"/>
<use xlink:href="#glyph0-29" x="118.695312" y="42.972656"/>
<use xlink:href="#glyph0-23" x="124.8125" y="42.972656"/>
<use xlink:href="#glyph0-30" x="129.933594" y="42.972656"/>
<use xlink:href="#glyph0-14" x="132.564453" y="42.972656"/>
<use xlink:href="#glyph0-32" x="135.898438" y="42.972656"/>
<use xlink:href="#glyph0-23" x="142.015625" y="42.972656"/>
<use xlink:href="#glyph0-33" x="147.136719" y="42.972656"/>
<use xlink:href="#glyph0-8" x="149.767578" y="42.972656"/>
<use xlink:href="#glyph0-28" x="154.519531" y="42.972656"/>
</g>
<g clip-path="url(#clip1)" clip-rule="nonzero">
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(74.509804%,74.509804%,74.509804%);stroke-opacity:1;stroke-dasharray:0.75,2.25;stroke-miterlimit:10;" d="M 159.464844 290.878906 L 576 290.878906 "/>
</g>
<g clip-path="url(#clip2)" clip-rule="nonzero">
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(74.509804%,74.509804%,74.509804%);stroke-opacity:1;stroke-dasharray:0.75,2.25;stroke-miterlimit:10;" d="M 159.464844 240.480469 L 576 240.480469 "/>
</g>
<g clip-path="url(#clip3)" clip-rule="nonzero">
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(74.509804%,74.509804%,74.509804%);stroke-opacity:1;stroke-dasharray:0.75,2.25;stroke-miterlimit:10;" d="M 159.464844 190.078125 L 576 190.078125 "/>
</g>
<g clip-path="url(#clip4)" clip-rule="nonzero">
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(74.509804%,74.509804%,74.509804%);stroke-opacity:1;stroke-dasharray:0.75,2.25;stroke-miterlimit:10;" d="M 159.464844 139.679688 L 576 139.679688 "/>
</g>
<g clip-path="url(#clip5)" clip-rule="nonzero">
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(74.509804%,74.509804%,74.509804%);stroke-opacity:1;stroke-dasharray:0.75,2.25;stroke-miterlimit:10;" d="M 159.464844 89.28125 L 576 89.28125 "/>
</g>
<g clip-path="url(#clip6)" clip-rule="nonzero">
<path style="fill:none;stroke-width:0.75;stroke-linecap:round;stroke-linejoin:round;stroke:rgb(74.509804%,74.509804%,74.509804%);stroke-opacity:1;stroke-dasharray:0.75,2.25;stroke-miterlimit:10;" d="M 159.464844 38.878906 L 576 38.878906 "/>
</g>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,54.901961%,0%);fill-opacity:1;" d="M 283.125 290.878906 C 283.125 294.609375 280.105469 297.628906 276.375 297.628906 C 272.648438 297.628906 269.625 294.609375 269.625 290.878906 C 269.625 287.152344 272.648438 284.128906 276.375 284.128906 C 280.105469 284.128906 283.125 287.152344 283.125 290.878906 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,54.901961%,0%);fill-opacity:1;" d="M 278.378906 240.480469 C 278.378906 244.207031 275.355469 247.230469 271.628906 247.230469 C 267.898438 247.230469 264.878906 244.207031 264.878906 240.480469 C 264.878906 236.753906 267.898438 233.730469 271.628906 233.730469 C 275.355469 233.730469 278.378906 236.753906 278.378906 240.480469 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,54.901961%,0%);fill-opacity:1;" d="M 284.375 190.078125 C 284.375 193.808594 281.355469 196.828125 277.625 196.828125 C 273.898438 196.828125 270.875 193.808594 270.875 190.078125 C 270.875 186.351562 273.898438 183.328125 277.625 183.328125 C 281.355469 183.328125 284.375 186.351562 284.375 190.078125 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,54.901961%,0%);fill-opacity:1;" d="M 324.039062 139.679688 C 324.039062 143.40625 321.019531 146.429688 317.289062 146.429688 C 313.5625 146.429688 310.539062 143.40625 310.539062 139.679688 C 310.539062 135.953125 313.5625 132.929688 317.289062 132.929688 C 321.019531 132.929688 324.039062 135.953125 324.039062 139.679688 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,54.901961%,0%);fill-opacity:1;" d="M 481.863281 89.28125 C 481.863281 93.007812 478.839844 96.03125 475.113281 96.03125 C 471.386719 96.03125 468.363281 93.007812 468.363281 89.28125 C 468.363281 85.550781 471.386719 82.53125 475.113281 82.53125 C 478.839844 82.53125 481.863281 85.550781 481.863281 89.28125 "/>
<path style=" stroke:none;fill-rule:nonzero;fill:rgb(100%,54.901961%,0%);fill-opacity:1;" d="M 522.589844 38.878906 C 522.589844 42.609375 519.570312 45.628906 515.839844 45.628906 C 512.113281 45.628906 509.089844 42.609375 509.089844 38.878906 C 509.089844 35.152344 512.113281 32.128906 515.839844 32.128906 C 519.570312 32.128906 522.589844 35.152344 522.589844 38.878906 "/>
<g style="fill:rgb(0%,0%,0%);fill-opacity:1;">
<use xlink:href="#glyph1-1" x="3.378906" y="25.921875"/>
<use xlink:href="#glyph1-2" x="11.165039" y="25.921875"/>
<use xlink:href="#glyph1-3" x="20.544922" y="25.921875"/>
<use xlink:href="#glyph1-4" x="24.271973" y="25.921875"/>
<use xlink:href="#glyph1-5" x="32.771973" y="25.921875"/>
<use xlink:href="#glyph1-6" x="38.433105" y="25.921875"/>
<use xlink:href="#glyph1-2" x="42.160156" y="25.921875"/>
<use xlink:href="#glyph1-7" x="51.540039" y="25.921875"/>
</g>
<g style="fill:rgb(100%,100%,100%);fill-opacity:1;">
<use xlink:href="#glyph2-1" x="271.875" y="292.925781"/>
<use xlink:href="#glyph2-2" x="274.875" y="292.925781"/>
<use xlink:href="#glyph2-3" x="277.875" y="292.925781"/>
</g>
<g style="fill:rgb(100%,100%,100%);fill-opacity:1;">
<use xlink:href="#glyph2-1" x="267.128906" y="242.527344"/>
<use xlink:href="#glyph2-2" x="270.128906" y="242.527344"/>
<use xlink:href="#glyph2-4" x="273.128906" y="242.527344"/>
</g>
<g style="fill:rgb(100%,100%,100%);fill-opacity:1;">
<use xlink:href="#glyph2-1" x="273.125" y="192.125"/>
<use xlink:href="#glyph2-2" x="276.125" y="192.125"/>
<use xlink:href="#glyph2-5" x="279.125" y="192.125"/>
</g>
<g style="fill:rgb(100%,100%,100%);fill-opacity:1;">
<use xlink:href="#glyph2-1" x="312.789062" y="141.734375"/>
<use xlink:href="#glyph2-6" x="315.789062" y="141.734375"/>
<use xlink:href="#glyph2-7" x="318.789062" y="141.734375"/>
</g>
<g style="fill:rgb(100%,100%,100%);fill-opacity:1;">
<use xlink:href="#glyph2-4" x="470.613281" y="91.328125"/>
<use xlink:href="#glyph2-8" x="473.613281" y="91.328125"/>
<use xlink:href="#glyph2-3" x="476.613281" y="91.328125"/>
</g>
<g style="fill:rgb(100%,100%,100%);fill-opacity:1;">
<use xlink:href="#glyph2-7" x="511.339844" y="40.933594"/>
<use xlink:href="#glyph2-4" x="514.339844" y="40.933594"/>
<use xlink:href="#glyph2-7" x="517.339844" y="40.933594"/>
</g>
</g>
</svg>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment