Merge pull request #101 from robojay/ka1pqk-phy

Begin the rewrite/re-org fun
pull/103/head
Steve Miller 2022-04-20 13:55:36 -04:00 zatwierdzone przez GitHub
commit bf3360abd7
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: 4AEE18F83AFDEB23
10 zmienionych plików z 1098 dodań i 362 usunięć

1
_config.yml 100644
Wyświetl plik

@ -0,0 +1 @@
theme: jekyll-theme-slate

Wyświetl plik

@ -14,8 +14,8 @@ Forward Error Correction
### Frame
The individual components of a stream, each of which contains payload data interleaved with frame signalling.
### Link Information Frame
The first frame of any transmission. It contains full LICH data.
### Link Setup Frame
The first frame of any transmission. It contains full link information data.
### LICH
Link Information Channel. The LICH contains all information needed to establish an M17 link. The first frame of a transmission contains full LICH data, and subsequent frames each contain one sixth of the LICH data so that late-joiners can obtain the LICH.

Wyświetl plik

@ -5,45 +5,37 @@ taxonomy:
- docs
simple-responsive-tables:
active: true
media_order: 'convolutional.svg,frame_encoding.svg,link_setup_frame_encoding.svg,packet_frame_encoding.svg'
media_order:
---
### 4FSK generation
This section describes the M17 standard radio physical layer suitable for use where a transmission bandwidth of 9 KHz is permitted.
M17 standard uses 4FSK modulation running at 4800 symbols/s (9600
bits/s) with a deviation index h=0.33 for transmission in 9 kHz
channel bandwidth. Channel spacing is 12.5 kHz. The symbol stream is
converted (upsampled) to a series of impulses which pass through a
root-raised-cosine (alpha=0.5) shaping filter before frequency modulation
at the transmitter and again after frequency demodulation at the
receiver.
### 4-level Frequency-shift Keying Modulation (4FSK)
[mermaid]
graph LR
id1[Dibits Input] --> id2[Upsampler] --> id3[RRC Filter] --> id4[Frequency Modulation] --> id5[4FSK Output]
style id1 fill:#ffffffff,stroke:#ffffffff,stroke-width:0px
style id2 fill:#fff,stroke:#000,stroke-width:2px
style id3 fill:#fff,stroke:#000,stroke-width:2px
style id4 fill:#fff,stroke:#000,stroke-width:2px
style id5 fill:#ffffffff,stroke:#ffffffff,stroke-width:0px
[/mermaid]
The M17 standard uses 4FSK at 4800 symbols/s (9600
bits/s) with a deviation index h=0.33 for transmission in a 9 kHz
channel bandwidth. Minimum channel spacing is 12.5 kHz.
The bit-to-symbol mapping is shown in the table below.
#### Dibit, Symbol, and Frequency-shift
Each of the 4-level frequency-shifts can be represented by dibits (2-bit values) or symbols, as shown in Table 1 below.
In the case of dibits, the most significant bit is sent first. When four dibits are grouped into a byte, the most significant dibit of the byte is sent first. For example, the four dibits contained in the byte 0xB4 (0b 10 11 01 00) would be sent as the symbols (-1, -3, +3, +1).
<table>
<caption><span>Table 1 </span><span>Dibit symbol mapping to 4FSK deviation</span></caption>
<caption><span style="font-weight:bold">Table 1 </span><span>Dibit symbol mapping to 4FSK deviation</span></caption>
<thead>
<tr>
<th colspan="2">Information bits</th>
<th rowspan="2">Symbol</th>
<th rowspan="2">4FSK deviation</th>
<th colspan="2" style="text-align:center;">Dibit</th>
<th rowspan="2" style="text-align:center;">Symbol</th>
<th rowspan="2" style="text-align:center;">4FSK deviation</th>
</tr>
<tr>
<th>Bit 1</th>
<th>Bit 0</th>
<th style="text-align:center;">MSB</th>
<th style="text-align:center;">LSB</th>
</tr>
</thead>
<tbody>
<tbody style="text-align:center;">
<tr>
<td>0</td>
<td>1</td>
@ -71,204 +63,133 @@ The bit-to-symbol mapping is shown in the table below.
</tbody>
</table>
The most significant bits are sent first, meaning that the byte 0xB4 (= 0b10'11'01'00) in type 4 bits (see [bit types](#bit-types)) would be sent as the symbols -1 -3 +3 +1. All data fields utilize big-endian order of bytes unless specified otherwise.
#### 4FSK Generation
<center><span style="font-weight:bold">Figure 1</span> Dibit to 4FSK Generation</center>
[mermaid]
graph LR
id1[Dibit Input] --> sym[Dibit to Symbol] --> id2[Upsampler] --> id3[RRC Filter] --> id4[Frequency Modulation] --> id5[4FSK Output]
style id1 fill:#ffffffff,stroke:#ffffffff,stroke-width:0px
style sym fill:#fff,stroke:#000,stroke-width:2px
style id2 fill:#fff,stroke:#000,stroke-width:2px
style id3 fill:#fff,stroke:#000,stroke-width:2px
style id4 fill:#fff,stroke:#000,stroke-width:2px
style id5 fill:#ffffffff,stroke:#ffffffff,stroke-width:0px
[/mermaid]
Dibits are converted to symbols. The symbol stream is upsampled to a series of impulses which pass through a
root-raised-cosine (alpha=0.5) shaping filter before frequency modulation
at the transmitter and again after frequency demodulation at the
receiver.
Upsampling by a factor of 10 is recommended (48000 samples/s).
The root-raised-cosine filter should span at least 8 symbols (81 taps at the recommended upsample rate).
### Transmission
A complete transmission shall consist of a [Preamble](#preamble), a [Synchronization Burst](#synchronization-burst-sync-burst), [Payload](#payload), and an [End of Transmission](#end-of-transmission-marker-eot) marker.
<table>
<caption><span style="font-weight:bold">Figure 2 </span><span>Physical Layer Transmission</span></caption>
<tbody style="text-align:center;border:none;">
<tr style="font-weight:bold; color:black;">
<td style="border:3px solid black;">PREAMBLE</td>
<td style="border:3px solid black;">SYNC BURST</td>
<td style="border:3px solid black;">PAYLOAD</td>
<td style="border:3px solid black;">EoT</td>
</tr>
<tr style="color:black;border-left:hidden;border-right:hidden;border-bottom:hidden;">
<td style="border-left:hidden;border-right:hidden;">40ms<br/>(192 symbols)</td>
<td style="border-left:hidden;border-right:hidden;">16 bits<br/>(8 symbols)</td>
<td style="border-left:hidden;border-right:hidden;">Multiples of 2 bits<br/>(Multiples of 1 symbol)</td>
<td style="border-left:hidden;border-right:hidden;">40ms<br/>(192 symbols)</td>
</tr>
</tbody>
</table>
Transmissions may include more than one synchronization burst followed by a payload.
<table>
<caption><span style="font-weight:bold">Figure 3 </span><span>Physical Layer Transmission with Multiple Synchronization Bursts</span></caption>
<tbody style="text-align:center;border:none;">
<tr style="font-weight:bold; color:black;">
<td style="border:3px solid black;">PREAMBLE</td>
<td style="border:3px solid black;">SYNC BURST</td>
<td style="border:3px solid black;">PAYLOAD</td>
<td style="border:3px solid black;">SYNC BURST</td>
<td style="border:3px solid black;">PAYLOAD</td>
<td style="border:3px dashed black;">&bull;&bull;&bull;</td>
<td style="border:3px solid black;">SYNC BURST</td>
<td style="border:3px solid black;">PAYLOAD</td>
<td style="border:3px solid black;">EoT</td>
</tr>
</tbody>
</table>
### Preamble
Every transmission starts with a preamble, which shall consist of at least 40 ms of alternating outer symbols. This is equivalent to 40 milliseconds of a 2400 Hz tone. The last symbol transmitted within the preamble shall be -3 for all modes except BERT. This is to avoid unnecessary long constant symbol runs and increase zero-crossing rate.
Every transmission shall start with a preamble, which shall consist of 40 ms (192 symbols) of alternating outer symbols (+3, -3) or (-3, +3). To ensure a zero crossing prior to a synchronization burst, the last symbol transmitted within the preamble shall be opposite the first symbol transmitted in the synchronization burst.
### Bit types
### Synchronization Burst (Sync Burst)
The bits at different stages of the error correction coding are referred to with bit types, given in the following table.
A sync burst of 16 bits (8 symbols) shall be sent immediately after the preamble. The sync burst is constructed using only outer symbols, with
codings based on [Barker codes](https://en.wikipedia.org/wiki/Barker_code). Properly chosen sync burst coding assists in symbol clocking and alignment.
Different sync burst codes may also be used by the [Data Link Layer](../data-link-layer#synchronization-burst-sync-burst) to identify the type of payload to follow.
Type | Description
---- | -----------
Type 1 | Data link layer bits
Type 2 | Bits after appropriate encoding
Type 3 | Bits after puncturing (only for convolutionally coded data, for other ECC schemes type 3 bits are the same as type 2 bits)
Type 4 | Decorrelated and interleaved (re-ordered) type 3 bits
### Payload
Type 4 bits are used for transmission over the RF. Incoming type 4 bits shall be decoded to type 1 bits, which are then used to extract all the frame fields.
Payload shall be transmitted in multiples of 2 bits (1 symbol).
### Error correction coding schemes and bit type conversion
### Randomizer
Two distinct ECC/FEC schemes are used for different parts of the transmission.
To avoid transmitting long sequences of constant symbols (e.g. +3, +3, +3, ...), a simple randomizing algorithm is used. At the transmitter, all payload bits shall be XORed with a pseudorandom predefined sequence before being converted to symbols. At the receiver, the randomized payload symbols are converted to bits and are
again passed through the same XOR algorithm to obtain the original payload bits.
#### Link setup frame (LSF)
The pseudorandom sequence is composed of the 46 bytes (368 bits) found in the appendix ([Decorrelator Sequence](../../appendix/decorrelator-sequence)).
![link_setup_frame_encoding](link_setup_frame_encoding.svg?classes=caption "ECC Link Setup Frame Encoding")
Before each bit of payload is converted to symbols for transmission, it is XORed with a bit from the pseudorandom sequence. The first payload bit is XORed with most significant bit (bit 7) of sequence byte 0 (0xD6), second payload bit with bit 6 of sequence byte 0, continuing to the eigth payload bit and bit 0 of sequence byte 0. The ninth payload bit is XORed with bit 7 of sequence byte 1 (0xB5), tenth payload bit with bit 6 of sequence byte 1, etc.
240 DST, SRC, TYPE, META and CRC type 1 bits are convolutionally coded using rate 1/2 coder with constraint K=5. 4 tail bits are used to flush the encoders state register, giving a total of 244 bits being encoded. Resulting 488 type 2 bits are retained for type 3 bits computation. Type 3 bits are computed by puncturing type 2 bits using a scheme shown in chapter 4.4. This results in 368 bits, which in conjunction with the synchronization burst gives 384 bits (384 bits / 9600bps = 40 ms).
When payload bits have XORed through sequence byte 45 (0xC3), the psuedorandom sequence is restarted at sequence byte 0 (0xD6)
Interleaving type 3 bits produce type 4 bits that are ready to be transmitted. Interleaving is used to combat error bursts.
On the receive side, symbols are converted to randomized payload bits. Each randomized payload bit is converted back to a payload bit by once again XORing each randomized bit with the corresponding pseudorandom sequence bit.
#### Subsequent frames
### End of Transmission marker (EoT)
![frame_encoding](frame_encoding.svg?classes=caption "ECC stages of subsequent frames")
Every transmission ends with a distinct symbol stream, which shall consist of of 40 ms (192 symbols) of a repeating 0x55 0x5D (+3, +3, +3, +3, +3, +3, -3, +3) pattern.
A 40-bit (type 1) chunk of the LSF along with a 3-bit modulo 6 counter (LICH_CNT) and 5 reserved bits (see Table 7) is partitioned into 4 12-bit parts and encoded using Golay (24, 12) code. This produces 96 encoded bits of type 2. These bits are used in the Link Information Channel (LICH).
### Carrier-sense Multiple Access (CSMA)
16-bit FN and 128 bits of payload (144 bits total) are convolutionally encoded in a manner analogous to that of the link setup frame. A total of 148 bits is being encoded resulting in 296 type 2 bits. These bits are punctured to generate 272 type 3 bits.
CSMA may be used to minimize collisions on a shared radio frequency by having the sender ensure the frequency is clear before transmitting. Higher layers (Data Link and Application) may require the use of CSMA, and may specify parameters other than the defaults.
96 type 2 bits of LICH are concatenated with 272 type 3 bits and re-ordered to form type 4 bits for transmission. This, along with 16-bit sync in the beginning of frame, gives a total of 384 bits
[P-persistent](https://en.wikipedia.org/wiki/Carrier-sense_multiple_access) access is used with a default probability of p = 0.25 and default slot time of 40 ms.
The LICH chunks allow for late listening and indepedent decoding to check destination address. The goal is to require less complexity to decode just the LICH and check if the full message should be decoded.
### Physical Layer Flow Summary
#### Packet Frame Encoding
<center><span style="font-weight:bold">Figure 4</span> Physical Layer Flow</center>
[mermaid]
graph TD
![packet_frame_encoding](packet_frame_encoding.svg?classes=caption "Packet Frame Encoding")
payload["Payload"]
phy_randomizer["randomizer"]
phy_sync["prepend SYNC BURST"]
phy_chunk_dibit["chunk dibit"]
phy_dibit_to_symbol["dibit to symbol"]
phy_upsampler["upsampler"]
phy_filter["rrc filter"]
phy_frequency_modulation["frequency modulation"]
phy_rf["4FSK RF"]
#### End of Transmission marker (EoT)
classDef default fill:#fff,stroke:#000,stroke-width:2px
Every transmission ends with a distinct symbol stream, which shall consist of at least 40 ms of repeating +3, +3, +3, +3, +3, +3, -3, +3 pattern, or 0x555D in hexadecimal notation.
payload --> phy_randomizer
Preamble --> phy_chunk_dibit
phy_chunk_dibit --> phy_dibit_to_symbol --> phy_upsampler --> phy_filter --> phy_frequency_modulation --> phy_rf
phy_randomizer --> phy_sync --> phy_chunk_dibit
EoT --> phy_chunk_dibit
[/mermaid]
#### Extended Golay(24,12) code
### Issues to address...
The extended Golay(24,12) encoder uses generating polynomial g given below to generate the 11 check bits. The check bits and an additional parity bit are appended to the 12 bit data, resulting in a 24 bit codeword. The resulting code is systematic, meaning that the input data (message) is embedded in the codeword.
* Time limits for RF carrier and no symbol generation before the preamble and after the EoT.
\(g(x) = x^{11} + x^{10} + x^6 + x^5 + x^4 + x^2 + 1\)
This is equivalent to 0xC75 in hexadecimal notation. Both the generating matrix \(G\) and parity check matrix \(H\) are shown below.
\(
\begin{align}
G = \begin{bmatrix} I_k | P \end{bmatrix} = & \begin{bmatrix}
1&0&0&0&0&0&0&0&0&0&0&0&1&1&0&0&0&1&1&1&0&1&0&1\\
0&1&0&0&0&0&0&0&0&0&0&0&0&1&1&0&0&0&1&1&1&0&1&1\\
0&0&1&0&0&0&0&0&0&0&0&0&1&1&1&1&0&1&1&0&1&0&0&0\\
0&0&0&1&0&0&0&0&0&0&0&0&0&1&1&1&1&0&1&1&0&1&0&0\\
0&0&0&0&1&0&0&0&0&0&0&0&0&0&1&1&1&1&0&1&1&0&1&0\\
0&0&0&0&0&1&0&0&0&0&0&0&1&1&0&1&1&0&0&1&1&0&0&1\\
0&0&0&0&0&0&1&0&0&0&0&0&0&1&1&0&1&1&0&0&1&1&0&1\\
0&0&0&0&0&0&0&1&0&0&0&0&0&0&1&1&0&1&1&0&0&1&1&1\\
0&0&0&0&0&0&0&0&1&0&0&0&1&1&0&1&1&1&0&0&0&1&1&0\\
0&0&0&0&0&0&0&0&0&1&0&0&1&0&1&0&1&0&0&1&0&1&1&1\\
0&0&0&0&0&0&0&0&0&0&1&0&1&0&0&1&0&0&1&1&1&1&1&0\\
0&0&0&0&0&0&0&0&0&0&0&1&1&0&0&0&1&1&1&0&1&0&1&1\\
\end{bmatrix}
\newline\newline
H = \begin{bmatrix} P^T | I_k \end{bmatrix} = & \begin{bmatrix}
1&0&1&0&0&1&0&0&1&1&1&1&1&0&0&0&0&0&0&0&0&0&0&0\\
1&1&1&1&0&1&1&0&1&0&0&0&0&1&0&0&0&0&0&0&0&0&0&0\\
0&1&1&1&1&0&1&1&0&1&0&0&0&0&1&0&0&0&0&0&0&0&0&0\\
0&0&1&1&1&1&0&1&1&0&1&0&0&0&0&1&0&0&0&0&0&0&0&0\\
0&0&0&1&1&1&1&0&1&1&0&1&0&0&0&0&1&0&0&0&0&0&0&0\\
1&0&1&0&1&0&1&1&1&0&0&1&0&0&0&0&0&1&0&0&0&0&0&0\\
1&1&1&1&0&0&0&1&0&0&1&1&0&0&0&0&0&0&1&0&0&0&0&0\\
1&1&0&1&1&1&0&0&0&1&1&0&0&0&0&0&0&0&0&1&0&0&0&0\\
0&1&1&0&1&1&1&0&0&0&1&1&0&0&0&0&0&0&0&0&1&0&0&0\\
1&0&0&1&0&0&1&1&1&1&1&0&0&0&0&0&0&0&0&0&0&1&0&0\\
0&1&0&0&1&0&0&1&1&1&1&1&0&0&0&0&0&0&0&0&0&0&1&0\\
1&1&0&0&0&1&1&1&0&1&0&1&0&0&0&0&0&0&0&0&0&0&0&1\\
\end{bmatrix}
\end{align}
\)
The output of the Golay encoder is shown in the table below.
Field | Data | Check bits | Parity
----- | ---- | ---------- | ------
Position | 23..12 | 11..1 | 0 (LSB)
Length | 12 | 11 | 1
Four of these 24-bit blocks are used to reconstruct the LSF.
Sample MATLAB/Octave code snippet for generating \(G\) and \(H\) matrices is shown below.
```
P = hex2poly('0xC75');
[H,G] = cyclgen(23, P);
G_P = G(1:12, 1:11);
I_K = eye(12);
G = [I_K G_P P.'];
H = [transpose([G_P P.']) I_K];
```
### Convolutional encoder
The convolutional code shall encode the input bit sequence after appending 4 tail bits at the end of the sequence. Rate of the coder is R=½ with constraint length K=5. The encoder diagram and generating polynomials are shown below.
\(
\begin{align}
G_1(D) =& 1 + D^3 + D^4 \\
G_2(D) =& 1+ D + D^2 + D^4
\end{align}
\)
The output from the encoder must be read alternately.
![convolutional](convolutional.svg?classes=caption "Convolutional coder diagram")
### Code puncturing
Removing some of the bits from the convolutional coders output is called code puncturing. The nominal coding rate of the encoder used in M17 is ½. This means the encoder outputs two bits for every bit of the input data stream. To get other (higher) coding rates, a puncturing scheme has to be used.
Two different puncturing schemes are used in M17 stream mode:
1. \(P_1\) leaving 46 from 61 encoded bits
2. \(P_2\) leaving 11 from 12 encoded bits
Scheme \(P_1\) is used for the *link setup frame*, taking 488 bits of encoded data and selecting 368 bits. The \(gcd(368, 488)\) is 8 which, when used to divide, leaves 46 and 61 bits. However, a full puncture pattern requires the puncturing matrix entries count to be divisible by the number of encoding polynomials. For this case a partial puncture matrix is used. It has 61 entries with 46 of them being ones and shall be used 8 times, repeatedly. The construction of the partial puncturing pattern \(P_1\) is as follows:
\(
\begin{align}
M = & \begin{bmatrix}
1 & 0 & 1 & 1
\end{bmatrix} \\
P_{1} = & \begin{bmatrix}
1 & M_{1} & \cdots & M_{15}
\end{bmatrix}
\end{align}
\)
In which \(M\) is a standard 2/3 rate puncture matrix and is used 15 times, along with a leading \(1\) to form \(P_1\), an array of length 61.
The first pass of the partial puncturer discards \(G_1\) bits only, second pass discards \(G_2\), third - \(G_1\) again, and so on. This ensures that both bits are punctured out evenly.
Scheme \(P_2\) is for frames (excluding LICH chunks, which are coded differently). This takes 296 encoded bits and selects 272 of them. Every 12th bit is being punctured out, leaving 272 bits. The full matrix shall have 12 entries with 11 being ones.
The puncturing scheme \(P_2\) is defined by its partial puncturing matrix:
\(
\begin{align}
P_2 = & \begin{bmatrix}
1 & 1 & 1 & 1 & 1 & 1 \\
1 & 1 & 1 & 1 & 1 & 0
\end{bmatrix}
\end{align}
\)
The linearized representations are:
```
P1 = [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1,
1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1,
0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]
P2 = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0]
```
One additional puncturing scheme \(P_3\) is used in the packet mode. The puncturing scheme is defined by its puncturing matrix:
\(
\begin{align}
P_3 = & \begin{bmatrix}
1 & 1 & 1 & 1 \\
1 & 1 & 1 & 0
\end{bmatrix}
\end{align}
\)
The linearized representation is:
```
P3 = [1, 1, 1, 1, 1, 1, 1, 0]
```
### Interleaving
For interleaving a Quadratic Permutation Polynomial (QPP) is used. The polynomial \(\pi(x)=(45x+92x^2)\mod 368\) is used for a 368 bit interleaving pattern QPP. See appendix sec-interleaver for pattern.
To avoid transmitting long sequences of constant symbols (e.g. 010101…), a simple algorithm is used. All 46 bytes of type 4 bits shall be XORed with a pseudorandom, predefined stream. The same algorithm has to be used for incoming bits at the receiver to get the original data stream. See decorr-seq for sequence.

File diff suppressed because one or more lines are too long

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 50 KiB

Wyświetl plik

@ -0,0 +1,207 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 26.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="svg8" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 1154.7 63.5" style="enable-background:new 0 0 1154.7 63.5;" xml:space="preserve">
<style type="text/css">
.st0{fill:none;stroke:#000000;stroke-width:1.4173;stroke-miterlimit:11.3386;}
.st1{fill:none;stroke:#000000;stroke-width:1.4184;stroke-miterlimit:11.3386;}
.st2{fill:none;stroke:#000000;stroke-width:1.4184;stroke-miterlimit:11.3386;stroke-dasharray:12.8844,12.8844;}
</style>
<g>
<path d="M36.1,40.2V27.3H41c0.7,0,1.3,0,2,0.1c0.6,0.1,1.1,0.3,1.6,0.6c0.4,0.3,0.8,0.7,1,1.2c0.7,1.5,0.4,3.3-0.7,4.5
c-0.7,0.8-2,1.1-3.8,1.1h-3.3v5.2H36.1z M37.8,33.4h3.3c0.8,0.1,1.7-0.1,2.3-0.6c0.5-0.4,0.7-1.1,0.7-1.7c0-0.5-0.1-1-0.4-1.4
c-0.3-0.4-0.6-0.6-1.1-0.8c-0.5-0.1-1.1-0.1-1.6-0.1h-3.3V33.4z"/>
<path d="M48.1,40.2V27.3h5.7c0.9,0,1.8,0.1,2.6,0.3c0.6,0.2,1.1,0.7,1.4,1.2c0.4,0.6,0.5,1.3,0.5,1.9c0,0.9-0.3,1.7-0.9,2.3
c-0.8,0.7-1.7,1.1-2.7,1.2c0.4,0.2,0.7,0.4,1,0.6c0.5,0.5,1,1.1,1.4,1.7l2.2,3.5h-2.1l-1.7-2.7c-0.5-0.8-0.9-1.4-1.2-1.8
c-0.2-0.3-0.5-0.6-0.9-0.9c-0.2-0.2-0.5-0.3-0.8-0.3c-0.3,0-0.6-0.1-0.9-0.1h-2v5.7H48.1z M49.8,33h3.7c0.6,0,1.2-0.1,1.8-0.2
c0.4-0.1,0.8-0.4,1-0.8c0.2-0.3,0.3-0.7,0.3-1.2c0-0.6-0.2-1.1-0.7-1.5c-0.6-0.4-1.3-0.7-2.1-0.6h-4.1V33z"/>
<path d="M61.1,40.2V27.3h9.3v1.5h-7.6v3.9H70v1.5h-7.1v4.4h7.9v1.5L61.1,40.2z"/>
<path d="M71.7,40.2l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4l-1.4,3.9H71.7z M75.4,34.9h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L75.4,34.9z"/>
<path d="M85.1,40.2V27.3h2.6l3.1,9.1c0.3,0.8,0.5,1.5,0.6,1.9c0.1-0.5,0.4-1.2,0.7-2.1l3.1-9h2.3v12.9h-1.6V29.4L92,40.2h-1.5
l-3.7-11v11H85.1z"/>
<path d="M100,40.2V27.3h4.8c0.8,0,1.6,0.1,2.4,0.4c0.6,0.2,1.1,0.7,1.4,1.2c0.3,0.5,0.5,1.1,0.5,1.7c0,0.6-0.2,1.1-0.4,1.6
c-0.3,0.5-0.8,0.9-1.4,1.2c0.7,0.2,1.3,0.6,1.8,1.2c0.4,0.6,0.6,1.2,0.6,2c0,0.6-0.1,1.2-0.4,1.7c-0.2,0.5-0.5,0.9-0.9,1.2
c-0.4,0.3-0.9,0.5-1.4,0.6c-0.7,0.2-1.4,0.2-2.1,0.2H100z M101.7,32.7h2.8c0.5,0,1.1,0,1.6-0.1c0.4-0.1,0.7-0.3,1-0.6
c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.8-0.3-1.1c-0.2-0.3-0.5-0.6-0.9-0.7c-0.6-0.1-1.3-0.2-2-0.2h-2.6V32.7z M101.7,38.6h3.2
c0.4,0,0.8,0,1.2-0.1c0.3-0.1,0.7-0.2,1-0.4c0.3-0.2,0.5-0.4,0.7-0.7c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.9-0.4-1.3
c-0.2-0.4-0.6-0.6-1-0.7c-0.6-0.2-1.2-0.2-1.9-0.2h-3L101.7,38.6z"/>
<path d="M112,40.2V27.3h1.7v11.4h6.3v1.5L112,40.2z"/>
<path d="M122.2,40.2V27.3h9.3v1.5h-7.6v3.9h7.1v1.5h-7.1v4.4h7.9v1.5L122.2,40.2z"/>
</g>
<path id="path3733" class="st0" d="M139.9,19.1v28.3"/>
<g>
<path d="M148.5,36l1.6-0.1c0,0.6,0.2,1.1,0.5,1.6c0.3,0.5,0.8,0.8,1.3,1c0.6,0.3,1.3,0.4,2,0.4c0.6,0,1.2-0.1,1.7-0.3
c0.4-0.2,0.8-0.4,1.1-0.8c0.2-0.3,0.4-0.7,0.4-1.1c0-0.4-0.1-0.8-0.4-1.1c-0.3-0.4-0.7-0.6-1.2-0.8c-0.8-0.2-1.5-0.5-2.3-0.6
c-0.9-0.2-1.7-0.4-2.5-0.8c-0.6-0.3-1-0.7-1.4-1.2c-0.3-0.5-0.5-1-0.5-1.6c0-0.6,0.2-1.3,0.6-1.8c0.4-0.6,1-1,1.6-1.3
c0.8-0.3,1.6-0.5,2.4-0.4c0.9,0,1.7,0.1,2.5,0.5c0.7,0.3,1.3,0.7,1.7,1.4c0.4,0.6,0.6,1.3,0.6,2l-1.6,0.1c0-0.7-0.4-1.4-0.9-1.8
c-0.7-0.5-1.4-0.7-2.2-0.6c-0.8-0.1-1.6,0.1-2.3,0.6c-0.4,0.3-0.7,0.8-0.7,1.4c0,0.4,0.2,0.9,0.5,1.1c0.8,0.5,1.7,0.8,2.6,0.9
c1,0.2,1.9,0.5,2.9,0.8c0.7,0.3,1.2,0.7,1.7,1.3c0.4,0.5,0.5,1.2,0.5,1.8c0,0.7-0.2,1.4-0.6,1.9c-0.4,0.6-1,1.1-1.7,1.4
c-0.8,0.3-1.6,0.5-2.5,0.5c-1,0-2-0.1-2.9-0.5c-0.8-0.3-1.4-0.8-1.9-1.5C148.7,37.6,148.5,36.8,148.5,36z"/>
<path d="M164.7,40.2v-5.5l-5-7.4h2.1l2.5,3.9c0.5,0.7,0.9,1.5,1.3,2.2c0.4-0.7,0.9-1.4,1.4-2.3l2.5-3.8h2l-5.1,7.4v5.5H164.7z"/>
<path d="M173,40.2V27.3h1.7l6.8,10.1V27.3h1.6v12.9h-1.7L174.7,30v10.1H173z"/>
<path d="M195.2,35.6l1.7,0.4c-0.3,1.3-0.9,2.4-1.9,3.2c-1,0.8-2.2,1.1-3.4,1.1c-1.2,0.1-2.4-0.2-3.4-0.8c-0.9-0.6-1.6-1.5-2-2.5
c-0.5-1.1-0.7-2.3-0.7-3.5c0-1.2,0.2-2.4,0.8-3.5c0.5-1,1.2-1.8,2.2-2.3c1-0.5,2-0.8,3.1-0.8c1.2,0,2.3,0.3,3.3,1
c0.9,0.7,1.5,1.7,1.8,2.8l-1.7,0.4c-0.2-0.8-0.7-1.5-1.3-2c-0.6-0.4-1.4-0.7-2.1-0.6c-0.9,0-1.8,0.2-2.5,0.7
c-0.7,0.5-1.2,1.1-1.4,1.9c-0.3,0.8-0.4,1.6-0.4,2.5c0,1,0.1,2,0.5,2.9c0.3,0.8,0.8,1.4,1.5,1.8c0.7,0.4,1.4,0.6,2.2,0.6
c0.9,0,1.7-0.3,2.4-0.8C194.6,37.5,195.1,36.6,195.2,35.6z"/>
<path d="M204,40.2V27.3h4.8c0.8,0,1.6,0.1,2.4,0.4c0.6,0.2,1.1,0.7,1.4,1.2c0.3,0.5,0.5,1.1,0.5,1.7c0,0.6-0.2,1.1-0.4,1.6
c-0.3,0.5-0.8,0.9-1.4,1.2c0.7,0.2,1.3,0.6,1.8,1.2c0.4,0.6,0.6,1.2,0.6,2c0,0.6-0.1,1.2-0.4,1.7c-0.2,0.5-0.5,0.9-0.9,1.2
c-0.4,0.3-0.9,0.5-1.4,0.6c-0.7,0.2-1.4,0.2-2.1,0.2L204,40.2z M205.7,32.7h2.8c0.5,0,1.1,0,1.6-0.1c0.4-0.1,0.7-0.3,1-0.6
c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.8-0.3-1.1c-0.2-0.3-0.5-0.6-0.9-0.7c-0.6-0.1-1.3-0.2-2-0.2h-2.6L205.7,32.7z M205.7,38.6
h3.2c0.4,0,0.8,0,1.2-0.1c0.3-0.1,0.7-0.2,1-0.4c0.3-0.2,0.5-0.4,0.6-0.7c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.9-0.4-1.3
c-0.2-0.4-0.6-0.6-1-0.7c-0.6-0.2-1.2-0.2-1.9-0.2h-3L205.7,38.6z"/>
<path d="M224.5,27.3h1.7v7.4c0,1-0.1,2.1-0.4,3.1c-0.3,0.8-0.9,1.4-1.6,1.9c-0.9,0.5-2,0.8-3,0.7c-1,0-2-0.2-3-0.6
c-0.7-0.4-1.3-1-1.6-1.8c-0.4-1-0.5-2.1-0.5-3.2v-7.4h1.7v7.4c0,0.8,0.1,1.7,0.3,2.5c0.2,0.5,0.6,1,1.1,1.2
c0.6,0.3,1.2,0.5,1.9,0.4c1,0.1,1.9-0.2,2.7-0.9c0.6-1,0.9-2.1,0.8-3.3L224.5,27.3z"/>
<path d="M229.1,40.2V27.3h5.7c0.9,0,1.8,0.1,2.6,0.3c0.6,0.2,1.1,0.7,1.4,1.2c0.4,0.6,0.5,1.3,0.5,1.9c0,0.9-0.3,1.7-0.9,2.3
c-0.8,0.7-1.7,1.1-2.7,1.2c0.4,0.2,0.7,0.4,1,0.6c0.5,0.5,1,1.1,1.4,1.7l2.2,3.5h-2.1l-1.7-2.7c-0.5-0.8-0.9-1.4-1.2-1.8
c-0.2-0.3-0.5-0.6-0.9-0.9c-0.2-0.2-0.5-0.3-0.8-0.3c-0.3,0-0.6-0.1-0.9-0.1h-2v5.7H229.1z M230.8,33h3.7c0.6,0,1.2-0.1,1.8-0.2
c0.4-0.1,0.8-0.4,1-0.8c0.2-0.3,0.3-0.7,0.3-1.2c0-0.6-0.2-1.1-0.7-1.5c-0.6-0.4-1.3-0.7-2.1-0.6h-4.1L230.8,33z"/>
<path d="M241.5,36l1.6-0.1c0,0.6,0.2,1.1,0.5,1.6c0.3,0.5,0.8,0.8,1.3,1c0.6,0.3,1.3,0.4,2,0.4c0.6,0,1.2-0.1,1.7-0.3
c0.4-0.2,0.8-0.4,1.1-0.8c0.2-0.3,0.4-0.7,0.4-1.1c0-0.4-0.1-0.8-0.4-1.1c-0.3-0.4-0.7-0.6-1.2-0.8c-0.8-0.2-1.5-0.5-2.3-0.6
c-0.9-0.2-1.7-0.4-2.5-0.8c-0.6-0.3-1-0.7-1.4-1.2c-0.3-0.5-0.5-1-0.5-1.6c0-0.6,0.2-1.3,0.6-1.8c0.4-0.6,1-1,1.6-1.3
c0.8-0.3,1.6-0.5,2.4-0.4c0.9,0,1.7,0.1,2.5,0.5c0.7,0.3,1.3,0.7,1.7,1.4c0.4,0.6,0.6,1.3,0.6,2l-1.6,0.1c0-0.7-0.4-1.4-0.9-1.8
c-0.7-0.5-1.4-0.7-2.2-0.6c-0.8-0.1-1.6,0.1-2.3,0.6c-0.4,0.3-0.7,0.8-0.7,1.4c0,0.4,0.2,0.9,0.5,1.1c0.8,0.5,1.7,0.8,2.6,0.9
c1,0.2,1.9,0.5,2.9,0.8c0.7,0.3,1.2,0.7,1.7,1.3c0.4,0.5,0.5,1.2,0.5,1.8c0,0.7-0.2,1.4-0.6,1.9c-0.4,0.6-1,1.1-1.7,1.4
c-0.8,0.3-1.6,0.5-2.5,0.5c-1,0-2-0.1-2.9-0.5c-0.8-0.3-1.4-0.8-1.9-1.5C241.7,37.6,241.5,36.8,241.5,36z"/>
<path d="M257.3,40.2V28.8h-4.2v-1.5h10.2v1.5H259v11.4H257.3z"/>
</g>
<g>
<path d="M316.1,40.4V27.5h4.4c0.8,0,1.5,0,2.3,0.2c0.7,0.1,1.3,0.5,1.9,0.9c0.7,0.6,1.2,1.3,1.5,2.2c0.4,1,0.5,2,0.5,3.1
c0,0.9-0.1,1.8-0.3,2.6c-0.2,0.7-0.5,1.3-0.9,1.9c-0.3,0.5-0.7,0.9-1.2,1.2c-0.5,0.3-1,0.5-1.5,0.6c-0.7,0.2-1.4,0.2-2.1,0.2
L316.1,40.4z M317.8,38.9h2.8c0.7,0,1.3-0.1,2-0.2c0.4-0.1,0.8-0.4,1.2-0.7c0.4-0.5,0.8-1,0.9-1.6c0.2-0.8,0.4-1.6,0.3-2.5
c0.1-1.1-0.2-2.2-0.7-3.1c-0.4-0.7-0.9-1.2-1.6-1.5c-0.7-0.2-1.5-0.3-2.2-0.3h-2.7L317.8,38.9z"/>
<path d="M327.7,40.4l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4l-1.4,3.9H327.7z M331.4,35.1h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L331.4,35.1z"/>
<path d="M343.1,40.4V29h-4.2v-1.5H349V29h-4.3v11.4H343.1z"/>
<path d="M348,40.4l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4l-1.4,3.9H348z M351.7,35.1h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L351.7,35.1z"/>
</g>
<path id="path3733-4-5" class="st0" d="M270.8,19.1v28.3"/>
<g>
<path d="M1073.4,40.2V27.3h9.3v1.5h-7.6v3.9h7.1v1.5h-7.1v4.4h7.9v1.5L1073.4,40.2z"/>
<path d="M1084.8,33.9c-0.1-1.8,0.5-3.6,1.7-5c1.2-1.2,2.8-1.9,4.4-1.8c1.1,0,2.2,0.3,3.2,0.9c0.9,0.6,1.7,1.4,2.2,2.4
c0.5,1.1,0.8,2.3,0.8,3.5c0,1.2-0.3,2.4-0.8,3.5c-0.5,1-1.3,1.8-2.2,2.3c-1,0.5-2,0.8-3.1,0.8c-1.1,0-2.3-0.3-3.3-0.9
c-0.9-0.6-1.7-1.4-2.2-2.4C1085.1,36.1,1084.8,35,1084.8,33.9z M1086.6,33.9c-0.1,1.3,0.4,2.7,1.3,3.7c1.7,1.7,4.4,1.8,6.2,0.1
c0,0,0.1-0.1,0.1-0.1c0.9-1.1,1.3-2.4,1.2-3.8c0-0.9-0.2-1.9-0.5-2.7c-0.3-0.7-0.9-1.4-1.6-1.8c-0.7-0.4-1.5-0.7-2.3-0.6
c-1.2,0-2.3,0.4-3.1,1.2C1087,30.6,1086.6,32,1086.6,33.9z"/>
<path d="M1102.6,40.2V28.8h-4.2v-1.5h10.2v1.5h-4.3v11.4H1102.6z"/>
</g>
<path id="path3733-4-5-1-3" class="st0" d="M1047,19.1v28.3"/>
<path id="path3733-4-5_00000093177594592238871140000006663593622922439060_" class="st0" d="M404.3,18.8v28.3"/>
<g>
<path d="M414.9,35.6l1.6-0.1c0,0.6,0.2,1.1,0.5,1.6c0.3,0.5,0.8,0.8,1.3,1c0.6,0.3,1.3,0.4,2,0.4c0.6,0,1.2-0.1,1.7-0.3
c0.4-0.2,0.8-0.4,1.1-0.8c0.2-0.3,0.4-0.7,0.4-1.1c0-0.4-0.1-0.8-0.4-1.1c-0.3-0.4-0.7-0.6-1.2-0.8c-0.8-0.2-1.5-0.5-2.3-0.6
c-0.9-0.2-1.7-0.4-2.5-0.8c-0.6-0.3-1-0.7-1.4-1.2c-0.3-0.5-0.5-1-0.5-1.6c0-0.6,0.2-1.3,0.6-1.8c0.4-0.6,1-1,1.6-1.3
c0.8-0.3,1.6-0.5,2.4-0.4c0.9,0,1.7,0.1,2.5,0.5c0.7,0.3,1.3,0.7,1.7,1.4c0.4,0.6,0.6,1.3,0.6,2l-1.6,0.1c0-0.7-0.4-1.4-0.9-1.8
c-0.7-0.5-1.4-0.7-2.2-0.6c-0.8-0.1-1.6,0.1-2.3,0.6c-0.4,0.3-0.7,0.8-0.7,1.4c0,0.4,0.2,0.9,0.5,1.1c0.8,0.5,1.7,0.8,2.6,0.9
c1,0.2,1.9,0.5,2.9,0.8c0.7,0.3,1.2,0.7,1.7,1.3c0.4,0.5,0.5,1.2,0.5,1.8c0,0.7-0.2,1.4-0.6,1.9c-0.4,0.6-1,1.1-1.7,1.4
c-0.8,0.3-1.6,0.5-2.5,0.5c-1,0-2-0.1-2.9-0.5c-0.8-0.3-1.4-0.8-1.9-1.5C415.2,37.3,414.9,36.5,414.9,35.6z"/>
<path d="M431.1,39.8v-5.5l-5-7.4h2.1l2.5,3.9c0.5,0.7,0.9,1.5,1.3,2.2c0.4-0.7,0.9-1.4,1.4-2.3l2.5-3.8h2l-5.1,7.4v5.5H431.1z"/>
<path d="M439.5,39.8V26.9h1.7L448,37V26.9h1.6v12.9h-1.7l-6.8-10.1v10.1H439.5z"/>
<path d="M461.7,35.3l1.7,0.4c-0.3,1.3-0.9,2.4-1.9,3.2c-1,0.8-2.2,1.1-3.4,1.1c-1.2,0.1-2.4-0.2-3.4-0.8c-0.9-0.6-1.6-1.5-2-2.5
c-0.5-1.1-0.7-2.3-0.7-3.5c0-1.2,0.2-2.4,0.8-3.5c0.5-1,1.2-1.8,2.2-2.3c1-0.5,2-0.8,3.1-0.8c1.2,0,2.3,0.3,3.3,1
c0.9,0.7,1.5,1.7,1.8,2.8l-1.7,0.4c-0.2-0.8-0.7-1.5-1.3-2c-0.6-0.4-1.4-0.7-2.1-0.6c-0.9,0-1.8,0.2-2.5,0.7
c-0.7,0.5-1.2,1.1-1.4,1.9c-0.3,0.8-0.4,1.6-0.4,2.5c0,1,0.1,2,0.5,2.9c0.3,0.8,0.8,1.4,1.5,1.8c0.7,0.4,1.4,0.6,2.2,0.6
c0.9,0,1.7-0.3,2.4-0.8C461.1,37.1,461.5,36.2,461.7,35.3z"/>
<path d="M470.4,39.8V26.9h4.8c0.8,0,1.6,0.1,2.4,0.4c0.6,0.2,1.1,0.7,1.4,1.2c0.3,0.5,0.5,1.1,0.5,1.7c0,0.6-0.2,1.1-0.4,1.6
c-0.3,0.5-0.8,0.9-1.4,1.2c0.7,0.2,1.3,0.6,1.8,1.2c0.4,0.6,0.6,1.2,0.6,2c0,0.6-0.1,1.2-0.4,1.7c-0.2,0.5-0.5,0.9-0.9,1.2
c-0.4,0.3-0.9,0.5-1.4,0.6c-0.7,0.2-1.4,0.2-2.1,0.2L470.4,39.8z M472.1,32.3h2.8c0.5,0,1.1,0,1.6-0.1c0.4-0.1,0.7-0.3,1-0.6
c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.8-0.3-1.1c-0.2-0.3-0.5-0.6-0.9-0.7c-0.6-0.1-1.3-0.2-2-0.2h-2.6L472.1,32.3z M472.1,38.3
h3.2c0.4,0,0.8,0,1.2-0.1c0.3-0.1,0.7-0.2,1-0.4c0.3-0.2,0.5-0.4,0.6-0.7c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.9-0.4-1.3
c-0.2-0.4-0.6-0.6-1-0.7c-0.6-0.2-1.2-0.2-1.9-0.2h-3L472.1,38.3z"/>
<path d="M491,26.9h1.7v7.4c0,1-0.1,2.1-0.4,3.1c-0.3,0.8-0.9,1.4-1.6,1.9c-0.9,0.5-2,0.8-3,0.7c-1,0-2-0.2-3-0.6
c-0.7-0.4-1.3-1-1.6-1.8c-0.4-1-0.5-2.1-0.5-3.2v-7.4h1.7v7.4c0,0.8,0.1,1.7,0.3,2.5c0.2,0.5,0.6,1,1.1,1.2
c0.6,0.3,1.2,0.5,1.9,0.4c1,0.1,1.9-0.2,2.7-0.9c0.6-1,0.9-2.1,0.8-3.3L491,26.9z"/>
<path d="M495.5,39.8V26.9h5.7c0.9,0,1.8,0.1,2.6,0.3c0.6,0.2,1.1,0.7,1.4,1.2c0.4,0.6,0.5,1.3,0.5,1.9c0,0.9-0.3,1.7-0.9,2.3
c-0.8,0.7-1.7,1.1-2.7,1.2c0.4,0.2,0.7,0.4,1,0.6c0.5,0.5,1,1.1,1.4,1.7l2.2,3.5h-2.1l-1.7-2.7c-0.5-0.8-0.9-1.4-1.2-1.8
c-0.2-0.3-0.5-0.6-0.9-0.9c-0.2-0.2-0.5-0.3-0.8-0.3c-0.3,0-0.6-0.1-0.9-0.1h-2v5.7H495.5z M497.2,32.6h3.7c0.6,0,1.2-0.1,1.8-0.2
c0.4-0.1,0.8-0.4,1-0.8c0.2-0.3,0.3-0.7,0.3-1.2c0-0.6-0.2-1.1-0.7-1.5c-0.6-0.4-1.3-0.7-2.1-0.6h-4.1L497.2,32.6z"/>
<path d="M507.9,35.6l1.6-0.1c0,0.6,0.2,1.1,0.5,1.6c0.3,0.5,0.8,0.8,1.3,1c0.6,0.3,1.3,0.4,2,0.4c0.6,0,1.2-0.1,1.7-0.3
c0.4-0.2,0.8-0.4,1.1-0.8c0.2-0.3,0.4-0.7,0.4-1.1c0-0.4-0.1-0.8-0.4-1.1c-0.3-0.4-0.7-0.6-1.2-0.8c-0.8-0.2-1.5-0.5-2.3-0.6
c-0.9-0.2-1.7-0.4-2.5-0.8c-0.6-0.3-1-0.7-1.4-1.2c-0.3-0.5-0.5-1-0.5-1.6c0-0.6,0.2-1.3,0.6-1.8c0.4-0.6,1-1,1.6-1.3
c0.8-0.3,1.6-0.5,2.4-0.4c0.9,0,1.7,0.1,2.5,0.5c0.7,0.3,1.3,0.7,1.7,1.4c0.4,0.6,0.6,1.3,0.6,2l-1.6,0.1c0-0.7-0.4-1.4-0.9-1.8
c-0.7-0.5-1.4-0.7-2.2-0.6c-0.8-0.1-1.6,0.1-2.3,0.6c-0.4,0.3-0.7,0.8-0.7,1.4c0,0.4,0.2,0.9,0.5,1.1c0.8,0.5,1.7,0.8,2.6,0.9
c1,0.2,1.9,0.5,2.9,0.8c0.7,0.3,1.2,0.7,1.7,1.3c0.4,0.5,0.5,1.2,0.5,1.8c0,0.7-0.2,1.4-0.6,1.9c-0.4,0.6-1,1.1-1.7,1.4
c-0.8,0.3-1.6,0.5-2.5,0.5c-1,0-2-0.1-2.9-0.5c-0.8-0.3-1.4-0.8-1.9-1.5C508.2,37.3,507.9,36.5,507.9,35.6z"/>
<path d="M523.8,39.8V28.4h-4.2v-1.5h10.2v1.5h-4.3v11.4H523.8z"/>
</g>
<g>
<path d="M582.6,40V27.1h4.4c0.8,0,1.5,0,2.3,0.2c0.7,0.1,1.3,0.5,1.9,0.9c0.7,0.6,1.2,1.3,1.5,2.2c0.4,1,0.5,2,0.5,3.1
c0,0.9-0.1,1.8-0.3,2.6c-0.2,0.7-0.5,1.3-0.9,1.9c-0.3,0.5-0.7,0.9-1.2,1.2c-0.5,0.3-1,0.5-1.5,0.6c-0.7,0.2-1.4,0.2-2.1,0.2
L582.6,40z M584.3,38.5h2.8c0.7,0,1.3-0.1,2-0.2c0.4-0.1,0.8-0.4,1.2-0.7c0.4-0.5,0.8-1,0.9-1.6c0.2-0.8,0.4-1.6,0.3-2.5
c0.1-1.1-0.2-2.2-0.7-3.1c-0.4-0.7-0.9-1.2-1.6-1.5c-0.7-0.2-1.5-0.3-2.2-0.3h-2.7L584.3,38.5z"/>
<path d="M594.1,40l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4L596,40H594.1z M597.9,34.7h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L597.9,34.7z"/>
<path d="M609.5,40V28.6h-4.2v-1.5h10.2v1.5h-4.3V40H609.5z"/>
<path d="M614.5,40l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4l-1.4,3.9H614.5z M618.2,34.7h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L618.2,34.7z"/>
</g>
<path id="path3733-4-5_00000005956794692188289810000002643477931960871853_" class="st0" d="M537.3,18.8v28.3"/>
<path id="path3733-4-5_00000004546286590786815740000015974072703850002356_" class="st0" d="M673.2,47.4h-645V19.1h645V47.4z"/>
<g>
<path d="M787,35.9l1.6-0.1c0,0.6,0.2,1.1,0.5,1.6c0.3,0.5,0.8,0.8,1.3,1c0.6,0.3,1.3,0.4,2,0.4c0.6,0,1.2-0.1,1.7-0.3
c0.4-0.2,0.8-0.4,1.1-0.8c0.2-0.3,0.4-0.7,0.4-1.1c0-0.4-0.1-0.8-0.4-1.1c-0.3-0.4-0.7-0.6-1.2-0.8c-0.8-0.2-1.5-0.5-2.3-0.6
c-0.9-0.2-1.7-0.4-2.5-0.8c-0.6-0.3-1-0.7-1.4-1.2c-0.3-0.5-0.5-1-0.5-1.6c0-0.6,0.2-1.3,0.6-1.8c0.4-0.6,1-1,1.6-1.3
c0.8-0.3,1.6-0.5,2.4-0.4c0.9,0,1.7,0.1,2.5,0.5c0.7,0.3,1.3,0.7,1.7,1.4c0.4,0.6,0.6,1.3,0.6,2l-1.6,0.1c0-0.7-0.4-1.4-0.9-1.8
c-0.7-0.5-1.4-0.7-2.2-0.6c-0.8-0.1-1.6,0.1-2.3,0.6c-0.4,0.3-0.7,0.8-0.7,1.4c0,0.4,0.2,0.9,0.5,1.1c0.8,0.5,1.7,0.8,2.6,0.9
c1,0.2,1.9,0.5,2.9,0.8c0.7,0.3,1.2,0.7,1.7,1.3c0.4,0.5,0.5,1.2,0.5,1.8c0,0.7-0.2,1.4-0.6,1.9c-0.4,0.6-1,1.1-1.7,1.4
c-0.8,0.3-1.6,0.5-2.5,0.5c-1,0-2-0.1-2.9-0.5c-0.8-0.3-1.4-0.8-1.9-1.5C787.2,37.5,787,36.7,787,35.9z"/>
<path d="M803.2,40v-5.5l-5-7.4h2.1l2.5,3.9c0.5,0.7,0.9,1.5,1.3,2.2c0.4-0.7,0.9-1.4,1.4-2.3l2.5-3.8h2l-5.1,7.4V40H803.2z"/>
<path d="M811.6,40V27.2h1.7l6.8,10.1V27.2h1.6V40H820l-6.8-10.1V40H811.6z"/>
<path d="M833.8,35.5l1.7,0.4c-0.3,1.3-0.9,2.4-1.9,3.2c-1,0.8-2.2,1.1-3.4,1.1c-1.2,0.1-2.4-0.2-3.4-0.8c-0.9-0.6-1.6-1.5-2-2.5
c-0.5-1.1-0.7-2.3-0.7-3.5c0-1.2,0.2-2.4,0.8-3.5c0.5-1,1.2-1.8,2.2-2.3c1-0.5,2-0.8,3.1-0.8c1.2,0,2.3,0.3,3.3,1
c0.9,0.7,1.5,1.7,1.8,2.8l-1.7,0.4c-0.2-0.8-0.7-1.5-1.3-2c-0.6-0.4-1.4-0.7-2.1-0.6c-0.9,0-1.8,0.2-2.5,0.7
c-0.7,0.5-1.2,1.1-1.4,1.9c-0.3,0.8-0.4,1.6-0.4,2.5c0,1,0.1,2,0.5,2.9c0.3,0.8,0.8,1.4,1.5,1.8c0.7,0.4,1.4,0.6,2.2,0.6
c0.9,0,1.7-0.3,2.4-0.8C833.1,37.3,833.6,36.5,833.8,35.5z"/>
<path d="M842.5,40V27.2h4.8c0.8,0,1.6,0.1,2.4,0.4c0.6,0.2,1.1,0.7,1.4,1.2c0.3,0.5,0.5,1.1,0.5,1.7c0,0.6-0.2,1.1-0.4,1.6
c-0.3,0.5-0.8,0.9-1.4,1.2c0.7,0.2,1.3,0.6,1.8,1.2c0.4,0.6,0.6,1.2,0.6,2c0,0.6-0.1,1.2-0.4,1.7c-0.2,0.5-0.5,0.9-0.9,1.2
c-0.4,0.3-0.9,0.5-1.4,0.6c-0.7,0.2-1.4,0.2-2.1,0.2L842.5,40z M844.2,32.6h2.8c0.5,0,1.1,0,1.6-0.1c0.4-0.1,0.7-0.3,1-0.6
c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.8-0.3-1.1c-0.2-0.3-0.5-0.6-0.9-0.7c-0.6-0.1-1.3-0.2-2-0.2h-2.6L844.2,32.6z M844.2,38.5
h3.2c0.4,0,0.8,0,1.2-0.1c0.3-0.1,0.7-0.2,1-0.4c0.3-0.2,0.5-0.4,0.6-0.7c0.2-0.3,0.3-0.7,0.3-1.1c0-0.4-0.1-0.9-0.4-1.3
c-0.2-0.4-0.6-0.6-1-0.7c-0.6-0.2-1.2-0.2-1.9-0.2h-3L844.2,38.5z"/>
<path d="M863,27.2h1.7v7.4c0,1-0.1,2.1-0.4,3.1c-0.3,0.8-0.9,1.4-1.6,1.9c-0.9,0.5-2,0.8-3,0.7c-1,0-2-0.2-3-0.6
c-0.7-0.4-1.3-1-1.6-1.8c-0.4-1-0.5-2.1-0.5-3.2v-7.4h1.7v7.4c0,0.8,0.1,1.7,0.3,2.5c0.2,0.5,0.6,1,1.1,1.2
c0.6,0.3,1.2,0.5,1.9,0.4c1,0.1,1.9-0.2,2.7-0.9c0.6-1,0.9-2.1,0.8-3.3L863,27.2z"/>
<path d="M867.6,40V27.2h5.7c0.9,0,1.8,0.1,2.6,0.3c0.6,0.2,1.1,0.7,1.4,1.2c0.4,0.6,0.5,1.3,0.5,1.9c0,0.9-0.3,1.7-0.9,2.3
c-0.8,0.7-1.7,1.1-2.7,1.2c0.4,0.2,0.7,0.4,1,0.6c0.5,0.5,1,1.1,1.4,1.7L879,40h-2.1l-1.7-2.7c-0.5-0.8-0.9-1.4-1.2-1.8
c-0.2-0.3-0.5-0.6-0.9-0.9c-0.2-0.2-0.5-0.3-0.8-0.3c-0.3,0-0.6-0.1-0.9-0.1h-2V40H867.6z M869.3,32.8h3.7c0.6,0,1.2-0.1,1.8-0.2
c0.4-0.1,0.8-0.4,1-0.8c0.2-0.3,0.3-0.7,0.3-1.2c0-0.6-0.2-1.1-0.7-1.5c-0.6-0.4-1.3-0.7-2.1-0.6h-4.1L869.3,32.8z"/>
<path d="M880,35.9l1.6-0.1c0,0.6,0.2,1.1,0.5,1.6c0.3,0.5,0.8,0.8,1.3,1c0.6,0.3,1.3,0.4,2,0.4c0.6,0,1.2-0.1,1.7-0.3
c0.4-0.2,0.8-0.4,1.1-0.8c0.2-0.3,0.4-0.7,0.4-1.1c0-0.4-0.1-0.8-0.4-1.1c-0.3-0.4-0.7-0.6-1.2-0.8c-0.8-0.2-1.5-0.5-2.3-0.6
c-0.9-0.2-1.7-0.4-2.5-0.8c-0.6-0.3-1-0.7-1.4-1.2c-0.3-0.5-0.5-1-0.5-1.6c0-0.6,0.2-1.3,0.6-1.8c0.4-0.6,1-1,1.6-1.3
c0.8-0.3,1.6-0.5,2.4-0.4c0.9,0,1.7,0.1,2.5,0.5c0.7,0.3,1.3,0.7,1.7,1.4c0.4,0.6,0.6,1.3,0.6,2l-1.6,0.1c0-0.7-0.4-1.4-0.9-1.8
c-0.7-0.5-1.4-0.7-2.2-0.6c-0.8-0.1-1.6,0.1-2.3,0.6c-0.4,0.3-0.7,0.8-0.7,1.4c0,0.4,0.2,0.9,0.5,1.1c0.8,0.5,1.7,0.8,2.6,0.9
c1,0.2,1.9,0.5,2.9,0.8c0.7,0.3,1.2,0.7,1.7,1.3c0.4,0.5,0.5,1.2,0.5,1.8c0,0.7-0.2,1.4-0.6,1.9c-0.4,0.6-1,1.1-1.7,1.4
c-0.8,0.3-1.6,0.5-2.5,0.5c-1,0-2-0.1-2.9-0.5c-0.8-0.3-1.4-0.8-1.9-1.5C880.2,37.5,880,36.7,880,35.9z"/>
<path d="M895.9,40V28.7h-4.2v-1.5h10.2v1.5h-4.3V40H895.9z"/>
</g>
<g>
<path d="M954.6,40.3V27.4h4.4c0.8,0,1.5,0,2.3,0.2c0.7,0.1,1.3,0.5,1.9,0.9c0.7,0.6,1.2,1.3,1.5,2.2c0.4,1,0.5,2,0.5,3.1
c0,0.9-0.1,1.8-0.3,2.6c-0.2,0.7-0.5,1.3-0.9,1.9c-0.3,0.5-0.7,0.9-1.2,1.2c-0.5,0.3-1,0.5-1.5,0.6c-0.7,0.2-1.4,0.2-2.1,0.2
L954.6,40.3z M956.3,38.7h2.8c0.7,0,1.3-0.1,2-0.2c0.4-0.1,0.8-0.4,1.2-0.7c0.4-0.5,0.8-1,0.9-1.6c0.2-0.8,0.4-1.6,0.3-2.5
c0.1-1.1-0.2-2.2-0.7-3.1c-0.4-0.7-0.9-1.2-1.6-1.5c-0.7-0.2-1.5-0.3-2.2-0.3h-2.7L956.3,38.7z"/>
<path d="M966.2,40.3l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4l-1.4,3.9H966.2z M969.9,35h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L969.9,35z"/>
<path d="M981.6,40.3V28.9h-4.2v-1.5h10.2v1.5h-4.3v11.4H981.6z"/>
<path d="M986.5,40.3l4.9-12.9h1.8l5.3,12.9h-1.9l-1.5-3.9h-5.4l-1.4,3.9H986.5z M990.3,35h4.4l-1.3-3.6c-0.4-1.1-0.7-2-0.9-2.7
c-0.2,0.8-0.4,1.7-0.7,2.5L990.3,35z"/>
</g>
<path id="path3733-4-5_00000001663125317444461110000002885179555265459130_" class="st0" d="M909.3,19v28.3"/>
<path id="path3733-4-5_00000072271215796960606740000007617232578408639644_" class="st0" d="M775.4,47.4V19.1h363.9v28.3H775.4z"/>
<g>
<g>
<line class="st1" x1="673.2" y1="19.1" x2="679.2" y2="19.1"/>
<line class="st2" x1="692.1" y1="19.1" x2="762.9" y2="19.1"/>
<line class="st1" x1="769.4" y1="19.1" x2="775.4" y2="19.1"/>
</g>
</g>
<g>
<g>
<line class="st1" x1="673.2" y1="47.4" x2="679.2" y2="47.4"/>
<line class="st2" x1="692.1" y1="47.4" x2="762.9" y2="47.4"/>
<line class="st1" x1="769.4" y1="47.4" x2="775.4" y2="47.4"/>
</g>
</g>
</svg>

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 18 KiB

Wyświetl plik

Przed

Szerokość:  |  Wysokość:  |  Rozmiar: 20 KiB

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 20 KiB

Wyświetl plik

Przed

Szerokość:  |  Wysokość:  |  Rozmiar: 16 KiB

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 16 KiB

Wyświetl plik

Przed

Szerokość:  |  Wysokość:  |  Rozmiar: 14 KiB

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 14 KiB

Wyświetl plik

Przed

Szerokość:  |  Wysokość:  |  Rozmiar: 12 KiB

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 12 KiB