1
0

docs(report): initial transfert from typst.app

This commit is contained in:
2026-06-04 00:24:50 +02:00
parent a0b3700b35
commit 6ab938843e
110 changed files with 10438 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
#import "/metadata.typ": *
#import "/tail/bibliography.typ": *
#import "/tail/glossary.typ": *
#import "/resources/mse-title-page.typ": *
#show:make-glossary
#register-glossary(entry-list)
#set text(region: option.region)
//-------------------------------------
// Template config
//
#show: thesis.with(
option: option + (type: "final"),
doc: doc,
school: school,
date: date,
tableof: tableof,
logos: logos,
custom-title-page: mse-title-page(
title: doc.title,
subtitle: "Architecture",
date: date + (submission: date.specification-submission),
),
)
// Declaration of honor will be remove with the next release of the HEI-SYND-THESIS template (probably next week)
//-------------------------------------
// Content
//
#include "/main/specifications/03-context.typ"
#include "/main/architecture/description.typ"
//-------------------------------------
// Glossary
//
#heading(numbering:none, outlined: false)[] <sec:end>
#make_glossary(gloss:gloss, title:i18n("gloss-title"))
//-------------------------------------
// Bibliography
//
#make_bibliography(bib:bib, title:i18n("bib-title", lang: option.lang))

View File

@@ -0,0 +1,30 @@
#import "/metadata.typ": *
#pagebreak()
#heading(numbering:none)[#i18n("abstract-title", lang:option.lang)] <sec:abstract>
#option-style(type:option.type)[
The abstract serves as a concise summary of your entire thesis, encapsulating key elements on a single page such as:
- General background information
- Objective(s)
- Approach and method
- Conclusions
]
#lorem(50)
#lorem(50)
#lorem(50)
#v(2em)
#if doc.at("keywords", default:none) != none {[
_*#i18n("keywords", lang: option.lang)*_:
#enumerating-items(
items: doc.keywords,
italic: true
)
]}
#todo("Write abstract or remove section")

View File

@@ -0,0 +1,26 @@
#import "/metadata.typ": *
#import "specifications/02-introduction.typ": *
#pagebreak()
= #i18n("introduction-title", lang:option.lang) <sec:intro>
This document contains the report for the @pi team "plein de eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee" conducted during the Spring Semester 2025-2026.
This project aims at delivering the best time and duration to air a room.
This delivery requires to record the room data, namely the air temperature, humidity, @co2 level and window opening status.
It also requires to store and display the recorded data.
Lastly, a notification is sent to the room should it be aired using its associated teams notification user.
This document contains the project motivations, objectives, analysis, design implementation and takeaways in dedicated ordered sections.
At the start of every subsection, the usage of @llm is indicated and stands for the corresponding subsection.
Any absence of such indication is to be understood as the work being fully done by a @llm, with the tasked student only standing as final acknowledgement.
The students associated with the subsection still is to be considered as author and reference on the topic amongst the team.\
The sharing of tasks between the students is indicated in @sec:design.
#infobox()[
The implementation of the various unit are made available in the github repository available at
#align(center)[
#link("https://github.com/PI-E2EEDA/Plein-de-eeeeeeeeee-project")[https://github.com/PI-E2EEDA/Plein-de-eeeeeeeeee-project]
]
Explicit access right may be required and shall be asked to the #link("https://github.com/fooltinkerer")[owner (Fooltinkerer)].
]

View File

@@ -0,0 +1,8 @@
#import "/metadata.typ": *
#import "specifications/03-context.typ":*
#pagebreak()
= #i18n("analysis-title", lang:option.lang) <sec:analysis>
#add-chapter()[
#spec_context
]

343
report/main/04-design.typ Normal file
View File

@@ -0,0 +1,343 @@
#import "/metadata.typ": *
#import "architecture/description.typ": *
#import "03-analysis.typ": *
#pagebreak()
= #i18n("design-title", lang:option.lang) <sec:design>
#add-chapter()[
This section describes the project design from an holistic and then from a reductionist standpoint.
== Complete application <sec:design:complete>
The overall application design has been done without the use of any @llm.
The global architecture as given in @fig:top-level-architecture can be precised with @fig:top_level_archi_interface.
This precisions gives the various units to design and implement to have the complete system up and running.
Moreover, it also pinpoint the interfaces between each unit.
#top_level_archi_interface
Each unit design and implementation has been assigned to a team member, as indicated in @tab:work_repartition.
#figure(
table(
columns: (auto, auto),
align: center,
table.header("Unit", "Assigned member"),
[Nodes],[Adrien],
[Gateway],[Djelal],
[Database & API],[Rémi],
[User interface (Display)],[Ibrahima],
[Data validation & Forecasting],[Alison],
),
caption: [Work repartition amongst team member],
)<tab:work_repartition>
=== Nodes_interface
No @llm has been used for the design of this interface.
The interface between the nodes and the gateway is defined as follows.
#nodes_interface
=== Db_set & db_API <sec:design:interface:db>
#include "database/interface.typ"
=== Teams API
The teams @api is given by Microsoft.
As giving an exhaustive list of all available request would only bring noise to this document, the list of request ultimately used is given in @sec:impl:ui
== Nodes
No @llm has been used for the nodes design.
Each node firmware runs on a hardware from Nordic.\
Each node contains a sensor for the CO2 level, an hygrometer and a thermometer.
An additional sensor is added to some to get the windows binary state (open/closed).\
Each node has to broadcast its data over @ble.
The time between two broadcast is defined to be between 2 minutes and 6 hours.\
Considering these elements, the class diagram in @fig:nodes_class_diagram describes the firmware construction.
#let nodes_class_diagram = [
#figure(
image("../resources/img/nodes_class_diagram.svg", width: 90%),
caption: [Nodes class diagram]
) <fig:nodes_class_diagram>
]
#nodes_class_diagram
The generalisation of the "Sensor" class allows for logically efficient data retrieval during each loop iteration.
These iteration are described in the sequence diagram in @fig:nodes_sequence_diagram.
The maximal sleep time of 30 minutes allows to reduce the battery usage while keeping a reactive detection.\
The threshold of 400 ppm for the @co2 level is the level for a room without anyone in it.
#let nodes_sequence_diagram = [
#figure(
image("../resources/img/nodes_sequence_diagram.svg", width: 85%),
caption: [Nodes sequence diagram]
) <fig:nodes_sequence_diagram>
]
#nodes_sequence_diagram
== Gateway
DeepL Pro was used to translate this section from French to English, followed by @llm assistance to improve the academic style.
=== Role and architecture
The gateway runs permanently on a Raspberry Pi 4 installed in the
classroom. It listens to @ble advertising packets from the Thingy:52
nodes, decodes the sensor values, adds a @utc timestamp and publishes
the data to the @mqtt broker.
=== Technology choices
Python was chosen primarily because bleak and paho-mqtt directly
address the two communication needs of the gateway @ble and @mqtt.
The Raspberry Pi 4 has more than enough resources to run Python, unlike
the Thingy:52 which runs on a constrained microcontroller requiring C
and Zephyr. All code is encapsulated in a Gateway class whose structure is
described in @fig:gateway_class_diagram.
#let gateway_class_diagram = [
#figure(
image("../resources/img/class_diagram.svg", width: 50%),
caption: [Gateway class diagram]
) <fig:gateway_class_diagram>
]
#gateway_class_diagram
=== Asynchronous management with asyncio
The @ble scan and @mqtt publication run concurrently the scanner
permanently listens for advertising packets while the @mqtt client
maintains the broker connection in the background. Python's asyncio
module handles both in a single thread without blocking. The @mqtt
client runs in a dedicated background thread via loop_start(),
which allows publishing messages without interrupting the scan loop.
=== @ble:short architecture: passive advertising
The gateway listens passively to @ble advertising packets without
establishing any connection. This matches the firmware architecture —
the Thingy:52 manages its own sleep/wake cycle and broadcasts data
at variable intervals between 2 minutes and 6 hours. Packet filtering works in two steps. First, only packets with
company_id = 0xffff in the @ble manufacturer data are kept this
identifier is defined in the firmware specification. Second, only
packets whose payload is exactly 14 bytes are processed, matching
the format defined in the architecture document. The startup and data collection flows are described in @fig:gateway_sequence_startup and @fig:gateway_sequence_data (@appendix:gateway_seq).
#import "../resources/helper.typ": *
#let sequence_startup_chronos = {
import chronos: *
let g = actor("gateway",
disp_name: [Gateway\ (Raspberry PI)],
show-bottom:false
)
let b = actor("broker",
disp_name: [@mqtt:short Broker\ (RabbitMQ)],
show-bottom:false
)
g.display
b.display
_sep("Startup")
sync(g, g, [load config.json])
sync(g, b, [connect (@mqtt:short, @tls:short, auth)])
sync(b, g, [connected], dashed: true)
sync(g, g, [start @ble:short scan])
}
#let gateway_sequence_startup = [
#figure(
// image("../resources/img/sequence_startup.svg", width: 50%),
chronos.diagram(sequence_startup_chronos, width: 6.5cm),
caption: [Gateway sequence diagram Startup]
) <fig:gateway_sequence_startup>
]
#gateway_sequence_startup
=== Payload decoding
The firmware encodes sensor values as consecutive key/value pairs in
the manufacturer data payload, as defined in @tab:nodes_interface_content. Each key is one byte identifying the sensor type, followed by the
value bytes. Temperature is stored as an integer multiplied by 10 to avoid floating point on the embedded side 25.3°C is stored as 253. The company_id
is handled by the BLE stack and is not present in the raw bytes, so
decoding starts at index zero.
=== @mqtt:short interface
The gateway publishes on topic {gateway_id}/{thingy_mac}/update.
The gateway_id identifies the Pi and is mapped to the campus tag
in the database. The thingy_mac identifies the sensor and is mapped
to the room tag. This mapping is handled by the database manager. The timestamp is added on the gateway side to avoid clock synchronisation issues on the embedded system. The published JSON payload contains only the fields that were present
and valid in the received packet:
```json
{
"timestamp": "2026-05-13T12:57:59Z",
"temp": 27.8,
"humidity": 29,
"co2_ppm": 400,
"window_open": false,
"battery": 85
}
```
=== Security <sec:design:gateway:security>
The broker connection uses MQTTS — @mqtt over @tls — on port 80
(the standard port 8883 is blocked by the school network firewall).
Authentication uses username and password. The password is never in
the source code or versioned files — it is loaded at runtime from
secrets/mqtt.env via the MQTT_PASSWORD environment variable,
injected by systemd.
=== Configuration and deployment
All deployment-specific values are in config.json, excluded from
the repository. A config.example.json template is provided for
new deployments. Each Pi has its own config.json with a unique
gateway_id. The gateway runs as a systemd service that starts automatically on
boot and restarts on crash with a ten-second delay. This was
validated during testing — after a reboot, the service restarted
without any manual intervention.
=== Remote access via Tailscale
The Raspberry Pi is permanently deployed in a classroom. Tailscale was
installed on the Pi and on the developers' machines to allow @ssh access
from anywhere without configuring firewall rules or port forwarding.
Each device gets a stable IP in the Tailscale network regardless of
the physical network, making remote monitoring and code deployment
straightforward. This allowed monitoring gateway logs in real time and deploying code
updates remotely, particularly during the integration with our custom node firmware.
== Database & @api:short
#include "database/design.typ"
== User interface
The user interface is structured around two main views: an interactive floor map serving as the dashboard, and a per-room detail page.
*Layout and information hierarchy*
As illustrated in @fig:design_dashboard, the dashboard follows a two-column layout: the floor plan occupies the main area on the left, while a fixed legend sidebar sits on the right. This arrangement keeps the map (the primary focus) dominant, while the legend remains accessible without competing for attention. Navigation to the detail page is triggered by clicking a room directly on the map, preserving spatial context.
*@co2 color coding*
@co2 concentration is the central metric of the project. A six-level color scale was defined, ranging from green (Excellent, below 800 @ppm) to red (Critical, above 2000 @ppm), with intermediate levels covering Good, Moderate, Poor, and Very Poor. This encoding leverages pre-attentive visual processing: the air quality of every room is readable at a glance, without reading any numbers. The same scale is applied consistently across all views map badges, detail page, and history table.
*Room badges on the map*
Each sensor-equipped room is represented by a badge overlaid directly on the floor plan, displaying the room identifier and its current @co2 value. The badge background color reflects the @co2 level. Rooms without data display a neutral badge with a dash, so the absence of information is explicit rather than invisible.
*Tooltip*
Hovering over a room reveals a tooltip with the full set of current metrics: @co2, temperature, humidity, and window state. This allows quick comparison between rooms without leaving the map view.
#let design_dashboard = [
#figure(
image("../resources/img/ui_images/design_dashboard.png"),
caption: [Dashbord design]
) <fig:design_dashboard>
]
#design_dashboard
*Detail page structure*
As illustrated in @fig:design_details ,the detail page separates two temporal concerns: the left panel shows current metrics with @co2 as the dominant value, while the right panel displays the 24-hour history as a paginated table. This left-to-right structure mirrors a natural reading of "now" then "recent past".
*Feedback and data freshness*
A "Last updated" timestamp is displayed on both views so the user always knows whether the data is current. When no reading is available for a room, an explicit message is shown rather than leaving the space empty, avoiding any ambiguity between missing data and a zero value.
#let design_details = [
#figure(
image("../resources/img/ui_images/design_details.png"),
caption: [Details page design]
) <fig:design_details>
]
#design_details
#pagebreak()
== Physical model
Three physical models have been developed to represent the evolution of @co2 concentration within a room as a function of several parameters, which are detailed in the following sections.
@llm has been only used for some cases to help debugging the model.
=== Open data
Open data are analysed to characterise the temporal evolution of @co2 concentration in a room and to develop a physical model. Numerous studies have been conducted on @co2 levels in classrooms and meeting rooms, following the Covid-19 pandemic.
The relevant open data are listed below:
- Open data from the municipality of St. Gallen #cite(<python_asyncio>): installation of @co2 sensors in indoor spaces and meeting rooms of the city administration. The available data are the time evolution of @co2 concentration in rooms. However, these data provide neither the number of occupants nor the room volume, making the analysis difficult. Further information was requested to the municipality of St. Gallen, however no additional data were available.
- Open data related to the study #cite(<twardella_effect_2012-1>): measurement of @co2 concentration, temperature and humidity in several classrooms under different scenarios: usual (adjusted mechanical ventilation as usual and window-opening allowed), worse (no mechanical ventilation and no window-opening) and better (up-regulated mechanical ventilation and no window-opening). The case of interest for this study is the worse-case scenario. However, the available input parameters are insufficient to accurately determine the relationship between the evolution of @co2 concentration, the number of occupants and the room volume, as only mean values are provided.
- Simaria online simulator based on the project "Fresh Air in Swiss Schools" (cf. #cite(<Simaria>)), developed by the @ofsp to support school teachers in maintaining good indoor air quality throughout the day. The available input parameters are the room volume, the number of occupants, the number and duration of school periods and the number and duration of breaks. The simulator then generates a graph showing the evolution of @co2 concentration over time. This model is quite complete and was mainly used to develop the physical model. The only limitations are that the maximum number of occupants is restricted to 50, the evolution of @co2 concentration is given through qualitative air quality indicators such as good-excellent (from 400 to 1400 @ppm), sufficient (from 1400 to 2000 @ppm) and unacceptable (over 2000 @ppm), the initial @co2 concentration is not given and the temporal evolution of @co2 is linear. However, the dataset still provides an overall trend and a document provides the ranges associated with these indicators.
- Open data related to the study #cite(<INRS_Study>): real-time @co2:short level measurement in workspaces : installation of @co2 sensors in a meeting room, an office room and a room in a secondary school. The input parameters are the volume of the room, the number of occupants and the evolution of @co2 concentration over time. This study also contributed to the refinement of the physical model.
=== Characteristics of Provence classrooms
It was decided to study Space A of Provence building as part of this project.
The characteristics are presented in the table below. These data are used in the models described in the next sections.
#figure(
table(
columns: (auto, auto, auto, auto),
align: center,
table.header("Classroom [-]", "Volume [m³]", "Maximal student capacity [-]", "Total windows surface [m²]"),
[A2],[308],[40],[3.23],
[A3],[480],[78],[22.12],
[A4],[326],[48],[3.23],
[A5],[274],[32],[22.12],
[A6],[323],[58],[3.23],
[A7],[272],[36],[5.53],
),
caption: [Characteristics of Provence classrooms - Space A],
)<tab:Provence_characteristics>
=== No window-opening model
The data flow diagram of the first physical model is given in @fig:physical_model_no_window_opening_v1. The open data input parameters are the volume of the room, the number of occupants and the time evolution of @co2 concentration. Only data corresponding to closed windows are considered in this first case. These data are analysed using a python program, which plots the evolution of @co2 concentration for each case (as a function of room volume and number of occupants). The program then calculates the air volume per person and plot a graph representing the time at which the threshold is reached as a function of the given air volume per person. It should be noted that the program only considers data with an initial @co2 concentration ranging from 400 @ppm to 600 @ppm, which results in an approximation. The resulted affine function is then plotted and is employed to determine the time at which the threshold is reached based on the user-input parameters (room volume and number of occupants).
#figure(
image("../resources/img/Physical model/data flow diagram no window opening v1.png"),
caption: [Data flow diagram of the physical model no window-opening v1]
) <fig:physical_model_no_window_opening_v1>
#pagebreak()
A second physical model has been developed in order to simulate the time evolution of @co2 concentration (cf. @fig:physical_model_no_window_opening_v2). This model take into account the initial @co2 concentration to more accurately simulate the @co2 level evolution and predict the time reaching the threshold. The formula used in the physical model to represent the time evolution of @co2 concentration is given below:
$
C_"CO2" (t) = C_"CO2" (t=0) + frac(N.Q_"CO2_prod".t,V)
$
where $C_"CO2" (t=0)$ represents the initial @co2 concentration [@ppm], N denotes the number of people [-], V, the room volume [$m^3$], and $Q_"CO2_prod"$, the @co2 flow rate per person [l/h].
#figure(
image("../resources/img/Physical model/data flow diagram no window opening v2.png"),
caption: [Data flow diagram of the physical model no window-opening v2]
) <fig:physical_model_no_window_opening_v2>
=== Window opening model
The previous model provides an overview of the time evolution of @co2 concentration while assuming that the windows of the considered room remain closed. The physical model below represents the @co2 concentration evolution after windows opening, taking into account Space A in the Provence building used by HES-SO (cf. @tab:Provence_characteristics).
#figure(
image("../resources/img/Physical model/data flow diagram window opening .png"),
caption: [Data flow diagram of the physical model considering window-opening]
) <fig:physical_model_window_opening>
The following formula, derived from the SIA 382/1 standard and #cite(<residential_ventilation>) is used to model the evolution of @co2 concentration over time after windows-opening, considering an air exchange rate.
$
C_"CO2" (t) = (C_"CO2_indoor" (t=0) - C_"CO2_outdoor" - frac(0.001 . Q_"CO2_prod", Q_"air")) . exp (frac(-Q_"air", V) . t) \
+ C_"CO2_outdoor" + frac(0.001 . Q_"CO2_prod", Q_"air")
$
where,
$C_"CO2_indoor" (t=0)$ #h(0.8cm) indoor @co2 concentration before window-opening [@ppm]
$C_"CO2_outdoor"$ #h(1.8cm) outdoor air concentration [@ppm]
$Q_"air"$ #h(3cm) incoming air flow rate [$m^3$/h]
$V$ #h(3.3cm) room volume [$m^3$]
$t$ #h(3.5cm) time [h]
The SIA standard specify an incoming air flow rate of 30 $m^3$/h. However, in this study, the total opening area of each room is known. The incoming air flow rate is therefore calculated based on the average incoming air velocity (assumed to be 0.5 m/s #cite(<heiselberg_characteristics_2001>)) and the total windows surface. It is worth noting that this program considers that all windows in each room are fully open during air renewal.
== Conclusion
The complete application is divided in explicit units as illustrated in @fig:top_level_archi_interface.
The interfaces between each units are described in @sec:design:complete.
Each of this interface allow the unit to be independently implemented as long as said interfaces are respected.
The design of each unit enables efficient review of their behaviour and efficient implementation.
]

View File

@@ -0,0 +1,461 @@
#import "/metadata.typ": *
// highlight box for security callouts
#pagebreak()
= #i18n("implementation-title", lang:option.lang) <sec:impl>
#add-chapter()[
== Complete application
While the complete application did not change from the Design in @sec:design, some adjustments has been added as improvements.
Namely, the _nodes\_interface_ has been added by a key/value, available in @tab:nodes_interface_addition
#figure(
table(
columns: (auto, auto, auto, auto),
align: center,
table.header("name", "key", "data construction", "data size"),
[Battery percent of charge],[0x05],[Integer giving the raw percentage],[1B],
),
caption: [Nodes interface addition during the implementation],
)<tab:nodes_interface_addition>
This addition in the _nodes\_interface_ has been motivated by the nodes uptime.
Observations reported that their battery ran out after few days instead of the expected weeks.\
Hence, the battery level has been added to the values reported by the nodes.
== Nodes
No @llm has been used at any point during the nodes implementation.
The nodes implementation followed the design for the major part.
The implementation has ultimately been done in C using ZephyrOS, hence the use of
classes is in spirit only.
The choice for this embedded @os was motivated by the symbiosis with Nordic hardware, alongside the
opportunity for the assigned student to try this solution out. Following are the major elements that differs from the nodes design.
=== Window opening status
The window opening status is observed with a switch.
This switch is expected to be pressed by a closed window, and released when the window is opened.\
The switch is active low to ensure that a node without switch does not report the room window as opened.
The wiring is configured such as the switch _NC_ pin shall be wired to the thingy _EXT0_ pin.
#pagebreak()
=== Battery level monitoring
The nodes monitoring has been observed as very scarce as its values are sent only in the BLE frames.
Furthermore, the nodes battery has been left around many question marks during the first integration.\
Hence, the _battery_percent_unit_ has been added to the nodes.
This unit retrieve the battery voltage and extrapolate the level of charge, following the #link("https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/boards/nordic/battery")[nordic example] #footnote[https://github.com/zephyrproject-rtos/zephyr/tree/main/samples/boards/nordic/battery].
The resulting class diagram is given in @fig:nodes_class_diagram_impl
#let nodes_class_diagram_impl = [
#figure(
image("../resources/img/nodes_class_diagram_impl.svg"),
caption: [Nodes class diagram following implementation]
) <fig:nodes_class_diagram_impl>
]
#nodes_class_diagram_impl
=== @ble period
The designed @ble behaviour doe snot comply with the protocol specifications.
As such, the @ble sending status is manually managed.
As described in @fig:nodes_sequence_diagram, the advertisement of data is done once per supervisor loop.\
During this advertisement, the @ble data are update and the sending of data is activated.
After a short amount of time, the sending of data is disabled until the next advertising.
The amount of time during which the sending is active has been empirically set to 500ms.
This time window ensures that the gateway is able to receive the measurements.
=== Battery usage
Each nodes, with a complete battery, has been observed as running for 3 days before shutting down.
This is obviously too high and the reason has been found thanks to Rémi.\
The air quality sensor CCS811 working frequency is described in @tab:ccs811_drive_mode
#figure(
table(
columns: (auto, auto),
align: center,
table.header("CCS811 drive mode value", "air quality sensing period [s]"),
[0], [disabled],
[1 (default)],[1],
[2], [10],
[3], [60],
[4], [0.25]
),
caption: [Air quality sensor CCS811 drive mode],
)<tab:ccs811_drive_mode>
Setting the drive mode to 3 avoid 59 measures, hence improving the battery usage accordingly.\
The battery standard usage is then demonstrated with @fig:nodes:battery_consumption
#let nodes_battery_consumption = [
#figure(
image("../resources/img/nodes_battery_consumption.png", width: 90%),
caption: [Node battery consumption over time]
) <fig:nodes:battery_consumption>
]
#nodes_battery_consumption
In @fig:nodes:battery_consumption, the peaks in the consumption are occurring
when the air level is measured.
The period for these peaks is 60 seconds, as intended by the CCS811's drive mode 3
=== Deployment
#let nodes_deployment_simple = [
#figure(
image("../resources/img/node_naked.png", width: 90%),
caption: [Node deployment without window opening status sensor]
) <fig:nodes_deployment_simple>
]
#let nodes_deployment_window = [
#figure(
image("../resources/img/node_window.png",width: 75%),
caption: [Node deployment with window opening status sensor]
) <fig:nodes_deployment_window>
]
#let text_deployment = [
Several nodes were deployed on site.
All but four were setup without window sensor.
As such, they did not need anything else that some glue to fix them on the wall.
This deployment is illustrated with the picture in @fig:nodes_deployment_simple.
]
#let uglify = false
#if uglify [
#text_deployment
#grid(
columns: (1.5fr, 1fr),
column-gutter: 2em,
align: center+horizon,
nodes_deployment_simple,
nodes_deployment_window
)
] else [
#grid(
columns: (1.5fr, 1fr),
column-gutter: 2em,
grid.cell(align: left+top, text_deployment),
grid.cell(rowspan: 2, align: center+horizon, nodes_deployment_window),
grid.cell(align: center+bottom, nodes_deployment_simple)
)
]
#v(1em)
For the remaining, window sensor has been wired accordingly.
This deployment is illustrated with the picture in @fig:nodes_deployment_window.
In @fig:nodes_deployment_window, the switch telling if the window is opened is glue in a way it is pressed when the window is closed and released otherwise.
The window is also opened, leading the switch to be released.
== Gateway
@llm was used for debugging specific technical code issues (@ble filtering,
payload decoding, asyncio thread safety, @mqtt reconnection) and to
support the redaction of this section.
=== From design to implementation
The design specified passive @ble advertising with @uuid filtering.
The final implementation differs on several points discovered during
development and integration with our custom node firmware..
=== First implementation: GATT connections
The first approach used active GATT connections with the stock Nordic
firmware. The Pi connected to each Thingy:52 and subscribed to
characteristic notifications temperature (ef680201), humidity
(ef680203) and @co2 (ef680204). This implementation allowed running an overnight test with two
Thingy:52 nodes placed in two separate rooms for seven hours, windows
closed. The first node was in a room with four occupants @co2 rose
progressively from 400 @ppm to a peak of 1071 @ppm. The second was in
an empty room and stayed stable between 400 and 465 @ppm. This
confirmed that the data was meaningful and the communication chain
was working. However, this approach hit a hard wall with BlueZ the Linux
Bluetooth stack does not support scanning and connecting
simultaneously. Any connection attempt while the scanner is active
raises org.bluez.Error.InProgress. The workaround was to stop the
scanner before each connection and restart it afterwards, which
introduced race conditions when multiple nodes were detected at the
same time. Some nodes also occasionally ignored connection attempts,
blocking the script until a ten-second timeout was added via
asyncio.wait_for().
=== Switch to passive advertising
After a team review confirming that our custom node firmware uses
broadcasting rather than GATT, the implementation was fully
refactored. The GATT connection logic was removed entirely and
replaced by a passive BleakScanner.
=== Discovering the right filter
The original design used the service @uuid ef680100 to identify
Thingy:52 packets — this @uuid was found during the stock firmware
exploration phase and worked correctly at the time. When integrating
with our custom node firmware, no packets were detected despite the
node being physically nearby. A Python investigation script
(scan_uuid.py) was written to display all @ble devices in range with
their raw data. This revealed that our custom firmware does not
announce any service @uuid instead it uses the manufacturer data
field with company_id = 0xffff, as defined in the firmware
specification. Note that 0xffff is not an officially registered
company identifier and should ideally be replaced by a dedicated
one such as 0x025A (HES-SO Valais) in a future iteration.
The @uuid filter was replaced by a company_id filter. The scan script
also confirmed that the raw payload matched the expected format
14 bytes with keys 0x01 to 0x05 validating the consistency between
the firmware and the gateway.
=== Integration challenges
*False positives from third-party devices.* Several @ble devices in
the environment also use company_id = 0xffff, triggering the
gateway filter and flooding the logs. Adding a strict 14-byte payload
size check eliminated them — the Thingy:52 payload is always exactly
14 bytes as confirmed by the firmware author.
*Non-standard payload from one node.* One node (DC:06:D9:40:7A:CB)
was broadcasting a 13-byte payload with an unknown key 0x05,
apparently flashed with a different firmware version. The exact size
filter excludes it automatically.
*@co2 sensor warm-up.* After each reboot, the @co2 sensor
returns 0xFFFFFFFF during its warm-up period. The gateway discards
these values silently to avoid publishing invalid data to the
database. A proper error reporting protocol would require agreement
across all components — gateway, database and UI — which was not
defined at specification time and is out of scope for this version.
*Network firewall.* The school network blocks outbound connections
on port 8883. The broker was reconfigured to also accept connections
on port 80 as a workaround.
*@mqtt disconnection.* In production, the gateway occasionally lost its
connection to the broker due to network instability. The most common
error cases — disconnection, publish failure and failed initial
connection — are now detected and trigger os.exit(1), allowing
systemd to restart the gateway automatically within 10 seconds.
This crash-and-restart approach is a pragmatic solution — a proper
implementation would handle reconnection logic explicitly without
crashing, but this was sufficient for the current version and was
validated overnight with two automatic recoveries.
=== @ble channel hopping and deduplication
@ble advertising uses three dedicated channels (37, 38 and 39). When
a node broadcasts, it sends the same packet on all three channels
in quick succession. The BleakScanner can capture the same packet
on multiple channels within the same window, resulting in the same
measurement being published multiple times to the broker.
To address this, a deduplication mechanism was implemented — the
gateway maintains a cache of the last publication timestamp per MAC
address and ignores packets from the same node received within a
10-second window. This value was defined during a team meeting and
is sufficient to filter duplicates from the same broadcast frame
without missing the next one, which arrives at minimum 2 minutes
later.
=== Remote debugging via Tailscale
Tailscale was installed on the Pi and on the developers' machines to
allow @ssh access from anywhere. This was essential during the custom firmware integration phase — monitoring logs and pushing code updates remotely
made the debugging loop much faster.
#pagebreak()
== Database & API <sec:impl:db>
#include "database/implementation.typ"
#pagebreak()
== User interface <sec:impl:ui>
=== Overview
The UI is a single-page Angular application providing real-time air quality monitoring for building rooms. It consists of two main views: an interactive floor-plan map and a per-room detail page, both backed by a @rest @api served by a Go gateway that reads from InfluxDB.
=== Technology choices
_Why Angular over React, Vue and Svelte?_
Four front-end frameworks were considered: React, Vue 3, Svelte, and Angular.
*React* is the most widely adopted option and has the largest ecosystem. However, it is a library rather than a framework: routing, @http, forms, and dependency injection all require third-party packages, which increases maintenance burden in a team project.
*Vue 3* offers a gentler learning curve and a Composition @api close in spirit to Angular Signals. It was a serious candidate, but its dependency injection model is weaker and its TypeScript support less strict than Angular's by default.
*Svelte* compiles components to vanilla JavaScript, producing very small bundles. However, it lacks a built-in @http client, a mature DI system, and established patterns for large-scale reactive data flows.
*Angular* was chosen for the following reasons:
*• Built-in @http:short client with interceptors* : Basic Auth injection and error handling are first-class features, not library choices.
*• Dependency injection* : Services are singletons by default (providedIn: 'root'), making shared state and polling logic straightforward to centralise.
*• Strong TypeScript integration* : The compiler catches type mismatches between @api responses and component models at build time, which is valuable given that the backend response format (raw InfluxDB rows) required explicit mapping.
*• Signals* : Reactive local state without the verbosity of RxJS BehaviorSubject for simple derived values, while RxJS is retained for asynchronous streams (@http polling).
*• Team familiarity* : Prior exposure to Angular reduces framework-specific overhead and keeps focus on domain logic.
The main trade-off is bundle size and framework verbosity: Angular produces larger initial bundles than Svelte or Vue and requires more boilerplate for simple components. For a real-time monitoring dashboard served over a local network, this was considered acceptable.
=== Interactive Room Map (room-map)
#let room-with-data = [
#figure(
image("../resources/img/ui_images/dashbord_room_with_data.png", width: 100%),
caption: [Room with data],
alt: "Full dashboard view: floor plan with CO₂ badges, legend sidebar visible, with room data and different CO₂ colors"
) <fig:room-with-data>
]
#room-with-data
As illustrated in @fig:room-with-data the floor plan is a static @svg file served as a public asset and injected via innerHTML after being fetched over HTTP. A separate @svg overlay, sharing the same viewBox, renders @co2 badges positioned on each rooms geometric center.
*Pan & zoom* is implemented with pointer events and CSS transform: translate / scale on a canvas <div>. Touch support is enabled via touch-action: none. The wheel event listener is registered outside Angulars zone (NgZone.runOutsideAngular) to avoid triggering change detection on every scroll tick. A fitToView() call is deferred 400 ms after ngAfterViewInit to ensure the @svg dimensions are known before computing the initial scale.
*Polling *is set to 30 seconds, fetching /api/v1/rooms/:id/current for each room with a sensor in parallel via forkJoin. The last-updated timestamp reflects the moment the @http response is received (browser local time), not the sensor timestamp.
=== Room Detail Page (room-details-panel)
#let room-details-panel = [
#figure(
image("../resources/img/ui_images/detail_panel.png", width: 100%),
caption: [Room details panel],
alt: "Detail page of a room with real sensor data: CO₂ hero card, metric cards, and history table with several rows."
) <fig:room-details-panel>
]
#room-details-panel
As illustrated in @fig:room-details-panel the page is split into a fixed-height header, a left panel showing current metrics (@co2 hero card, temperature, humidity, window state), and a right panel showing a paginated 24-hour history table.
A single combineLatest pipeline, gated by takeUntilDestroyed, merges three concurrent streams: room metadata, latest reading (polled every 15 s), and history (polled every 15 s). This avoids multiple independent subscriptions and ensures all three values are updated atomically on each cycle.
When the @api returns no data, the UI displays explicit messages rather than leaving panels empty, preventing any ambiguity between missing data and a zero value.
@co2 levels are determined by thresholds defined in @co2\-levels.config.ts, shared across the map badges, the detail page, and aligned with the Go gateway and the Teams notification service.
=== REST Service Integration
The Go @api exposes endpoints under /api/v1/ with Basic Auth and a CORS policy restricted to \*.e.kb28.ch. Two adaptations were required:
1. *Angular dev proxy* (proxy.conf.json) : Forwards /api requests from localhost:4200 to https://api.db.e.kb28.ch, bypassing the browser CORS restriction during development.
2. *Response mapping* : The Go @api returns raw InfluxDB rows (co2_ppm, temp, window: bool, …). A toSensorReading() function in SensorService normalises these fields into the apps SensorReading model before they reach any component.
A functional basicAuthInterceptor is registered via provideHttpClient(withInterceptors([…])). It is a no-op when credentials are empty, allowing unauthenticated development against a server with auth disabled.
=== CI/CD Pipeline
Two GitHub Actions workflows cover the UI. The first (`angular-ci.yml`) runs on every pull request targeting `main` and acts as the quality gate. The second (`ui.yml`) extends this into a full build-and-deploy pipeline on every push to `main`.
==== Quality gate (pull-request checks)
The `angular-ci.yml` workflow runs on Node 20, scoped to the `ui/` path, and executes the following steps in order:
*• TypeScript compilation* : `tsc --noEmit` catches type errors independently of the build step.
*• Lint* : ESLint enforces code style rules across all source files.
*• Prettier check* : `format:check` fails the build if any file is not formatted, keeping the diff clean in reviews.
*• Dev and production builds* : Both configurations are built to catch environment-specific issues early (e.g. a missing prod-only environment field).
*• Unit tests* : Karma runs headless in ChromeHeadless with code coverage enabled. The coverage report is uploaded as a GitHub Actions artefact (7-day retention).
==== Build-and-deploy pipeline (main branch)
As illustrated in @fig:ci-cd, the `ui.yml` workflow is structured as three sequential jobs gated by `needs`:
*1. Build & test (`ci`)* — identical quality checks to the PR gate, plus credential injection: a `sed` pass replaces `__API_USERNAME__` and `__API_PASSWORD__` in `environment.prod.ts` with values from GitHub Secrets immediately before the production build. The plaintext credentials never touch the source tree or the container image filesystem.
*2. Docker build & push (`docker`)* — only runs when the `ci` job succeeds and the branch is `main`. The image is built from `ui/` and pushed to GitHub Container Registry (`ghcr.io`) under two tags: a commit-SHA tag for traceability and a `latest` tag for the deploy step to reference. The image name is normalised to lowercase to satisfy Docker Hub naming rules.
*3. Deploy (`deploy`)* — connects to the physical server over @ssh using a certificate-authenticated key pair stored as GitHub Secrets. The deploy script pulls the exact SHA-tagged image, stops and removes the previous container, and starts a new one with `--restart unless-stopped` on port 80. The private key is written to a temporary file and deleted immediately after the @ssh session closes.
#let ci-cd = [
#figure(
image("../resources/img/ui_images/ci_cd.png"),
caption: [CI/CD Pipeline],
alt: "CI/CD Pipeline Execution"
) <fig:ci-cd>
]
#ci-cd
==== Secret management
Four secrets are required: `API_USERNAME`, `API_PASSWORD` (injected into the production build), `SSH_PRIVATE_KEY` + `SSH_CERTIFICATE` (deploy authentication), `SSH_HOST`, `SSH_PORT`, and `SSH_USER` (server coordinates). None of these values appear in any committed file; the dev environment uses empty strings and proxies requests locally via `proxy.conf.json`.
=== Notification
Spring Boot 3.3.5 microservice (Java 17) that polls @co2 sensor data from the
backend @api and sends Telegram alerts when air quality degrades as illustrated in @fig:notification.
#let notification = [
#figure(
image("../resources/img/ui_images/notification.png", width: 90%),
caption: [Telegram notification],
alt: "Telegram alert"
) <fig:notification>
]
#notification
=== Application Security
==== Secret Management
*Zero secrets in source code.* All sensitive values are injected exclusively
via environment variables never hardcoded, never logged.
*FindSecBugs caught* `DM_DEFAULT_ENCODING` on `getBytes()` during SAST
integration fixed immediately by switching to `getBytes(StandardCharsets.UTF_8)`.
==== STRIDE Threat Model
The notification microservice was analysed using the STRIDE framework,
identifying five threat categories and their corresponding controls,
as summarised in @tab:threat_model.
#figure(
table(
columns: (auto, 1fr, 1fr),
stroke: 0.5pt,
[*Threat*], [*Scenario*], [*Control*],
[Spoofing], [Impersonating the @co2 backend], [Basic Auth + URL injected via GitHub Secret],
[Tampering], [Altering sensor readings], [Read-only, service never writes to the API],
[Info. Disclosure], [Leaking Telegram bot token], [Env vars only, masked in CI logs],
[Denial of Service], [Telegram alert spam], [Deduplication via `ConcurrentHashMap`],
[Elevation of Privilege], [Unauthorized channel access], [Private channel, bot is sole admin],
),
caption: [STRIDE threat model for the notification microservice],
)<tab:threat_model>
As shown in @tab:threat_model, each identified threat is mitigated at
the service level without relying on external infrastructure. Spoofing
of the CO₂ backend is prevented by Basic Auth with credentials injected
via GitHub Secrets, never hardcoded. Tampering is structurally impossible
as the service operates in read-only mode against the API. Token
disclosure is avoided by confining the Telegram bot token to environment
variables, masked in CI logs. Alert flooding is controlled by a
`ConcurrentHashMap`-based deduplication mechanism that suppresses repeated
notifications for the same condition. Finally, unauthorised channel access
is prevented by restricting the Telegram channel to a private scope with
the bot as sole administrator.
#pagebreak()
==== Security Testing Pipeline
Deployment is gated behind three blocking security jobs, as shown in
@tab:security_test_pipeline. If any fails, the Docker image is not
built and the service is not deployed.
#figure(
table(
columns: (auto, auto, auto, 1fr),
stroke: 0.5pt,
[*Job*], [*Tool*], [*Blocking*], [*Checks*],
[`ci`], [SpotBugs + FindSecBugs], [Yes], [Java static vulns, encoding, crypto],
[`sast-codeql`], [CodeQL], [Yes], [Injection, SSRF, unsafe deserialization],
[`dast`], [OWASP ZAP], [Yes], [HTTP headers, runtime misconfigs],
[`dependency-check`], [OWASP Dep. Check], [No], [CVEs in third-party libraries],
),
caption: [Security test pipeline for the notification microservice],
)<tab:security_test_pipeline>
As detailed in @tab:security_test_pipeline, three jobs are strictly
blocking: `ci` runs SpotBugs with the FindSecBugs plugin to catch
Java-specific vulnerabilities such as encoding issues and unsafe
cryptographic usage; `sast-codeql` performs semantic analysis to detect
injection flaws, SSRF, and unsafe deserialization; and `dast` runs an
OWASP ZAP baseline scan against the running service to identify HTTP
header misconfigurations and runtime exposure. The `dependency-check`
job is non-blocking but reports CVEs in third-party libraries for
visibility without halting delivery.
== Physical model
The physical models follows the design.
== Conclusion
The integration of each unit has been eased thanks to the corresponding interfaces definition beforehand.\
Said integration suffered some minor issues, all of them small enough to be managed in a small amount of hours of work.
While some issues remains, as listed in @sec:validation, the complete application can be demonstrated.
Furthermore, the implementation of the gateway and database enables efficient modification of the deployment on site.\
For instance, moving a node requires only to move it physically and modify the mapping file accordingly.
]

View File

@@ -0,0 +1,208 @@
#import "/metadata.typ": *
#pagebreak()
= #i18n("validation-title", lang:option.lang) <sec:validation>
#add-chapter()[
// == Complete application
The application as a whole allows to retrieve the environmental data in the A2 and A3 room at the Provence campus.
These data are then formatted by the gateway and published on @mqtt topics.
Said topics are listened by the database, ultimately storing them and making them available through an @api.
This @api enable the live display on the user interface alongside letting the physical model validate the data and forecast when the room should be aired.
The major difference with the intended design lies in the notifications being delivered in Telegram instead of Teams.
This choice has been forced due to the school's network restrictions.
Since the goal for this project is to demonstrate the feature, the effort were redirected.
== Nodes
The implicit goal for the nodes was to have devices retrieving the environmental values in a room.
Furthermore, this devices were expected to work during several weeks without the need to manipulate them.
The first objective is fulfilled, as the temperature, humidity and @co2 level are periodically advertised over @ble.\
However the nodes as-is can hardly be considered as "low-power" since they should run for many month without recharge.
The definitive reason could not be found, even after talk with nordic tech support.
Said guys pointed out that the problem may lie within the thingy52 hardware itself as it was not designed to be actually low-power.
Hence, the firmware itself has been properly implemented to be low-power, but requires the design of a dedicated hardware.
This topic shall be part of the project's next iteration.
Regrettably, the effort available for the project did not allow to implement automated tests.
As such, the only test conducted were quick ones prior to the various integration.
Considering that the nodes are stable enough, automated test shall be amongst the first tasks for the
next project's iteration.
== Gateway
DeepL Pro was used to translate this section from French to English, followed by @llm assistance to improve the academic style.
The gateway successfully fulfills its role environmental data from
the Thingy:52 nodes is received, decoded and forwarded to the database
in real conditions at school with multiple nodes running simultaneously.
The systemd service proved reliable in production. Two unexpected
disconnections due to network instability were detected and recovered
automatically overnight without manual intervention, confirming that
the crash-and-restart mechanism works as intended.
Several limitations were identified but not addressed within the
available time. Duplicate packets a consequence of @ble broadcasting
on three channels are now filtered by the 10-second deduplication
window. Invalid @co2 values during sensor warm-up are silently discarded
without error reporting to the database; a proper error protocol would
require agreement across all components and is left for the next
iteration.
== Database & @api:short
#include "database/validation.typ"
== User interface
=== Positive Outcomes
*Separation of concerns is well maintained.* Components hold no business logic; all data fetching and transformation is isolated in services. Mock fallbacks have been deliberately removed from `SensorService` so the UI reflects real @api state rather than hiding errors with synthetic data.
*Responsive design covers all target breakpoints.* The three-breakpoint strategy (1100 px / 768 px / 480 px) produces a usable layout on desktop, tablet, and mobile without separate component trees.
*Polling teardown is correct.* The use of `takeUntilDestroyed` and explicit `ngOnDestroy` cleanup eliminates the two most common Angular memory-leak patterns (forgotten subscriptions, orphaned timers).
*The proxy-based CORS workaround is transparent.* No component or service is aware of whether it is running against a local or remote backend.
*Credentials are never stored in source.* @api credentials are injected at build time by the CI/CD pipeline via GitHub Secrets and replaced by empty strings in the dev environment. A `git filter-repo` pass was applied to remove a previously committed plaintext password from the full repository history.
*A full CI/CD pipeline is in place.* Every pull request runs TypeScript compilation, linting, Prettier formatting, both dev and production builds, and headless unit tests before merge. Pushes to `main` additionally build and push a Docker image to GHCR and deploy it to the physical server over SSH, with no manual intervention required.
=== Negative Outcomes and Gaps
*No deduplication of polling on tab switch.* When the browser tab is hidden, polling continues at the same interval. Using the Page Visibility @api to pause polling when the tab is inactive would reduce unnecessary network traffic.
*`bypassSecurityTrustHtml` introduces an XSS surface.* The SVG is fetched from the same origin (`/public/plan.svg`) which mitigates the risk, but the Angular security model is explicitly bypassed. A Content Security Policy header on the server would reduce residual risk.
*Room IDs are hardcoded in `rooms-layout.config.ts`.* The mapping between physical room identifiers (as stored in InfluxDB) and layout coordinates is static. Any room addition on the hardware side requires a manual code change and redeployment of the UI.
*@co2 thresholds are partially duplicated.* The same threshold values appear in `co2-levels.config.ts` (UI), `notification_service/application.yml` (Telegram notifier), and the Go service configuration. The UI spec is now config-driven, reducing the risk of intra-UI divergence, but cross-service consistency still relies on manual coordination. A single source of truth, either a shared config endpoint or a well-documented constant, would eliminate the remaining risk.
== Physical model
The results of the physical models are given below.
@llm has been only used for some cases to help debugging the models.
=== Results of no window-opening model
As described in the Design part, the first model reads the data from open data files and plot the time at which the threshold of 1400 @ppm is reached for a given air volume per person as illustrated @fig:time_reaching_threshold_v1.
#figure(
image("../resources/img/Time_reaching_threshold.png", width: 90%),
caption: [Time reaching threshold]
) <fig:time_reaching_threshold_v1>
#pagebreak()
As can be seen in the graph, the open data from #cite(<twardella_effect_2012-1>), plotted as dark blue crosses, do not allow a clear trend, since the air volume per person is a mean value and therefore identical for all classrooms.
On the other hand, the data from the simulator of air quality #cite(<Simaria>) are highly useful, as different cases can be tested and a general trend emerges. This leads to an affine function enabling the determination of the time reaching the threshold (1400 @ppm) as a function of room volume and number of occupants.
$
t_"threshold" = frac((frac(V,N) - 0.101), 0.305)
$
where V, represents the room volume and N, the number of occupants.
In the data from #cite(<INRS_Study>), only one scenario reaches the 1400 @ppm threshold (represented by an orange point on the graph). When comparing with the affine function, a relative deviation of approximately 30% can be observed. As mentioned in the Design part, this model considers an initial @co2 concentration ranging from 400 to 600 @ppm and is thus valid only following air renewal.
A second physical model has been developed to take into account the initial @co2 concentration and give the time evolution of @co2 level. The formula mentioned in the Design part is applied to model the @co2 concentration over time. The model is then compared with the open data and adjusted to the data as illustrated @fig:CO2_concentration_simaria, @fig:CO2_concentration_INRS_secondary_school_classroom and @fig:CO2_concentration_INRS_office_room.
#figure(
image("../resources/img/Physical model/CO2 concentration over time Simaria.png", width: 100%),
caption: [Comparison of @co2:short concentration over time between open data from Simaria #cite(<Simaria>) (continuous curves) and the model (dashed curve)]
) <fig:CO2_concentration_simaria>
#figure(
image("../resources/img/Physical model/CO2 concentration over time INRS secondary school.png", width: 100%),
caption: [Comparison of @co2:short concentration over time between open data from the secondary school classroom #cite(<INRS_Study>) (blue curve) and the model (orange dashed curve)]
) <fig:CO2_concentration_INRS_secondary_school_classroom>
#figure(
image("../resources/img/Physical model/CO2 concentration over time INRS office room.png", width: 100%),
caption: [Comparison of @co2:short concentration over time between open data from the office room #cite(<INRS_Study>) (blue curve) and the model (orange dashed curve)]
) <fig:CO2_concentration_INRS_office_room>
#pagebreak()
It is therefore possible for the user to input a room volume, a number of occupants, and an initial @co2 concentration in order to obtain the evolution of @co2 concentration over time and the time at which the 1400 @ppm threshold is reached as illustrated @fig:CO2_concentration_user_parameters and @fig:CO2_concentration_user.
#figure(
image("../resources/img/Physical model/Window user no window opening model.png", width: 80%),
caption: [User input parameters and result using no window-opening model]
) <fig:CO2_concentration_user_parameters>
#figure(
image("../resources/img/Physical model/CO2 concentration over time user.png", width: 100%),
caption: [@co2:short concentration over time with user input parameters (V = 308 $m^3$, N = 40, initial @co2:short concentration = 500 @ppm)]
) <fig:CO2_concentration_user>
#pagebreak()
=== Results of window-opening model
The window-opening model calculates the @co2:short concentration at each time step after the 1400 @ppm threshold is reached for a considered room. It is assumed that all windows of the considered classroom are fully opened. This also provides an estimation of the required window-opening duration to renew indoor air. @fig:CO2_concentration_window_opening_model_all_rooms represents an overview of the evolution of @co2:short concentration over time for 5 classrooms of Space A. It can be noticed that the window-opening duration varies significantly from one classroom to another, depending on the ratio between the room volume and the total windows surface. Indeed, the window-opening time for indoor air renewal is approximately 3 minutes in classroom A3 and A5, whereas it can reach 18 minutes for classrooms A2 and A6.
In contrast to the increasing evolution of @co2:short concentration, the decrease in @co2:short level after window opening is difficult to compare with the open data, as they do not specify the total windows surface. Therefore, only experimental sensor data from the Provence classrooms can be used to adjust the model. It was decided to prioritise instrumentation in Room A2 due to its slower evolution of @co2:short concentration decrease, which provides more data points.
#figure(
image("../resources/img/Physical model/CO2 concentration window opening A2 to A6.png", width: 90%),
caption: [Overview of @co2:short concentration over time for Provence classrooms, starting from 1400 @ppm]
) <fig:CO2_concentration_window_opening_model_all_rooms>
#pagebreak()
The user's input parameters are given @fig:CO2_concentration_window_opening_user_parameters. He no longer needs to enter the room volume, but only the room name, the number of students and the initial @co2:short concentration. The physical model then outputs the time to reach the threshold and the corresponding window-opening time. It can also display the corresponding @co2:short concentration over time graph as illustrated @fig:CO2_concentration_window_opening_model_user.
#figure(
image("../resources/img/Physical model/Window user window opening model.png", width: 80%),
caption: [User input parameters and result using window-opening model]
) <fig:CO2_concentration_window_opening_user_parameters>
#figure(
image("../resources/img/Physical model/CO2 concentration over time user window opening model.png", width: 100%),
caption: [@co2:short concentration over time with user input parameters (classroom number = A2, N = 30, initial @co2:short concentration = 700 @ppm)]
) <fig:CO2_concentration_window_opening_model_user>
#pagebreak()
=== Comparison of experimental data and the physical model
@fig:CO2_concentration_comparison_exp_model presents a comparison between the measured data and the model for classroom A2 during a lecture. Six sensors have been installed. Two are located near the windows to monitor their status (blue and green curves on the graph), and four on walls away from the windows (purple, red, orange, brown curves). Data are missing from 45 to 90 minutes. However the measurements continue afterwards which makes it possible to analyse the data.
The window open/ closed status is indicated by the blue vertical dotted lines. It is therefore assumed that the windows are closed before reaching the status open (= 1) after approximately 90 minutes. A student present in the room confirmed that the windows not equipped with the sensors were closed when the instrumented ones were closed, ensuring consistency with the model conditions. Eleven people were present in the room.
A trend curve is determined for each experimental data using a python program and is identified by dashed lines on the graph.
The black line represents the model result which takes into account the classroom name, the number of students and the initial @co2:short level.
#figure(
image("../resources/img/Physical model/Comparison_expdata_model.png", width: 90%),
caption: [@co2:short concentration over time of acquired data from classroom A2 and comparison with the model]
) <fig:CO2_concentration_comparison_exp_model>
It is observed that all data except the purple one do not show significant increase in @co2:short over time. These data are therefore not used to adjust the model. At first sight, the data from the purple curve seem to be correct as an increase up to 800 @ppm can be observed. However, when this data is compared with the model the value is found to be approximately two times lower than expected.
Only this set of data was available and they are not sufficient to adjust the model. Moreover, when comparing the model with open data, the gap is not as significant.
It appears that the sensors output data are most likely not accurate. It would be relevant to compare the sensor data with a calibrated reference sensor.
// #pagebreak()
=== Recommendations for ensuring good indoor air quality
The time reaching threshold of 1400 @ppm and windows-opening duration are given in @tab:Provence_recommandations for each classroom, assuming maximum number of students. These data are conservative, as the maximum number of students is rarely reached.
It is therefore recommended to :
- Open windows after one-hour lecture
- Fully open windows when airing the classroom in order to optimise ventilation and reduce the required duration. The duration highly depends on the classroom. An average of 5 minutes can be considered. It is also the recommended duration mentioned in the literature.
#figure(
table(
columns: (auto, auto, auto, auto),
align: center,
table.header("Classroom [-]", "Maximal student capacity [-]", "time reaching 1400 ppm threshold [min]","windows-opening duration [min]"),
[A2],[40],[30],[17],
[A3],[78],[24],[4],
[A4],[48],[27],[18],
[A5],[32],[34],[2],
[A6],[58],[22],[18],
[A7],[36],[30],[9],
),
caption: [Recommendations for ensuring good indoor air quality in Provence - Space A, assuming full ventilation prior to the start of the lecture (i.e. approximately 400 @ppm:short)],
)<tab:Provence_recommandations>
== Conclusion
The @mvp for the project stores the environmental value in a database and delivers a notification when the room needs to be aired.
This @mvp also planned forecasting, but has been cut from the planning following the team reduction.
Some effort should still be done to provide the complete set of expected features, mostly to have "low-power" nodes and notifications
in Teams.
However, the project as delivered at it's end can serve as a good basis for a second iteration, which could add the aforementioned features.
]

View File

@@ -0,0 +1,72 @@
#import "/metadata.typ": *
#import "objectives.typ":*
#pagebreak()
= #i18n("conclusion-title", lang:option.lang) <sec:conclusion>
== Project conclusion
Considering the objectives in @sec:objectives, the project takeaways are as follows.
The solution provided at the project's end allows to store the temperature, humidity and @co2 level in the equipped room.
Hence, the objective MO1 is fulfilled.
Independently, a user interface is made available to display the room environmental data.
As this user interface request the database, it allows the display of both live and stored data.
Hence, the objective MO2 is fulfilled.
The solution is able to send a notification when the room @co2 level reach the 1200 @ppm threshold.
However, the objective MO3 asks for a forecasting using a physical model.
Even if said physical model were studied during this project, as they are not included for the notification's sending, the objective
MO3 can not be considered as fulfilled.
Moreover, the forecasting used for the recommendation are based on the evolution of the @co2 level based on the amount of people in the room.
However, the outside temperature is not part of the analysis nor, incidentally, the airing recommendation.\
This absence is mainly explained by the team reduction.
The dropping member was initially tasked to implemented the notification system and the outside temperature retrieval.
While the MO3 was adjusted, an oversight from the team let this objective as unchanged.
As such, not enough effort were made available for the fulfilling of MO4.
Likewise, the forecasting could not be implemented thus forbidding the display of the data it would have provided.
As such, the optional objective OO1 could not be fulfilled.
Lastly, the time between the sending of two data point by a given node evolves based on the room recorded values.
Hence, the optional objective OO2 is fulfilled.
== Encountered difficulties
The project encountered some difficulties impacting the overall result.
While some are typically integration mishaps and is documented in @sec:impl, other are wider.
Namely, the team effort reduction following the dropout of a member impacted significantly the results.
As indicated in @sec:objectives, the client has accepted to adjust the project's objectives accordingly.
As warned by the client at the project's start, the actual room data arrived late in the project.
The solving of every observed issues lead to stable data available only two weeks prior to the project end.
This short time did not allow to give their full purpose to the data nor retrieve user feedback.
Lastly, the project still suffers from noticeable issues that are documented prior and in the GitHub issues.
== Future perspectives
While the project next iteration features shall be decided then, the current team recommend the following, without any wanted order:
- Deployment in every room at the Provence campus.
- Talk with the administration to send the notification on teams, since it is the standard communication medium.
- Build a dedicated board for the nodes, enabling the "low-power" that is sought for these elements.
- Implement a forecasting, including the outside temperature as intended at the very start of the project.
This forecasting shall include de room temperature as it also impact the people focus.
The github repository contains several opened issues tracking new features idea and observed issue to solve.
The next iteration's team is welcomed to consider these issues.
Furthermore, the following would improve the product usability, but requires dedicated development.
- Counting the amount of people in a room is paramount to have the physical model work properly.
Hence, having an automated way to count such shall be investigated.
A way to do so may be to have a camera and process the images.
This solution comes with high security around personal data protection.\
Another way that could be investigated is to estimate the amount of people from the @co2 level evolution.
A dedicated step in the deployment may enable efficient estimation.
- The retrieval on the window opening status could also be improved as the deployment remains very tinkered.
Dedicated casing could be designed and the room door may also be equipped.
Furthermore, a more general way could be investigated as the deployed one requires to have every window be equipped and by extension one node per window.
Moreover, a room may have hard-to-access window and thus could not be equipped easily.
- The @co2 level in a room with automated airing or special insulation may require modifications in the physical model.
These shall be investigated in a later iteration.

View File

@@ -0,0 +1,55 @@
#import "/metadata.typ": *
#pagebreak()
= Global BDD
The global architecture as given in @fig:top-level-architecture can be detailed with @fig:top_level_archi_interface.
The following gives shape to the aforementioned interfaces.
#let top_level_archi_interface = [
#figure(
image("../../resources/img/bdd_complete.svg"),
caption: [Top-level architecture, including interfaces between units]
) <fig:top_level_archi_interface>
]
#top_level_archi_interface
The various interfaces available in @fig:top_level_archi_interface are composed of the following data:
- #underline[Nodes interface]:
#let nodes_interface = [A node advertise its data over @ble using key/values with the following content:
#figure(
table(
columns: (auto, auto, auto, auto),
align: center,
table.header("name", "key", "data construction", "data size"),
[Window opening status],[0x01],[0/1],[1B],
[Humidity],[0x02],[Integer giving the raw percentage],[1B],
[Temperature],[0x03],[Integer in the range [0,500]],[2B],
[CO2 level [ppm]],[0x04],[Integer in the range [400,5000]],[4B]
),
caption: [Data communicated in the nodes_interface],
)<tab:nodes_interface_content>
This description considers the following elements:
- Each key is held on 1 Byte
- The conversion from the held data for the temperature is: $"temperature" = "data"_"temp"/10 $ \
The resulting temperature is within the range [0,50] °C with one digit decimal.
- For each key, any value outside of the associated range indicates that the node failed to get a valid value.
- For a given node, the time between two broadcast of data is variable, with the shortest time being 1 minutes and the longest time being 6 hours.
]
#nodes_interface
- #underline[db set] : MQTT topic named "{id_gateway}/{node_mac}/update" with the following content:
```JSON
{
"timestamp" : <ISO 8601 timestamp>,
"co2_ppm" : <integer>,
"temp" : <float>,
"humidity" : <integer>
}
```
This description considers the following elements:
- The timestamp format respect the #link("https://en.wikipedia.org/wiki/ISO_8601")[ISO 8601] definition.
As the standard allows variations, the format is given as _YYYY-MM-DDThh:mm:ssZ_.
This choice enables efficient time manipulation on all ends.
A timestamp considering the milliseconds is not required as the recorded data should stay stable over several consecutive seconds
- Upon receiving a data point from a node, the gateway adds the timestamp and publish the content on the MQTT channel.
- #underline[db API] : the content for this interface in tracked in #link("https://github.com/PI-E2EEDA/Plein-de-eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-project/issues/7")[issue \#7].
- #underline[teams API] : The teams API is to be followed and as such is kept absent from this document.

Binary file not shown.

After

Width:  |  Height:  |  Size: 388 KiB

View File

@@ -0,0 +1,48 @@
#import "/metadata.typ": *
Only natural stupidity was used to for the design of this part. But some key design are reused from an hobby project developed in parallel of the current one. The database part actually represent a aggregation of all small part all running around database on the cloud. We will talk more about the server part in the @sec:impl:db.
The database part have several missions. To achieves all objectives, a GO service is designed in several module.
Before see the service itself, a little talk on the stack. For the database, we choose Influx DB 3. Mainly because it's a time-series database already known by part of the team. Another option would be to use a PostgreSQL database with the timescale extension. Concerning the @mqtt broker, we choose RabbitMQ for mainly the same reason, because it's already known by part of the team.
The key design in the Go service is to represent data with a DataPoint. A DataPoint represent a measure with a list of topics, a timestamp and a generic type for the value. It allows to share DataPoints trough gateway that have the same input and output interface. Event the database part is developed in Go, a pseudo class diagram in @fig:class-db represent this DataPoint shared between gateways.
#pagebreak()
So, we need an @mqtt gateway to connect to the broker to get updates of sensors. To achieves to connect to this broker, a module @mqtt is represented as mqttGateway in the @fig:class-db. This @mqtt gateway is mainly used to subscribe to the desire topic and receive a DataPoint defined previously
#figure(
image("class-db.png"),
caption: [Class diagram for database part]
) <fig:class-db>
We also need a influx gateway to push this received DataPoint to the database. It's the magic of the DataPoint, no need to map each field. We only translate topic, from node id to room and we can forward the DataPoint to the Influx gateway. We see the full sequence from the broker to the database in the @fig:seq:toDB
Finally, we also have a rest gateway to allow user to request data from the database trough with several endpoint as defined in @sec:design:interface:db. Mostly use by the user interface. We can observe a general application in @fig:seq:fromDB.
#let fig-toDB = [
#import "sequence.typ": *
#figure(
chronos.diagram(toDB, width: 100%),
caption: [Sequence from broker to DB]
) <fig:seq:toDB>
]
#let fig-fromDB = [
#import "sequence.typ": *
#figure(
chronos.diagram(fromDB, width: 100%),
caption: [Sequence to REST from DB]
) <fig:seq:fromDB>
]
#grid(
columns: (1fr, 1fr),
column-gutter: 1em,
align: bottom+center,
fig-toDB,
fig-fromDB
)
#pagebreak()

View File

@@ -0,0 +1,20 @@
#import "/metadata.typ": *
#let physical_diagram = [
#figure(
image("physic.png", width: 90%),
caption: [Physical diagram]
) <fig:diagram_physic>
]
Before to be able to implement and up any service, an important part was to be able to host everything. For this project, as a academic project that don't have specific requirements, we use the Rémi's homelab server. This server is base on Proxmox, so we get a virtual machine for this project with a traefik router on \*.e.kb28.ch. We have several service as show on the figure bellow. The main stack is composed by a RabbitMQ node for the @mqtt broker, an Influx DB 3 stack and a Go service that act as a gateway between the @mqtt broker and the database and the @rest @api. All this stack run on a single docker node: The "server" on @fig:diagram_physic
#physical_diagram
As this server is used to deploy the project but also for the development phase, it was important to give secure access to several member of the team. For the connexion to the server, we used @ssh certificates. Unlike regular @ssh key, here we have a server certificate that sign the key of each member for a certain period of time for a specific username. That avoid to add public key of all user on the server and only have the public key of the server's certificate.
Another security point was to add authentication around the data. An @sso middleware for the web interface of Influx by Authentik, a standard token for the @rest @api and encapsulate @mqtt connexion in @tls as describe in @sec:design:gateway:security.
When the server with both broker and database are available, we can concentrate of developing the service that connect the database to other system. This service was developed in Go as it's a efficient language for server side services. Some initial part of this service as the mqttGateway and influxGateway was reuse from an hobby project made with friends in parallel of this @pi. Concerned commits are clearly identified as are those more or less assisted by @llm.
The service is implemented as the design. A slight change concerning the mapping process was made during the implementation. It was initially to static for support our development phase. It was decided 2 changes. First, we look for mapping node to room on the retrieval trough the @rest @api instead of doing the mapping when we push data to the database from the broker. It was because some node was placed in Provence without correctly identify with node id was placed on wich room. So we decided to push the node id in the database and map on the retrieval. Second change was to load info from this mapping fil dinymacally to avoid restarting the container after a change. Despite the lost of performance, it allow us more flexibility during our development phase.

View File

@@ -0,0 +1,46 @@
#import "/metadata.typ": *
No @llm has been used for the design of deposal and retrievals interfaces.
The database is used to store data, we need so to be able to push data and retrieve in several form the stored data.
#let mqtt-json-payload = [
#figure(
table(
columns: (1fr, 1fr),
align: horizon+left,
[*timestamp*], [D/T (RFC3339)],
[*temp*],[float],
[*humidity*],[float],
[*co2_ppm*],[integer],
[*window_open*],[boolean],
[*battery*],[integer]
),
caption: [@mqtt:short Json payload]
) <mqtt-json-payload>
]
#grid(
columns: (1fr, 1fr),
column-gutter: 2em,
[
To put data in the Database, we use an @mqtt source of data. The @mqtt payload is a list of key-value as follow defined in @mqtt-json-payload. All of this key are translated as `Fields` in influx DB. Topic of the @mqtt are translated in `Tags` in Influx.
So, all data arrive in the database trough the an @mqtt message
],
mqtt-json-payload
)
To get data out of the database, we have several @rest @api all available at: #link("https://doc.db.e.kb28.ch/")[doc.db.e.kb28.ch].
The main route is for the user interface with the following endpoint:
- `/rooms`: Return the list of rooms available on the database
- `/rooms/{room-id}/current`: Return the last values for the select room
- `/rooms/{room-id}/history`: Return the history (default last 24h) of the selected room
- `/rooms/high-co2`: Return the list of room with high value of @co2
It's also possible to get all the data in a @csv:short file trough a dedicated @rest endpoint. This is specially usefull for validate model by Alison.
- `/export/csv?node=<node>&from=<start-RFC3339>&to=<end-RFC3330>`: \
Return a @csv with all the measurement point of the selected node between the start and stop date-time.
A another special endpoint was added during the project to monitor the battery level of each node:
- `/battery`: Return the list of node with the corresponding battery level. If message was present in the last 30min, the node is declared offline

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 KiB

View File

@@ -0,0 +1,86 @@
#import "../../resources/helper.typ": *
#let b = actor("broker",
disp_name: [@mqtt\ broker],
shape: "queue",
show-bottom:false
)
#let mg = actor("mqtt",
disp_name: [@mqtt\ gateway],
show-bottom:false
)
#let ig = actor("influx",
disp_name: [influx\ gateway],
show-bottom:false
)
#let rg = actor("rest",
disp_name: [rest\ gateway],
show-bottom:false
)
#let main = actor("main",
disp_name: [Main],
shape: "control",
show-bottom:false
)
#let db = actor("db",
disp_name: [Influx DB],
shape: "database",
show-bottom:false
)
#let u = actor("user",
disp_name: [User],
shape: "actor",
show-bottom:false
)
#set align(center+top)
#v(1.5em)
#let toDB = {
import chronos: *
b.display
mg.display
main.display
ig.display
db.display
_col(b.name, mg.name, width: 2cm)
_col(mg.name, main.name, width: 2cm)
_col(main.name, ig.name, width: 2cm)
_col(ig.name, db.name, width: 2cm)
sync(main, mg, "New", create-dst: true)
sync(mg, b, "subscribe")
sync(main, ig, "New", create-dst: true)
async(b, mg, "message")
sync(mg, main, "DataPoint")
sync(main, main, "map topics")
sync(main, ig, "DataPoint")
async(ig, db, "flush")
}
#let fromDB = {
import chronos: *
db.display
ig.display
main.display
rg.display
u.display
_col(db.name, ig.name, width: 2cm)
_col(ig.name, main.name, width: 2cm)
_col(main.name, rg.name, width: 2cm)
_col(rg.name, u.name, width: 2cm)
async(u, rg, "Request")
sync(rg, main, "getNodes")
sync(main, rg, "", dashed: true)
sync(rg, ig, "Query")
sync(ig, db, "")
sync(db, ig, "", dashed: true)
sync(ig, rg, "", dashed: true)
sync(rg, u, "", dashed: true)
}
#chronos.diagram(toDB)
#chronos.diagram(fromDB)

View File

@@ -0,0 +1,6 @@
#import "/metadata.typ": *
The link between data arriving on the broker, the database on the server and the user interface work as expected. Some endpoint on the @rest @api was added to simplify life during the development as the battery endpoint to monitor the battery level of each node.
As the service is made in Go, it allow to limit the resources usage, a important point on the actual context. The full server with the @mqtt broker, the database, the gateway service connection the database to everything and finally the user interface webpage, all running on Docker use less than 2Go of RAM and 20Go of disk memory. It would so possible to run the entire cloud part on the cheapest Infomaniak's VPS lite for roughly 30CHF a year.

View File

@@ -0,0 +1,18 @@
#import "/metadata.typ": *
#import "specifications/05-objectives.typ": *
#pagebreak()
= Objectives<sec:objectives>
#add-chapter()[
The objectives for the project that has been validated in its early phase are listed below.
Mandatory objectives are listed as MOx, optional objectives as OOx and personal objectives as POx.
#objectives-mo
#v(1em)
#objectives-oo
#v(1em)
#objectives-po
The MO3 has been modified during the 8th week in response to Dimitri dropout.
The student's personal objective has been kept nonetheless.
]

View File

@@ -0,0 +1,11 @@
#import "/metadata.typ": *
#pagebreak()
= #i18n("introduction-title", lang:option.lang) <sec:spec:intro>
This document contains the specifications for the Inter-disciplinarity Project (PI) team "plein de eeeeeeeeeeeeeeeeeeeeeeeeeee" conducted during the Spring Semester 2025-2026.
This project aims at delivering the best time and duration to air a room.
The recording of environment values inside the room, especially the air temperature, CO2 level and window opening status, alongside the outside temperature are paramount to provide the data.
Furthermore, the delivering of the data is done, among other ways, using explicit notification to the room users to ensure the project usefulness.
This document contains the project motivations, objectives and planned tasks.

View File

@@ -0,0 +1,74 @@
#import "/metadata.typ": *
#pagebreak()
= Context <sec:spec:context>
#let spec_context = [
The @ofsp emphasises that insufficient ventilation can lead to increased @co2 levels #cite(<ofsp_ventilation>), which can negatively affect cognitive performance and health.
It is advised to monitor indoor air quality in classrooms using @co2 concentration sensor. The @co2 level should not exceed a threshold of 1400 @ppm. When this threshold is exceeded, the room should be ventilated until the concentration falls below 1000 @ppm. For reference, outdoor air typically contains around 400500 @ppm of @co2.
These thresholds are summarised using @tab:co2_levels.
The @ofsp recommends ventilating classrooms effectively before each lecture and during breaks by opening the windows fully to renew the air quickly. To minimise heat loss and prevent the cooling of walls in winter, the ventilation period should remain short (a duration of 3 to 5 minutes is generally recommended).
Minimising heat loss reduces heating demand, contributing to the objectives of Switzerlands Energy Strategy 2050, namely reducing energy consumption, improving efficiency and lowering greenhouse gas emissions.
An air quality simulation tool named SIMARIA #footnote[https://simaria.ch/fr/simaria] has been developed to assist teachers in planning the timing and duration of window ventilation, based on classroom size, number of students, and class schedules.
In this context, HESSO focused on this issue and installed @co2 sensors in the classrooms. Indeed, the long duration of class periods (2h30), combined with windows often remaining closed before, during, and after lessons, can result in high @co2 concentrations. Moreover, some classrooms can accommodate a large number of students, which also contributes to the increase in @co2 concentrations.
Sensors have been installed to alert teachers and students to the @co2 levels in the room, encouraging ventilation. However, it has been observed that some students are unaware of their presence, and both students and teachers often do not pay attention to them. The timing and duration of window opening depend on the individual, often without regard to the @co2 levels indicated on the sensors and without consideration of the resulting energy loss.
#figure(
table(
columns: (auto, auto),
align: center,
table.header("co2 level [ppm]", "influence"),
[400],[Normal outdoor air],
[400-1000],[Typically found in ventilated rooms],
[1000-2000],[Medium air quality \ usually reached during a 2 hour course without airing the room],
[>2000],[Poor air quality \ Reported headache, loss of focus, poor concentration, ...],
),
caption: [Noticeable CO2 level threshold]
)<tab:co2_levels>
The @tab:co2_levels considers recent review #cite(<co2_levels_review>).
#let top-level-architecture-get-data = [
#figure(
image("/resources/img/PI-get_data.drawio.png"),
caption: [Top level architecture to get measurement],
alt: "Thingy52 --BLE secure advertising--> Raspberry Pi --MQTT--> RabittMQ --GO--> InfluxDB"
) <fig:top-level-architecture-get-data>
]
// #top-level-architecture-get-data
#let top-level-architecture-lstm-notify = [
#figure(
image("../../resources/img/PI-lstm.drawio.png"),
caption: [Top level architecture to analyse data and notify],
alt: "Influx + MeteoSwiss --> LSTM --> Teams notification"
) <fig:top-level-architecture-lstm-notify>
]
// #top-level-architecture-lstm-notify
#let top-level-architecture = [
#figure(
image("../../resources/img/PI-top-level.drawio.png"),
caption: [Top level architecture],
alt: "Thingy52 --BLE secure advertising--> Raspberry Pi --MQTT--> RabittMQ --GO--> InfluxDB | Influx + MeteoSwiss --> LSTM --> Teams notification | InfluxDB --> MatLab --> InfluxDB"
) <fig:top-level-architecture>
]
As indicated in @fig:top-level-architecture, the planned system consists in nodes retrieving the environmental data.
These data are sent to a gateway, running on a raspberryPI, with BLE.\
The gateway then aggregates the various data and sends them, added by a timestamp, to a database.
The database offers an API allowing the insertion and the retrieval of the stored data.
A physical model ensures that each point of data is coherent with the one coming before and after it.\
These data can be either displayed, with regards to a given timestamp, of fed to a forecasting model.
Ultimately, the model generate prediction on the upcoming points of data and sends notifications using Microsoft teams to the room users.
The use of Microsoft teams is motivated by the shared use by the students and teachers.\
The notifications are indicating when to open, respectively close, the room windows to ensure that the air quality remains proper for a course while reducing the heat transfers with the outside to the minimum.
#top-level-architecture
]
#spec_context

View File

@@ -0,0 +1,17 @@
#import "/metadata.typ": *
#pagebreak()
= Constraints <sec:spec:constraints>
The following points are known elements that may slow or stop the project unless addressed in the early step of the project.
#let constraints = [
#set enum(numbering: "C1:")
+ The used components needs to be ordered before #date.ordering-components.display("[day] [month repr:long] [year]") #pause
+ A set of placeholder data is available before #(date.specification-submission + duration(days: 7)).display("[day] [month repr:long] [year]").
These data are to be used while waiting for the sensors and the database.
A noticeable care needs to be given to the similarities between the placeholders data and the actual ones that will be retrieved.\
Furthermore, data from the existing sensors can be retrieved manually while waiting for the actual data. #pause
+ The minimal role required to send notification on teams is available for the user associated to the project before the #date.objective-completed.display("[day] [month repr:long] [year]").
+ The available freedom around the sensors placement and holding are to be known by the #date.first-environmental-data-in-db.display("[day] [month repr:long] [year]").
]
#constraints

View File

@@ -0,0 +1,110 @@
#import "/metadata.typ": *
#pagebreak()
= Objectives <sec:spec:objectives>
In the various objectives, the "environment data" refers, at least, to the room temperature, the CO2 level in the room and the room's windows opening status.\
Each objective are either mandatory (MOx), optional (OOx) or personal (POx).
In the latter case, the associated student is indicated alongside.
#v(1.5em)
#set enum(indent: 1em)
//////////////////////////////
//////////////////////////////
#let objectives = [
#show: el.config.ref
#show: el.default-enum-list
#set enum(numbering: "MO1")
+ The environmental data for the observed rooms are stored in a database with an associated timestamp. #el.elabel(<mo:database>) #pause
+ The stored environmental data can be displayed in a 2D map.
The display allows to show both stored and live data. #el.elabel(<mo:map>) #pause
+ Using the stored environmental data, alongside external meteorological data, the system send a notification when the windows should be opened or closed.
This recommendations are based on the minimal time required to reduce the @co2 level in the room. #el.elabel(<mo:recommendation>) #pause
+ The changes in temperature when airing the room, with regards to outside temperature, are analysed and used for the window opening time recommendations. #el.elabel(<mo:analyse>) #pause
#v(1.5em)
#set enum(numbering: "OO1")
+ The display in MO2 /*@mo:map*/ also allows to display the prevision outputted by MO3 /*@mo:recommendation*/
+ The frequency of recorded data can be adjusted by the sensor to increase the autonomy
#v(1.5em)
#set enum(numbering: "PO1")
+ [Adrien]: A low-power firmware is fully developed on a nordic chip using Zephyr as the embedded OS.
The emphasise on the low-power elements allows for the firmware to run for days without charging the device again.\
Both these technologies are new for the student.
+ [Dimitri] A machine learning model is developed to predict the optimal moments to open windows, balancing @co2 reduction against thermal losses. The model is trained on historical sensor data and external weather data. Working with time series data and applying machine learning to a physical system are both new competencies for the student.
+ [Ibrahima]: A secure microservices architecture is developed using Spring Boot with emphasis on production-grade security (mutual TLS for IoT devices, JWT RS256 authentication, RBAC authorization, GDPR compliance). The system processes real-time sensor data via MQTT and delivers live updates through WebSocket to an Angular dashboard. Both distributed systems security and IoT protocol implementation are new competencies for the student.
+ [Alison]: A physical model will be developed using Matlab or Python to analyse the evolution of @co2 concentration as a function of several parameters, such as the classroom volume, the number of students, and the duration of window opening. The model will also estimate the thermal losses associated with window ventilation and will provide recommendations to optimise both indoor air quality and energy performance. As the student has limited experience in programming, the development of this model will also represent an opportunity to acquire and strengthen these skills.
+ [Djelal]: A communication layer will be developed to bridge the sensor nodes and the backend infrastructure, using a Raspberry Pi as a BLE-to-MQTT gateway. The gateway will continuously collect environmental data (CO₂, temperature, and window status) from multiple Nordic Thingy:52 nodes via BLE GATT services, enrich each measurement with a timestamp, and publish it to a Mosquitto MQTT broker in a structured JSON format. The design will emphasise reliability through automatic reconnection mechanisms and a clean abstraction between the BLE acquisition layer and the MQTT publishing layer. A basic security layer will also be implemented, including access control on the BLE side to restrict communication to known devices, and authentication mechanisms on the MQTT broker (username/password) to prevent unauthorized data injection. While this approach does not provide full end-to-end security, it reflects a lightweight and realistic security model for a constrained IoT deployment. Both BLE communication protocols and MQTT-based IoT messaging represent new competencies for me, and this project constitutes a significant challenge that I have chosen to undertake. Directly aligned with my orientation in communication systems, it provides an opportunity to apply and deepen these skills in a concrete, real-world context.
#let remi-serious-objectiv = [
A data infrastructure is automated, deployed both in productive and development environment. The database is automatically configured and populated by external MeteoSwiss data.
The student didn't experiment automatic deploy /configuration and multi-environment.
]
#let remi-fun-objectiv = [Solve Maxwell's equations]
+ [Rémi]: #remi-serious-objectiv
]
#let objectives-mo = [
#show: el.config.ref
#show: el.default-enum-list
#set enum(numbering: "MO1")
+ The environmental data for the observed rooms are stored in a database with an associated timestamp. #el.elabel(<mo:database>) #pause
+ The stored environmental data can be displayed in a 2D map.
The display allows to show both stored and live data. #el.elabel(<mo:map>) #pause
+ Using the stored environmental data and known physical model, the system send a notification when the windows should be opened. This recommendations are based on the co2 level in the room. #el.elabel(<mo:recommendation>) #pause
+ The changes in temperature when airing the room, with regards to outside temperature, are analysed and used for the window opening time recommendations. #el.elabel(<mo:analyse>) #pause
]
#let objectives-oo = [
#show: el.config.ref
#show: el.default-enum-list
#set enum(numbering: "OO1")
+ The display in MO2 /*@mo:map*/ also allows to display the prevision outputted by MO3 /*@mo:recommendation*/
+ The frequency of recorded data can be adjusted by the sensor to increase the autonomy
]
#let objectives-po = [
#show: el.config.ref
#show: el.default-enum-list
#set enum(numbering: "PO1")
+ [Adrien]: A low-power firmware is fully developed on a nordic chip using Zephyr as the embedded @os.
The emphasise on the low-power elements allows for the firmware to run for days without charging the device again.\
Both these technologies are new for the student.
+ [Dimitri] A machine learning model is developed to predict the optimal moments to open windows, balancing @co2 reduction against thermal losses. The model is trained on historical sensor data and external weather data. Working with time series data and applying machine learning to a physical system are both new competencies for the student.
+ [Ibrahima]: A secure microservices architecture is developed using Spring Boot with emphasis on production-grade security (mutual @tls for @iot devices, JWT RS256 authentication, RBAC authorization, GDPR compliance). The system processes real-time sensor data via @mqtt and delivers live updates through WebSocket to an Angular dashboard. Both distributed systems security and IoT protocol implementation are new competencies for the student.
+ [Alison]: A physical model will be developed using Matlab or Python to analyse the evolution of @co2 concentration as a function of several parameters, such as the classroom volume, the number of students, and the duration of window opening. The model will also estimate the thermal losses associated with window ventilation and will provide recommendations to optimise both indoor air quality and energy performance. As the student has limited experience in programming, the development of this model will also represent an opportunity to acquire and strengthen these skills.
+ [Djelal]: A communication layer will be developed to bridge the sensor nodes and the backend infrastructure, using a Raspberry Pi as a BLE-to-MQTT gateway. The gateway will continuously collect environmental data (@co2, temperature, and window status) from multiple Nordic Thingy:52 nodes via @ble GATT services, enrich each measurement with a timestamp, and publish it to a Mosquitto @mqtt broker in a structured JSON format. The design will emphasise reliability through automatic reconnection mechanisms and a clean abstraction between the @ble acquisition layer and the @mqtt publishing layer. A basic security layer will also be implemented, including access control on the @ble side to restrict communication to known devices, and authentication mechanisms on the @mqtt broker (username/password) to prevent unauthorized data injection. While this approach does not provide full end-to-end security, it reflects a lightweight and realistic security model for a constrained @iot deployment. Both @ble communication protocols and @mqtt\-based @iot messaging represent new competencies for me, and this project constitutes a significant challenge that I have chosen to undertake. Directly aligned with my orientation in communication systems, it provides an opportunity to apply and deepen these skills in a concrete, real-world context.
#let remi-serious-objectiv = [
A data infrastructure is automated, deployed both in productive and development environment. The database is automatically configured and populated by external MeteoSwiss data.
The student didn't experiment automatic deploy /configuration and multi-environment.
]
#let remi-fun-objectiv = [Solve Maxwell's equations]
+ [Rémi]: #remi-serious-objectiv
]
sec:spec:objectives
#v(1.5em)
#objectives-oo
#v(1.5em)
#objectives-po

View File

@@ -0,0 +1,211 @@
#import "/metadata.typ": *
#pagebreak()
#let base-url = "https://github.com/PI-E2EEDA/Plein-de-eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee-project/issues/"
#let github-link(id) = {
link(base-url+str(id))[\##str(id)]
}
#let github-link-name(id, name) = {
link(base-url+str(id))[#name]
}
#let issue(
id,
name,
sp: 0,
link: (),
description: none,
) = {
(
github-link(id),
github-link-name(id, name),
for l in link [\##l ],
if description == none [] else {description},
sp
)}
#let display(workload) = {
let task = ()
for w in workload {
task.push(w.at(0))
task.push(w.at(1))
task.push(w.at(2))
task.push(w.at(3))
task.push(str(w.at(4)))
}
task
}
= Planned tasks <sec:spec:planned_tasks>
Below are listed the general tasks to execute during this project.
Each tasks may be subdivided into smaller ones in the #link(base-url)[*GitHub board*].
#let workload = {(
issue(1, [Sample Zephyr], description: [Getting to know with BLE secure advertising and Zephyr], sp: 1),
issue(2, link: (2,), [Node firmware definition], description: [Defining each nodes software (and potential bootloader)], sp: 1),
issue(3, link: (2, 4), [Node implementation], description: [Implementation of the nodes, including low-power care], sp: 8),
issue(4, [Gateway firmware definition], description: [Definition of the gateway software, including communication with the nodes], sp: 1),
issue(5, link: (4,), [Gateway implementation], description: [Implementation of the gateway software], sp: 6),
issue(6, [Database setup], description: [Setup of the temporal data storage, including a service to add new values], sp: 3),
issue(7, [DB data retrieval], link: (6,), description: [Implementation of an API allowing to retrieve data from the DB], sp: 4),
issue(8, [2D map GUI], link: (7,), description: [Implementation of a service displaying the sensor data at a given time], sp: 6),
issue(9, [MeteoSwiss API grasping], description: [Retrieve MeteoSwiss data to get the outside environmental data], sp: 3),
issue(10, [Windows opening forecasting], description: [Training of a model telling the optimal windows opening time], sp: 8),
issue(11, [Notification setup], link: (10,), description: [Considering the window opening recommendation, sends a notification to the room users], sp: 3),
issue(12, [Analysis of the room data evolution], description: [Analysis of the temperature and CO2 level evolution regarding window opening status over time], sp: 7),
issue(13, [Documentation], description: [Report and code comments], sp: 9),
)}
#let sum-sp = 0
#for w in workload {
sum-sp += w.at(4)
}
// #show table.cell.where(y: 0): strong
// #set table(
// stroke: (x, y) => if y == 0 {
// (bottom: 0.7pt + black)
// },
// align: (x, y) => (
// if x == 4 { right }
// else { left }
// )
// )
#set par(justify: false)
#table(
columns:(
// 2.5em,
2fr,
// 3.5em,
5fr,
2em
),
align: left,
table.header(
// "ID",
"Name",
// "Linked",
"Description",
"SP"
),
..{
let task = ()
for w in workload {
// task.push(w.at(0))
task.push(w.at(1))
// task.push(w.at(2))
task.push(w.at(3))
task.push(align(center)[#str(w.at(4))])
}
task
},
table.cell(stroke: none)[],
table.cell(stroke: none)[#align(right)[Total:]],
table.cell(stroke: none)[#sum-sp],
)
The various fields are assigned considering @tab:repartition.
#figure(
table(
columns: (auto, auto),
align: center,
table.header("Field", "Assigned to"),
[Team lead | Administrative elements],[Adrien],
[Embedded Software],[Adrien, Rémi],
[Communication between components],[Rémi, Djelal],
[Database interfacing],[Ibrahima],
[Machine learning | Data exploitation],[Ibrahima, Dimitri],
[Physic Modelling],[Alison]
)
)<tab:repartition>
#let dispatch(id, sp) = {
let task = workload.at(id - 1)
([#link(task.at(0).dest)[#task.at(0).body - #task.at(1)] (#sp/#task.at(4))], sp)
}
#let display-dispatching(person) = {
let total = 0.0
for d in person {
d.at(0)
linebreak()
total = total + d.at(1)
}
underline[Total SP: #str(total)]
}
#let Djelal = [
#underline[A. Djelal]\
#display-dispatching((
dispatch(1, 0.5),
dispatch(3, 1),
dispatch(4, 1),
dispatch(5, 6),
dispatch(13, 1.5),
))
]
#let Adrien = [
#underline[B. Adrien]\
#display-dispatching((
dispatch(1, 0.5),
dispatch(2, 1),
dispatch(3, 7),
dispatch(13, 1.5),
))
]
#let Rémi = [
#underline[H. Rémi]\
#display-dispatching((
dispatch(6, 3),
dispatch(7, 4),
dispatch(9, 1.5),
dispatch(13, 1.5),
))
]
#let Dimitri = [
#underline[I. Dimitri]\
#display-dispatching((
dispatch(9, 1.5),
dispatch(10, 7),
dispatch(13, 1.5),
))
]
#let Alison = [
#underline[L. Alison]\
#display-dispatching((
dispatch(8, 0.5),
dispatch(10, 1),
dispatch(12, 7),
dispatch(13, 1.5),
))
]
#let Ibrahima = [
#underline[S. Ibrahima]\
#display-dispatching((
dispatch(8, 5.5),
dispatch(11, 3),
dispatch(13, 1.5),
))
]
#set text(size: 0.8em)
#grid(
columns: (1fr, 1fr),
column-gutter: 1em,
row-gutter: 2em,
Djelal,
Adrien,
Rémi,
Dimitri,
Alison,
Ibrahima,
)

View File

@@ -0,0 +1,25 @@
#import "/metadata.typ": *
#pagebreak()
#let deadline(name, date) = {(
date.display("[day].[month]"),
name,
)}
= Deadline <sec:spec:deadline>
The following dates serves as deadlines for the project.
#figure(
table(
columns: (auto, auto),
[*Date*],[*Purpose*],
..deadline("Specs validation", date.specification-submission),
..deadline("Ordering of components", date.ordering-components),
..deadline("First environmental data stored in the database", date.first-environmental-data-in-db),
..deadline("Mid-term presentation (including prototype demo)", date.mid-term-presentation),
..deadline("Full data retrieval, forecasting and display", date.objective-completed),
..deadline("Project report submission", date.submission),
..deadline("Project defence", date.defence),
..deadline("Project presentation in front of other groups", date.pitch),
)
)

View File

@@ -0,0 +1,74 @@
#import "/metadata.typ": *
#pagebreak()
= BOM
In @tab:bom, the indicated prices are in CHF.
#figure(
table(
columns: (auto, auto, auto, auto, auto),
align: center,
table.header("Component", "Price", "Nb unit", "Total", "Note"),
link("https://www.digikey.ch/fr/products/detail/nordic-semiconductor-asa/NRF6936/7175577?s=N4IgTCBcDaIC4AsCWA7A5gTwAQFYIF0BfIA")[Thingy 52],
[32.39],
[25],
[0],
[Supplied by the good will of the HES-SO Valais/Wallis],
link("https://www.digikey.ch/fr/products/detail/rakwireless-technology-limited/raspberry-pi-4-model-b-4gb/17138043")[Raspberry Pi 4],
[111.17],
[1],
[0],
[Supplied by the good will of the HES-SO Valais/Wallis],
[DB Influx],
[0],
[1],
[0],
[Open-source, hosted by the good Will of M. Heredero],
[MatLab License],
[0],
[1],
[0],
[Free for students],
[Mosquitto MQTT Broker],
[0],
[1],
[0],
[Open-source],
[Python Bleak library],
[0],
[1],
[0],
[BLE scanning, open-source],
[Python paho-mqtt library],
[0],
[1],
[0],
[MQTT client, open-source],
[ML model training],
[0],
[1],
[0],
[Done locally],
[ML inference],
[0],
[1],
[0],
[AWS free tier or hosted locally],
link("https://www.digikey.ch/en/products/detail/e-switch/MS0850502F020S1A/1628279")[MS08050502F020S1A],
[0.93],
[10],
[9,3],
[Limit switch],
),
)<tab:bom>

View File

@@ -0,0 +1,18 @@
#import "/metadata.typ": *
#pagebreak()
= Deliverables
The following deliverables are expected by the end of the project.
#v(1.5em)
#let deliverables = [
#show: el.config.ref
#show: el.default-enum-list
#set enum(numbering: "Dl1")
+ Software executable on the defined nodes hardware delivering the CO2 level and temperature.
+ Software executable on the defined gateway hardware retrieving the data from the nodes and pushing them to a database
+ Database, with an associated API, to store and retrieve the data sent by the gateway
+ Data model indicating if data from a node is coherent when compared to data adjacent in the database
+ Data model forecasting each node data.
The forecasting duration is to be defined.
]
#deliverables

View File

@@ -0,0 +1,119 @@
#import "/metadata.typ": *
#import "/tail/bibliography.typ": *
#import "/tail/glossary.typ": *
#import "/resources/slides.typ": *
#show:make-glossary
#register-glossary(entry-list)
#let HANDOUT = true
#let NOTES = false
#show: metropolis-theme.with(
aspect-ratio: "16-9",
config-info(
title: title_style(doc.title),
subtitle: [
#doc.subtitle \
Specification presentation
],
author: enumerating-authors(items: doc.author, multiline: false ),
date: date.specification-submission,
institution: school.name,
),
footer: self => [#self.info.institution],
..get-config(),
config-common(
handout: HANDOUT,
show-notes-on-second-screen: if NOTES {right} else {none}
)
)
#set text(region: "gb")
#show: myglobals
#title-slide()
// = Intro
// ---
// #import "../../main/specifications/02-introduction.typ": *
= Context
---
#import "../../main/specifications/03-context.typ": *
= Objectives
---
#import "../../main/specifications/05-objectives.typ": *
#objectives
== Top level
//#top-level-architecture
= Constraint
---
#import "../../main/specifications/04-constraints.typ": *
#constraints
= Planned Tasks
---
#import "../../main/specifications/06-planned_tasks.typ" as pt
#let display-task(task) = if task != none {table(
columns: (4fr, 1fr),
rows: (1fr, 2fr),
stroke: none,
table.cell(stroke: (bottom: 1pt))[#task.at(0) - #task.at(1)],
str(task.at(4)),
table.cell(colspan: 2)[
#task.at(3)
],
)} else []
#for i in range(int(pt.workload.len()/4+1)) {
let task1 = if (i*4>=pt.workload.len()) {none} else {pt.workload.at((i*4))}
let task2 = if (i*4+1>=pt.workload.len()) {none} else {pt.workload.at((i*4)+1)}
let task3 = if (i*4+2>=pt.workload.len()) {none} else {pt.workload.at((i*4)+2)}
let task4 = if (i*4+3>=pt.workload.len()) {none} else {pt.workload.at((i*4)+3)}
grid(
columns: (1fr, 1fr),
rows: (1fr, 1fr),
column-gutter: 3em,
row-gutter: 2em,
if task1 != none [#display-task(task1)],
if task2 != none [#pause #display-task(task2)],
if task3 != none [#pause #display-task(task3)],
if task4 != none [#pause #display-task(task4)],
)
[---]
}
== Dispatching
#set text(size: 0.73em)
#grid(
columns: (1fr, 1fr, 1fr),
column-gutter: 1em,
row-gutter: 2em,
align: top+left,
pt.Djelal, pause,
pt.Adrien, pause,
pt.Rémi, pause,
pt.Dimitri, pause,
pt.Alison, pause,
pt.Ibrahima,
)
#focus-slide[
Questions?
]
#{
// set text(size: 0pt)
make_glossary(gloss:gloss, title:i18n("gloss-title"))
}

View File

@@ -0,0 +1,241 @@
#import "/metadata.typ": *
#import "/tail/bibliography.typ": *
#import "/tail/glossary.typ": *
#import "/resources/slides.typ": *
#show:make-glossary
#register-glossary(entry-list)
#let HANDOUT = false
#let NOTES = false
#show: metropolis-theme.with(
aspect-ratio: "16-9",
config-info(
title: title_style(doc.title),
subtitle: [
// #doc.subtitle \
Team Plein de eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
\
Midterm presentation
],
author: enumerating-authors(items: doc.author, multiline: false ),
date: date.mid-term-presentation,
institution: school.name,
),
footer: self => [#self.info.institution],
..get-config(),
config-common(
handout: HANDOUT,
show-notes-on-second-screen: if NOTES {right} else {none}
)
)
#set text(region: "gb")
#show: myglobals
#title-slide()
// 20 min presentation
// 20 min Q&A
= Intro
== Architecture
#figure(
image("../../resources/img/PI-top-level.drawio.png"),
caption: [Top level architecture],
alt: "Thingy52 --BLE secure advertising--> Raspberry Pi --MQTT--> RabittMQ --GO--> InfluxDB | Influx + MeteoSwiss --> LSTM --> Teams notification | InfluxDB --> MatLab --> InfluxDB"
) <fig:top-level-architecture>
---
#figure(
image("../../resources/img/bdd_complete.svg"),
caption: [Top-level architecture, including interfaces between units]
) <fig:top_level_archi_interface>
== Objectives
#import "../../main/specifications/05-objectives.typ": *
#objectives-mo
#objectives-oo
= Work done
== Nodes
#figure(
image("../../resources/img/nodes_class_diagram.svg"),
caption: [Nodes class diagram]
) <fig:nodes_class_diagram>
---
#figure(
image("../../resources/img/nodes_sequence_diagram.svg"),
caption: [Nodes sequence diagram]
) <fig:nodes_sequence_diagram>
== Gateway
- Listening on BLE
- Sending on MQTT
== DB Influx
- Server setup (LXC, Docker, ssh certificates, Traefik, DNS challenge) #emoji.checkmark #pause
- Influx DB 3 #emoji.checkmark #pause
- RabbitMQ #emoji.checkmark #pause
- Gateway MQTT -> DB #emoji.circle.orange #pause
- DB -> REST #emoji.crossmark
== User Interface
- CI/CD
#pause
- Interactive 2D Map
#pause
- Air quality history
== Data usage
=== Open data analysis
Open data analysis (no mechanical ventilation, no window opening):
- Study of the variation in @co2 levels over time in several classrooms in Munich. #cite(<twardella_effect_2012-1>)
- Study of the variation in @co2 level over time for offices and secondary school. #cite(<INRS_Study>)
- Online air quality calculator for classrooms "Simaria" developt by @ofsp:short.
---
=== Time evolution of @co2:short level
#figure(
image("../../resources/img/Time_evolution_CO2_Twardella.png", height: 85%),
caption: [Time evolution of @co2:short level for #cite(<twardella_effect_2012-1>)]
)
---
#grid(
columns: (1fr, 1fr),
[
#figure(
image("../../resources/img/Time_evolution_CO2_INRS_office.png"),
caption: [Time evolution of @co2:short level in an office for #cite(<INRS_Study>)]
)
], [
#figure(
image("../../resources/img/Time_evolution_CO2_INRS_secondaryschool.png"),
caption: [Time evolution of @co2:short level in a secondary school for #cite(<INRS_Study>)]
)
]
)
#grid(
columns: (1fr, 1fr),
[
#figure(
image("../../resources/img/Time_evolution_CO2_INRS_meetingroom.png"),
caption: [Time evolution of @co2:short level in a meeting room for #cite(<INRS_Study>)]
)
],
[
#figure(
image("../../resources/img/Time_evolution_CO2_Simaria.png"),
caption: [Time evolution of @co2:short for Simaria calculator for a same volume and variation of students number]
)
]
)
---
=== Time evolution of @co2:short level - Case study classroom A4 Provence
#grid(
columns: (1fr, 1fr),
[
#figure(
image("../../resources/img/Excerpt case study Provence Simaria.png"),
caption: [Simaria interface: input]
)
],
[
#figure(
image("../../resources/img/Excerpt cas study Provence Simaria _results.png"),
caption: [Simaria interface: results]
)
]
)
- Threshold 1400 ppm reached after 22 min and 2000 ppm after 38 min.
---
=== Calculation of the time taken to reach the threshold of 1400 ppm for each data set
#figure(
image("../../resources/img/Time_reaching_threshold.png"),
caption: [Time reaching threshold of 1400 ppm in function of air volume per person]
)
#grid(
columns: (1fr, 1fr),
[
#figure(
image("../../resources/img/User action.png"),
caption: [User action]
)
],
[
#figure(
image("../../resources/img/User action result.png"),
caption: [Result user action]
)
]
)
== Forecasting
bus factor
#{
set text(size: 2em)
linebreak()
emoji.face.cry
linebreak()
emoji.bus
}
= Demo
= Conclusion
== Objectives adjusted
- Kept:
MO1: The environmental data for the observed rooms are stored in a database with an associated timestamp\
MO2: The stored environmental data can be displayed in a 2D map. The display allows to show both stored and live data.\
MO4: The changes in temperature when airing the room, with regards to outside temperature, are analysed and used for the window opening time recommendations.\
---
- Changed:
MO3: #strike[Using the stored environmental data, alongside external meteorological data, the system send a notification when the windows should be opened or closed.]\
The system sends a notification when the measured CO2 level overreaches the 1400ppm threshold
== Next steps
- Nodes: Implementation and integration with the Gateway
#pause
- Gateway: Integration of nodes. Nice-to-have : encrypted communication with nodes.
#pause
- DB: Communication with MQTT and retrieval API
#pause
- User Interface: API integration and live CO2 level alarm
#pause
- Data usage: Improvement of python program
#pause
- Forecasting: Nice-to-have, shall effort be available
#pause
- All: Documentation and reviews
//-------------------------------------
// Bibliography
//
#pagebreak()
#make_bibliography(bib:bib, title:i18n("bib-title", lang: option.lang))
//-------------------------------------
// Glossary
//
#{
// set text(size: 0.5em)
make_glossary(gloss:gloss, title:i18n("gloss-title"))
}

View File

@@ -0,0 +1,73 @@
#import "/metadata.typ": *
#import "/tail/bibliography.typ": *
#import "/tail/glossary.typ": *
#import "/resources/slides.typ": *
#show:make-glossary
#register-glossary(entry-list)
#let HANDOUT = true
#let NOTES = false
#show: metropolis-theme.with(
aspect-ratio: "16-9",
config-info(
title: title_style(doc.title),
subtitle: doc.subtitle,
author: enumerating-authors(items: doc.author, multiline: false ),
date: date.defence,
institution: school.name,
),
footer: self => [#self.info.institution],
..get-config(),
config-common(
handout: HANDOUT,
show-notes-on-second-screen: if NOTES {right} else {none}
)
)
#set text(region: "gb")
#show: myglobals
#title-slide()
// 20 min presentation
// 5 (students) + 25 (teacher) min Q&A
/*
technical -> each section should go for around (3min / pers)
- Node: Adrien
- Gateway: Djelal
- DB: Rémi
- UI: Ibrahima
- Physique: Alison
general (50s/pers)
1. Context (dimitri) (Rémi)
2. architecture + choix (BLE, MQTT, Influx, ) (Ibrahima)
3. organisation et gestion des tâches et resources (Djelal)
TECHNIQUE
4. regard critique (adrien)
5. developement futur (Alison)
// Slide in english
// Presentation en français
*/
= Intro
== foo
Yolo
== bar
Hello world
= Conclusion
---
It's the end of the world

188
report/metadata.typ Normal file
View File

@@ -0,0 +1,188 @@
#import "@preview/hei-synd-thesis:0.4.0": *
#import "@preview/itemize:0.2.0" as el
#import "@preview/touying:0.6.1": *
#import "@preview/codelst:2.0.2": sourcecode
#import "@preview/pinit:0.2.2": *
//-------------------------------------
// Document options
//
#let option = (
type: sys.inputs.at("type", default:"draft"), // [draft|final]
lang: "en",
region: "gb",
template: "thesis", // [thesis/midterm]
)
//-------------------------------------
// Optional generate titlepage image
//
#import "@preview/fractusist:0.3.2":*
#let project-logo= dragon-curve(
12,
step-size: 1.6,
stroke: stroke(
paint: gradient.radial(..color.map.rocket),
thickness: 0.5pt, join: "round"
)
)
//-------------------------------------
// Metadata of the document
//
#let doc = (
title : "PI E2EEDA",
subtitle : "Team: Plein de eeeeeeeeeeeeeeeeeeeeee",
abbr : "EEEEEE",
// author : (
// gender : "inclusive", // ["masculin"|"feminin"|"inclusive"]
// name : "Djelal A., Adrien B., Rémi H., Dimitri I., Alison L., Ibrahima S.",
// degree : "Master",
// affiliation : "HES-SO",
// place : "Provence",
// ),
author :(
(
gender: "masculin",
name: "Djelal Avdil",
abbr: "ADD",
email: "djelal.avdil@master.hes-so.ch",
institute: "HES-SO",
),
(
gender: "masculin",
name: "Adrien Dino Balleyguier",
abbr: "BAD",
email: "adriendino.balleyguier@hefr.ch",
institute: "HEIA-FR",
),
(
gender: "masculin",
name: "Rémi Heredero",
abbr: "HER",
email: "remi.heredero@hevs.ch",
institute: "HEVS",
),
// (
// gender: "masculin",
// name: "Dimitri Imfeld",
// abbr: "IMD",
// email: "dimitri.imfeld@master.hes-so.ch",
// institute: "HES-SO",
// ),
(
gender: "feminin",
name: "Alison Lecointre",
abbr: "LEA",
email: "alison.lecointre@master.hes-so.ch",
institute: "HES-SO",
),
(
gender: "masculin",
name: "Ibrahima Seye",
abbr: "SEI",
email: "ibrahima.seye@master.hes-so.ch",
institute: "HES-SO",
),
),
keywords : ("HES-OS", "Master", "CS", "EnEn", "IoT", "ML"),
version : "v0.1.0",
)
#let data-page = none // [bytes|none]
#let professors = (
(
institute: "HEIA-FR",
name: "Prof. Serge Ayer",
email: "serge.ayer@hefr.ch",
),
(
institute: "HEIA-FR",
name: "Prof. Luca Haab",
email: "luca.haab@hefr.ch",
),
(
institute: "HEVS",
name: "Prof. Fabrizzio Sossan",
email: "fabrizio.sossan@hevs.ch",
)
)
#let expert= none
#let school= (
name: "HES-SO Master",
orientation: none,
specialisation: none,
)
school.name = "University of Applied Sciences Western Switzerland, HES-SO"
school.shortname = "HES-SO"
#let date = (
today: datetime.today(),
specification-submission: datetime(year: 2026, month: 3, day: 12),
ordering-components: datetime(year: 2026, month: 3, day: 19),
first-environmental-data-in-db: datetime(year: 2026, month: 4, day: 09),
mid-term-presentation: datetime(year: 2026, month: 4, day: 16),
objective-completed: datetime(year: 2026, month: 5, day: 28),
submission: datetime(year: 2026, month: 6, day: 4),
defence: datetime(year: 2026, month: 6, day: 11),
pitch: datetime(year: 2026, month: 6, day: 25),
)
#let logos = (
main: project-logo,
topleft: if option.lang == "fr" or option.lang == "de" {
image("/resources/img/logos/hei-defr.svg", width: 6cm)
} else {
image("/resources/img/logos/hei-en.svg", width: 6cm)
},
topright: image("/resources/img/logos/hesso-logo.svg", width: 4cm),
bottomleft: image("/resources/img/logos/hevs-pictogram.svg", width: 4cm),
bottomright: image("/resources/img/logos/swiss_universities-valais-excellence-logo.svg", width: 5cm),
logo-hesso: image("/resources/img/logos/logo-hesso.png", width: 5cm),
logo-hesso-master: image("/resources/img/logos/logo-hesso-master.jpg", width: 3cm),
logo-mse: image("/resources/img/logos/logo-mse.png", width: 16cm),
)
//-------------------------------------
// Settings
//
#let tableof = (
toc: true,
tof: false,
tot: false,
tol: false,
toe: false,
maxdepth: 2,
)
#let gloss = true
#let appendix = true
#let bib = (
display : true,
path : "/tail/bibliography.bib",
style : "ieee", //"apa", "chicago-author-date", "chicago-notes", "mla"
)
//-------------------------------------
// Utilities
//
#let warn(element, message) = {
box(
stroke: red + 2pt,
outset: 2pt,
{
element
place(
top + left,
dx: -1pt,
dy: -1pt,
box(
fill: yellow,
inset: .2em,
message,
),
)
},
)
}

View File

@@ -0,0 +1,10 @@
edition = "2021"
tab_spaces = 2
max_width = 80
#indent_style = "Block"
#trailing_comma = "Always"
#merge_imports = true
reorder_imports = true

View File

@@ -0,0 +1,22 @@
struct Starship {
name: String,
position: (f64, f64, f64),
}
impl Starship {
fn new(name: &str, position: (f64, f64, f64)) -> Self {
Self {
name: name.into(),
position,
}
}
fn distance_to(&self, dest: (f64, f64, f64)) -> f64 {
((dest.0 - self.position.0).powi(2)
+ (dest.1 - self.position.1).powi(2)
+ (dest.2 - self.position.2).powi(2))
.sqrt()
}
fn optimal_warp(&self, distance: f64) -> f64 {
(distance / 10.0).sqrt().min(9.0)
}
}

View File

@@ -0,0 +1,94 @@
#import "@preview/hei-synd-thesis:0.2.3": *
#import "@preview/wrap-it:0.1.1": *
#let iconbox(
width: 100%,
radius: 4pt,
border: 4pt,
inset: 10pt,
outset: -10pt,
linecolor: code-border,
icon: none,
iconheight: 1cm,
body
) = {
if body != none {
align(left,
rect(
stroke: (left:linecolor+border, rest:code-border+0.1pt),
radius: (left:0pt, right:radius),
fill: code-bg,
outset: (left:outset, right:outset),
inset: (left:inset*2, top:inset, right:inset*2, bottom:inset),
width: width)[
#if icon != none {
align(left,
table(
stroke:none,
align:left+horizon,
columns: (auto,auto),
image(icon, height:iconheight), [#body]
)
)
} else {
body
}
]
)
}
}
#let llm-proofread = iconbox(
icon:"/resources/img/logos/chatgpt.svg",
linecolor: hei-blue
)[
#text(size: small)[
Assistance for the reformulation and paraphrasing of this document was provided by Gemini 3.1.
Regardless of this assistance, all original code and text remain the work of the original author.
]]
#let ai-warning(txt) = grid(
columns: 2,
align: horizon,
column-gutter: 1em,
image("/resources/img/logos/chatgpt.svg", width: 2em),
[#txt]
)
#import "@preview/chronos:0.3.0"
#let actor(
name,
disp_name: none,
..args
) = {
let dn = name
if disp_name != none {
dn = align(center+horizon)[#disp_name]
}
let par = chronos._par(name, display-name: dn, ..args.named())
let actor = (
"display": par,
"name" : name
)
return actor
}
#let sync(actor1, actor2, comment, ..args) = {
return chronos._seq(
actor1.name, actor2.name,
comment: comment,
comment-align: "start",
..args.named()
)
}
#let async(actor1, actor2, comment, slant: auto, ..args) = {
return chronos._seq(
actor1.name, actor2.name,
comment: comment,
comment-align: "start",
end-tip: ">>",
slant: slant,
..args.named()
)
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 173 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 518 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 489 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 448 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 85 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 169 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 160 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 324 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 57 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 433 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd" viewBox="0 0 512 512"><rect fill="#10A37F" width="512" height="512" rx="104.187" ry="105.042"/><path fill="#fff" fill-rule="nonzero" d="M378.68 230.011a71.432 71.432 0 003.654-22.541 71.383 71.383 0 00-9.783-36.064c-12.871-22.404-36.747-36.236-62.587-36.236a72.31 72.31 0 00-15.145 1.604 71.362 71.362 0 00-53.37-23.991h-.453l-.17.001c-31.297 0-59.052 20.195-68.673 49.967a71.372 71.372 0 00-47.709 34.618 72.224 72.224 0 00-9.755 36.226 72.204 72.204 0 0018.628 48.395 71.395 71.395 0 00-3.655 22.541 71.388 71.388 0 009.783 36.064 72.187 72.187 0 0077.728 34.631 71.375 71.375 0 0053.374 23.992H271l.184-.001c31.314 0 59.06-20.196 68.681-49.995a71.384 71.384 0 0047.71-34.619 72.107 72.107 0 009.736-36.194 72.201 72.201 0 00-18.628-48.394l-.003-.004zM271.018 380.492h-.074a53.576 53.576 0 01-34.287-12.423 44.928 44.928 0 001.694-.96l57.032-32.943a9.278 9.278 0 004.688-8.06v-80.459l24.106 13.919a.859.859 0 01.469.661v66.586c-.033 29.604-24.022 53.619-53.628 53.679zm-115.329-49.257a53.563 53.563 0 01-7.196-26.798c0-3.069.268-6.146.79-9.17.424.254 1.164.706 1.695 1.011l57.032 32.943a9.289 9.289 0 009.37-.002l69.63-40.205v27.839l.001.048a.864.864 0 01-.345.691l-57.654 33.288a53.791 53.791 0 01-26.817 7.17 53.746 53.746 0 01-46.506-26.818v.003zm-15.004-124.506a53.5 53.5 0 0127.941-23.534c0 .491-.028 1.361-.028 1.965v65.887l-.001.054a9.27 9.27 0 004.681 8.053l69.63 40.199-24.105 13.919a.864.864 0 01-.813.074l-57.66-33.316a53.746 53.746 0 01-26.805-46.5 53.787 53.787 0 017.163-26.798l-.003-.003zm198.055 46.089l-69.63-40.204 24.106-13.914a.863.863 0 01.813-.074l57.659 33.288a53.71 53.71 0 0126.835 46.491c0 22.489-14.033 42.612-35.133 50.379v-67.857c.003-.025.003-.051.003-.076a9.265 9.265 0 00-4.653-8.033zm23.993-36.111a81.919 81.919 0 00-1.694-1.01l-57.032-32.944a9.31 9.31 0 00-4.684-1.266 9.31 9.31 0 00-4.684 1.266l-69.631 40.205v-27.839l-.001-.048c0-.272.129-.528.346-.691l57.654-33.26a53.696 53.696 0 0126.816-7.177c29.644 0 53.684 24.04 53.684 53.684a53.91 53.91 0 01-.774 9.077v.003zm-150.831 49.618l-24.111-13.919a.859.859 0 01-.469-.661v-66.587c.013-29.628 24.053-53.648 53.684-53.648a53.719 53.719 0 0134.349 12.426c-.434.237-1.191.655-1.694.96l-57.032 32.943a9.272 9.272 0 00-4.687 8.057v.053l-.04 80.376zm13.095-28.233l31.012-17.912 31.012 17.9v35.812l-31.012 17.901-31.012-17.901v-35.8z"/></svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -0,0 +1,280 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="svg2"
xml:space="preserve"
width="493.22668"
height="170.08"
viewBox="0 0 493.22668 170.08"
sodipodi:docname="FR-DE_HEI.eps"><metadata
id="metadata8"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs6" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="640"
inkscape:window-height="480"
id="namedview4" /><g
id="g10"
inkscape:groupmode="layer"
inkscape:label="ink_ext_XXXXXX"
transform="matrix(1.3333333,0,0,-1.3333333,0,170.08)"><g
id="g12"
transform="scale(0.1)"><path
d="M 3699.21,0 H 0 V 1275.59 H 3699.21 V 0"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path14" /><path
d="M 2044.39,1045.46 C 1889.41,717.031 1893.87,728.125 1889.43,717.035 c -8.53,-17.039 -17.33,-34.683 -39.54,-34.683 -18.32,0 -32.74,15.16 -32.74,34.461 0,10.433 2.22,15.003 9.54,30.14 4.92,10.586 0.32,0.699 148.84,316.957 10.17,21.05 19.95,41.18 42.52,41.18 18.97,0 33.25,-14.35 33.25,-33.32 0,-10.5 -3.31,-18.47 -6.91,-26.31 z m 24.11,26.31 c 0,28.26 -22.21,50.52 -50.45,50.52 -33.39,0 -47.16,-28.48 -57.21,-49.26 4.68,9.98 -0.74,-1.58 -149.31,-317.839 -8.06,-16.75 -11.55,-24.046 -11.55,-38.378 0,-28.954 21.91,-51.637 49.91,-51.637 32.76,0 45.61,25.527 54.97,44.203 l 155.04,328.781 c 4.37,9.36 8.6,19.59 8.6,33.61"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path16" /><path
d="m 2186.48,1045.48 c -154.9,-328.382 -149.26,-320.535 -154.97,-328.398 -8.46,-17.086 -17.26,-34.73 -39.52,-34.73 -18.39,0 -32.72,15.179 -32.72,34.461 0,10.433 2.2,15.003 9.54,30.14 4.85,10.711 0.31,0.699 148.87,316.957 10.18,21.03 19.94,41.18 42.49,41.18 18.95,0 33.36,-14.35 33.36,-33.32 0,-10.5 -3.3,-18.47 -7.05,-26.29 z m -26.31,76.81 c -33.4,0 -47.15,-28.5 -57.21,-49.29 4.77,9.78 -0.76,-1.55 -149.32,-317.809 -8.03,-16.769 -11.56,-24.046 -11.56,-38.378 0,-28.954 21.95,-51.637 49.91,-51.637 32.91,0 45.68,25.527 54.99,44.293 l 155.08,328.691 c 4.2,8.91 8.59,19.59 8.59,33.61 0,28.26 -22.17,50.52 -50.48,50.52"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path18" /><path
d="m 2303.31,925.441 c 2.79,-6.796 6.42,-12.371 15.79,-12.371 9.35,0 12.99,5.575 15.79,12.371 l 46.66,118.679 c 1.04,2.78 1.47,4.9 1.47,7.87 0,8.96 -7.82,15.37 -16.37,15.37 -7.24,0 -11.74,-4.68 -14.49,-10.45 l -33.06,-88.609 -32.98,88.609 c -2.83,5.77 -7.31,10.45 -14.56,10.45 -8.49,0 -16.37,-6.41 -16.37,-15.37 0,-2.97 0.45,-5.09 1.5,-7.87 l 46.62,-118.679"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path20" /><path
d="m 2432.5,1034.13 h 0.38 l 19.85,-61.755 h -40.5 z m -66.89,-107.423 c 0,-8.508 7.22,-14.883 15.75,-14.883 8.7,0 13.14,4.707 15.27,11.293 l 6.44,19.828 h 59.2 l 6.42,-20.039 c 2.15,-6.375 6.63,-11.082 15.56,-11.082 7.94,0 14.69,5.762 14.69,14.039 0,1.52 -0.4,4.477 -1.7,7.918 l -41.77,115.929 c -3.61,10.2 -11.49,17.65 -22.83,17.65 -10.82,0 -19.14,-7.9 -22.75,-17.65 l -42.86,-115.929 c -0.38,-1.054 -1.42,-3.59 -1.42,-7.074"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path22" /><path
d="m 2529.81,914.355 h 53.31 c 9.33,0 14.93,7.032 15.37,14.106 0.19,7.199 -4.52,15.328 -15.37,15.328 h -37.94 v 106.941 c 0,10.66 -6.82,16.63 -16.01,16.63 -9.09,0 -15.98,-5.97 -15.98,-16.63 V 931.84 c 0,-10.664 6.21,-17.485 16.62,-17.485"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path24" /><path
d="m 2672.38,1034.13 h 0.47 l 19.82,-61.755 h -40.53 z m -51.17,-122.306 c 8.74,0 13.25,4.707 15.38,11.293 l 6.4,19.828 h 59.16 l 6.48,-20.039 c 2.14,-6.375 6.61,-11.082 15.52,-11.082 7.89,0 14.74,5.762 14.74,14.039 0,1.52 -0.45,4.477 -1.72,7.918 l -41.75,115.929 c -3.65,10.2 -11.49,17.65 -22.83,17.65 -10.87,0 -19.13,-7.9 -22.78,-17.65 l -42.79,-115.929 c -0.45,-1.054 -1.52,-3.59 -1.52,-7.074 0,-8.508 7.22,-14.883 15.71,-14.883"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path26" /><path
d="m 2785.13,929.727 v 121.003 c 0,10.66 -6.82,16.63 -16.02,16.63 -9.11,0 -15.97,-5.97 -15.97,-16.63 V 929.727 c 0,-10.704 6.86,-16.637 15.97,-16.637 9.2,0 16.02,5.933 16.02,16.637"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path28" /><path
d="m 2855.41,941.273 c -13.83,0 -25.78,8.301 -35.74,8.301 -8.76,0 -14.26,-6.844 -14.26,-15.117 0,-20.016 35.31,-23.879 51.73,-23.879 29.4,0 54.58,18.981 54.58,49.445 0,54.957 -71.2,40.917 -71.2,62.857 0,8.95 8.3,13.85 17.49,13.85 12.77,0 19.55,-6.4 28.29,-6.4 8.78,0 14.33,7.47 14.33,15.73 0,16.85 -29.85,21.3 -41.71,21.3 -28.42,0 -52.89,-18.51 -52.89,-48.32 0,-49.431 71.11,-34.313 71.11,-59.438 0,-10.473 -7.64,-18.329 -21.73,-18.329"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path30" /><path
d="m 2427.76,860.273 c 0,6.821 -5.68,14.059 -15.12,14.059 -10.17,0 -15.05,-5.93 -16.99,-15.367 l -18.1,-90.512 h -0.46 l -27.7,93.32 c -2.35,7.684 -8.79,12.559 -16.58,12.559 -7.89,0 -14.35,-4.875 -16.65,-12.559 l -27.7,-93.32 h -0.43 l -18.13,90.512 c -1.86,9.437 -6.76,15.367 -17.01,15.367 -9.45,0 -15.15,-7.238 -15.15,-14.059 0,-3.019 0.19,-4.476 0.86,-7.265 l 27.05,-116.289 c 2.14,-8.992 9.21,-16.614 21.12,-16.614 10.41,0 18.5,6.797 21.09,15.559 l 24.68,82.172 h 0.46 l 24.71,-82.172 c 2.59,-8.762 10.68,-15.559 21.07,-15.559 11.97,0 19.02,7.622 21.17,16.614 l 26.98,116.289 c 0.66,2.789 0.83,4.246 0.83,7.265"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path32" /><path
d="m 2468.65,780.594 20.37,61.797 h 0.32 l 19.85,-61.797 z m 43.34,77.293 c -3.66,10.301 -11.56,17.734 -22.76,17.734 -10.97,0 -19.25,-7.875 -22.86,-17.734 L 2423.56,742.02 c -0.38,-1.079 -1.48,-3.653 -1.48,-7.032 0,-8.527 7.2,-14.883 15.69,-14.883 8.69,0 13.22,4.645 15.37,11.231 l 6.44,19.805 h 59.17 l 6.44,-19.973 c 2.14,-6.418 6.61,-11.063 15.53,-11.063 7.91,0 14.73,5.743 14.73,14.059 0,1.481 -0.45,4.414 -1.69,7.856 l -41.77,115.867"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path34" /><path
d="m 2639.63,749.559 h -37.94 v 106.933 c 0,10.684 -6.87,16.617 -16.04,16.617 -9.11,0 -15.95,-5.933 -15.95,-16.617 V 737.605 c 0,-10.64 6.23,-17.5 16.66,-17.5 h 53.27 c 9.31,0 14.9,7.051 15.27,14.04 0.29,7.285 -4.42,15.414 -15.27,15.414"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path36" /><path
d="m 2734.63,749.559 h -37.93 v 106.933 c 0,10.684 -6.83,16.617 -16.01,16.617 -9.12,0 -15.93,-5.933 -15.93,-16.617 V 737.605 c 0,-10.64 6.2,-17.5 16.63,-17.5 h 53.24 c 9.36,0 14.89,7.051 15.31,14.04 0.25,7.285 -4.52,15.414 -15.31,15.414"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path38" /><path
d="m 2775.76,874.355 c -9.16,0 -16,-5.933 -16,-16.617 V 736.719 c 0,-10.641 6.84,-16.614 16,-16.614 9.16,0 15.98,5.973 15.98,16.614 v 121.019 c 0,10.684 -6.82,16.617 -15.98,16.617"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path40" /><path
d="m 2840.51,832.402 c 0,8.973 8.3,13.852 17.46,13.852 12.82,0 19.64,-6.379 28.34,-6.379 8.78,0 14.31,7.434 14.31,15.73 0,16.848 -29.83,21.325 -41.8,21.325 -28.31,0 -52.78,-18.535 -52.78,-48.328 0,-49.465 71.1,-34.309 71.1,-59.497 0,-10.406 -7.64,-18.324 -21.68,-18.324 -13.91,0 -25.78,8.321 -35.8,8.321 -8.75,0 -14.29,-6.801 -14.29,-15.122 0,-20.011 35.36,-23.875 51.78,-23.875 29.43,0 54.57,18.981 54.57,49.446 0,54.976 -71.21,40.918 -71.21,62.851"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path42" /><path
d="m 1400.9,874.09 -18.35,5.316 c -31.8,9.102 -52.75,15.407 -52.75,36.063 0,14.98 12.86,25.086 28.15,28.953 7.67,1.937 14.87,2.375 22.02,2.375 33.21,0 53.17,-11.527 65.95,-19.246 l 4.54,1.941 c 1.62,18.301 2.15,20.192 4.16,38.031 l -2.54,3.383 c -9.25,3.375 -35.79,13.453 -73.63,13.453 -57.27,0 -103.27,-24.57 -103.27,-74.171 0,-49.614 46,-63.575 66.98,-69.809 l 16.35,-5.281 c 31.18,-9.676 53.14,-16.871 53.14,-39.012 0,-14.918 -14.77,-36.133 -55.22,-36.133 -39.35,0 -61.87,16.379 -71.09,23.113 l -5.06,-1.484 c -1.03,-19.215 -1.03,-21.629 -3.08,-40.406 l 2.5,-4.371 c 2.58,-0.918 5.17,-1.918 7.73,-2.852 19.41,-7.254 42.37,-12.062 70.03,-12.062 18.43,0 54.71,1.425 81.82,23.101 20.97,15.918 28.64,37.571 28.64,56.848 0,51.082 -46.52,65.988 -67.02,72.25"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path44" /><path
d="m 1696.44,790.746 c -14.82,-26.449 -39.34,-32.25 -58.22,-32.25 -10.3,0 -21.05,1.93 -30.17,6.281 -40.45,19.239 -40.96,67.887 -40.96,87.157 0,20.257 1.54,48.171 15.36,67.902 17.86,26.937 46.56,27.934 56.21,27.934 28.67,0 45.04,-12.5 54.78,-27.43 12.74,-21.223 14.83,-53.5 14.83,-65.52 0.52,-10.136 0,-42.422 -11.83,-64.074 z m -55.2,193.613 c -51.12,0 -80.74,-19.714 -95.12,-33.671 -34.22,-32.247 -35.25,-79.454 -35.25,-97.766 0,-15.926 0.49,-65.016 35.25,-98.25 16.37,-15.961 45.55,-32.324 91.54,-32.324 35.81,0 65.99,8.215 88.43,29.406 16.97,15.894 27.66,34.652 33.25,58.289 3.62,14.426 4.66,30.359 4.66,46.711 -1.04,33.687 -7.66,67.437 -31.19,92.93 -22.54,24.105 -56.78,34.675 -91.57,34.675"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path46" /><path
d="m 1186.39,883.23 c -16.86,0 -30.42,-13.636 -30.42,-30.429 0,-16.805 13.56,-30.414 30.42,-30.414 16.81,0 30.42,13.609 30.42,30.414 0,16.793 -13.61,30.429 -30.42,30.429"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path48" /><path
d="m 516.242,1064.44 -2.531,2.92 c -40.91,-1.44 -47.559,-1.44 -90.496,-1.44 l -2.578,-2.88 c 3.605,-54.45 3.605,-68.388 4.101,-125.224 -22.496,-0.503 -45,-0.984 -68.019,-0.984 -17.903,0 -36.274,0.481 -54.164,0.481 l 1.008,127.127 -2.579,2.92 c -39.351,-1.44 -47.031,-1.44 -91.515,-1.44 l -3.067,-2.88 c 2.575,-49.63 5.676,-108.86 5.676,-228.31 0,-43.347 -1.086,-66.929 -2.07,-107.382 l 2.539,-2.922 c 37.316,1.457 46.531,1.98 91.527,1.457 l 2.555,2.871 c -3.066,59.719 -3.551,77.105 -4.074,146.891 22.48,0.972 41.39,1.472 61.398,1.472 20.375,0 40.82,-0.5 61.309,-1 1.031,-64.996 1.031,-80.859 -1.543,-148.769 l 2.574,-2.922 c 38.355,1.457 48.566,1.98 92.031,1.457 l 2.508,2.871 c -4.074,80.957 -5.574,161.363 -5.574,242.305 0,33.711 0.515,56.371 0.984,93.381"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path50" /><path
d="m 657.781,883.359 c 1.559,14.938 5.129,35.172 24.586,46.746 6.137,3.836 13.305,5.278 20.446,5.278 16.859,0 27.05,-8.141 32.726,-16.852 7.164,-10.586 7.625,-22.129 7.625,-33.242 z m 85.383,99.258 c -12.719,3.332 -24.496,4.328 -36.266,4.328 -80.261,0 -133.468,-49.632 -133.468,-132.953 0,-22.656 4.121,-46.222 12.25,-63.09 29.691,-65.031 99.199,-70.82 136.078,-70.82 42.351,0 60.836,7.289 87.887,17.344 l 3.113,3.894 3.57,54.391 -3.57,1.461 c -19.445,-9.656 -42.524,-20.711 -79.817,-20.711 -30.668,0 -51.613,9.164 -63.918,26.539 -7.66,10.055 -9.179,19.648 -11.242,29.293 l 165.188,2.934 3.078,3.316 c -0.504,23.645 -1.02,47.734 -8.219,71.801 -17.855,56.855 -57.23,68.359 -74.664,72.273"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path52" /><path
d="m 1028.53,883.359 -25.06,8.688 c -17.384,5.773 -31.247,11.094 -31.247,24.543 0,5.793 4.062,21.687 35.847,21.687 31.2,0 51.14,-12.547 63.92,-20.269 l 4.59,1.504 5.1,52.476 -2.56,2.887 c -24.02,6.242 -44.97,12.094 -78.19,12.094 -25.043,0 -75.192,-1.977 -101.774,-38.09 -6.66,-8.672 -13.804,-23.149 -13.804,-42.391 0,-51.566 42.445,-66.961 66.472,-75.59 l 19.391,-6.734 c 13.828,-4.363 36.345,-11.609 36.345,-28.906 0,-12.07 -11.79,-25.047 -40.384,-25.047 -14.321,0 -35.317,4.328 -54.168,13.437 -8.699,4.321 -12.84,7.758 -20.512,13.524 l -4.625,-1.914 c -1.008,-25.047 -1.488,-30.371 -3.523,-54.465 l 2.515,-4.305 c 25.071,-8.687 46.543,-16.383 83.86,-16.383 38.897,0 115.587,6.739 124.747,75.606 0.54,3.887 0.54,7.266 0.54,10.609 0,52.942 -39.33,66.93 -67.48,77.039"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path54" /><path
d="M 750.012,514.852 V 405.051 h -20.91 v 45.719 h -51.844 v -45.719 h -20.91 v 109.801 h 20.91 v -43.68 h 51.844 v 43.68 h 20.91"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path56" /><path
d="m 809.516,434.285 h -13.598 c -6.121,0 -10.027,-3.055 -10.027,-8.328 0,-5.098 3.566,-7.82 9.175,-7.82 8.329,0 14.45,5.781 14.45,16.148 z m 30.765,-25.84 c -2.886,-2.547 -8.156,-4.754 -14.617,-4.754 -7.141,0 -12.242,2.547 -14.109,8.661 -4.59,-5.946 -11.559,-9.168 -22.098,-9.168 -14.789,0 -23.457,8.32 -23.457,21.242 0,12.754 9.52,22.781 29.406,22.781 h 13.942 v 4.414 c 0,9.356 -4.59,13.098 -11.567,13.098 -6.797,0 -10.535,-3.235 -12.062,-9.016 l -17.34,5.098 c 3.398,12.414 13.086,21.086 30.937,21.086 17.508,0 29.747,-8.672 29.747,-30.774 v -27.539 c 0,-2.043 1.191,-3.222 3.062,-3.222 1.02,0 1.867,0.332 2.719,1.179 l 5.437,-13.086"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path58" /><path
d="m 920.691,479.16 v -74.109 h -19.89 v 7.137 c -5.098,-6.125 -12.578,-9.688 -22.61,-9.688 -20.054,0 -28.382,13.43 -28.382,32.977 v 43.683 h 20.394 v -42.156 c 0,-10.031 4.594,-16.652 14.793,-16.652 9.18,0 15.297,6.621 15.297,17.5 v 41.308 h 20.398"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path60" /><path
d="m 996,417.117 c -3.738,-7.644 -10.707,-14.109 -24.477,-14.109 -15.64,0 -24.984,8.332 -24.984,24.14 l 0.164,35.188 H 932.09 v 4.41 l 30.082,28.227 h 4.422 V 479.16 h 25.16 l -0.172,-16.824 h -24.477 v -33.664 c 0,-4.59 2.208,-7.988 7.309,-7.988 4.078,0 6.117,1.535 7.988,5.109 L 996,417.117"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path62" /><path
d="m 1020.99,451.113 h 33.15 c -1.53,9.348 -6.8,14.785 -15.81,14.785 -8.5,0 -14.96,-4.921 -17.34,-14.785 z m 52.7,-13.933 h -53.21 c 1.53,-10.879 7.99,-17.512 18.53,-17.512 8.5,0 13.43,3.23 16.83,9.863 l 16.15,-6.972 c -5.78,-12.754 -17.85,-19.551 -33.49,-19.551 -21.25,0 -38.08,12.754 -38.08,39.265 0,21.926 15.13,39.614 38.25,39.614 22.27,0 35.53,-15.469 35.53,-38.078 0,-2.383 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path64" /><path
d="m 1191.84,423.23 v -18.179 h -64.43 v 109.801 h 62.73 v -18.18 h -41.82 v -26.184 h 37.73 v -18.347 h -37.73 V 423.23 h 43.52"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path66" /><path
d="m 1202.04,442.617 c 0,24.473 18.02,39.27 39.27,39.27 13.93,0 24.98,-5.11 31.79,-18.02 l -14.79,-9.863 c -3.74,6.797 -9.18,10.195 -17,10.195 -10.88,0 -19.55,-7.988 -19.55,-21.582 0,-14.109 8.67,-21.933 19.55,-21.933 9.01,0 13.93,3.398 17.5,10.371 l 14.62,-9.524 c -6.79,-13.426 -19.37,-18.347 -33.31,-18.347 -21.42,0 -38.08,13.425 -38.08,39.433"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path68" /><path
d="m 1340.93,442.441 c 0,12.579 -8.16,22.102 -20.23,22.102 -12.24,0 -20.23,-9.691 -20.23,-22.27 0,-12.234 7.99,-21.757 20.23,-21.757 12.07,0 20.23,9.867 20.23,21.925 z m -60.18,0 c 0,21.59 16.15,39.446 39.95,39.446 24.99,0 39.94,-17.004 39.94,-39.446 0,-21.582 -16.31,-39.433 -39.94,-39.433 -25.33,0 -39.95,17.004 -39.95,39.433"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path70" /><path
d="m 1375.78,520.469 h 20.57 V 405.051 h -20.57 v 115.418"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path72" /><path
d="m 1432.22,451.113 h 33.15 c -1.54,9.348 -6.81,14.785 -15.81,14.785 -8.5,0 -14.96,-4.921 -17.34,-14.785 z m 52.69,-13.933 h -53.2 c 1.53,-10.879 7.99,-17.512 18.52,-17.512 8.51,0 13.44,3.23 16.84,9.863 l 16.14,-6.972 c -5.78,-12.754 -17.84,-19.551 -33.48,-19.551 -21.25,0 -38.08,12.754 -38.08,39.265 0,21.926 15.13,39.614 38.25,39.614 22.26,0 35.52,-15.469 35.52,-38.078 0,-2.383 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path74" /><path
d="m 1590.31,442.617 c 0,12.403 -7.99,21.582 -19.89,21.582 -12.24,0 -20.4,-9.179 -20.4,-21.582 0,-12.922 7.99,-21.933 20.4,-21.933 11.73,0 19.89,9.011 19.89,21.933 z m 19.72,77.852 V 405.051 h -19.55 v 9.859 c -5.61,-7.82 -14.28,-11.902 -24.99,-11.902 -20.56,0 -35.35,15.644 -35.18,39.609 0,23.281 15.3,39.27 35.35,39.27 10.2,0 18.36,-3.235 23.8,-10.032 v 48.614 h 20.57"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path76" /><path
d="m 1629.76,521.66 h 22.43 l -13.08,-38.074 -14.79,1.863 5.44,36.211"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path78" /><path
d="m 1668.17,514.852 h 20.91 V 405.051 h -20.91 v 109.801"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path80" /><path
d="m 1783.77,449.07 v -44.019 h -20.4 v 41.648 c 0,10.535 -5.27,17.5 -15.64,17.5 -10.2,0 -15.98,-7.644 -15.98,-17.676 v -41.472 h -20.56 v 74.109 h 19.03 v -8.332 c 5.1,6.977 12.92,11.059 24.31,11.059 19.55,0 29.24,-13.266 29.24,-32.817"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path82" /><path
d="m 1829.34,438.367 c 7.13,0 11.89,5.606 11.89,12.578 0,6.965 -4.59,12.239 -11.89,12.239 -7.83,0 -12.25,-5.274 -12.25,-12.239 0,-7.312 4.59,-12.578 12.25,-12.578 z m 40.28,24.981 h -13.43 c 2.55,-4.071 4.08,-8.66 4.08,-13.426 0,-8.156 -3.91,-14.961 -11.9,-21.25 l -8.84,-7.473 c -1.53,-1.187 -2.89,-2.215 -4.59,-2.89 h 9.18 c 16.32,0 24.82,-7.989 24.82,-21.414 0,-15.469 -13.94,-26.18 -37.74,-26.18 -18.02,0 -29.74,5.094 -35.86,16.656 l 14.27,10.883 c 4.09,-7.484 10.03,-11.223 21.43,-11.223 12.74,0 19.03,2.891 19.03,8.836 0,4.594 -3.06,6.633 -7.99,6.633 h -27.88 v 12.41 l 10.55,9.008 c -16.32,1.531 -26.86,11.387 -26.86,27.027 0,16.321 12.92,28.215 31.45,28.215 h 40.45 l -0.17,-15.812"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path84" /><path
d="m 1917.06,487.656 -15.14,3.739 12.75,29.921 h 25.5 z m -19.56,-36.543 h 33.15 c -1.53,9.348 -6.8,14.785 -15.81,14.785 -8.49,0 -14.95,-4.921 -17.34,-14.785 z m 52.7,-13.933 H 1897 c 1.53,-10.879 7.99,-17.512 18.52,-17.512 8.5,0 13.44,3.23 16.83,9.863 l 16.15,-6.972 c -5.78,-12.754 -17.85,-19.551 -33.49,-19.551 -21.25,0 -38.07,12.754 -38.07,39.265 0,21.926 15.13,39.614 38.25,39.614 22.26,0 35.52,-15.469 35.52,-38.078 0,-2.383 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path86" /><path
d="m 2038.43,449.07 v -44.019 h -20.4 v 41.648 c 0,10.535 -5.27,17.5 -15.64,17.5 -10.19,0 -15.97,-7.644 -15.97,-17.676 v -41.472 h -20.57 v 74.109 h 19.04 v -8.332 c 5.1,6.977 12.91,11.059 24.3,11.059 19.55,0 29.24,-13.266 29.24,-32.817"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path88" /><path
d="m 2057.65,479.16 h 20.56 v -74.109 h -20.56 z m -3.24,25.664 c 0,7.481 5.96,13.438 13.6,13.438 7.48,0 13.6,-5.957 13.6,-13.438 0,-7.644 -6.12,-13.761 -13.6,-13.761 -7.64,0 -13.6,6.117 -13.6,13.761"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path90" /><path
d="m 2114.08,451.113 h 33.15 c -1.53,9.348 -6.8,14.785 -15.81,14.785 -8.5,0 -14.96,-4.921 -17.34,-14.785 z m 52.7,-13.933 h -53.21 c 1.53,-10.879 7.99,-17.512 18.53,-17.512 8.5,0 13.43,3.23 16.83,9.863 l 16.15,-6.972 c -5.78,-12.754 -17.85,-19.551 -33.49,-19.551 -21.25,0 -38.07,12.754 -38.07,39.265 0,21.926 15.12,39.614 38.24,39.614 22.27,0 35.53,-15.469 35.53,-38.078 0,-2.383 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path92" /><path
d="m 2225.94,481.035 v -20.234 c -13.09,0 -22.95,-7.988 -22.95,-22.434 v -33.316 h -20.56 v 74.109 h 20.05 v -11.222 c 4.76,7.992 12.24,13.097 23.46,13.097"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path94" /><path
d="m 2238.7,479.16 h 20.56 v -74.109 h -20.56 z m -3.24,25.664 c 0,7.481 5.96,13.438 13.6,13.438 7.48,0 13.6,-5.957 13.6,-13.438 0,-7.644 -6.12,-13.761 -13.6,-13.761 -7.64,0 -13.6,6.117 -13.6,13.761"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path96" /><path
d="m 2295.13,451.113 h 33.15 c -1.53,9.348 -6.8,14.785 -15.81,14.785 -8.5,0 -14.96,-4.921 -17.34,-14.785 z m 52.7,-13.933 h -53.21 c 1.53,-10.879 7.99,-17.512 18.53,-17.512 8.5,0 13.43,3.23 16.83,9.863 l 16.15,-6.972 c -5.78,-12.754 -17.85,-19.551 -33.49,-19.551 -21.25,0 -38.07,12.754 -38.07,39.265 0,21.926 15.12,39.614 38.24,39.614 22.27,0 35.53,-15.469 35.53,-38.078 0,-2.383 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path98" /><path
d="M 750.012,314.852 V 205.051 h -20.91 v 45.719 h -51.844 v -45.719 h -20.91 v 109.801 h 20.91 v -43.68 h 51.844 v 43.68 h 20.91"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path100" /><path
d="m 826.172,242.441 c 0,12.579 -8.16,22.098 -20.231,22.098 -12.234,0 -20.226,-9.687 -20.226,-22.258 0,-12.242 7.992,-21.761 20.226,-21.761 12.071,0 20.231,9.859 20.231,21.921 z m -60.176,0 c 0,21.59 16.149,39.446 39.945,39.446 24.993,0 39.95,-17.008 39.95,-39.446 0,-21.582 -16.321,-39.429 -39.95,-39.429 -25.328,0 -39.945,17 -39.945,39.429"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path102" /><path
d="m 856.098,242.621 c 0,24.469 18.019,39.266 39.269,39.266 13.934,0 24.985,-5.11 31.785,-18.016 L 912.363,254 c -3.742,6.801 -9.179,10.199 -16.996,10.199 -10.879,0 -19.551,-7.988 -19.551,-21.578 0,-14.109 8.672,-21.941 19.551,-21.941 9.008,0 13.934,3.398 17.504,10.371 l 14.617,-9.52 c -6.797,-13.422 -19.375,-18.351 -33.312,-18.351 -21.418,0 -38.078,13.429 -38.078,39.441"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path104" /><path
d="m 1012.83,248.73 v -43.679 h -20.404 v 41.82 c 0,10.02 -5.438,17.328 -15.641,17.328 -10.027,0 -15.805,-7.648 -15.805,-17.5 v -41.648 h -20.566 v 115.418 h 20.566 v -40.457 l -0.339,-7.821 c 4.929,6.118 12.41,9.696 22.949,9.696 19.54,0 29.24,-13.606 29.24,-33.157"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path106" /><path
d="m 1025.92,223.23 15.98,5.961 c 2.55,-7.66 6.97,-10.371 14.79,-10.371 6.97,0 10.88,2.551 10.88,7.301 0,4.59 -2.72,6.629 -15.13,9.18 -16.15,3.398 -23.46,10.539 -23.46,23.129 0,14.441 11.56,23.457 27.37,23.457 14.62,0 23.46,-5.278 27.03,-17.688 l -16.15,-5.949 c -2.04,5.102 -4.76,7.988 -11.05,7.988 -5.44,0 -8.67,-2.707 -8.67,-6.449 0,-4.25 2.72,-6.289 15.3,-8.84 17,-3.578 23.29,-10.719 23.29,-24.14 -0.17,-14.457 -11.73,-23.797 -29.92,-23.797 -16.66,0 -26.69,6.289 -30.26,20.218"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path108" /><path
d="m 1096.3,242.621 c 0,24.469 18.02,39.266 39.27,39.266 13.93,0 24.98,-5.11 31.78,-18.016 L 1152.56,254 c -3.74,6.801 -9.18,10.199 -16.99,10.199 -10.88,0 -19.55,-7.988 -19.55,-21.578 0,-14.109 8.67,-21.941 19.55,-21.941 9.01,0 13.93,3.398 17.5,10.371 l 14.62,-9.52 c -6.8,-13.422 -19.37,-18.351 -33.32,-18.351 -21.41,0 -38.07,13.429 -38.07,39.441"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path110" /><path
d="m 1253.03,248.73 v -43.679 h -20.4 v 41.82 c 0,10.02 -5.44,17.328 -15.64,17.328 -10.03,0 -15.8,-7.648 -15.8,-17.5 v -41.648 h -20.57 v 115.418 h 20.57 v -40.457 l -0.35,-7.821 c 4.94,6.118 12.42,9.696 22.95,9.696 19.55,0 29.24,-13.606 29.24,-33.157"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path112" /><path
d="m 1342.11,279.16 v -74.109 h -19.89 v 7.14 c -5.1,-6.132 -12.58,-9.691 -22.61,-9.691 -20.05,0 -28.38,13.43 -28.38,32.98 v 43.68 h 20.4 V 237 c 0,-10.031 4.59,-16.648 14.79,-16.648 9.18,0 15.29,6.617 15.29,17.5 v 41.308 h 20.4"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path114" /><path
d="m 1362.52,320.469 h 20.57 V 205.051 h -20.57 v 115.418"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path116" /><path
d="m 1418.95,251.109 h 33.15 c -1.53,9.352 -6.8,14.789 -15.81,14.789 -8.49,0 -14.95,-4.918 -17.34,-14.789 z m 52.7,-13.929 h -53.2 c 1.53,-10.879 7.99,-17.508 18.52,-17.508 8.5,0 13.44,3.226 16.83,9.859 l 16.15,-6.972 c -5.78,-12.758 -17.85,-19.547 -33.49,-19.547 -21.25,0 -38.07,12.75 -38.07,39.269 0,21.918 15.13,39.606 38.25,39.606 22.26,0 35.52,-15.465 35.52,-38.078 0,-2.379 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path118" /><path
d="m 1548.49,279.16 h 19.38 v -16.832 h -19.38 v -57.277 h -20.57 v 57.277 h -11.56 v 16.832 h 11.56 v 13.938 c 0,18.015 11.22,28.726 28.22,28.726 10.36,0 18.19,-3.738 23.28,-11.558 l -13.25,-11.555 c -1.7,3.23 -4.42,4.93 -8.33,4.93 -5.95,0 -9.35,-3.914 -9.35,-11.395 V 279.16"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path120" /><path
d="m 1620.22,304.656 c 0,7.141 5.79,12.922 12.92,12.922 6.97,0 12.75,-5.781 12.75,-12.922 0,-6.972 -5.78,-12.742 -12.75,-12.742 -7.13,0 -12.92,5.77 -12.92,12.742 z m -36.2,0 c 0.17,7.141 5.95,12.922 12.92,12.922 7.14,0 12.91,-5.781 12.91,-12.922 0,-6.972 -5.77,-12.742 -12.91,-12.742 -6.97,0 -12.75,5.77 -12.92,12.742 z m 65.61,-25.496 v -74.109 h -19.89 v 7.14 c -5.1,-6.132 -12.58,-9.691 -22.61,-9.691 -20.05,0 -28.38,13.43 -28.38,32.98 v 43.68 h 20.4 V 237 c 0,-10.031 4.59,-16.648 14.79,-16.648 9.18,0 15.29,6.617 15.29,17.5 v 41.308 h 20.4"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path122" /><path
d="m 1713.56,281.035 v -20.234 c -13.09,0 -22.95,-7.992 -22.95,-22.43 v -33.32 h -20.57 v 74.109 h 20.06 v -11.219 c 4.76,7.989 12.24,13.094 23.46,13.094"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path124" /><path
d="m 1761.16,314.852 h 20.91 V 205.051 h -20.91 v 109.801"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path126" /><path
d="m 1876.75,249.07 v -44.019 h -20.4 v 41.648 c 0,10.539 -5.27,17.5 -15.64,17.5 -10.19,0 -15.97,-7.648 -15.97,-17.679 v -41.469 h -20.57 v 74.109 h 19.04 v -8.332 c 5.1,6.977 12.91,11.059 24.3,11.059 19.55,0 29.24,-13.266 29.24,-32.817"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path128" /><path
d="m 1922.31,238.371 c 7.15,0 11.9,5.598 11.9,12.578 0,6.961 -4.59,12.231 -11.9,12.231 -7.81,0 -12.23,-5.27 -12.23,-12.231 0,-7.32 4.59,-12.578 12.23,-12.578 z m 40.29,24.981 h -13.43 c 2.55,-4.071 4.08,-8.661 4.08,-13.43 0,-8.152 -3.9,-14.961 -11.89,-21.25 l -8.85,-7.473 c -1.52,-1.187 -2.89,-2.219 -4.59,-2.89 h 9.18 c 16.32,0 24.82,-7.989 24.82,-21.418 0,-15.461 -13.94,-26.18 -37.74,-26.18 -18.01,0 -29.74,5.098 -35.86,16.66 l 14.28,10.879 c 4.08,-7.48 10.03,-11.219 21.42,-11.219 12.75,0 19.04,2.891 19.04,8.84 0,4.59 -3.06,6.629 -8,6.629 h -27.87 v 12.41 l 10.54,9.012 c -16.32,1.527 -26.86,11.379 -26.86,27.027 0,16.321 12.92,28.211 31.44,28.211 h 40.46 l -0.17,-15.808"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path130" /><path
d="m 1990.49,251.109 h 33.15 c -1.54,9.352 -6.8,14.789 -15.81,14.789 -8.5,0 -14.96,-4.918 -17.34,-14.789 z m 52.69,-13.929 h -53.2 c 1.53,-10.879 7.99,-17.508 18.53,-17.508 8.5,0 13.43,3.226 16.83,9.859 l 16.14,-6.972 c -5.78,-12.758 -17.84,-19.547 -33.48,-19.547 -21.25,0 -38.08,12.75 -38.08,39.269 0,21.918 15.13,39.606 38.25,39.606 22.26,0 35.53,-15.465 35.53,-38.078 0,-2.379 0,-4.59 -0.52,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path132" /><path
d="m 2131.41,249.07 v -44.019 h -20.4 v 41.648 c 0,10.539 -5.27,17.5 -15.64,17.5 -10.19,0 -15.98,-7.648 -15.98,-17.679 v -41.469 h -20.56 v 74.109 h 19.04 v -8.332 c 5.09,6.977 12.91,11.059 24.3,11.059 19.55,0 29.24,-13.266 29.24,-32.817"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path134" /><path
d="m 2150.63,279.16 h 20.57 v -74.109 h -20.57 z m -3.23,25.664 c 0,7.481 5.95,13.438 13.6,13.438 7.48,0 13.59,-5.957 13.59,-13.438 0,-7.644 -6.11,-13.761 -13.59,-13.761 -7.65,0 -13.6,6.117 -13.6,13.761"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path136" /><path
d="m 2207.07,251.109 h 33.14 c -1.53,9.352 -6.8,14.789 -15.81,14.789 -8.49,0 -14.95,-4.918 -17.33,-14.789 z m 52.69,-13.929 h -53.2 c 1.53,-10.879 7.99,-17.508 18.52,-17.508 8.5,0 13.44,3.226 16.83,9.859 l 16.15,-6.972 c -5.78,-12.758 -17.85,-19.547 -33.48,-19.547 -21.25,0 -38.08,12.75 -38.08,39.269 0,21.918 15.13,39.606 38.25,39.606 22.26,0 35.52,-15.465 35.52,-38.078 0,-2.379 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path138" /><path
d="m 2345.27,279.16 v -74.109 h -19.89 v 7.14 c -5.1,-6.132 -12.58,-9.691 -22.61,-9.691 -20.06,0 -28.38,13.43 -28.38,32.98 v 43.68 h 20.4 V 237 c 0,-10.031 4.59,-16.648 14.79,-16.648 9.17,0 15.29,6.617 15.29,17.5 v 41.308 h 20.4"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path140" /><path
d="m 2409.19,281.035 v -20.234 c -13.09,0 -22.94,-7.992 -22.94,-22.43 v -33.32 h -20.57 v 74.109 h 20.05 v -11.219 c 4.76,7.989 12.24,13.094 23.46,13.094"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path142" /><path
d="m 2530.22,279.16 -31.27,-76.148 h -8.84 l -18.53,40.957 -19.38,-40.957 h -9.01 l -31.11,76.148 h 21.93 l 15.81,-44.019 20.4,45.043 h 3.23 l 19.89,-45.043 16.32,44.019 h 20.56"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path144" /><path
d="m 2540.44,279.16 h 20.57 v -74.109 h -20.57 z m -3.23,25.664 c 0,7.481 5.95,13.438 13.6,13.438 7.48,0 13.59,-5.957 13.59,-13.438 0,-7.644 -6.11,-13.761 -13.59,-13.761 -7.65,0 -13.6,6.117 -13.6,13.761"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path146" /><path
d="m 2575.11,223.23 15.98,5.961 c 2.55,-7.66 6.97,-10.371 14.79,-10.371 6.97,0 10.88,2.551 10.88,7.301 0,4.59 -2.72,6.629 -15.13,9.18 -16.15,3.398 -23.46,10.539 -23.46,23.129 0,14.441 11.56,23.457 27.37,23.457 14.62,0 23.46,-5.278 27.03,-17.688 l -16.15,-5.949 c -2.04,5.102 -4.76,7.988 -11.05,7.988 -5.44,0 -8.67,-2.707 -8.67,-6.449 0,-4.25 2.72,-6.289 15.3,-8.84 17,-3.578 23.29,-10.719 23.29,-24.14 -0.17,-14.457 -11.73,-23.797 -29.92,-23.797 -16.66,0 -26.69,6.289 -30.26,20.218"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path148" /><path
d="m 2644.3,223.23 15.98,5.961 c 2.55,-7.66 6.97,-10.371 14.79,-10.371 6.97,0 10.88,2.551 10.88,7.301 0,4.59 -2.72,6.629 -15.13,9.18 -16.15,3.398 -23.46,10.539 -23.46,23.129 0,14.441 11.56,23.457 27.37,23.457 14.62,0 23.46,-5.278 27.03,-17.688 l -16.15,-5.949 c -2.04,5.102 -4.76,7.988 -11.05,7.988 -5.44,0 -8.67,-2.707 -8.67,-6.449 0,-4.25 2.72,-6.289 15.3,-8.84 17,-3.578 23.29,-10.719 23.29,-24.14 -0.17,-14.457 -11.73,-23.797 -29.92,-23.797 -16.66,0 -26.69,6.289 -30.26,20.218"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path150" /><path
d="m 2735.25,251.109 h 33.15 c -1.53,9.352 -6.8,14.789 -15.81,14.789 -8.5,0 -14.96,-4.918 -17.34,-14.789 z m 52.69,-13.929 h -53.2 c 1.53,-10.879 7.99,-17.508 18.53,-17.508 8.5,0 13.43,3.226 16.83,9.859 l 16.15,-6.972 c -5.79,-12.758 -17.85,-19.547 -33.49,-19.547 -21.25,0 -38.08,12.75 -38.08,39.269 0,21.918 15.13,39.606 38.25,39.606 22.27,0 35.53,-15.465 35.53,-38.078 0,-2.379 0,-4.59 -0.52,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path152" /><path
d="m 2876.17,249.07 v -44.019 h -20.39 v 41.648 c 0,10.539 -5.27,17.5 -15.64,17.5 -10.2,0 -15.98,-7.648 -15.98,-17.679 v -41.469 h -20.57 v 74.109 h 19.04 v -8.332 c 5.1,6.977 12.92,11.059 24.31,11.059 19.54,0 29.23,-13.266 29.23,-32.817"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path154" /><path
d="m 2889.27,223.23 15.98,5.961 c 2.55,-7.66 6.97,-10.371 14.78,-10.371 6.98,0 10.88,2.551 10.88,7.301 0,4.59 -2.72,6.629 -15.12,9.18 -16.15,3.398 -23.46,10.539 -23.46,23.129 0,14.441 11.56,23.457 27.37,23.457 14.62,0 23.45,-5.278 27.02,-17.688 l -16.14,-5.949 c -2.04,5.102 -4.76,7.988 -11.05,7.988 -5.44,0 -8.67,-2.707 -8.67,-6.449 0,-4.25 2.71,-6.289 15.3,-8.84 16.99,-3.578 23.28,-10.719 23.28,-24.14 -0.17,-14.457 -11.73,-23.797 -29.91,-23.797 -16.66,0 -26.69,6.289 -30.26,20.218"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path156" /><path
d="m 2959.65,242.621 c 0,24.469 18.02,39.266 39.27,39.266 13.93,0 24.99,-5.11 31.78,-18.016 L 3015.91,254 c -3.73,6.801 -9.17,10.199 -16.99,10.199 -10.88,0 -19.55,-7.988 -19.55,-21.578 0,-14.109 8.67,-21.941 19.55,-21.941 9,0 13.93,3.398 17.51,10.371 l 14.61,-9.52 c -6.8,-13.422 -19.38,-18.351 -33.32,-18.351 -21.41,0 -38.07,13.429 -38.07,39.441"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path158" /><path
d="m 3116.38,248.73 v -43.679 h -20.4 v 41.82 c 0,10.02 -5.44,17.328 -15.64,17.328 -10.03,0 -15.81,-7.648 -15.81,-17.5 v -41.648 h -20.57 v 115.418 h 20.57 v -40.457 l -0.34,-7.821 c 4.93,6.118 12.41,9.696 22.95,9.696 19.55,0 29.24,-13.606 29.24,-33.157"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path160" /><path
d="m 3173.67,234.289 h -13.6 c -6.11,0 -10.03,-3.059 -10.03,-8.328 0,-5.102 3.57,-7.832 9.18,-7.832 8.33,0 14.45,5.793 14.45,16.16 z m 30.76,-25.84 c -2.89,-2.551 -8.15,-4.758 -14.62,-4.758 -7.13,0 -12.23,2.547 -14.1,8.661 -4.59,-5.942 -11.56,-9.172 -22.1,-9.172 -14.78,0 -23.45,8.32 -23.45,21.242 0,12.758 9.52,22.789 29.4,22.789 h 13.94 v 4.41 c 0,9.359 -4.59,13.098 -11.56,13.098 -6.8,0 -10.53,-3.239 -12.07,-9.02 l -17.34,5.102 c 3.41,12.41 13.1,21.086 30.94,21.086 17.51,0 29.75,-8.676 29.75,-30.778 V 223.57 c 0,-2.039 1.18,-3.218 3.06,-3.218 1.01,0 1.86,0.328 2.71,1.179 l 5.44,-13.082"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path162" /><path
d="m 3240.82,279.16 h 19.38 v -16.832 h -19.38 v -57.277 h -20.57 v 57.277 h -11.56 v 16.832 h 11.56 v 13.938 c 0,18.015 11.22,28.726 28.22,28.726 10.37,0 18.19,-3.738 23.29,-11.558 l -13.26,-11.555 c -1.7,3.23 -4.42,4.93 -8.32,4.93 -5.96,0 -9.36,-3.914 -9.36,-11.395 V 279.16"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path164" /><path
d="m 3327,217.121 c -3.74,-7.652 -10.71,-14.109 -24.48,-14.109 -15.64,0 -24.98,8.328 -24.98,24.136 l 0.17,35.18 h -14.62 v 4.422 l 30.08,28.223 h 4.43 V 279.16 h 25.15 l -0.17,-16.832 h -24.47 v -33.656 c 0,-4.594 2.2,-7.992 7.3,-7.992 4.08,0 6.12,1.539 7.99,5.109 l 13.6,-8.668"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path166" /><path
d="m 3351.99,251.109 h 33.15 c -1.53,9.352 -6.8,14.789 -15.8,14.789 -8.51,0 -14.96,-4.918 -17.35,-14.789 z m 52.7,-13.929 h -53.21 c 1.54,-10.879 7.99,-17.508 18.53,-17.508 8.51,0 13.43,3.226 16.83,9.859 l 16.15,-6.972 c -5.78,-12.758 -17.85,-19.547 -33.49,-19.547 -21.25,0 -38.07,12.75 -38.07,39.269 0,21.918 15.12,39.606 38.24,39.606 22.27,0 35.53,-15.465 35.53,-38.078 0,-2.379 0,-4.59 -0.51,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path168" /><path
d="m 3492.92,249.07 v -44.019 h -20.4 v 41.648 c 0,10.539 -5.26,17.5 -15.64,17.5 -10.19,0 -15.97,-7.648 -15.97,-17.679 v -41.469 h -20.57 v 74.109 h 19.04 v -8.332 c 5.09,6.977 12.91,11.059 24.3,11.059 19.55,0 29.24,-13.266 29.24,-32.817"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path170" /><path
d="m 205.422,227.738 c 0,-13.058 10.594,-23.66 23.656,-23.66 h 262.293 c 13.063,0 23.652,10.602 23.652,23.66 V 490.02 c 0,13.07 -10.589,23.66 -23.652,23.66 H 229.078 c -13.062,0 -23.656,-10.59 -23.656,-23.66 V 227.738"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path172" /><path
d="m 377.281,415.207 h -35.75 c -1.777,-20.723 -3.48,-38.348 -5.133,-51.582 -1.664,-13.234 -3.242,-23.305 -4.746,-32.836 -1.605,-9.519 -3.214,-18.203 -4.847,-26.027 -1.364,-6.129 -3.27,-10.867 -5.926,-14.301 -2.59,-3.453 -6.399,-5.848 -11.402,-7.191 -4.18,-1.016 -8.274,-0.192 -12.383,2.472 -4.035,2.68 -6.453,5.879 -7.321,9.598 -0.609,2.754 -0.781,5.094 -0.453,7.012 0.254,1.914 0.825,3.679 1.692,5.332 0.836,1.64 1.746,3.125 2.812,4.496 0.969,1.332 2.063,2.66 3.188,4.011 0.367,0.411 2.144,2.512 5.398,6.317 3.27,3.816 5.676,7.301 7.352,10.453 1.621,3.129 5.203,10.039 6.992,18.637 1.82,8.597 5.488,38.023 5.418,63.609 -2.746,0 -15.043,0 -15.043,0 -4.246,0 -8.383,-1.391 -12.281,-3.426 -3.793,-1.996 -7.149,-5.363 -8.657,-7.285 -1.589,-1.98 -5.683,-8.613 -6.679,-9.887 -0.953,-1.285 -2.899,-4.234 -4.395,-3.781 -1.617,0.516 -1.262,2.324 -1.008,3.781 0.286,1.454 3.215,8.86 5.403,14.43 2.246,5.629 5.23,11.059 9.043,16.313 2.937,4.461 7.004,7.617 12.039,10.816 5.086,3.277 10.929,4.895 17.652,4.895 0,0 107.578,0 109.527,0 1.903,0 12.196,-0.817 12.196,-12.829 0,-11.996 -10.934,-13.027 -12.196,-13.027 -1.281,0 -31.101,0 -31.101,0 -2.602,-24.644 -3.883,-50.078 -3.883,-75.016 0,-4.527 0.754,-8.968 2.316,-13.277 1.567,-4.34 3.469,-7.641 5.731,-9.871 2.926,-2.707 6.426,-4.43 10.617,-5.219 4.223,-0.758 8.457,0.543 12.766,3.934 2.375,1.883 4.094,3.984 5.23,6.324 1.067,2.383 1.75,4.684 2.074,6.82 0.286,2.184 0.77,5.243 0.856,5.981 0.086,0.738 -0.059,3.437 3.012,3.672 3.07,0.234 3.382,-2.485 3.668,-5.442 0.257,-2.965 -1.321,-13.968 -3.793,-20.804 -2.477,-6.879 -5.461,-12.371 -8.86,-16.532 -3.426,-4.207 -6.75,-7.207 -10.035,-9.047 -3.738,-2.265 -8.101,-3.632 -13.019,-4.109 -5.004,-0.461 -9.555,0.699 -13.649,3.469 -6.808,4.976 -12.023,12.746 -15.492,23.34 -2.031,6.199 -3.07,14.351 -3.297,24.511 -0.312,10.153 0.027,20.067 0.965,29.754 l 5.402,51.512"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path174" /></g></g></svg>

After

Width:  |  Height:  |  Size: 39 KiB

View File

@@ -0,0 +1,170 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
id="svg2"
xml:space="preserve"
width="415.74667"
height="170.08"
viewBox="0 0 415.74667 170.08"
sodipodi:docname="hei-en.svg"
inkscape:version="1.1.1 (c3084ef, 2021-09-22)"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata
id="metadata8"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs6" /><sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1720"
inkscape:window-height="1387"
id="namedview4"
inkscape:pagecheckerboard="0"
showgrid="false"
inkscape:zoom="2.7925659"
inkscape:cx="207.87334"
inkscape:cy="56.399743"
inkscape:window-x="0"
inkscape:window-y="25"
inkscape:window-maximized="0"
inkscape:current-layer="g12" /><g
id="g10"
inkscape:groupmode="layer"
inkscape:label="ink_ext_XXXXXX"
transform="matrix(1.3333333,0,0,-1.3333333,0,170.08)"><g
id="g12"
transform="scale(0.1)"><path
d="M 2044.39,1045.46 C 1889.41,717.031 1893.87,728.125 1889.43,717.035 c -8.53,-17.039 -17.33,-34.683 -39.54,-34.683 -18.32,0 -32.74,15.16 -32.74,34.461 0,10.433 2.22,15.003 9.54,30.14 4.92,10.586 0.32,0.699 148.84,316.957 10.17,21.05 19.95,41.18 42.52,41.18 18.97,0 33.25,-14.35 33.25,-33.32 0,-10.5 -3.31,-18.47 -6.91,-26.31 z m 24.11,26.31 c 0,28.26 -22.21,50.52 -50.45,50.52 -33.39,0 -47.16,-28.48 -57.21,-49.26 4.68,9.98 -0.74,-1.58 -149.31,-317.839 -8.06,-16.75 -11.55,-24.046 -11.55,-38.378 0,-28.954 21.91,-51.637 49.91,-51.637 32.76,0 45.61,25.527 54.97,44.203 l 155.04,328.781 c 4.37,9.36 8.6,19.59 8.6,33.61"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path16" /><path
d="m 2186.48,1045.48 c -154.9,-328.382 -149.26,-320.535 -154.97,-328.398 -8.46,-17.086 -17.26,-34.73 -39.52,-34.73 -18.39,0 -32.72,15.179 -32.72,34.461 0,10.433 2.2,15.003 9.54,30.14 4.85,10.711 0.31,0.699 148.87,316.957 10.18,21.03 19.94,41.18 42.49,41.18 18.95,0 33.36,-14.35 33.36,-33.32 0,-10.5 -3.3,-18.47 -7.05,-26.29 z m -26.31,76.81 c -33.4,0 -47.15,-28.5 -57.21,-49.29 4.77,9.78 -0.76,-1.55 -149.32,-317.809 -8.03,-16.769 -11.56,-24.046 -11.56,-38.378 0,-28.954 21.95,-51.637 49.91,-51.637 32.91,0 45.68,25.527 54.99,44.293 l 155.08,328.691 c 4.2,8.91 8.59,19.59 8.59,33.61 0,28.26 -22.17,50.52 -50.48,50.52"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path18" /><path
d="m 2303.31,925.441 c 2.79,-6.796 6.42,-12.371 15.79,-12.371 9.35,0 12.99,5.575 15.79,12.371 l 46.66,118.679 c 1.04,2.78 1.47,4.9 1.47,7.87 0,8.96 -7.82,15.37 -16.37,15.37 -7.24,0 -11.74,-4.68 -14.49,-10.45 l -33.06,-88.609 -32.98,88.609 c -2.83,5.77 -7.31,10.45 -14.56,10.45 -8.49,0 -16.37,-6.41 -16.37,-15.37 0,-2.97 0.45,-5.09 1.5,-7.87 l 46.62,-118.679"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path20" /><path
d="m 2432.5,1034.13 h 0.38 l 19.85,-61.755 h -40.5 z m -66.89,-107.423 c 0,-8.508 7.22,-14.883 15.75,-14.883 8.7,0 13.14,4.707 15.27,11.293 l 6.44,19.828 h 59.2 l 6.42,-20.039 c 2.15,-6.375 6.63,-11.082 15.56,-11.082 7.94,0 14.69,5.762 14.69,14.039 0,1.52 -0.4,4.477 -1.7,7.918 l -41.77,115.929 c -3.61,10.2 -11.49,17.65 -22.83,17.65 -10.82,0 -19.14,-7.9 -22.75,-17.65 l -42.86,-115.929 c -0.38,-1.054 -1.42,-3.59 -1.42,-7.074"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path22" /><path
d="m 2529.81,914.355 h 53.31 c 9.33,0 14.93,7.032 15.37,14.106 0.19,7.199 -4.52,15.328 -15.37,15.328 h -37.94 v 106.941 c 0,10.66 -6.82,16.63 -16.01,16.63 -9.09,0 -15.98,-5.97 -15.98,-16.63 V 931.84 c 0,-10.664 6.21,-17.485 16.62,-17.485"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path24" /><path
d="m 2672.38,1034.13 h 0.47 l 19.82,-61.755 h -40.53 z m -51.17,-122.306 c 8.74,0 13.25,4.707 15.38,11.293 l 6.4,19.828 h 59.16 l 6.48,-20.039 c 2.14,-6.375 6.61,-11.082 15.52,-11.082 7.89,0 14.74,5.762 14.74,14.039 0,1.52 -0.45,4.477 -1.72,7.918 l -41.75,115.929 c -3.65,10.2 -11.49,17.65 -22.83,17.65 -10.87,0 -19.13,-7.9 -22.78,-17.65 l -42.79,-115.929 c -0.45,-1.054 -1.52,-3.59 -1.52,-7.074 0,-8.508 7.22,-14.883 15.71,-14.883"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path26" /><path
d="m 2785.13,929.727 v 121.003 c 0,10.66 -6.82,16.63 -16.02,16.63 -9.11,0 -15.97,-5.97 -15.97,-16.63 V 929.727 c 0,-10.704 6.86,-16.637 15.97,-16.637 9.2,0 16.02,5.933 16.02,16.637"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path28" /><path
d="m 2855.41,941.273 c -13.83,0 -25.78,8.301 -35.74,8.301 -8.76,0 -14.26,-6.844 -14.26,-15.117 0,-20.016 35.31,-23.879 51.73,-23.879 29.4,0 54.58,18.981 54.58,49.445 0,54.957 -71.2,40.917 -71.2,62.857 0,8.95 8.3,13.85 17.49,13.85 12.77,0 19.55,-6.4 28.29,-6.4 8.78,0 14.33,7.47 14.33,15.73 0,16.85 -29.85,21.3 -41.71,21.3 -28.42,0 -52.89,-18.51 -52.89,-48.32 0,-49.431 71.11,-34.313 71.11,-59.438 0,-10.473 -7.64,-18.329 -21.73,-18.329"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path30" /><path
d="m 2427.76,860.273 c 0,6.821 -5.68,14.059 -15.12,14.059 -10.17,0 -15.05,-5.93 -16.99,-15.367 l -18.1,-90.512 h -0.46 l -27.7,93.32 c -2.35,7.684 -8.79,12.559 -16.58,12.559 -7.89,0 -14.35,-4.875 -16.65,-12.559 l -27.7,-93.32 h -0.43 l -18.13,90.512 c -1.86,9.437 -6.76,15.367 -17.01,15.367 -9.45,0 -15.15,-7.238 -15.15,-14.059 0,-3.019 0.19,-4.476 0.86,-7.265 l 27.05,-116.289 c 2.14,-8.992 9.21,-16.614 21.12,-16.614 10.41,0 18.5,6.797 21.09,15.559 l 24.68,82.172 h 0.46 l 24.71,-82.172 c 2.59,-8.762 10.68,-15.559 21.07,-15.559 11.97,0 19.02,7.622 21.17,16.614 l 26.98,116.289 c 0.66,2.789 0.83,4.246 0.83,7.265"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path32" /><path
d="m 2468.65,780.594 20.37,61.797 h 0.32 l 19.85,-61.797 z m 43.34,77.293 c -3.66,10.301 -11.56,17.734 -22.76,17.734 -10.97,0 -19.25,-7.875 -22.86,-17.734 L 2423.56,742.02 c -0.38,-1.079 -1.48,-3.653 -1.48,-7.032 0,-8.527 7.2,-14.883 15.69,-14.883 8.69,0 13.22,4.645 15.37,11.231 l 6.44,19.805 h 59.17 l 6.44,-19.973 c 2.14,-6.418 6.61,-11.063 15.53,-11.063 7.91,0 14.73,5.743 14.73,14.059 0,1.481 -0.45,4.414 -1.69,7.856 l -41.77,115.867"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path34" /><path
d="m 2639.63,749.559 h -37.94 v 106.933 c 0,10.684 -6.87,16.617 -16.04,16.617 -9.11,0 -15.95,-5.933 -15.95,-16.617 V 737.605 c 0,-10.64 6.23,-17.5 16.66,-17.5 h 53.27 c 9.31,0 14.9,7.051 15.27,14.04 0.29,7.285 -4.42,15.414 -15.27,15.414"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path36" /><path
d="m 2734.63,749.559 h -37.93 v 106.933 c 0,10.684 -6.83,16.617 -16.01,16.617 -9.12,0 -15.93,-5.933 -15.93,-16.617 V 737.605 c 0,-10.64 6.2,-17.5 16.63,-17.5 h 53.24 c 9.36,0 14.89,7.051 15.31,14.04 0.25,7.285 -4.52,15.414 -15.31,15.414"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path38" /><path
d="m 2775.76,874.355 c -9.16,0 -16,-5.933 -16,-16.617 V 736.719 c 0,-10.641 6.84,-16.614 16,-16.614 9.16,0 15.98,5.973 15.98,16.614 v 121.019 c 0,10.684 -6.82,16.617 -15.98,16.617"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path40" /><path
d="m 2840.51,832.402 c 0,8.973 8.3,13.852 17.46,13.852 12.82,0 19.64,-6.379 28.34,-6.379 8.78,0 14.31,7.434 14.31,15.73 0,16.848 -29.83,21.325 -41.8,21.325 -28.31,0 -52.78,-18.535 -52.78,-48.328 0,-49.465 71.1,-34.309 71.1,-59.497 0,-10.406 -7.64,-18.324 -21.68,-18.324 -13.91,0 -25.78,8.321 -35.8,8.321 -8.75,0 -14.29,-6.801 -14.29,-15.122 0,-20.011 35.36,-23.875 51.78,-23.875 29.43,0 54.57,18.981 54.57,49.446 0,54.976 -71.21,40.918 -71.21,62.851"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path42" /><path
d="m 1400.9,874.09 -18.35,5.316 c -31.8,9.102 -52.75,15.407 -52.75,36.063 0,14.98 12.86,25.086 28.15,28.953 7.67,1.937 14.87,2.375 22.02,2.375 33.21,0 53.17,-11.527 65.95,-19.246 l 4.54,1.941 c 1.62,18.301 2.15,20.192 4.16,38.031 l -2.54,3.383 c -9.25,3.375 -35.79,13.453 -73.63,13.453 -57.27,0 -103.27,-24.57 -103.27,-74.171 0,-49.614 46,-63.575 66.98,-69.809 l 16.35,-5.281 c 31.18,-9.676 53.14,-16.871 53.14,-39.012 0,-14.918 -14.77,-36.133 -55.22,-36.133 -39.35,0 -61.87,16.379 -71.09,23.113 l -5.06,-1.484 c -1.03,-19.215 -1.03,-21.629 -3.08,-40.406 l 2.5,-4.371 c 2.58,-0.918 5.17,-1.918 7.73,-2.852 19.41,-7.254 42.37,-12.062 70.03,-12.062 18.43,0 54.71,1.425 81.82,23.101 20.97,15.918 28.64,37.571 28.64,56.848 0,51.082 -46.52,65.988 -67.02,72.25"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path44" /><path
d="m 1696.44,790.746 c -14.82,-26.449 -39.34,-32.25 -58.22,-32.25 -10.3,0 -21.05,1.93 -30.17,6.281 -40.45,19.239 -40.96,67.887 -40.96,87.157 0,20.257 1.54,48.171 15.36,67.902 17.86,26.937 46.56,27.934 56.21,27.934 28.67,0 45.04,-12.5 54.78,-27.43 12.74,-21.223 14.83,-53.5 14.83,-65.52 0.52,-10.136 0,-42.422 -11.83,-64.074 z m -55.2,193.613 c -51.12,0 -80.74,-19.714 -95.12,-33.671 -34.22,-32.247 -35.25,-79.454 -35.25,-97.766 0,-15.926 0.49,-65.016 35.25,-98.25 16.37,-15.961 45.55,-32.324 91.54,-32.324 35.81,0 65.99,8.215 88.43,29.406 16.97,15.894 27.66,34.652 33.25,58.289 3.62,14.426 4.66,30.359 4.66,46.711 -1.04,33.687 -7.66,67.437 -31.19,92.93 -22.54,24.105 -56.78,34.675 -91.57,34.675"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path46" /><path
d="m 1186.39,883.23 c -16.86,0 -30.42,-13.636 -30.42,-30.429 0,-16.805 13.56,-30.414 30.42,-30.414 16.81,0 30.42,13.609 30.42,30.414 0,16.793 -13.61,30.429 -30.42,30.429"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path48" /><path
d="m 516.242,1064.44 -2.531,2.92 c -40.91,-1.44 -47.559,-1.44 -90.496,-1.44 l -2.578,-2.88 c 3.605,-54.45 3.605,-68.388 4.101,-125.224 -22.496,-0.503 -45,-0.984 -68.019,-0.984 -17.903,0 -36.274,0.481 -54.164,0.481 l 1.008,127.127 -2.579,2.92 c -39.351,-1.44 -47.031,-1.44 -91.515,-1.44 l -3.067,-2.88 c 2.575,-49.63 5.676,-108.86 5.676,-228.31 0,-43.347 -1.086,-66.929 -2.07,-107.382 l 2.539,-2.922 c 37.316,1.457 46.531,1.98 91.527,1.457 l 2.555,2.871 c -3.066,59.719 -3.551,77.105 -4.074,146.891 22.48,0.972 41.39,1.472 61.398,1.472 20.375,0 40.82,-0.5 61.309,-1 1.031,-64.996 1.031,-80.859 -1.543,-148.769 l 2.574,-2.922 c 38.355,1.457 48.566,1.98 92.031,1.457 l 2.508,2.871 c -4.074,80.957 -5.574,161.363 -5.574,242.305 0,33.711 0.515,56.371 0.984,93.381"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path50" /><path
d="m 657.781,883.359 c 1.559,14.938 5.129,35.172 24.586,46.746 6.137,3.836 13.305,5.278 20.446,5.278 16.859,0 27.05,-8.141 32.726,-16.852 7.164,-10.586 7.625,-22.129 7.625,-33.242 z m 85.383,99.258 c -12.719,3.332 -24.496,4.328 -36.266,4.328 -80.261,0 -133.468,-49.632 -133.468,-132.953 0,-22.656 4.121,-46.222 12.25,-63.09 29.691,-65.031 99.199,-70.82 136.078,-70.82 42.351,0 60.836,7.289 87.887,17.344 l 3.113,3.894 3.57,54.391 -3.57,1.461 c -19.445,-9.656 -42.524,-20.711 -79.817,-20.711 -30.668,0 -51.613,9.164 -63.918,26.539 -7.66,10.055 -9.179,19.648 -11.242,29.293 l 165.188,2.934 3.078,3.316 c -0.504,23.645 -1.02,47.734 -8.219,71.801 -17.855,56.855 -57.23,68.359 -74.664,72.273"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path52" /><path
d="m 1028.53,883.359 -25.06,8.688 c -17.384,5.773 -31.247,11.094 -31.247,24.543 0,5.793 4.062,21.687 35.847,21.687 31.2,0 51.14,-12.547 63.92,-20.269 l 4.59,1.504 5.1,52.476 -2.56,2.887 c -24.02,6.242 -44.97,12.094 -78.19,12.094 -25.043,0 -75.192,-1.977 -101.774,-38.09 -6.66,-8.672 -13.804,-23.149 -13.804,-42.391 0,-51.566 42.445,-66.961 66.472,-75.59 l 19.391,-6.734 c 13.828,-4.363 36.345,-11.609 36.345,-28.906 0,-12.07 -11.79,-25.047 -40.384,-25.047 -14.321,0 -35.317,4.328 -54.168,13.437 -8.699,4.321 -12.84,7.758 -20.512,13.524 l -4.625,-1.914 c -1.008,-25.047 -1.488,-30.371 -3.523,-54.465 l 2.515,-4.305 c 25.071,-8.687 46.543,-16.383 83.86,-16.383 38.897,0 115.587,6.739 124.747,75.606 0.54,3.887 0.54,7.266 0.54,10.609 0,52.942 -39.33,66.93 -67.48,77.039"
style="fill:#231f20;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path54" /><path
d="m 648.359,350.73 18.188,6.797 c 3.734,-11.726 10.023,-16.14 21.59,-16.14 10.535,0 17.168,5.437 17.168,14.277 0,8.328 -4.59,12.922 -22.274,17.332 -21.586,5.442 -31.613,15.473 -31.613,33.488 0,18.36 13.426,30.774 35.695,30.774 17.848,0 29.407,-7.485 34.508,-22.61 l -18.016,-7.48 c -2.214,7.988 -7.824,11.895 -17.339,11.895 -9.18,0 -14.961,-4.415 -14.789,-11.387 0.168,-7.988 4.929,-11.563 23.796,-16.66 21.079,-5.782 30.254,-16.145 30.254,-34.676 0,-20.227 -14.957,-33.149 -38.414,-33.149 -21.25,0 -33.828,9.016 -38.754,27.539"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path56" /><path
d="m 737.094,362.805 c 0,24.468 18.019,39.265 39.269,39.265 13.934,0 24.985,-5.105 31.785,-18.015 l -14.789,-9.867 c -3.742,6.796 -9.179,10.199 -16.996,10.199 -10.879,0 -19.55,-7.992 -19.55,-21.582 0,-14.114 8.671,-21.938 19.55,-21.938 9.008,0 13.934,3.399 17.504,10.371 l 14.617,-9.519 c -6.796,-13.426 -19.375,-18.352 -33.312,-18.352 -21.418,0 -38.078,13.43 -38.078,39.438"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path58" /><path
d="M 893.828,368.918 V 325.234 H 873.43 v 41.817 c 0,10.027 -5.442,17.336 -15.641,17.336 -10.023,0 -15.809,-7.649 -15.809,-17.5 v -41.653 h -20.562 v 115.418 h 20.562 v -40.457 l -0.339,-7.824 c 4.929,6.125 12.414,9.699 22.949,9.699 19.547,0 29.238,-13.601 29.238,-33.152"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path60" /><path
d="m 968.113,362.629 c 0,12.574 -8.156,22.098 -20.226,22.098 -12.239,0 -20.231,-9.688 -20.231,-22.266 0,-12.238 7.992,-21.758 20.231,-21.758 12.07,0 20.226,9.863 20.226,21.926 z m -60.175,0 c 0,21.59 16.148,39.441 39.949,39.441 24.988,0 39.945,-17.004 39.945,-39.441 0,-21.582 -16.316,-39.438 -39.945,-39.438 -25.328,0 -39.949,17.004 -39.949,39.438"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path62" /><path
d="m 1058.05,362.629 c 0,12.574 -8.16,22.098 -20.23,22.098 -12.24,0 -20.23,-9.688 -20.23,-22.266 0,-12.238 7.99,-21.758 20.23,-21.758 12.07,0 20.23,9.863 20.23,21.926 z m -60.179,0 c 0,21.59 16.149,39.441 39.949,39.441 24.99,0 39.94,-17.004 39.94,-39.441 0,-21.582 -16.31,-39.438 -39.94,-39.438 -25.33,0 -39.949,17.004 -39.949,39.438"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path64" /><path
d="m 1092.91,440.652 h 20.56 V 325.234 h -20.56 v 115.418"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path66" /><path
d="m 1223.45,362.629 c 0,12.574 -8.16,22.098 -20.23,22.098 -12.23,0 -20.23,-9.688 -20.23,-22.266 0,-12.238 8,-21.758 20.23,-21.758 12.07,0 20.23,9.863 20.23,21.926 z m -60.17,0 c 0,21.59 16.14,39.441 39.94,39.441 24.99,0 39.95,-17.004 39.95,-39.441 0,-21.582 -16.32,-39.438 -39.95,-39.438 -25.32,0 -39.94,17.004 -39.94,39.438"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path68" /><path
d="m 1283.8,399.348 h 19.38 V 382.52 h -19.38 v -57.286 h -20.56 v 57.286 h -11.56 v 16.828 h 11.56 v 13.933 c 0,18.02 11.22,28.731 28.21,28.731 10.37,0 18.19,-3.742 23.29,-11.563 l -13.26,-11.554 c -1.69,3.234 -4.41,4.933 -8.33,4.933 -5.94,0 -9.35,-3.918 -9.35,-11.394 v -13.086"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path70" /><path
d="m 1415.89,343.418 v -18.184 h -64.43 v 109.805 h 62.73 v -18.184 h -41.82 v -26.179 h 37.74 v -18.352 h -37.74 v -28.906 h 43.52"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path72" /><path
d="m 1503.78,369.258 v -44.024 h -20.4 v 41.653 c 0,10.535 -5.27,17.5 -15.64,17.5 -10.2,0 -15.98,-7.649 -15.98,-17.676 v -41.477 h -20.56 v 74.114 h 19.03 v -8.332 c 5.1,6.972 12.92,11.054 24.31,11.054 19.55,0 29.24,-13.261 29.24,-32.812"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path74" /><path
d="m 1549.35,358.555 c 7.13,0 11.89,5.605 11.89,12.578 0,6.965 -4.59,12.234 -11.89,12.234 -7.83,0 -12.25,-5.269 -12.25,-12.234 0,-7.317 4.59,-12.578 12.25,-12.578 z m 40.28,24.98 h -13.43 c 2.55,-4.07 4.08,-8.664 4.08,-13.43 0,-8.152 -3.91,-14.96 -11.9,-21.25 l -8.84,-7.468 c -1.53,-1.192 -2.89,-2.215 -4.59,-2.891 h 9.18 c 16.32,0 24.82,-7.988 24.82,-21.418 0,-15.469 -13.94,-26.18 -37.74,-26.18 -18.02,0 -29.75,5.098 -35.86,16.661 l 14.27,10.879 c 4.09,-7.481 10.03,-11.219 21.42,-11.219 12.75,0 19.04,2.886 19.04,8.836 0,4.59 -3.06,6.629 -7.99,6.629 h -27.88 v 12.414 l 10.55,9.004 c -16.32,1.535 -26.86,11.386 -26.86,27.031 0,16.316 12.92,28.215 31.45,28.215 h 40.45 l -0.17,-15.813"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path76" /><path
d="m 1604.09,399.348 h 20.56 v -74.114 h -20.56 z m -3.24,25.664 c 0,7.476 5.96,13.433 13.6,13.433 7.48,0 13.6,-5.957 13.6,-13.433 0,-7.649 -6.12,-13.762 -13.6,-13.762 -7.64,0 -13.6,6.113 -13.6,13.762"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path78" /><path
d="m 1717.47,369.258 v -44.024 h -20.4 v 41.653 c 0,10.535 -5.27,17.5 -15.64,17.5 -10.2,0 -15.98,-7.649 -15.98,-17.676 v -41.477 h -20.56 v 74.114 h 19.04 v -8.332 c 5.09,6.972 12.91,11.054 24.3,11.054 19.55,0 29.24,-13.261 29.24,-32.812"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path80" /><path
d="m 1752.32,371.301 h 33.15 c -1.53,9.344 -6.8,14.785 -15.81,14.785 -8.5,0 -14.96,-4.926 -17.34,-14.785 z m 52.69,-13.938 h -53.2 c 1.53,-10.879 7.99,-17.511 18.53,-17.511 8.5,0 13.43,3.234 16.83,9.867 l 16.15,-6.977 c -5.79,-12.754 -17.85,-19.551 -33.49,-19.551 -21.25,0 -38.08,12.754 -38.08,39.27 0,21.926 15.13,39.609 38.25,39.609 22.27,0 35.53,-15.468 35.53,-38.078 0,-2.383 0,-4.59 -0.52,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path82" /><path
d="m 1836.3,371.301 h 33.15 c -1.53,9.344 -6.8,14.785 -15.81,14.785 -8.5,0 -14.96,-4.926 -17.34,-14.785 z m 52.69,-13.938 h -53.2 c 1.53,-10.879 7.99,-17.511 18.53,-17.511 8.5,0 13.43,3.234 16.83,9.867 l 16.14,-6.977 c -5.78,-12.754 -17.84,-19.551 -33.48,-19.551 -21.25,0 -38.08,12.754 -38.08,39.27 0,21.926 15.13,39.609 38.25,39.609 22.27,0 35.53,-15.468 35.53,-38.078 0,-2.383 0,-4.59 -0.52,-6.629"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path84" /><path
d="m 1948.16,401.223 v -20.239 c -13.09,0 -22.95,-7.988 -22.95,-22.429 v -33.321 h -20.57 v 74.114 h 20.06 v -11.223 c 4.76,7.988 12.24,13.098 23.46,13.098"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path86" /><path
d="m 1960.91,399.348 h 20.57 v -74.114 h -20.57 z m -3.23,25.664 c 0,7.476 5.95,13.433 13.6,13.433 7.48,0 13.6,-5.957 13.6,-13.433 0,-7.649 -6.12,-13.762 -13.6,-13.762 -7.65,0 -13.6,6.113 -13.6,13.762"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path88" /><path
d="m 2074.3,369.258 v -44.024 h -20.4 v 41.653 c 0,10.535 -5.27,17.5 -15.64,17.5 -10.2,0 -15.98,-7.649 -15.98,-17.676 v -41.477 h -20.57 v 74.114 h 19.04 v -8.332 c 5.1,6.972 12.92,11.054 24.31,11.054 19.54,0 29.24,-13.261 29.24,-32.812"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path90" /><path
d="m 2119.86,358.555 c 7.14,0 11.9,5.605 11.9,12.578 0,6.965 -4.59,12.234 -11.9,12.234 -7.82,0 -12.24,-5.269 -12.24,-12.234 0,-7.317 4.59,-12.578 12.24,-12.578 z m 40.29,24.98 h -13.43 c 2.55,-4.07 4.08,-8.664 4.08,-13.43 0,-8.152 -3.91,-14.96 -11.9,-21.25 l -8.84,-7.468 c -1.53,-1.192 -2.89,-2.215 -4.59,-2.891 h 9.18 c 16.32,0 24.82,-7.988 24.82,-21.418 0,-15.469 -13.94,-26.18 -37.74,-26.18 -18.02,0 -29.75,5.098 -35.87,16.661 l 14.28,10.879 c 4.08,-7.481 10.03,-11.219 21.42,-11.219 12.75,0 19.04,2.886 19.04,8.836 0,4.59 -3.06,6.629 -7.99,6.629 h -27.88 v 12.414 l 10.54,9.004 c -16.31,1.535 -26.86,11.386 -26.86,27.031 0,16.316 12.92,28.215 31.45,28.215 h 40.46 l -0.17,-15.813"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path92" /><path
d="m 205.422,227.738 c 0,-13.058 10.594,-23.66 23.656,-23.66 h 262.293 c 13.063,0 23.652,10.602 23.652,23.66 V 490.02 c 0,13.07 -10.589,23.66 -23.652,23.66 H 229.078 c -13.062,0 -23.656,-10.59 -23.656,-23.66 V 227.738"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path94" /><path
d="m 377.281,415.207 h -35.75 c -1.777,-20.723 -3.48,-38.348 -5.133,-51.582 -1.664,-13.234 -3.242,-23.305 -4.746,-32.836 -1.605,-9.519 -3.214,-18.203 -4.847,-26.027 -1.364,-6.129 -3.27,-10.867 -5.926,-14.301 -2.59,-3.453 -6.399,-5.848 -11.402,-7.191 -4.18,-1.016 -8.274,-0.192 -12.383,2.472 -4.035,2.68 -6.453,5.879 -7.321,9.598 -0.609,2.754 -0.781,5.094 -0.453,7.012 0.254,1.914 0.825,3.679 1.692,5.332 0.836,1.64 1.746,3.125 2.812,4.496 0.969,1.332 2.063,2.66 3.188,4.011 0.367,0.411 2.144,2.512 5.398,6.317 3.27,3.816 5.676,7.301 7.352,10.453 1.621,3.129 5.203,10.039 6.992,18.637 1.82,8.597 5.488,38.023 5.418,63.609 -2.746,0 -15.043,0 -15.043,0 -4.246,0 -8.383,-1.391 -12.281,-3.426 -3.793,-1.996 -7.149,-5.363 -8.657,-7.285 -1.589,-1.98 -5.683,-8.613 -6.679,-9.887 -0.953,-1.285 -2.899,-4.234 -4.395,-3.781 -1.617,0.516 -1.262,2.324 -1.008,3.781 0.286,1.454 3.215,8.86 5.403,14.43 2.246,5.629 5.23,11.059 9.043,16.313 2.937,4.461 7.004,7.617 12.039,10.816 5.086,3.277 10.929,4.895 17.652,4.895 0,0 107.578,0 109.527,0 1.903,0 12.196,-0.817 12.196,-12.829 0,-11.996 -10.934,-13.027 -12.196,-13.027 -1.281,0 -31.101,0 -31.101,0 -2.602,-24.644 -3.883,-50.078 -3.883,-75.016 0,-4.527 0.754,-8.968 2.316,-13.277 1.567,-4.34 3.469,-7.641 5.731,-9.871 2.926,-2.707 6.426,-4.43 10.617,-5.219 4.223,-0.758 8.457,0.543 12.766,3.934 2.375,1.883 4.094,3.984 5.23,6.324 1.067,2.383 1.75,4.684 2.074,6.82 0.286,2.184 0.77,5.243 0.856,5.981 0.086,0.738 -0.059,3.437 3.012,3.672 3.07,0.234 3.382,-2.485 3.668,-5.442 0.257,-2.965 -1.321,-13.968 -3.793,-20.804 -2.477,-6.879 -5.461,-12.371 -8.86,-16.532 -3.426,-4.207 -6.75,-7.207 -10.035,-9.047 -3.738,-2.265 -8.101,-3.632 -13.019,-4.109 -5.004,-0.461 -9.555,0.699 -13.649,3.469 -6.808,4.976 -12.023,12.746 -15.492,23.34 -2.031,6.199 -3.07,14.351 -3.297,24.511 -0.312,10.153 0.027,20.067 0.965,29.754 l 5.402,51.512"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path96" /></g></g></svg>

After

Width:  |  Height:  |  Size: 23 KiB

View File

@@ -0,0 +1,390 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 270.79999 138.8"
height="138.8"
width="270.79999"
xml:space="preserve"
version="1.1"
id="svg2"><metadata
id="metadata8"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs6" /><g
transform="matrix(1.25,0,0,-1.25,0,138.8)"
id="g10"><g
transform="scale(0.1,0.1)"
id="g12"><path
id="path14"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 957.816,609.5 c -5.812,0 -6.246,0 -12.39,-0.312 l -0.653,0.722 c 0.325,11.574 0.653,24.067 0.543,34.711 -2.523,0 -5.265,0.106 -10.312,0.106 -8.555,0 -17.992,-0.106 -25.547,-0.211 -0.117,-19.625 0.215,-26.547 0.758,-34.297 l -0.543,-0.719 c -6.035,0 -6.359,0 -12.391,-0.312 l -0.66,0.722 c 0.434,10.129 0.543,15.395 0.543,46.695 0,13.942 -0.324,18.907 -0.648,25.11 l 0.648,0.715 c 5.606,0.109 6.914,0.109 12.176,0.308 l 0.555,-0.718 c -0.11,-6.098 -0.329,-14.571 -0.329,-28.719 5.7,-0.11 8.77,-0.211 15.903,-0.211 10.082,0 14.691,0.101 19.847,0.316 -0.218,19.625 -0.218,21.895 -0.773,28.309 l 0.555,0.715 c 5.918,0.109 6.797,0.109 12.168,0.308 l 0.55,-0.718 c -0.332,-10.024 -0.437,-16.532 -0.437,-34.602 0,-20.051 0.437,-27.691 1.098,-37.199 l -0.661,-0.719" /><path
id="path16"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1020.65,641.004 c 0,4.336 0,10.019 -0.76,12.918 -2.3,8.055 -10.2,10.633 -18.31,10.633 -6.475,0 -12.834,-1.34 -18.982,-3.403 l -0.649,-0.621 c -0.109,-2.168 -0.109,-2.789 -0.332,-7.539 l 0.871,-0.512 c 4.617,1.856 9.547,3.915 16.676,3.915 5.476,0 8.006,-1.961 9.106,-3.825 0.99,-1.652 0.99,-3.605 0.99,-6.398 l -1.88,-0.211 c -19.735,-2.168 -32.013,-6.613 -32.013,-20.453 0,-10.227 7.68,-17.246 18.641,-17.246 8.332,0 13.272,3.715 15.362,5.261 l -0.11,-3.714 0.43,-0.621 c 5.05,0.207 5.93,0.312 11.07,0.406 l 0.56,0.527 c -0.56,6.719 -0.67,7.848 -0.67,20.652 l 0,10.231 z m -11.28,-2.481 0,-17.25 c -1.21,-1.031 -5.16,-4.543 -11.964,-4.543 -10.414,0 -10.414,8.879 -10.414,9.399 0,9.195 10.309,10.637 21.378,12.191 l 1,0.203" /><path
id="path18"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1089.31,662.898 c -0.22,-7.839 -0.33,-15.171 -0.33,-23.55 0,-12.7 0.33,-20.34 0.56,-24.785 0,-1.454 0.1,-2.895 0.21,-4.344 l -0.44,-0.625 c -5.26,-0.094 -6.14,-0.199 -11.18,-0.406 l -0.66,0.621 0.11,4.336 c -2.41,-1.653 -8.23,-5.883 -17.22,-5.883 -4.28,0 -8.99,0.926 -12.5,3.515 -7.02,5.364 -7.02,14.149 -7.13,22.2 l 0,6.414 c -0.22,14.769 -0.22,16.425 -0.55,21.996 l 0.55,0.726 c 5.15,0.102 6.14,0.102 11.29,0.516 l 0.67,-0.731 -0.45,-22.617 c 0,-2.789 -0.11,-4.859 0,-9.808 0.11,-4.344 0.34,-13.633 11.41,-13.633 6.47,0 11.08,3.402 13.71,5.367 0.11,5.578 0.11,10.332 0.11,16.316 0,14.368 -0.11,17.258 -0.77,23.977 l 0.66,0.715 c 5.05,0.105 6.24,0.105 11.29,0.414 l 0.66,-0.731" /><path
id="path20"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1134.82,617.66 c -0.32,-3.406 -0.32,-4.137 -0.43,-7.129 l -0.55,-0.621 c -2.3,-0.515 -4.17,-0.926 -8.23,-0.926 -2.63,0 -9.54,0 -12.93,5.36 -1.98,3.008 -1.98,5.484 -1.98,17.668 l 0.22,22.726 c -3.84,0 -3.95,-0.09 -7.9,-0.199 l -0.43,0.621 c 0.21,3.305 0.21,4.133 0.21,7.438 l 0.65,0.617 c 2.42,0 3.84,-0.102 7.47,0 -0.11,2.176 -0.11,4.441 -0.11,6.613 -0.11,1.969 -0.22,3.926 -0.33,5.895 l 0.55,0.715 c 4.93,1.14 6.14,1.445 11.19,2.886 l 0.76,-0.508 c -0.33,-6.82 -0.44,-8.16 -0.44,-15.703 4.61,0.102 5.92,0.102 12.17,0.313 l 0.56,-0.621 c -0.23,-2.684 -0.34,-3.821 -0.34,-7.336 l -0.54,-0.621 c -5.48,0.105 -6.15,0.211 -11.95,0.211 l -0.22,-19.223 c 0.11,-1.238 0.11,-7.121 0.11,-8.578 0,-7.531 0.98,-9.906 6.47,-9.906 2.3,0 4.06,0.507 5.26,0.929 l 0.76,-0.621" /><path
id="path22"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1193.61,622.617 c -1.43,-1.133 -3.84,-3 -7.9,-4.543 -3.06,-1.035 -6.36,-1.551 -9.53,-1.551 -3.41,0 -9.67,0.516 -14.15,5.579 -3.74,4.226 -4.06,9.296 -4.17,12.91 17.97,0.105 20.95,0.105 38.06,0 l 0.75,0.621 c 0.11,4.547 0.35,14.769 -5.91,21.801 -3.3,3.718 -9.32,7.121 -17.99,7.121 -14.37,0 -26.65,-9.395 -26.65,-28.61 0,-17.976 11.29,-27.683 29.28,-27.683 9.76,0 15.68,2.988 17.56,3.914 l 0.65,0.726 c 0.22,4.032 0.33,5.067 0.87,9.2 l -0.87,0.515 z m -8.22,20.356 c -10.1,-0.11 -14.26,-0.215 -27.53,-0.11 1.1,10.328 8.33,14.258 14.47,14.258 4.93,0 9.76,-2.383 11.96,-8.055 0.87,-2.378 0.99,-4.652 1.1,-6.093" /><path
id="path24"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1298.24,617.969 c -0.34,-3.516 -0.34,-4.235 -0.56,-7.75 l -0.77,-0.719 c -21.37,0 -24.77,-0.105 -45.61,-0.312 l -0.56,0.722 c 0.34,8.164 0.67,13.742 0.67,32.649 0,17.351 0,27.269 -0.78,39.156 l 0.67,0.715 c 21.6,0.109 25.88,0.109 46.06,0.308 l 0.66,-0.718 c -0.34,-3.106 -0.55,-4.34 -0.77,-8.055 l -0.65,-0.723 c -14.15,0.403 -18.88,0.403 -32.79,0.512 -0.34,-9.508 -0.34,-12.504 -0.34,-22 13.5,-0.109 17.66,0 31.04,0.199 l 0.54,-0.715 c -0.43,-3.621 -0.43,-4.656 -0.54,-7.965 l -0.67,-0.714 c -12.71,0.304 -15.47,0.304 -30.37,0.304 -0.22,-11.98 -0.11,-14.875 0,-24.691 16.56,0 19.95,0 34.1,0.519 l 0.67,-0.722" /><path
id="path26"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1355.93,621.797 c -0.45,-4.445 -0.56,-4.957 -0.89,-9.199 l -0.77,-0.731 c -3.17,-1.437 -7.44,-3.515 -15.12,-3.515 -16.57,0 -27.31,11.265 -27.31,27.39 0,16.414 10.52,28.813 27.52,28.813 7.12,0 12.17,-2.168 15.02,-3.305 l 0.43,-0.719 c -0.43,-3.715 -0.54,-5.062 -0.76,-8.16 l -0.88,-0.418 c -3.6,2.481 -7.77,4.027 -12.17,4.027 -9.1,0 -17.1,-6.605 -17.1,-19.828 0,-14.05 8.45,-19.113 16.99,-19.113 7.47,0 12.06,3.613 14.15,5.168 l 0.89,-0.41" /><path
id="path28"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1421.28,637.18 c -0.22,7.234 -1.66,14.465 -6.69,19.941 -4.81,5.168 -12.18,7.434 -19.63,7.434 -10.96,0 -17.32,-4.223 -20.39,-7.231 -7.35,-6.922 -7.57,-17.043 -7.57,-20.969 0,-3.406 0.1,-13.945 7.57,-21.074 3.5,-3.414 9.75,-6.929 19.63,-6.929 7.67,0 14.15,1.769 18.97,6.308 3.62,3.414 5.93,7.442 7.12,12.508 0.77,3.094 0.99,6.504 0.99,10.012 z m -11.95,-0.414 c 0.1,-2.168 0,-9.09 -2.53,-13.735 -3.17,-5.679 -8.45,-6.918 -12.51,-6.918 -2.18,0 -4.49,0.41 -6.45,1.336 -8.67,4.141 -8.78,14.563 -8.78,18.703 0,4.344 0.34,10.336 3.28,14.563 3.84,5.789 9.99,5.992 12.08,5.992 6.13,0 9.64,-2.684 11.73,-5.883 2.74,-4.554 3.18,-11.476 3.18,-14.058" /><path
id="path30"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1450.56,609.594 c -5.27,-0.094 -6.35,-0.199 -11.52,-0.406 l -0.54,0.722 c 0.23,7.328 0.54,16.637 0.54,36.473 0,14.254 0,29.539 -1.09,42.762 l 0.55,0.625 c 5.37,0.82 6.49,1.031 11.96,2.168 l 0.65,-0.719 c -0.77,-13.539 -0.77,-27.172 -0.77,-40.707 0,-22.629 0.32,-30.473 0.88,-40.293 l -0.66,-0.625" /><path
id="path32"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1515.71,622.617 c -1.43,-1.133 -3.84,-3 -7.9,-4.543 -3.06,-1.035 -6.36,-1.551 -9.53,-1.551 -3.41,0 -9.65,0.516 -14.16,5.579 -3.73,4.226 -4.05,9.296 -4.16,12.91 17.97,0.105 20.95,0.105 38.05,0 l 0.76,0.621 c 0.13,4.547 0.33,14.769 -5.91,21.801 -3.3,3.718 -9.32,7.121 -17.99,7.121 -14.37,0 -26.65,-9.395 -26.65,-28.61 0,-17.976 11.29,-27.683 29.28,-27.683 9.77,0 15.68,2.988 17.54,3.914 l 0.67,0.726 c 0.21,4.032 0.34,5.067 0.86,9.2 l -0.86,0.515 z m -8.24,20.356 c -10.08,-0.11 -14.24,-0.215 -27.51,-0.11 1.08,10.328 8.33,14.258 14.47,14.258 4.93,0 9.76,-2.383 11.96,-8.055 0.88,-2.378 0.99,-4.652 1.08,-6.093" /><path
id="path34"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1601.14,650.824 c 8,-3.316 18.65,-7.652 18.65,-20.875 0,-11.57 -9.12,-21.996 -28.2,-21.996 -11.63,0 -19.08,3.297 -21.71,4.539 l -0.44,0.723 c 0.44,3.625 0.55,5.582 0.87,9.508 l 1.11,0.41 c 2.75,-1.758 9.1,-6.094 19.3,-6.094 11.3,0 16.03,5.473 16.03,11.676 0,7.23 -6.39,10.015 -13.51,12.601 l -5.48,2.278 c -7.8,3.406 -18.2,7.851 -18.2,20.453 0,3.824 1.09,7.75 3.39,10.848 5.05,6.82 14.15,9.093 23.04,9.093 8.67,0 13.91,-1.558 19.73,-3.316 l 0.56,-0.82 c -0.45,-3.93 -0.56,-5.372 -0.88,-9.094 l -0.88,-0.414 c -4.71,2.277 -9.86,4.758 -18.08,4.758 -9.11,0 -14.82,-4.028 -14.82,-10.129 0,-4.641 3.29,-6.809 5.59,-8.157 1.42,-0.836 1.85,-1.035 8.45,-3.726 l 5.48,-2.266" /><path
id="path36"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1648.73,663.32 -0.77,0.614 c -4.92,-0.926 -6.13,-1.235 -11.5,-2.055 l -0.56,-0.629 c 1.33,-11.773 1.33,-19.004 1.42,-35.012 0,-6.101 0.11,-12.195 0.11,-18.285 0,-10.547 -0.2,-17.047 -0.43,-23.351 l 0.56,-0.618 c 3.82,0.102 7.67,0.204 11.5,0.313 l 0.67,0.621 c -0.56,9.703 -0.77,12.391 -0.87,24.781 1.53,-0.105 2.85,-0.199 4.92,-0.199 23.13,0 34.43,13.73 34.43,29.742 0,14.571 -9.75,25.313 -23.69,25.313 -8.54,0 -13.81,-3.918 -16,-5.571 l 0.21,4.336 z m 0,-45.871 c -0.11,5.992 -0.21,12.086 -0.21,18.184 0,5.265 0.1,10.539 0.21,15.91 2.53,1.648 6.69,4.344 12.62,4.344 8.78,0 14.8,-6.621 14.8,-17.364 0,-12.703 -8.34,-21.382 -22.8,-21.382 -1.88,0 -3.19,0.211 -4.62,0.308" /><path
id="path38"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1750.3,622.617 c -1.44,-1.133 -3.84,-3 -7.91,-4.543 -3.06,-1.035 -6.35,-1.551 -9.54,-1.551 -3.39,0 -9.65,0.516 -14.14,5.579 -3.74,4.226 -4.05,9.296 -4.18,12.91 18,0.105 20.95,0.105 38.06,0 l 0.78,0.621 c 0.09,4.547 0.32,14.769 -5.94,21.801 -3.28,3.718 -9.3,7.121 -17.97,7.121 -14.37,0 -26.66,-9.395 -26.66,-28.61 0,-17.976 11.3,-27.683 29.29,-27.683 9.76,0 15.68,2.988 17.54,3.914 l 0.67,0.726 c 0.22,4.032 0.33,5.067 0.86,9.2 l -0.86,0.515 z m -8.78,63.539 c -2.09,-0.113 -4.17,-0.113 -6.26,-0.113 -2.09,0 -4.05,0 -6.46,0.113 l -0.67,-0.527 c -2.4,-6.715 -5.59,-13.316 -6.69,-15.801 l 0.44,-0.719 c 3.85,0 5.05,0 8.01,-0.113 l 0.76,0.422 c 4.95,7.539 5.93,8.98 11.3,15.898 l -0.43,0.84 z m 0.54,-43.183 c -10.08,-0.11 -14.24,-0.215 -27.53,-0.11 1.1,10.328 8.35,14.258 14.49,14.258 4.93,0 9.76,-2.383 11.95,-8.055 0.88,-2.378 0.98,-4.652 1.09,-6.093" /><path
id="path40"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1811.27,621.797 c -0.45,-4.445 -0.54,-4.957 -0.88,-9.199 l -0.76,-0.731 c -3.19,-1.437 -7.46,-3.515 -15.15,-3.515 -16.56,0 -27.3,11.265 -27.3,27.39 0,16.414 10.53,28.813 27.53,28.813 7.14,0 12.17,-2.168 15.01,-3.305 l 0.45,-0.719 c -0.45,-3.715 -0.54,-5.062 -0.76,-8.16 l -0.88,-0.418 c -3.63,2.481 -7.79,4.027 -12.17,4.027 -9.1,0 -17.11,-6.605 -17.11,-19.828 0,-14.05 8.44,-19.113 17,-19.113 7.45,0 12.05,3.613 14.14,5.168 l 0.88,-0.41" /><path
id="path42"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1837.37,678.305 c -5.6,-0.215 -6.81,-0.309 -12.16,-0.836 l -0.67,0.621 c 0.11,1.344 0.11,2.793 0.11,4.129 0,1.863 -0.11,3.515 -0.22,5.594 l 0.78,0.609 c 5.69,0.41 6.68,0.516 12.16,1.031 l 0.66,-0.621 c -0.11,-4.234 -0.11,-5.266 0,-9.809 l -0.66,-0.718 z m -0.12,-68.711 c -5.7,-0.094 -6.57,-0.094 -11.94,-0.406 l -0.55,0.722 c 0.32,5.473 0.66,10.227 0.66,21.692 0,19.73 -0.34,23.457 -1.09,29.55 l 0.53,0.727 c 4.71,0.719 6.37,0.926 11.85,2.055 l 1.09,-0.614 c -0.32,-5.379 -0.66,-10.949 -0.66,-24.277 0,-19.215 0.23,-21.805 0.66,-28.824 l -0.55,-0.625" /><path
id="path44"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1899.44,641.004 c 0,4.336 0,10.019 -0.77,12.918 -2.29,8.055 -10.2,10.633 -18.32,10.633 -6.47,0 -12.82,-1.34 -18.96,-3.403 l -0.67,-0.621 c -0.1,-2.168 -0.1,-2.789 -0.31,-7.539 l 0.87,-0.512 c 4.61,1.856 9.53,3.915 16.67,3.915 5.49,0 8.01,-1.961 9.09,-3.825 0.99,-1.652 0.99,-3.605 0.99,-6.398 l -1.86,-0.211 c -19.73,-2.168 -32.01,-6.613 -32.01,-20.453 0,-10.227 7.68,-17.246 18.63,-17.246 8.33,0 13.27,3.715 15.36,5.261 l -0.12,-3.714 0.44,-0.621 c 5.05,0.207 5.94,0.312 11.08,0.406 l 0.54,0.527 c -0.54,6.719 -0.65,7.848 -0.65,20.652 l 0,10.231 z m -11.29,-2.481 0,-17.25 c -1.22,-1.031 -5.16,-4.543 -11.96,-4.543 -10.42,0 -10.42,8.879 -10.42,9.399 0,9.195 10.31,10.637 21.4,12.191 l 0.98,0.203" /><path
id="path46"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1931.47,609.594 c -5.26,-0.094 -6.37,-0.199 -11.51,-0.406 l -0.56,0.722 c 0.22,7.328 0.56,16.637 0.56,36.473 0,14.254 0,29.539 -1.12,42.762 l 0.56,0.625 c 5.39,0.82 6.47,1.031 11.95,2.168 l 0.65,-0.719 c -0.76,-13.539 -0.76,-27.172 -0.76,-40.707 0,-22.629 0.33,-30.473 0.89,-40.293 l -0.66,-0.625" /><path
id="path48"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1964.14,678.305 c -5.59,-0.215 -6.78,-0.309 -12.17,-0.836 l -0.66,0.621 c 0.11,1.344 0.11,2.793 0.11,4.129 0,1.863 -0.11,3.515 -0.2,5.594 l 0.75,0.609 c 5.71,0.41 6.69,0.516 12.17,1.031 l 0.67,-0.621 c -0.11,-4.234 -0.11,-5.266 0,-9.809 l -0.67,-0.718 z m -0.11,-68.711 c -5.69,-0.094 -6.58,-0.094 -11.95,-0.406 l -0.54,0.722 c 0.33,5.473 0.65,10.227 0.65,21.692 0,19.73 -0.32,23.457 -1.09,29.55 l 0.55,0.727 c 4.71,0.719 6.37,0.926 11.85,2.055 l 1.08,-0.614 c -0.31,-5.379 -0.65,-10.949 -0.65,-24.277 0,-19.215 0.21,-21.805 0.65,-28.824 l -0.55,-0.625" /><path
id="path50"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2007.46,640.898 c 4.41,-1.339 14.38,-4.543 14.38,-15.488 0,-4.137 -1.64,-8.789 -6.14,-12.195 -5.82,-4.641 -13.61,-4.953 -17.56,-4.953 -5.91,0 -10.85,1.031 -15.01,2.586 -0.56,0.199 -1.11,0.402 -1.65,0.613 l -0.55,0.926 c 0.43,4.035 0.43,4.547 0.66,8.676 l 1.11,0.312 c 1.96,-1.441 6.77,-4.953 15.23,-4.953 8.67,0 11.85,4.543 11.85,7.742 0,4.75 -4.71,6.309 -11.42,8.375 l -3.5,1.133 c -4.51,1.34 -14.36,4.332 -14.36,14.984 0,10.637 9.85,15.899 22.14,15.899 8.1,0 13.82,-2.168 15.79,-2.895 l 0.55,-0.719 c -0.44,-3.82 -0.55,-4.234 -0.86,-8.16 l -0.99,-0.41 c -2.76,1.652 -7.03,4.133 -14.15,4.133 -1.53,0 -3.07,-0.109 -4.73,-0.524 -3.3,-0.82 -6.02,-2.988 -6.02,-6.195 0,-4.445 4.49,-5.793 11.31,-7.75 l 3.92,-1.137" /><path
id="path52"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2081.83,622.617 c -1.43,-1.133 -3.84,-3 -7.89,-4.543 -3.07,-1.035 -6.37,-1.551 -9.55,-1.551 -3.4,0 -9.64,0.516 -14.17,5.579 -3.71,4.226 -4.05,9.296 -4.15,12.91 17.98,0.105 20.94,0.105 38.06,0 l 0.76,0.621 c 0.11,4.547 0.34,14.769 -5.92,21.801 -3.29,3.718 -9.33,7.121 -17.98,7.121 -14.36,0 -26.64,-9.395 -26.64,-28.61 0,-17.976 11.29,-27.683 29.27,-27.683 9.77,0 15.69,2.988 17.56,3.914 l 0.65,0.726 c 0.21,4.032 0.32,5.067 0.88,9.2 l -0.88,0.515 z m -8.78,63.539 c -2.07,-0.113 -4.16,-0.113 -6.25,-0.113 -2.08,0 -4.07,0 -6.46,0.113 l -0.67,-0.527 c -2.41,-6.715 -5.59,-13.316 -6.69,-15.801 l 0.44,-0.719 c 3.84,0 5.05,0 8,-0.113 l 0.78,0.422 c 4.94,7.539 5.91,8.98 11.3,15.898 l -0.45,0.84 z m 0.54,-43.183 c -10.08,-0.11 -14.24,-0.215 -27.52,-0.11 1.11,10.328 8.33,14.258 14.47,14.258 4.94,0 9.76,-2.383 11.97,-8.055 0.88,-2.378 0.99,-4.652 1.08,-6.093" /><path
id="path54"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2146.2,622.617 c -1.42,-1.133 -3.84,-3 -7.89,-4.543 -3.09,-1.035 -6.37,-1.551 -9.54,-1.551 -3.41,0 -9.65,0.516 -14.15,5.579 -3.73,4.226 -4.05,9.296 -4.16,12.91 17.97,0.105 20.95,0.105 38.05,0 l 0.76,0.621 c 0.11,4.547 0.34,14.769 -5.92,21.801 -3.29,3.718 -9.34,7.121 -17.99,7.121 -14.36,0 -26.64,-9.395 -26.64,-28.61 0,-17.976 11.3,-27.683 29.28,-27.683 9.76,0 15.68,2.988 17.56,3.914 l 0.64,0.726 c 0.22,4.032 0.33,5.067 0.89,9.2 l -0.89,0.515 z m -8.22,20.356 c -10.09,-0.11 -14.26,-0.215 -27.52,-0.11 1.09,10.328 8.32,14.258 14.45,14.258 4.96,0 9.78,-2.383 11.97,-8.055 0.88,-2.378 0.99,-4.652 1.1,-6.093" /><path
id="path56"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1047.53,565.758 c 0.54,-5.992 1.1,-12.195 0.99,-25 -2.97,0.203 -4.06,0.203 -6.36,0.203 -5.7,0 -16.12,-0.313 -24.14,-7.125 -4.6,-3.824 -9.65,-10.953 -9.65,-22.215 0,-15.699 10.09,-26.555 24.69,-26.555 8,0 12.49,3.313 15.12,5.172 l -0.22,-3.824 0.78,-0.617 c 5.04,0.207 6.35,0.305 11.18,0.305 l 0.55,0.726 c -0.45,7.125 -0.88,14.774 -0.88,30.781 0,10.329 0.11,35.954 0.88,50.313 l -0.77,0.625 c -4.94,-1.035 -6.03,-1.238 -11.63,-2.172 l -0.54,-0.617 z m 0.54,-66.942 c -1.53,-1.238 -5.58,-4.554 -12.27,-4.554 -5.71,0 -9.33,2.484 -11.31,4.652 -2.3,2.578 -4.06,6.82 -4.06,12.707 0,9.192 3.95,14.055 6.37,16.223 5.27,4.644 12.5,4.844 15.9,4.844 2.31,0 3.62,-0.2 5.48,-0.297 0.11,-16.95 0.11,-20.043 -0.11,-33.575" /><path
id="path58"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1124.85,499.227 c -1.43,-1.137 -3.84,-2.997 -7.9,-4.547 -3.08,-1.035 -6.36,-1.555 -9.55,-1.555 -3.39,0 -9.64,0.52 -14.13,5.578 -3.73,4.238 -4.07,9.309 -4.18,12.918 17.99,0.106 20.95,0.106 38.06,0 l 0.77,0.617 c 0.11,4.543 0.32,14.774 -5.93,21.797 -3.28,3.719 -9.31,7.125 -17.98,7.125 -14.37,0 -26.65,-9.398 -26.65,-28.613 0,-17.973 11.29,-27.68 29.29,-27.68 9.75,0 15.68,2.988 17.53,3.922 l 0.67,0.723 c 0.22,4.031 0.33,5.062 0.87,9.191 l -0.87,0.524 z m -8.23,20.351 c -10.09,-0.101 -14.26,-0.211 -27.53,-0.101 1.1,10.328 8.34,14.253 14.48,14.253 4.93,0 9.76,-2.378 11.95,-8.054 0.88,-2.379 0.99,-4.656 1.1,-6.098" /><path
id="path60"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1210.28,527.426 c 8.01,-3.305 18.65,-7.649 18.65,-20.871 0,-11.567 -9.11,-22 -28.2,-22 -11.61,0 -19.07,3.3 -21.71,4.554 l -0.43,0.719 c 0.43,3.613 0.54,5.57 0.87,9.496 l 1.1,0.422 c 2.74,-1.758 9.1,-6.101 19.3,-6.101 11.29,0 16.01,5.476 16.01,11.671 0,7.231 -6.36,10.02 -13.5,12.602 l -5.48,2.277 c -7.77,3.407 -18.21,7.852 -18.21,20.453 0,3.825 1.12,7.758 3.41,10.856 5.05,6.809 14.15,9.086 23.04,9.086 8.65,0 13.92,-1.547 19.74,-3.305 l 0.54,-0.824 c -0.43,-3.93 -0.54,-5.379 -0.87,-9.094 l -0.88,-0.414 c -4.72,2.274 -9.88,4.75 -18.1,4.75 -9.1,0 -14.8,-4.023 -14.8,-10.121 0,-4.648 3.28,-6.816 5.59,-8.164 1.42,-0.828 1.87,-1.027 8.44,-3.719 l 5.49,-2.273" /><path
id="path62"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1294.4,539.512 c -0.22,-7.844 -0.34,-15.184 -0.34,-23.551 0,-12.699 0.34,-20.352 0.56,-24.793 0,-1.449 0.11,-2.898 0.21,-4.34 l -0.43,-0.625 c -5.26,-0.101 -6.15,-0.199 -11.19,-0.406 l -0.65,0.617 0.11,4.336 c -2.42,-1.641 -8.24,-5.883 -17.22,-5.883 -4.27,0 -8.99,0.93 -12.51,3.512 -7.02,5.375 -7.02,14.152 -7.12,22.207 l 0,6.406 c -0.22,14.77 -0.22,16.426 -0.56,22 l 0.56,0.727 c 5.14,0.109 6.13,0.109 11.28,0.515 l 0.67,-0.722 -0.44,-22.617 c 0,-2.801 -0.12,-4.856 0,-9.809 0.1,-4.348 0.33,-13.645 11.4,-13.645 6.47,0 11.08,3.407 13.72,5.375 0.11,5.571 0.11,10.329 0.11,16.321 0,14.363 -0.11,17.254 -0.78,23.965 l 0.67,0.726 c 5.05,0.094 6.25,0.094 11.29,0.406 l 0.66,-0.722" /><path
id="path64"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1326.98,554.91 c -5.61,-0.211 -6.82,-0.312 -12.19,-0.84 l -0.66,0.629 c 0.12,1.348 0.12,2.793 0.12,4.129 0,1.863 -0.12,3.516 -0.22,5.586 l 0.76,0.617 c 5.71,0.41 6.7,0.516 12.19,1.024 l 0.65,-0.614 c -0.11,-4.23 -0.11,-5.265 0,-9.808 l -0.65,-0.723 z m -0.13,-68.707 c -5.7,-0.101 -6.58,-0.101 -11.95,-0.406 l -0.54,0.726 c 0.32,5.473 0.65,10.223 0.65,21.688 0,19.727 -0.33,23.457 -1.1,29.543 l 0.56,0.726 c 4.72,0.723 6.36,0.934 11.84,2.071 l 1.1,-0.629 c -0.34,-5.363 -0.65,-10.949 -0.65,-24.27 0,-19.222 0.22,-21.804 0.65,-28.824 l -0.56,-0.625" /><path
id="path66"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1370.3,517.504 c 4.38,-1.332 14.36,-4.535 14.36,-15.484 0,-4.141 -1.65,-8.79 -6.14,-12.192 -5.82,-4.652 -13.61,-4.961 -17.56,-4.961 -5.92,0 -10.85,1.035 -15.02,2.582 -0.54,0.207 -1.1,0.406 -1.64,0.621 l -0.55,0.926 c 0.44,4.031 0.44,4.547 0.66,8.676 l 1.1,0.316 c 1.97,-1.445 6.79,-4.961 15.25,-4.961 8.65,0 11.83,4.551 11.83,7.746 0,4.747 -4.71,6.313 -11.4,8.372 l -3.51,1.128 c -4.49,1.348 -14.37,4.344 -14.37,14.985 0,10.64 9.88,15.902 22.15,15.902 8.12,0 13.82,-2.168 15.8,-2.89 l 0.54,-0.719 c -0.43,-3.821 -0.54,-4.242 -0.87,-8.156 l -0.99,-0.422 c -2.74,1.66 -7.01,4.136 -14.15,4.136 -1.53,0 -3.07,-0.105 -4.72,-0.519 -3.28,-0.828 -6.03,-2.996 -6.03,-6.195 0,-4.442 4.5,-5.786 11.31,-7.743 l 3.95,-1.148" /><path
id="path68"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1423.15,517.504 c 4.38,-1.332 14.35,-4.535 14.35,-15.484 0,-4.141 -1.62,-8.79 -6.14,-12.192 -5.79,-4.652 -13.6,-4.961 -17.53,-4.961 -5.93,0 -10.87,1.035 -15.02,2.582 -0.55,0.207 -1.11,0.406 -1.65,0.621 l -0.54,0.926 c 0.43,4.031 0.43,4.547 0.65,8.676 l 1.09,0.316 c 1.99,-1.445 6.8,-4.961 15.24,-4.961 8.66,0 11.84,4.551 11.84,7.746 0,4.747 -4.7,6.313 -11.39,8.372 l -3.5,1.128 c -4.52,1.348 -14.38,4.344 -14.38,14.985 0,10.64 9.86,15.902 22.15,15.902 8.12,0 13.81,-2.168 15.8,-2.89 l 0.54,-0.719 c -0.44,-3.821 -0.54,-4.242 -0.87,-8.156 l -0.99,-0.422 c -2.74,1.66 -7.03,4.136 -14.14,4.136 -1.55,0 -3.08,-0.105 -4.72,-0.519 -3.3,-0.828 -6.04,-2.996 -6.04,-6.195 0,-4.442 4.51,-5.786 11.29,-7.743 l 3.96,-1.148" /><path
id="path70"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1497.5,499.227 c -1.43,-1.137 -3.84,-2.997 -7.9,-4.547 -3.06,-1.035 -6.36,-1.555 -9.53,-1.555 -3.41,0 -9.65,0.52 -14.15,5.578 -3.72,4.238 -4.06,9.309 -4.17,12.918 17.98,0.106 20.95,0.106 38.05,0 l 0.77,0.617 c 0.12,4.543 0.34,14.774 -5.92,21.797 -3.3,3.719 -9.32,7.125 -17.99,7.125 -14.35,0 -26.65,-9.398 -26.65,-28.613 0,-17.973 11.29,-27.68 29.28,-27.68 9.77,0 15.69,2.988 17.55,3.922 l 0.66,0.723 c 0.21,4.031 0.34,5.062 0.87,9.191 l -0.87,0.524 z m -8.22,20.351 c -10.1,-0.101 -14.26,-0.211 -27.53,-0.101 1.1,10.328 8.33,14.253 14.48,14.253 4.92,0 9.75,-2.378 11.95,-8.054 0.88,-2.379 0.99,-4.656 1.1,-6.098" /><path
id="path72"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1605.63,513.789 c -0.22,7.231 -1.64,14.457 -6.68,19.941 -4.82,5.168 -12.18,7.43 -19.64,7.43 -10.96,0 -17.33,-4.226 -20.39,-7.23 -7.36,-6.918 -7.57,-17.035 -7.57,-20.961 0,-3.41 0.12,-13.953 7.57,-21.082 3.51,-3.407 9.77,-6.914 19.62,-6.914 7.67,0 14.15,1.75 18.98,6.3 3.62,3.407 5.91,7.43 7.14,12.497 0.75,3.093 0.97,6.503 0.97,10.019 z m -11.94,-0.41 c 0.1,-2.168 0,-9.098 -2.54,-13.742 -3.17,-5.684 -8.44,-6.922 -12.49,-6.922 -2.2,0 -4.49,0.41 -6.47,1.348 -8.67,4.132 -8.78,14.558 -8.78,18.699 0,4.336 0.34,10.332 3.3,14.554 3.84,5.793 9.97,5.993 12.06,5.993 6.14,0 9.65,-2.676 11.74,-5.883 2.73,-4.543 3.18,-11.465 3.18,-14.047" /><path
id="path74"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1664.31,498.398 c -0.43,-4.445 -0.56,-4.957 -0.86,-9.199 l -0.78,-0.719 c -3.19,-1.445 -7.46,-3.507 -15.14,-3.507 -16.55,0 -27.32,11.257 -27.32,27.375 0,16.422 10.53,28.812 27.53,28.812 7.14,0 12.19,-2.168 15.03,-3.301 l 0.44,-0.726 c -0.44,-3.715 -0.54,-5.063 -0.76,-8.16 l -0.88,-0.41 c -3.61,2.48 -7.79,4.027 -12.17,4.027 -9.11,0 -17.11,-6.606 -17.11,-19.828 0,-14.059 8.44,-19.117 17,-19.117 7.45,0 12.06,3.621 14.16,5.171 l 0.86,-0.418" /><path
id="path76"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1719.49,498.398 c -0.47,-4.445 -0.55,-4.957 -0.9,-9.199 l -0.76,-0.719 c -3.17,-1.445 -7.46,-3.507 -15.12,-3.507 -16.57,0 -27.33,11.257 -27.33,27.375 0,16.422 10.55,28.812 27.54,28.812 7.13,0 12.17,-2.168 15.02,-3.301 l 0.43,-0.726 c -0.43,-3.715 -0.54,-5.063 -0.77,-8.16 l -0.87,-0.41 c -3.61,2.48 -7.78,4.027 -12.17,4.027 -9.1,0 -17.11,-6.606 -17.11,-19.828 0,-14.059 8.44,-19.117 16.99,-19.117 7.46,0 12.07,3.621 14.15,5.171 l 0.9,-0.418" /><path
id="path78"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1745.58,554.91 c -5.59,-0.211 -6.8,-0.312 -12.17,-0.84 l -0.67,0.629 c 0.11,1.348 0.11,2.793 0.11,4.129 0,1.863 -0.11,3.516 -0.2,5.586 l 0.76,0.617 c 5.69,0.41 6.69,0.516 12.17,1.024 l 0.66,-0.614 c -0.12,-4.23 -0.12,-5.265 0,-9.808 l -0.66,-0.723 z m -0.11,-68.707 c -5.69,-0.101 -6.58,-0.101 -11.95,-0.406 l -0.56,0.726 c 0.34,5.473 0.66,10.223 0.66,21.688 0,19.727 -0.32,23.457 -1.09,29.543 l 0.56,0.726 c 4.7,0.723 6.34,0.934 11.82,2.071 l 1.1,-0.629 c -0.33,-5.363 -0.67,-10.949 -0.67,-24.27 0,-19.222 0.24,-21.804 0.67,-28.824 l -0.54,-0.625" /><path
id="path80"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1801.95,565.758 c 0.56,-5.992 1.1,-12.195 0.99,-25 -2.97,0.203 -4.05,0.203 -6.37,0.203 -5.71,0 -16.13,-0.313 -24.13,-7.125 -4.6,-3.824 -9.65,-10.953 -9.65,-22.215 0,-15.699 10.08,-26.555 24.68,-26.555 8.01,0 12.5,3.313 15.15,5.172 l -0.24,-3.824 0.77,-0.617 c 5.05,0.207 6.35,0.305 11.2,0.305 l 0.54,0.726 c -0.45,7.125 -0.88,14.774 -0.88,30.781 0,10.329 0.11,35.954 0.88,50.313 l -0.77,0.625 c -4.92,-1.035 -6.02,-1.238 -11.61,-2.172 l -0.56,-0.617 z m 0.56,-66.942 c -1.55,-1.238 -5.61,-4.554 -12.3,-4.554 -5.7,0 -9.32,2.484 -11.29,4.652 -2.3,2.578 -4.07,6.82 -4.07,12.707 0,9.192 3.97,14.055 6.37,16.223 5.26,4.644 12.49,4.844 15.9,4.844 2.3,0 3.62,-0.2 5.5,-0.297 0.09,-16.95 0.09,-20.043 -0.11,-33.575" /><path
id="path82"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1879.27,499.227 c -1.43,-1.137 -3.84,-2.997 -7.89,-4.547 -3.09,-1.035 -6.37,-1.555 -9.54,-1.555 -3.41,0 -9.66,0.52 -14.15,5.578 -3.73,4.238 -4.07,9.309 -4.18,12.918 17.98,0.106 20.95,0.106 38.05,0 l 0.77,0.617 c 0.11,4.543 0.35,14.774 -5.91,21.797 -3.29,3.719 -9.32,7.125 -17.99,7.125 -14.37,0 -26.66,-9.398 -26.66,-28.613 0,-17.973 11.3,-27.68 29.29,-27.68 9.75,0 15.69,2.988 17.54,3.922 l 0.67,0.723 c 0.21,4.031 0.32,5.062 0.87,9.191 l -0.87,0.524 z m -8.23,20.351 c -10.08,-0.101 -14.25,-0.211 -27.53,-0.101 1.11,10.328 8.34,14.253 14.49,14.253 4.92,0 9.75,-2.378 11.95,-8.054 0.86,-2.379 0.99,-4.656 1.09,-6.098" /><path
id="path84"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1947.6,486.203 c -5.29,-0.101 -5.94,-0.101 -10.99,-0.406 l -0.75,0.726 c 0,1.133 0.11,2.266 0.11,3.407 0.1,5.058 0.1,10.121 0.1,15.187 0,15.903 -0.1,16.938 -0.66,19.106 -2.08,7.847 -8.33,7.847 -9.86,7.847 -6.59,0 -11.63,-3.605 -14.59,-5.781 -0.11,-17.969 0.11,-27.375 0.87,-39.461 l -0.65,-0.625 c -5.37,-0.101 -6.26,-0.101 -11.52,-0.406 l -0.54,0.726 c 0.11,5.782 0.32,11.356 0.32,18.997 0,16.535 -0.77,25.316 -1.31,32.234 l 0.65,0.726 c 5.48,0.934 6.46,1.137 11.62,2.071 l 0.78,-0.723 -0.11,-5.371 c 2.85,1.856 9.66,6.402 19.31,6.402 2.74,0 6.14,-0.421 9.1,-1.961 2.83,-1.554 5.16,-3.929 6.35,-6.718 1.44,-3.094 1.53,-6.196 1.65,-12.602 l 0,-12.094 c 0.31,-12.086 0.44,-16.734 0.78,-20.656 l -0.66,-0.625" /><path
id="path86"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1992.99,494.262 c -0.32,-3.403 -0.32,-4.129 -0.43,-7.121 l -0.56,-0.618 c -2.29,-0.519 -4.15,-0.937 -8.21,-0.937 -2.65,0 -9.55,0 -12.96,5.371 -1.96,2.996 -1.96,5.473 -1.96,17.664 l 0.21,22.731 c -3.84,0 -3.94,-0.102 -7.89,-0.211 l -0.44,0.621 c 0.21,3.316 0.21,4.136 0.21,7.441 l 0.66,0.625 c 2.41,0 3.86,-0.109 7.46,0 -0.11,2.168 -0.11,4.438 -0.11,6.606 -0.1,1.972 -0.21,3.921 -0.34,5.89 l 0.56,0.727 c 4.94,1.129 6.15,1.441 11.18,2.887 l 0.77,-0.52 c -0.32,-6.813 -0.43,-8.16 -0.43,-15.699 4.6,0.109 5.91,0.109 12.17,0.308 l 0.56,-0.613 c -0.22,-2.691 -0.34,-3.828 -0.34,-7.344 l -0.54,-0.617 c -5.49,0.11 -6.15,0.215 -11.95,0.215 l -0.24,-19.219 c 0.13,-1.238 0.13,-7.133 0.13,-8.578 0,-7.535 0.98,-9.918 6.46,-9.918 2.31,0 4.07,0.52 5.27,0.93 l 0.76,-0.621" /><path
id="path88"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2049.03,517.609 c 0,4.344 0,10.028 -0.77,12.918 -2.29,8.067 -10.2,10.633 -18.32,10.633 -6.46,0 -12.81,-1.332 -18.96,-3.406 l -0.67,-0.621 c -0.1,-2.164 -0.1,-2.785 -0.32,-7.539 l 0.88,-0.508 c 4.62,1.855 9.54,3.918 16.66,3.918 5.48,0 8.01,-1.961 9.1,-3.824 1,-1.653 1,-3.61 1,-6.407 l -1.87,-0.203 c -19.73,-2.172 -32.03,-6.609 -32.03,-20.457 0,-10.226 7.69,-17.246 18.66,-17.246 8.33,0 13.25,3.715 15.34,5.266 l -0.1,-3.719 0.43,-0.617 c 5.07,0.207 5.92,0.305 11.08,0.406 l 0.56,0.52 c -0.56,6.718 -0.67,7.851 -0.67,20.664 l 0,10.222 z m -11.3,-2.472 0,-17.258 c -1.21,-1.031 -5.15,-4.543 -11.94,-4.543 -10.43,0 -10.43,8.883 -10.43,9.402 0,9.188 10.31,10.641 21.4,12.192 l 0.97,0.207" /><path
id="path90"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2081.06,486.203 c -5.27,-0.101 -6.37,-0.199 -11.53,-0.406 l -0.54,0.726 c 0.22,7.325 0.54,16.629 0.54,36.457 0,14.266 0,29.551 -1.08,42.778 l 0.54,0.617 c 5.38,0.824 6.47,1.027 11.96,2.172 l 0.66,-0.727 c -0.77,-13.527 -0.77,-27.172 -0.77,-40.703 0,-22.621 0.32,-30.476 0.88,-40.289 l -0.66,-0.625" /><path
id="path92"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2146.2,499.227 c -1.42,-1.137 -3.84,-2.997 -7.89,-4.547 -3.09,-1.035 -6.37,-1.555 -9.54,-1.555 -3.41,0 -9.65,0.52 -14.15,5.578 -3.73,4.238 -4.05,9.309 -4.16,12.918 17.97,0.106 20.95,0.106 38.05,0 l 0.76,0.617 c 0.11,4.543 0.34,14.774 -5.92,21.797 -3.29,3.719 -9.34,7.125 -17.99,7.125 -14.36,0 -26.64,-9.398 -26.64,-28.613 0,-17.973 11.3,-27.68 29.28,-27.68 9.76,0 15.68,2.988 17.56,3.922 l 0.64,0.723 c 0.22,4.031 0.33,5.062 0.89,9.191 l -0.89,0.524 z m -8.22,20.351 c -10.09,-0.101 -14.26,-0.211 -27.52,-0.101 1.09,10.328 8.32,14.253 14.45,14.253 4.96,0 9.78,-2.378 11.97,-8.054 0.88,-2.379 0.99,-4.656 1.1,-6.098" /><path
id="path94"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 649.375,337.137 c -10.859,0.304 -13.051,0.304 -26.105,0.422 -0.211,-4.454 -0.211,-20.262 0.66,-31.516 l -0.539,-0.727 c -6.043,0 -6.914,-0.093 -12.731,-0.296 l -0.547,0.71 c 0.438,7.864 0.653,13.844 0.653,44.329 0,14.66 -0.321,21.164 -0.653,27.464 l 0.547,0.727 c 7.57,-0.094 36.629,0.113 44.203,0.313 l 0.543,-0.723 c -0.433,-3.719 -0.433,-4.235 -0.66,-8.254 l -0.66,-0.637 c -13.594,0.317 -17.324,0.414 -30.695,0.414 -0.121,-4.23 -0.332,-14.656 -0.332,-20.761 l 0,-2.368 c 12.5,0.094 16.226,0.2 27.191,0.512 l 0.551,-0.617 c -0.446,-4.754 -0.446,-5.266 -0.766,-8.27 l -0.66,-0.722" /><path
id="path96"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 706.977,336.82 c 0,4.344 0,10.024 -0.778,12.918 -2.293,8.063 -10.191,10.641 -18.312,10.641 -6.469,0 -12.828,-1.344 -18.965,-3.418 l -0.664,-0.609 c -0.113,-2.172 -0.113,-2.793 -0.328,-7.543 l 0.883,-0.512 c 4.605,1.851 9.539,3.922 16.667,3.922 5.489,0 8.004,-1.957 9.106,-3.821 0.98,-1.652 0.98,-3.609 0.98,-6.406 l -1.855,-0.203 c -19.742,-2.172 -32.027,-6.609 -32.027,-20.453 0,-10.234 7.671,-17.25 18.636,-17.25 8.34,0 13.274,3.707 15.356,5.269 l -0.11,-3.722 0.442,-0.613 c 5.047,0.203 5.922,0.296 11.078,0.402 l 0.551,0.527 c -0.551,6.711 -0.66,7.844 -0.66,20.653 l 0,10.218 z m -11.301,-2.476 0,-17.246 c -1.203,-1.032 -5.149,-4.551 -11.953,-4.551 -10.422,0 -10.422,8.887 -10.422,9.406 0,9.188 10.312,10.645 21.39,12.192 l 0.985,0.199" /><path
id="path98"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 768.398,317.617 c -0.449,-4.433 -0.562,-4.957 -0.882,-9.191 l -0.77,-0.727 c -3.183,-1.457 -7.453,-3.515 -15.137,-3.515 -16.558,0 -27.308,11.254 -27.308,27.371 0,16.433 10.527,28.824 27.531,28.824 7.129,0 12.168,-2.164 15.023,-3.305 l 0.442,-0.722 c -0.442,-3.719 -0.551,-5.071 -0.774,-8.161 l -0.875,-0.41 c -3.617,2.481 -7.781,4.02 -12.175,4.02 -9.11,0 -17.11,-6.602 -17.11,-19.824 0,-14.043 8.45,-19.118 17,-19.118 7.461,0 12.063,3.618 14.153,5.168 l 0.882,-0.41" /><path
id="path100"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 830.898,305.422 c -5.261,-0.106 -5.914,-0.106 -10.96,-0.402 l -0.774,0.71 0.113,3.411 c 0.114,5.371 0.114,10.851 0.114,16.222 l -0.114,11.047 c 0,2.379 0,4.754 -0.547,7.031 -1.207,4.75 -4.273,7.84 -9.867,7.84 -6.25,0 -11.082,-3.293 -14.703,-5.773 -0.105,-17.977 0.117,-27.375 0.774,-39.465 l -0.547,-0.621 c -5.039,-0.106 -6.364,-0.106 -11.742,-0.402 l -0.543,0.71 c 0.211,7.336 0.543,16.637 0.543,36.465 0,8.684 -0.11,17.364 -0.223,26.039 -0.215,9.09 -0.543,12.086 -0.863,16.735 l 0.543,0.621 c 5.261,0.824 7.007,1.137 11.953,2.168 l 0.664,-0.727 c -0.664,-11.054 -0.664,-22.203 -0.664,-33.367 3.508,2.172 10.418,6.414 19.629,6.414 2.523,0 5.046,-0.312 7.351,-1.246 4.934,-1.871 7.903,-5.566 8.988,-9.809 0.551,-2.078 0.551,-3.308 0.77,-10.234 l 0,-12.086 0.105,-4.855 c 0.219,-8.664 0.219,-10.125 0.668,-15.805 l -0.668,-0.621" /><path
id="path102"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 899.781,305.422 c -5.269,-0.106 -5.929,-0.106 -10.976,-0.402 l -0.758,0.71 0.105,3.411 c 0.11,5.371 0.11,10.851 0.11,16.222 l -0.11,11.047 c 0,2.379 0,4.754 -0.55,7.031 -1.207,4.75 -4.278,7.84 -9.868,7.84 -6.254,0 -11.078,-3.293 -14.703,-5.773 -0.105,-17.977 0.117,-27.375 0.77,-39.465 l -0.543,-0.621 c -5.043,-0.106 -6.363,-0.106 -11.735,-0.402 l -0.55,0.71 c 0.222,7.336 0.55,16.637 0.55,36.465 0,8.684 -0.105,17.364 -0.218,26.039 -0.215,9.09 -0.559,12.086 -0.879,16.735 l 0.547,0.621 c 5.261,0.824 7.019,1.137 11.953,2.168 l 0.66,-0.727 c -0.66,-11.054 -0.66,-22.203 -0.66,-33.367 3.504,2.172 10.418,6.414 19.633,6.414 2.519,0 5.043,-0.312 7.343,-1.246 4.942,-1.871 7.895,-5.566 8.993,-9.809 0.554,-2.078 0.554,-3.308 0.769,-10.234 l 0,-12.086 0.117,-4.855 C 900,313.184 900,311.723 900.43,306.043 l -0.649,-0.621" /><path
id="path104"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 971.492,333.008 c -0.215,7.226 -1.637,14.457 -6.683,19.941 -4.825,5.16 -12.172,7.43 -19.633,7.43 -10.961,0 -17.324,-4.227 -20.391,-7.231 -7.351,-6.914 -7.566,-17.043 -7.566,-20.972 0,-3.406 0.105,-13.949 7.566,-21.074 3.5,-3.403 9.758,-6.918 19.633,-6.918 7.672,0 14.137,1.765 18.965,6.304 3.625,3.403 5.93,7.446 7.129,12.492 0.765,3.114 0.98,6.52 0.98,10.028 z m -11.945,-0.41 c 0.105,-2.168 0,-9.098 -2.527,-13.739 -3.172,-5.675 -8.434,-6.933 -12.493,-6.933 -2.199,0 -4.507,0.418 -6.468,1.344 -8.672,4.136 -8.782,14.57 -8.782,18.707 0,4.336 0.332,10.332 3.286,14.55 3.843,5.805 9.98,6.012 12.07,6.012 6.137,0 9.644,-2.695 11.738,-5.894 2.738,-4.551 3.176,-11.465 3.176,-14.047" /><path
id="path106"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1030.18,317.617 c -0.44,-4.433 -0.56,-4.957 -0.89,-9.191 l -0.75,-0.727 c -3.19,-1.457 -7.47,-3.515 -15.15,-3.515 -16.554,0 -27.312,11.254 -27.312,27.371 0,16.433 10.531,28.824 27.532,28.824 7.14,0 12.18,-2.164 15.03,-3.305 l 0.44,-0.722 c -0.44,-3.719 -0.54,-5.071 -0.77,-8.161 l -0.87,-0.41 c -3.63,2.481 -7.79,4.02 -12.18,4.02 -9.11,0 -17.112,-6.602 -17.112,-19.824 0,-14.043 8.452,-19.118 17.002,-19.118 7.45,0 12.07,3.618 14.14,5.168 l 0.89,-0.41" /><path
id="path108"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1092.69,305.422 c -5.27,-0.106 -5.93,-0.106 -10.97,-0.402 l -0.77,0.71 0.11,3.411 c 0.12,5.371 0.12,10.851 0.12,16.222 l -0.12,11.047 c 0,2.379 0,4.754 -0.55,7.031 -1.21,4.75 -4.27,7.84 -9.87,7.84 -6.25,0 -11.08,-3.293 -14.69,-5.773 -0.11,-17.977 0.1,-27.375 0.76,-39.465 l -0.54,-0.621 c -5.05,-0.106 -6.37,-0.106 -11.74,-0.402 l -0.55,0.71 c 0.22,7.336 0.55,16.637 0.55,36.465 0,8.684 -0.1,17.364 -0.22,26.039 -0.22,9.09 -0.55,12.086 -0.88,16.735 l 0.55,0.621 c 5.26,0.824 7.03,1.137 11.96,2.168 l 0.65,-0.727 c -0.65,-11.054 -0.65,-22.203 -0.65,-33.367 3.51,2.172 10.41,6.414 19.63,6.414 2.52,0 5.04,-0.312 7.35,-1.246 4.93,-1.871 7.89,-5.566 8.99,-9.809 0.54,-2.078 0.54,-3.308 0.77,-10.234 l 0,-12.086 0.11,-4.855 c 0.22,-8.664 0.22,-10.125 0.65,-15.805 l -0.65,-0.621" /><path
id="path110"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1136.11,336.727 c 4.39,-1.348 14.37,-4.551 14.37,-15.497 0,-4.132 -1.65,-8.781 -6.13,-12.195 -5.83,-4.652 -13.61,-4.949 -17.56,-4.949 -5.92,0 -10.86,1.031 -15.02,2.574 -0.54,0.203 -1.1,0.418 -1.64,0.617 l -0.56,0.934 c 0.45,4.035 0.45,4.551 0.66,8.668 l 1.1,0.316 c 1.97,-1.445 6.8,-4.949 15.24,-4.949 8.67,0 11.84,4.539 11.84,7.746 0,4.754 -4.7,6.301 -11.4,8.36 l -3.5,1.148 c -4.51,1.344 -14.37,4.332 -14.37,14.973 0,10.632 9.86,15.906 22.15,15.906 8.11,0 13.81,-2.164 15.79,-2.891 l 0.55,-0.726 c -0.44,-3.813 -0.55,-4.223 -0.88,-8.16 l -0.98,-0.411 c -2.74,1.653 -7.02,4.141 -14.15,4.141 -1.54,0 -3.07,-0.113 -4.72,-0.531 -3.29,-0.813 -6.03,-2.992 -6.03,-6.188 0,-4.449 4.49,-5.789 11.3,-7.754 l 3.94,-1.132" /><path
id="path112"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1207.08,317.617 c -0.45,-4.433 -0.56,-4.957 -0.88,-9.191 l -0.78,-0.727 c -3.17,-1.457 -7.45,-3.515 -15.12,-3.515 -16.57,0 -27.32,11.254 -27.32,27.371 0,16.433 10.53,28.824 27.53,28.824 7.13,0 12.17,-2.164 15.02,-3.305 l 0.45,-0.722 c -0.45,-3.719 -0.56,-5.071 -0.77,-8.161 l -0.89,-0.41 c -3.61,2.481 -7.77,4.02 -12.17,4.02 -9.1,0 -17.11,-6.602 -17.11,-19.824 0,-14.043 8.46,-19.118 17.01,-19.118 7.46,0 12.06,3.618 14.15,5.168 l 0.88,-0.41" /><path
id="path114"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1269.58,305.422 c -5.26,-0.106 -5.91,-0.106 -10.96,-0.402 l -0.77,0.71 0.1,3.411 c 0.13,5.371 0.13,10.851 0.13,16.222 l -0.13,11.047 c 0,2.379 0,4.754 -0.54,7.031 -1.2,4.75 -4.27,7.84 -9.86,7.84 -6.26,0 -11.09,-3.293 -14.71,-5.773 -0.11,-17.977 0.11,-27.375 0.77,-39.465 l -0.55,-0.621 c -5.05,-0.106 -6.35,-0.106 -11.74,-0.402 l -0.54,0.71 c 0.22,7.336 0.54,16.637 0.54,36.465 0,8.684 -0.1,17.364 -0.22,26.039 -0.21,9.09 -0.53,12.086 -0.86,16.735 l 0.54,0.621 c 5.26,0.824 7.01,1.137 11.95,2.168 l 0.67,-0.727 c -0.67,-11.054 -0.67,-22.203 -0.67,-33.367 3.52,2.172 10.42,6.414 19.63,6.414 2.53,0 5.05,-0.312 7.36,-1.246 4.92,-1.871 7.9,-5.566 8.98,-9.809 0.56,-2.078 0.56,-3.308 0.77,-10.234 l 0,-12.086 0.11,-4.855 c 0.23,-8.664 0.23,-10.125 0.67,-15.805 l -0.67,-0.621" /><path
id="path116"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1338.34,358.73 c -0.21,-7.851 -0.33,-15.191 -0.33,-23.55 0,-12.711 0.33,-20.356 0.56,-24.797 0,-1.445 0.11,-2.883 0.22,-4.34 l -0.45,-0.621 c -5.26,-0.106 -6.13,-0.199 -11.18,-0.402 l -0.65,0.613 0.11,4.34 c -2.42,-1.653 -8.24,-5.887 -17.22,-5.887 -4.29,0 -8.99,0.934 -12.51,3.504 -7.01,5.375 -7.01,14.156 -7.13,22.207 l 0,6.414 c -0.22,14.777 -0.22,16.422 -0.55,22.004 l 0.55,0.715 c 5.17,0.105 6.14,0.105 11.3,0.511 l 0.66,-0.711 -0.45,-22.625 c 0,-2.781 -0.1,-4.855 0,-9.812 0.11,-4.34 0.35,-13.633 11.42,-13.633 6.47,0 11.06,3.406 13.7,5.367 0.12,5.571 0.12,10.325 0.12,16.317 0,14.367 -0.12,17.258 -0.77,23.965 l 0.65,0.726 c 5.05,0.113 6.25,0.113 11.3,0.406 l 0.65,-0.711" /><path
id="path118"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1370.59,305.422 c -5.26,-0.106 -6.36,-0.199 -11.5,-0.402 l -0.56,0.71 c 0.22,7.336 0.56,16.637 0.56,36.465 0,14.258 0,29.547 -1.1,42.774 l 0.54,0.621 c 5.37,0.824 6.47,1.023 11.95,2.168 l 0.65,-0.727 c -0.76,-13.531 -0.76,-27.168 -0.76,-40.703 0,-22.617 0.33,-30.469 0.88,-40.285 l -0.66,-0.621" /><path
id="path120"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1435.74,318.445 c -1.44,-1.148 -3.86,-3.007 -7.91,-4.554 -3.06,-1.032 -6.35,-1.547 -9.54,-1.547 -3.39,0 -9.64,0.515 -14.13,5.59 -3.74,4.222 -4.06,9.285 -4.17,12.91 17.98,0.094 20.93,0.094 38.04,0 l 0.76,0.617 c 0.13,4.539 0.34,14.773 -5.91,21.805 -3.29,3.695 -9.33,7.113 -17.98,7.113 -14.37,0 -26.64,-9.391 -26.64,-28.602 0,-17.984 11.28,-27.691 29.26,-27.691 9.77,0 15.68,2.992 17.55,3.922 l 0.67,0.711 c 0.2,4.043 0.32,5.074 0.87,9.215 l -0.87,0.511 z m -8.22,20.344 c -10.09,-0.105 -14.26,-0.199 -27.53,-0.105 1.08,10.339 8.33,14.265 14.46,14.265 4.94,0 9.75,-2.379 11.96,-8.062 0.88,-2.375 0.99,-4.653 1.11,-6.098" /><path
id="path122"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1562.29,305.316 c -7.46,0 -8.56,0 -15.79,-0.296 l -0.76,0.71 c -1.77,10.336 -2.43,13.333 -3.96,20.872 l -9,44.531 -9.1,-42.156 c -0.54,-2.793 -1.1,-5.676 -1.75,-8.473 -0.88,-4.438 -2.51,-11.984 -2.97,-14.461 l -0.65,-0.727 c -7.9,0 -8.33,-0.093 -15.9,-0.296 l -0.76,0.71 c -1.98,9.309 -11.08,48.45 -17,71.793 l 0.54,0.727 c 6.15,0 7.14,0.113 12.5,0.313 l 0.66,-0.723 c 0.67,-3.621 1.32,-6.922 2.31,-12.078 0.88,-4.657 1.75,-9.211 2.63,-13.75 l 7.99,-39.465 9.23,45.762 c 1.53,7.55 1.76,8.781 3.73,19.214 l 0.66,0.727 c 8.33,0.113 9.76,0.113 17.42,0.313 l 0.67,-0.723 c 0.11,-0.824 0.21,-1.66 0.32,-2.578 0.45,-2.692 2.98,-15.914 3.62,-19.426 l 8.67,-43.59 8.55,40.801 c 4.06,19.941 4.17,20.359 4.73,24.476 l 0.64,0.727 c 5.05,0 6.15,0.113 10.76,0.313 l 0.55,-0.723 c -2.53,-8.055 -3.17,-10.844 -9.22,-35.945 -2.73,-11.266 -5.69,-22.422 -8.1,-33.684 -0.11,-0.711 -0.35,-1.449 -0.44,-2.168 l -0.78,-0.727" /><path
id="path124"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1635.79,318.445 c -1.42,-1.148 -3.84,-3.007 -7.9,-4.554 -3.07,-1.032 -6.35,-1.547 -9.53,-1.547 -3.39,0 -9.65,0.515 -14.15,5.59 -3.72,4.222 -4.06,9.285 -4.17,12.91 17.98,0.094 20.95,0.094 38.06,0 l 0.76,0.617 c 0.11,4.539 0.34,14.773 -5.92,21.805 -3.28,3.695 -9.32,7.113 -17.97,7.113 -14.37,0 -26.66,-9.391 -26.66,-28.602 0,-17.984 11.3,-27.691 29.28,-27.691 9.76,0 15.68,2.992 17.55,3.922 l 0.65,0.711 c 0.22,4.043 0.34,5.074 0.88,9.215 l -0.88,0.511 z m -8.22,20.344 c -10.08,-0.105 -14.26,-0.199 -27.53,-0.105 1.1,10.339 8.33,14.265 14.48,14.265 4.93,0 9.75,-2.379 11.95,-8.062 0.88,-2.375 0.99,-4.653 1.1,-6.098" /><path
id="path126"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1678.68,336.727 c 4.38,-1.348 14.37,-4.551 14.37,-15.497 0,-4.132 -1.64,-8.781 -6.14,-12.195 -5.82,-4.652 -13.62,-4.949 -17.55,-4.949 -5.91,0 -10.85,1.031 -15.02,2.574 -0.56,0.203 -1.12,0.418 -1.65,0.617 l -0.55,0.934 c 0.43,4.035 0.43,4.551 0.65,8.668 l 1.1,0.316 c 1.98,-1.445 6.79,-4.949 15.25,-4.949 8.67,0 11.83,4.539 11.83,7.746 0,4.754 -4.71,6.301 -11.4,8.36 l -3.5,1.148 c -4.5,1.344 -14.36,4.332 -14.36,14.973 0,10.632 9.86,15.906 22.14,15.906 8.11,0 13.83,-2.164 15.79,-2.891 l 0.56,-0.726 c -0.43,-3.813 -0.56,-4.223 -0.88,-8.16 l -0.98,-0.411 c -2.75,1.653 -7.03,4.141 -14.15,4.141 -1.55,0 -3.07,-0.113 -4.73,-0.531 -3.28,-0.813 -6.01,-2.992 -6.01,-6.188 0,-4.449 4.48,-5.789 11.28,-7.754 l 3.95,-1.132" /><path
id="path128"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1733.52,313.477 c -0.35,-3.411 -0.35,-4.122 -0.43,-7.125 l -0.56,-0.622 c -2.32,-0.507 -4.17,-0.925 -8.22,-0.925 -2.64,0 -9.54,0 -12.96,5.371 -1.97,3.008 -1.97,5.48 -1.97,17.664 l 0.23,22.73 c -3.86,0 -3.95,-0.101 -7.91,-0.215 l -0.43,0.633 c 0.22,3.297 0.22,4.117 0.22,7.434 l 0.66,0.613 c 2.41,0 3.84,-0.105 7.46,0 -0.13,2.168 -0.13,4.449 -0.13,6.613 -0.1,1.969 -0.21,3.938 -0.32,5.895 l 0.56,0.715 c 4.94,1.148 6.15,1.441 11.19,2.898 l 0.76,-0.519 c -0.32,-6.821 -0.45,-8.168 -0.45,-15.707 4.62,0.105 5.93,0.105 12.19,0.312 l 0.54,-0.613 c -0.22,-2.688 -0.33,-3.816 -0.33,-7.348 l -0.53,-0.609 c -5.5,0.098 -6.16,0.207 -11.98,0.207 l -0.2,-19.219 c 0.1,-1.23 0.1,-7.129 0.1,-8.57 0,-7.539 0.99,-9.906 6.47,-9.906 2.31,0 4.05,0.507 5.26,0.925 l 0.78,-0.632" /><path
id="path130"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1770.8,336.727 c 4.4,-1.348 14.37,-4.551 14.37,-15.497 0,-4.132 -1.64,-8.781 -6.15,-12.195 -5.81,-4.652 -13.59,-4.949 -17.55,-4.949 -5.92,0 -10.84,1.031 -15.01,2.574 -0.56,0.203 -1.12,0.418 -1.66,0.617 l -0.54,0.934 c 0.44,4.035 0.44,4.551 0.65,8.668 l 1.1,0.316 c 1.97,-1.445 6.81,-4.949 15.25,-4.949 8.67,0 11.85,4.539 11.85,7.746 0,4.754 -4.73,6.301 -11.42,8.36 l -3.5,1.148 c -4.5,1.344 -14.38,4.332 -14.38,14.973 0,10.632 9.88,15.906 22.16,15.906 8.12,0 13.82,-2.164 15.81,-2.891 l 0.53,-0.726 c -0.44,-3.813 -0.53,-4.223 -0.87,-8.16 l -1,-0.411 c -2.73,1.653 -7.01,4.141 -14.13,4.141 -1.55,0 -3.09,-0.113 -4.73,-0.531 -3.28,-0.813 -6.03,-2.992 -6.03,-6.188 0,-4.449 4.5,-5.789 11.3,-7.754 l 3.95,-1.132" /><path
id="path132"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1841.76,317.617 c -0.45,-4.433 -0.56,-4.957 -0.89,-9.191 l -0.75,-0.727 c -3.18,-1.457 -7.47,-3.515 -15.15,-3.515 -16.55,0 -27.31,11.254 -27.31,27.371 0,16.433 10.54,28.824 27.55,28.824 7.11,0 12.16,-2.164 15.01,-3.305 l 0.43,-0.722 c -0.43,-3.719 -0.53,-5.071 -0.76,-8.161 l -0.88,-0.41 c -3.62,2.481 -7.78,4.02 -12.16,4.02 -9.11,0 -17.11,-6.602 -17.11,-19.824 0,-14.043 8.43,-19.118 17,-19.118 7.44,0 12.06,3.618 14.13,5.168 l 0.89,-0.41" /><path
id="path134"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1904.26,305.422 c -5.25,-0.106 -5.92,-0.106 -10.97,-0.402 l -0.77,0.71 0.13,3.411 c 0.1,5.371 0.1,10.851 0.1,16.222 l -0.1,11.047 c 0,2.379 0,4.754 -0.56,7.031 -1.19,4.75 -4.28,7.84 -9.86,7.84 -6.26,0 -11.09,-3.293 -14.7,-5.773 -0.11,-17.977 0.1,-27.375 0.76,-39.465 l -0.54,-0.621 c -5.04,-0.106 -6.36,-0.106 -11.73,-0.402 l -0.56,0.71 c 0.23,7.336 0.56,16.637 0.56,36.465 0,8.684 -0.13,17.364 -0.22,26.039 -0.22,9.09 -0.56,12.086 -0.89,16.735 l 0.55,0.621 c 5.26,0.824 7.03,1.137 11.96,2.168 l 0.66,-0.727 c -0.66,-11.054 -0.66,-22.203 -0.66,-33.367 3.52,2.172 10.42,6.414 19.62,6.414 2.54,0 5.05,-0.312 7.37,-1.246 4.93,-1.871 7.88,-5.566 8.98,-9.809 0.56,-2.078 0.56,-3.308 0.76,-10.234 l 0,-12.086 0.11,-4.855 c 0.23,-8.664 0.23,-10.125 0.66,-15.805 l -0.66,-0.621" /><path
id="path136"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1987.29,305.422 c -7.36,-0.106 -8.22,-0.106 -14.91,-0.402 l -0.77,0.71 c -1.32,6.305 -3.41,14.68 -5.27,22.004 l -6.36,24.805 -6.47,-25.426 c -3.29,-12.496 -4.38,-16.527 -5.38,-21.07 l -0.65,-0.621 c -7.68,-0.106 -8.23,-0.106 -15.14,-0.402 l -0.65,0.71 c -4.82,18.497 -13.05,45.551 -15.35,52.379 l 0.43,0.723 c 5.26,0.316 6.69,0.316 11.95,0.824 l 0.66,-0.621 c 0.66,-3.41 1.43,-6.605 6.16,-25.711 l 5.26,-21.289 7.12,27.789 c 3.3,13.735 3.5,15.082 4.16,18.391 l 0.76,0.715 c 6.49,0 8.35,0 15.59,0.312 l 0.65,-0.715 c 1.54,-7.129 4.17,-17.043 6.14,-24.91 l 5.82,-21.894 6.14,24.078 c 0.87,3.613 1.76,7.23 2.63,10.844 1.86,7.019 2.07,7.839 2.75,11.777 l 0.77,0.613 c 1.75,0 3.6,-0.105 5.37,-0.105 1.64,0 3.28,0.105 4.92,0.105 l 0.67,-0.613 c -2.09,-5.883 -11.73,-34.711 -16.24,-52.379 l -0.76,-0.621" /><path
id="path138"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2060.99,318.445 c -1.43,-1.148 -3.84,-3.007 -7.89,-4.554 -3.07,-1.032 -6.37,-1.547 -9.55,-1.547 -3.4,0 -9.64,0.515 -14.17,5.59 -3.71,4.222 -4.05,9.285 -4.15,12.91 17.98,0.094 20.94,0.094 38.06,0 l 0.76,0.617 c 0.11,4.539 0.34,14.773 -5.92,21.805 -3.29,3.695 -9.33,7.113 -17.98,7.113 -14.36,0 -26.64,-9.391 -26.64,-28.602 0,-17.984 11.29,-27.691 29.27,-27.691 9.77,0 15.69,2.992 17.56,3.922 l 0.65,0.711 c 0.21,4.043 0.32,5.074 0.88,9.215 l -0.88,0.511 z m -8.23,20.344 c -10.08,-0.105 -14.25,-0.199 -27.53,-0.105 1.11,10.339 8.33,14.265 14.49,14.265 4.92,0 9.75,-2.379 11.95,-8.062 0.88,-2.375 0.99,-4.653 1.09,-6.098" /><path
id="path140"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2092.9,374.121 c -5.6,-0.199 -6.8,-0.305 -12.17,-0.832 l -0.65,0.633 c 0.09,1.34 0.09,2.781 0.09,4.125 0,1.863 -0.09,3.519 -0.22,5.582 l 0.78,0.617 c 5.7,0.414 6.68,0.508 12.17,1.027 l 0.66,-0.613 c -0.1,-4.242 -0.1,-5.277 0,-9.812 l -0.66,-0.727 z m -0.1,-68.699 c -5.71,-0.106 -6.59,-0.106 -11.96,-0.402 l -0.55,0.71 c 0.33,5.485 0.66,10.235 0.66,21.696 0,19.734 -0.33,23.453 -1.11,29.535 l 0.56,0.738 c 4.73,0.723 6.35,0.93 11.85,2.067 l 1.08,-0.618 c -0.32,-5.375 -0.65,-10.957 -0.65,-24.277 0,-19.215 0.22,-21.805 0.65,-28.828 l -0.53,-0.621" /><path
id="path142"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2149.7,305.316 c -3.06,0 -18.08,-0.093 -21.47,-0.093 -12.85,0 -14.27,0 -20.96,-0.203 l -0.44,0.929 c 8.33,13.004 21.6,35.114 27.18,45.039 -14.45,-0.109 -17.09,-0.109 -24.12,-0.418 l -0.53,0.621 c 0.43,3.403 0.53,4.231 0.76,7.118 l 0.66,0.621 c 18.42,0 20.51,0 39.59,0.312 l 0.56,-0.82 c -9.78,-15.082 -23.69,-39.68 -26.66,-44.945 9.44,0.117 18.86,0.316 26.32,0.632 l 0.55,-0.632 c -0.45,-3.196 -0.55,-4.539 -0.77,-7.641 l -0.67,-0.52" /><path
id="path144"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1828.36,930.41 c 19.04,-5.824 62.36,-19.726 62.36,-67.265 0,-17.942 -7.14,-38.114 -26.66,-52.922 -25.23,-20.18 -59.03,-21.524 -76.17,-21.524 -25.7,0 -47.13,4.485 -65.21,11.211 -2.39,0.891 -4.77,1.789 -7.15,2.688 l -2.38,4.043 c 1.91,17.492 1.91,19.742 2.86,37.668 l 4.76,1.343 c 8.57,-6.273 29.51,-21.519 66.17,-21.519 37.61,0 51.42,19.726 51.42,33.629 0,20.625 -20.46,27.347 -49.51,36.328 l -15.24,4.933 c -19.52,5.829 -62.36,18.829 -62.36,65.008 0,46.199 42.84,69.079 96.16,69.079 35.25,0 59.98,-9.43 68.56,-12.56 l 2.39,-3.15 c -1.9,-16.58 -2.39,-18.373 -3.83,-35.42 l -4.28,-1.792 c -11.9,7.179 -30.46,17.941 -61.41,17.941 -6.66,0 -13.33,-0.449 -20.47,-2.246 -14.28,-3.586 -26.18,-13.004 -26.18,-26.899 0,-19.293 19.51,-25.125 49.05,-33.64 l 17.12,-4.934" /><path
id="path146"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2166.38,914.277 c -0.96,31.379 -7.14,62.778 -29.05,86.543 -20.94,22.42 -52.84,32.29 -85.21,32.29 -47.62,0 -75.22,-18.4 -88.57,-31.4 -31.87,-30.042 -32.84,-73.991 -32.84,-91.026 0,-14.801 0.49,-60.539 32.84,-91.481 15.24,-14.808 42.38,-30.058 85.22,-30.058 33.34,0 61.43,7.632 82.37,27.371 15.72,14.785 25.7,32.281 30.93,54.254 3.35,13.445 4.31,28.253 4.31,43.507 z m -51.9,-1.797 c 0.48,-9.414 0,-39.472 -10.96,-59.648 -13.79,-24.664 -36.64,-30.047 -54.25,-30.047 -9.54,0 -19.54,1.801 -28.11,5.832 -37.61,17.934 -38.08,63.238 -38.08,81.168 0,18.832 1.44,44.836 14.29,63.231 16.66,25.113 43.32,26.011 52.37,26.011 26.66,0 41.89,-11.66 50.93,-25.562 11.91,-19.742 13.81,-49.781 13.81,-60.985" /><path
id="path148"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1656.94,910.578 c 0,-15.644 -12.68,-28.34 -28.34,-28.34 -15.65,0 -28.33,12.696 -28.33,28.34 0,15.645 12.68,28.348 28.33,28.348 15.66,0 28.34,-12.703 28.34,-28.348" /><path
id="path150"
style="fill:#0979b8;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1004.69,1107.68 c -0.47,-34.54 -0.95,-55.61 -0.95,-87 0,-75.34 1.43,-150.231 5.24,-225.571 l -2.38,-2.683 c -40.467,0.449 -49.983,0 -85.702,-1.348 l -2.375,2.695 c 2.375,63.219 2.375,78.024 1.434,138.555 -19.043,0.449 -38.086,0.899 -57.137,0.899 -18.558,0 -36.179,-0.45 -57.117,-1.348 0.469,-65.016 0.938,-81.168 3.801,-136.77 l -2.379,-2.683 c -41.887,0.449 -50.465,0 -85.215,-1.348 l -2.383,2.695 c 0.953,37.653 1.911,59.625 1.911,99.997 0,111.2 -2.864,166.37 -5.243,212.57 l 2.86,2.68 c 41.414,0 48.55,0 85.215,1.34 l 2.371,-2.68 -0.938,-118.395 c 16.66,0 33.789,-0.449 50.449,-0.449 21.438,0 42.371,0.449 63.321,0.898 -0.465,52.926 -0.465,65.916 -3.809,116.606 l 2.387,2.68 c 39.992,0 46.168,0 84.259,1.34 l 2.38,-2.68" /><path
id="path152"
style="fill:#0979b8;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1280.73,858.781 c -18.1,-8.965 -39.53,-19.281 -74.27,-19.281 -28.56,0 -48.09,8.527 -59.52,24.672 -7.14,9.418 -8.56,18.387 -10.46,27.359 l 153.77,2.688 2.85,3.133 c -0.46,21.968 -0.95,44.406 -7.6,66.82 -16.68,52.918 -53.34,63.688 -69.52,67.278 -11.9,3.12 -22.85,4.02 -33.8,4.02 -74.75,0 -124.26,-46.185 -124.26,-123.767 0,-21.07 3.82,-43.043 11.43,-58.746 27.62,-60.531 92.36,-65.918 126.64,-65.918 39.51,0 56.66,6.734 81.88,16.149 l 2.86,3.582 3.33,50.664 -3.33,1.347 z m -144.25,80.282 c 1.42,13.902 4.75,32.73 22.85,43.488 5.71,3.59 12.39,4.937 19.04,4.937 15.72,0 25.22,-7.621 30.47,-15.695 6.66,-9.867 7.14,-20.621 7.14,-30.934 l -79.5,-1.796" /><path
id="path154"
style="fill:#0979b8;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1481.62,939.063 c 26.19,-9.43 62.85,-22.43 62.85,-71.75 0,-3.141 0,-6.274 -0.5,-9.879 -8.55,-64.11 -79.96,-70.395 -116.14,-70.395 -34.74,0 -54.75,7.176 -78.08,15.25 l -2.37,4.031 c 1.91,22.418 2.37,27.352 3.33,50.672 l 4.28,1.789 c 7.13,-5.383 10.96,-8.519 19.05,-12.551 17.61,-8.515 37.13,-12.558 50.46,-12.558 26.65,0 37.61,12.109 37.61,23.32 0,16.145 -20.97,22.879 -33.8,26.903 l -18.1,6.289 c -22.37,8.066 -61.88,22.418 -61.88,70.402 0,17.937 6.66,31.387 12.85,39.464 24.75,33.63 71.42,35.42 94.73,35.42 30.96,0 50.48,-5.37 72.83,-11.21 l 2.39,-2.69 -4.75,-48.882 -4.3,-1.348 c -11.88,7.183 -30.46,18.836 -59.49,18.836 -29.53,0 -33.34,-14.793 -33.34,-20.172 0,-12.559 12.85,-17.484 29.05,-22.867 l 23.32,-8.074" /><path
id="path156"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1755.3,153.285 c -11.04,-1.547 -21.32,-2.988 -21.32,-12.164 0,-0.512 0,-9.375 10.39,-9.375 6.78,0 10.72,3.5 11.92,4.535 l 0,17.215 -0.99,-0.211 z m 12.25,-7.523 c 0,-12.774 0.11,-13.914 0.66,-20.614 l -0.55,-0.515 c -5.15,-0.102 -6.01,-0.199 -11.05,-0.41 l -0.43,0.621 0.11,3.703 c -2.07,-1.535 -6.99,-5.25 -15.31,-5.25 -10.93,0 -18.6,7.008 -18.6,17.207 0,13.812 12.25,18.246 31.95,20.402 l 1.85,0.211 c 0,2.778 0,4.742 -0.98,6.387 -1.09,1.859 -3.62,3.816 -9.08,3.816 -7.11,0 -12.03,-2.058 -16.62,-3.918 l -0.88,0.52 c 0.22,4.738 0.22,5.359 0.33,7.516 l 0.67,0.621 c 6.11,2.058 12.46,3.406 18.9,3.406 8.09,0 15.97,-2.578 18.27,-10.625 0.76,-2.875 0.76,-8.547 0.76,-12.879 l 0,-10.199" /><path
id="path158"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1834.4,124.633 c -5.23,-0.102 -5.88,-0.102 -10.93,-0.41 l -0.77,0.722 c 0,1.137 0.12,2.266 0.12,3.403 0.12,5.05 0.12,10.097 0.12,15.152 0,15.867 -0.12,16.898 -0.67,19.059 -2.08,7.832 -8.31,7.832 -9.82,7.832 -6.57,0 -11.62,-3.606 -14.56,-5.77 -0.13,-17.933 0.1,-27.308 0.87,-39.367 l -0.65,-0.621 c -5.36,-0.102 -6.23,-0.102 -11.49,-0.41 l -0.56,0.722 c 0.13,5.77 0.35,11.336 0.35,18.965 0,16.488 -0.78,25.242 -1.3,32.149 l 0.64,0.718 c 5.45,0.934 6.45,1.141 11.58,2.071 l 0.78,-0.731 -0.12,-5.355 c 2.84,1.855 9.63,6.39 19.26,6.39 2.72,0 6.13,-0.414 9.07,-1.957 2.85,-1.547 5.14,-3.914 6.35,-6.703 1.42,-3.09 1.51,-6.176 1.64,-12.574 l 0,-12.051 c 0.31,-12.058 0.43,-16.699 0.74,-20.613 l -0.65,-0.621" /><path
id="path160"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1888.37,170.703 c -1.86,0.098 -3.16,0.305 -5.46,0.305 -3.39,0 -10.61,-0.207 -15.86,-4.844 -2.39,-2.16 -6.33,-7.004 -6.33,-16.18 0,-5.875 1.75,-10.093 4.05,-12.671 1.96,-2.168 5.56,-4.637 11.25,-4.637 6.67,0 10.71,3.301 12.24,4.531 0.22,13.5 0.22,16.594 0.11,33.496 z m -0.11,33.906 c 5.6,0.926 6.68,1.133 11.6,2.157 l 0.76,-0.61 c -0.76,-14.332 -0.86,-39.883 -0.86,-50.195 0,-15.969 0.43,-23.594 0.86,-30.707 l -0.54,-0.723 c -4.82,0 -6.12,-0.097 -11.15,-0.308 l -0.78,0.621 0.22,3.808 c -2.62,-1.851 -7.1,-5.148 -15.08,-5.148 -14.55,0 -24.6,10.82 -24.6,26.48 0,11.235 5.03,18.352 9.62,22.157 7.99,6.804 18.37,7.117 24.05,7.117 2.3,0 3.39,0 6.35,-0.211 0.11,12.777 -0.45,18.965 -0.99,24.941 l 0.54,0.621" /><path
id="path162"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1966.56,155.031 c 3.5,0 6.99,-0.101 10.5,-0.101 3.71,0 7.65,0.101 11.48,0.101 l -10.49,34.836 -11.49,-34.836 z m 21.64,40.094 c 3.63,-11.332 7.78,-24.117 11.06,-33.906 3.38,-9.891 8.86,-25.762 12.14,-35.66 l -0.43,-0.821 c -5.71,-0.105 -8.12,-0.207 -12.7,-0.414 l -0.78,0.727 c -2.72,9.683 -3.59,12.461 -6.44,21.746 -4.36,0 -8.64,0.101 -13,0.101 -4.84,0 -9.85,-0.101 -14.21,-0.101 -3.2,-9.695 -3.85,-12.16 -6.48,-21.332 l -0.74,-0.727 c -4.71,0 -5.82,0 -11.27,-0.304 l -0.44,0.714 c 0.31,1.133 0.74,2.165 1.21,3.2 4.15,11.125 8.18,22.257 12.14,33.39 6.53,18.235 8.95,24.934 12.11,34.828 l 0.9,0.727 c 7.65,0.098 8.63,0.098 15.63,0.41 l 0.75,-0.723 0.55,-1.855" /><path
id="path164"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2049.05,167.402 c -1.11,0.414 -2.54,0.934 -4.39,0.934 -2.08,0 -3.6,-0.727 -4.59,-1.344 -4.49,-2.988 -4.49,-7.519 -4.49,-18.242 0,-11.648 0.34,-17.723 0.78,-23.496 l -0.56,-0.723 c -5.15,0 -6.32,-0.097 -11.58,-0.308 l -0.56,0.621 c 0.12,7.832 0.25,14.941 0.25,24.519 0,16.496 -0.35,20.719 -0.99,26.696 l 0.64,0.718 c 4.15,0.731 6.79,1.239 11.37,2.071 l 0.65,-0.621 -0.52,-8.766 c 1.3,3.301 4.02,9.894 13.34,9.894 1.39,0 2.17,-0.097 3.04,-0.308 l 0.45,-0.621 c -1.11,-4.946 -1.32,-5.977 -2.1,-10.504 l -0.74,-0.52" /><path
id="path166"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2093.83,132.676 c -0.34,-3.406 -0.34,-4.129 -0.47,-7.117 l -0.53,-0.614 c -2.28,-0.511 -4.15,-0.933 -8.2,-0.933 -2.63,0 -9.5,0 -12.91,5.367 -1.95,2.988 -1.95,5.461 -1.95,17.617 l 0.21,22.676 c -3.84,0 -3.93,-0.102 -7.86,-0.211 l -0.47,0.621 c 0.22,3.297 0.22,4.125 0.22,7.426 l 0.68,0.609 c 2.38,0 3.81,-0.101 7.43,0 -0.12,2.168 -0.12,4.434 -0.12,6.598 -0.09,1.957 -0.22,3.918 -0.31,5.875 l 0.53,0.719 c 4.92,1.136 6.13,1.449 11.14,2.89 l 0.78,-0.515 c -0.31,-6.801 -0.44,-8.145 -0.44,-15.668 4.58,0.101 5.92,0.101 12.14,0.312 l 0.56,-0.617 c -0.22,-2.684 -0.34,-3.813 -0.34,-7.32 l -0.56,-0.618 c -5.45,0.11 -6.09,0.207 -11.89,0.207 l -0.25,-19.167 c 0.13,-1.239 0.13,-7.114 0.13,-8.555 0,-7.524 0.98,-9.891 6.43,-9.891 2.33,0 4.07,0.512 5.28,0.93 l 0.77,-0.621" /><path
id="path168"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2132.6,155.863 c 4.36,-1.343 14.3,-4.535 14.3,-15.461 0,-4.121 -1.64,-8.754 -6.13,-12.16 -5.79,-4.64 -13.56,-4.945 -17.5,-4.945 -5.88,0 -10.8,1.027 -14.95,2.574 -0.56,0.211 -1.11,0.41 -1.64,0.621 l -0.56,0.93 c 0.43,4.016 0.43,4.523 0.65,8.652 l 1.08,0.313 c 1.98,-1.442 6.79,-4.949 15.21,-4.949 8.64,0 11.82,4.539 11.82,7.726 0,4.746 -4.7,6.285 -11.39,8.356 l -3.5,1.125 c -4.45,1.339 -14.31,4.328 -14.31,14.945 0,10.617 9.86,15.875 22.08,15.875 8.09,0 13.78,-2.168 15.77,-2.891 l 0.52,-0.715 c -0.44,-3.82 -0.52,-4.23 -0.87,-8.144 l -0.98,-0.41 c -2.73,1.648 -7,4.117 -14.09,4.117 -1.56,0 -3.07,-0.102 -4.71,-0.512 -3.28,-0.828 -6.01,-2.988 -6.01,-6.183 0,-4.434 4.46,-5.778 11.24,-7.735 l 3.97,-1.129" /><path
id="path170"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 139.504,196.875 c -0.227,-9.375 -0.332,-11.852 -0.332,-19.988 0,-4.438 0,-7.735 0.105,-15.457 l 0.118,-9.278 c 0,-6.187 0,-15.05 -6.348,-21.543 -5.25,-5.355 -13.66,-7.621 -22.52,-7.621 -14.1012,0 -21.1051,5.36 -23.9489,8.348 -5.8984,6.387 -5.8984,12.574 -5.8984,24.625 l 0,10.512 c 0,14.941 0,16.699 -0.332,30.093 l 0.7656,0.727 c 6.0117,0.098 6.7773,0.098 12.2461,0.309 l 0.5469,-0.727 c -0.4375,-10.715 -0.4375,-29.371 -0.4375,-39.367 0,-10.301 0.2109,-16.586 4.0468,-20.817 1.8594,-2.168 6.1214,-5.043 13.6604,-5.043 2.738,0 11.375,0.2 15.535,7.825 2.406,4.328 2.406,10.203 2.406,18.246 0,11.953 -0.113,27.105 -0.875,38.847 l 0.535,0.727 c 5.036,0.098 5.696,0.098 10.071,0.309 l 0.656,-0.727" /><path
id="path172"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 208.832,124.633 c -5.246,-0.102 -5.902,-0.102 -10.926,-0.41 l -0.765,0.722 c 0,1.137 0.105,2.266 0.105,3.403 0.109,5.05 0.109,10.097 0.109,15.152 0,15.867 -0.109,16.898 -0.66,19.059 -2.078,7.832 -8.304,7.832 -9.84,7.832 -6.562,0 -11.585,-3.606 -14.546,-5.77 -0.106,-17.933 0.117,-27.308 0.875,-39.367 l -0.649,-0.621 c -5.355,-0.102 -6.242,-0.102 -11.488,-0.41 l -0.539,0.722 c 0.105,5.77 0.32,11.336 0.32,18.965 0,16.488 -0.765,25.242 -1.308,32.149 l 0.66,0.718 c 5.465,0.934 6.453,1.141 11.59,2.071 l 0.765,-0.731 -0.109,-5.355 c 2.844,1.855 9.613,6.39 19.246,6.39 2.73,0 6.117,-0.414 9.07,-1.957 2.844,-1.547 5.141,-3.914 6.344,-6.703 1.426,-3.09 1.531,-6.176 1.641,-12.574 l 0,-12.051 c 0.328,-12.058 0.437,-16.699 0.765,-20.613 l -0.66,-0.621" /><path
id="path174"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 241.355,193.168 c -5.585,-0.199 -6.781,-0.313 -12.136,-0.82 l -0.66,0.621 c 0.109,1.336 0.109,2.777 0.109,4.117 0,1.859 -0.109,3.504 -0.215,5.562 l 0.766,0.622 c 5.679,0.41 6.664,0.507 12.136,1.031 l 0.653,-0.621 c -0.11,-4.227 -0.11,-5.258 0,-9.793 l -0.653,-0.719 z m -0.109,-68.535 c -5.687,-0.102 -6.562,-0.102 -11.922,-0.41 l -0.551,0.722 c 0.332,5.465 0.661,10.2 0.661,21.641 0,19.687 -0.329,23.394 -1.094,29.473 l 0.547,0.718 c 4.703,0.731 6.347,0.934 11.812,2.071 l 1.086,-0.621 c -0.32,-5.356 -0.652,-10.922 -0.652,-24.223 0,-19.164 0.222,-21.746 0.652,-28.75 l -0.539,-0.621" /><path
id="path176"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 285.648,124.633 c -6.121,-0.102 -7.644,-0.102 -13.992,-0.41 l -0.648,0.722 c -5.367,17.516 -11.051,34.938 -17.496,52.145 l 0.429,0.828 c 5.36,0.309 6.567,0.41 11.922,0.93 l 0.875,-0.52 c 4.043,-15.254 8.528,-30.504 13.012,-45.652 1.094,3.711 6.559,21.64 7.762,25.652 3.605,11.856 4.597,16.078 5.472,19.59 l 0.766,0.508 c 5.133,-0.199 6.008,-0.098 10.273,0 l 0.547,-0.715 c -6.675,-17.313 -12.574,-34.832 -18.261,-52.457 l -0.661,-0.621" /><path
id="path178"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 351.992,164.004 c -2.187,5.668 -6.996,8.035 -11.918,8.035 -6.125,0 -13.34,-3.914 -14.429,-14.219 13.226,-0.101 17.382,0 27.441,0.098 -0.106,1.449 -0.219,3.711 -1.094,6.086 z m 10.176,-26.902 c -0.551,-4.114 -0.66,-5.157 -0.879,-9.172 l -0.652,-0.719 c -1.864,-0.93 -7.77,-3.914 -17.496,-3.914 -17.942,0 -29.196,9.691 -29.196,27.621 0,19.164 12.246,28.547 26.567,28.547 8.636,0 14.656,-3.406 17.929,-7.113 6.243,-7.008 6.016,-17.211 5.911,-21.747 l -0.766,-0.621 c -17.059,0.114 -20.016,0.114 -37.941,0 0.109,-3.601 0.429,-8.652 4.156,-12.882 4.48,-5.043 10.711,-5.567 14.105,-5.567 3.164,0 6.446,0.524 9.512,1.551 4.043,1.551 6.449,3.398 7.871,4.539 l 0.879,-0.523" /><path
id="path180"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 406.605,167.402 c -1.085,0.414 -2.511,0.934 -4.371,0.934 -2.082,0 -3.605,-0.727 -4.593,-1.344 -4.489,-2.988 -4.489,-7.519 -4.489,-18.242 0,-11.648 0.332,-17.723 0.77,-23.496 l -0.543,-0.723 c -5.141,0 -6.344,-0.097 -11.594,-0.308 l -0.547,0.621 c 0.11,7.832 0.215,14.941 0.215,24.519 0,16.496 -0.32,20.719 -0.98,26.696 l 0.66,0.718 c 4.156,0.731 6.773,1.239 11.371,2.071 l 0.648,-0.621 -0.539,-8.766 c 1.309,3.301 4.035,9.894 13.34,9.894 1.418,0 2.188,-0.097 3.063,-0.308 l 0.433,-0.621 c -1.09,-4.946 -1.308,-5.977 -2.078,-10.504 l -0.766,-0.52" /><path
id="path182"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 445.668,155.863 C 450.043,154.52 460,151.328 460,140.402 c 0,-4.121 -1.641,-8.754 -6.133,-12.16 -5.793,-4.64 -13.554,-4.945 -17.496,-4.945 -5.898,0 -10.82,1.027 -14.976,2.574 -0.543,0.211 -1.09,0.41 -1.633,0.621 l -0.551,0.93 c 0.434,4.016 0.434,4.523 0.656,8.652 l 1.094,0.313 c 1.965,-1.442 6.781,-4.949 15.195,-4.949 8.641,0 11.813,4.539 11.813,7.726 0,4.746 -4.707,6.285 -11.371,8.356 l -3.496,1.125 c -4.485,1.339 -14.332,4.328 -14.332,14.945 0,10.617 9.847,15.875 22.093,15.875 8.09,0 13.77,-2.168 15.746,-2.891 l 0.539,-0.715 c -0.429,-3.82 -0.539,-4.23 -0.875,-8.144 l -0.98,-0.41 c -2.734,1.648 -6.996,4.117 -14.105,4.117 -1.532,0 -3.063,-0.102 -4.7,-0.512 -3.281,-0.828 -6.015,-2.988 -6.015,-6.183 0,-4.434 4.484,-5.778 11.265,-7.735 l 3.93,-1.129" /><path
id="path184"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 487.559,193.168 c -5.582,-0.199 -6.782,-0.313 -12.137,-0.82 l -0.66,0.621 c 0.109,1.336 0.109,2.777 0.109,4.117 0,1.859 -0.109,3.504 -0.219,5.562 l 0.77,0.622 c 5.683,0.41 6.664,0.507 12.137,1.031 l 0.648,-0.621 c -0.105,-4.227 -0.105,-5.258 0,-9.793 l -0.648,-0.719 z m -0.11,-68.535 c -5.687,-0.102 -6.566,-0.102 -11.922,-0.41 l -0.547,0.722 c 0.333,5.465 0.657,10.2 0.657,21.641 0,19.687 -0.324,23.394 -1.09,29.473 l 0.543,0.718 c 4.707,0.731 6.348,0.934 11.808,2.071 l 1.094,-0.621 c -0.324,-5.356 -0.656,-10.922 -0.656,-24.223 0,-19.164 0.223,-21.746 0.656,-28.75 l -0.543,-0.621" /><path
id="path186"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 532.832,132.676 c -0.328,-3.406 -0.328,-4.129 -0.434,-7.117 l -0.55,-0.614 c -2.293,-0.511 -4.157,-0.933 -8.2,-0.933 -2.625,0 -9.511,0 -12.906,5.367 -1.965,2.988 -1.965,5.461 -1.965,17.617 l 0.215,22.676 c -3.82,0 -3.929,-0.102 -7.871,-0.211 l -0.433,0.621 c 0.214,3.297 0.214,4.125 0.214,7.426 l 0.661,0.609 c 2.402,0 3.824,-0.101 7.429,0 -0.105,2.168 -0.105,4.434 -0.105,6.598 -0.11,1.957 -0.219,3.918 -0.328,5.875 l 0.543,0.719 c 4.925,1.136 6.125,1.449 11.156,2.89 l 0.765,-0.515 c -0.332,-6.801 -0.441,-8.145 -0.441,-15.668 4.598,0.101 5.906,0.101 12.137,0.312 l 0.551,-0.617 c -0.211,-2.684 -0.332,-3.813 -0.332,-7.32 l -0.54,-0.618 c -5.468,0.11 -6.125,0.207 -11.925,0.207 l -0.215,-19.167 c 0.109,-1.239 0.109,-7.114 0.109,-8.555 0,-7.524 0.981,-9.891 6.453,-9.891 2.289,0 4.043,0.512 5.25,0.93 l 0.762,-0.621" /><path
id="path188"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 589.988,177.508 c -6.226,-14.531 -16.726,-41.742 -19.461,-48.961 -3.386,-9.375 -6.672,-18.758 -8.961,-28.336 l -0.992,-0.8204 c -5.469,-0.1093 -6.449,-0.1093 -11.59,-0.3125 l -0.429,0.7227 0.429,0.7192 c 1.977,3.808 3.61,7.832 5.473,11.851 1.527,3.399 3.387,6.695 4.59,10.305 0.113,0.207 0.223,0.515 0.328,0.828 0,1.234 -16.293,42.769 -20.996,53.273 l 0.445,0.934 c 5.461,0.406 6.551,0.406 12.137,1.027 l 0.648,-0.621 c 2.957,-9.277 4.375,-13.601 6.786,-20.297 l 6.886,-19.687 6.235,18.14 c 2.297,7.114 5.027,15.555 6.781,21.438 l 0.766,0.617 c 2.73,0 5.679,0 10.605,0.098 l 0.32,-0.918" /><path
id="path190"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 675.414,165.758 c -2.074,3.195 -5.57,5.871 -11.691,5.871 -2.086,0 -8.211,-0.207 -12.035,-5.977 -2.95,-4.222 -3.282,-10.199 -3.282,-14.531 0,-4.125 0.11,-14.527 8.746,-18.652 1.981,-0.934 4.27,-1.34 6.457,-1.34 4.043,0 9.289,1.238 12.465,6.906 2.516,4.637 2.621,11.539 2.516,13.703 0,2.578 -0.442,9.481 -3.176,14.02 z m 14.106,-23.606 c -1.2,-5.05 -3.5,-9.066 -7.11,-12.464 -4.805,-4.54 -11.258,-6.286 -18.914,-6.286 -9.84,0 -16.074,3.5 -19.57,6.903 -7.434,7.109 -7.539,17.625 -7.539,21.023 0,3.914 0.215,14.016 7.539,20.922 3.066,2.988 9.402,7.215 20.336,7.215 7.437,0 14.761,-2.27 19.578,-7.426 5.031,-5.457 6.449,-12.672 6.664,-19.887 0,-3.507 -0.215,-6.906 -0.984,-10" /><path
id="path192"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 721.063,124.531 c -5.028,0 -6.012,0 -11.809,-0.308 l -0.555,0.722 c 0.555,10.821 0.555,21.953 0.555,32.875 0,5.465 0,7.317 -0.109,11.852 -2.735,-0.102 -5.461,-0.102 -7.657,-0.102 l -0.648,0.614 c 0.215,2.886 0.32,3.918 0.43,7.421 l 0.66,0.622 c 3.273,-0.11 5.468,-0.211 6.996,-0.211 l -0.11,6.808 c 0,5.145 0,6.387 0.329,8.242 2.515,11.954 16.07,11.954 19.136,11.954 1.641,0 2.735,-0.098 4.157,-0.211 l 0.542,-0.719 c -0.429,-2.891 -0.542,-4.227 -0.769,-7.418 l -0.766,-0.516 c -0.98,0.211 -1.75,0.41 -2.949,0.41 -2.297,0 -4.805,-0.41 -6.555,-3.089 -1.75,-2.579 -1.75,-5.465 -1.644,-12.364 l 0,-3.097 c 0.223,0 9.73,0.211 10.824,0.211 l 0.551,-0.622 c -0.227,-3.296 -0.332,-4.125 -0.442,-7.312 l -0.648,-0.621 c -4.707,0.101 -5.687,0.101 -10.062,0.101 0,-13.699 0.105,-27.515 0.871,-41.226 0,-1.027 0.109,-2.156 0.214,-3.293 l -0.542,-0.723" /><path
id="path194"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 795.906,155.031 c 3.504,0 7,-0.101 10.5,-0.101 3.715,0 7.649,0.101 11.481,0.101 l -10.5,34.836 -11.481,-34.836 z m 21.649,40.094 c 3.613,-11.332 7.761,-24.117 11.043,-33.906 3.394,-9.891 8.859,-25.762 12.14,-35.66 l -0.441,-0.821 c -5.684,-0.105 -8.09,-0.207 -12.68,-0.414 l -0.765,0.727 c -2.735,9.683 -3.61,12.461 -6.454,21.746 -4.367,0 -8.636,0.101 -13.011,0.101 -4.813,0 -9.844,-0.101 -14.211,-0.101 -3.176,-9.695 -3.828,-12.16 -6.457,-21.332 l -0.766,-0.727 c -4.699,0 -5.793,0 -11.262,-0.304 l -0.433,0.714 c 0.32,1.133 0.765,2.165 1.203,3.2 4.152,11.125 8.199,22.257 12.133,33.39 6.566,18.235 8.965,24.934 12.136,34.828 l 0.875,0.727 c 7.657,0.098 8.641,0.098 15.641,0.41 l 0.766,-0.723 0.543,-1.855" /><path
id="path196"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 869.723,132.156 c 14.425,0 22.742,8.657 22.742,21.34 0,10.711 -6.016,17.305 -14.762,17.305 -5.906,0 -10.062,-2.676 -12.582,-4.328 -0.105,-5.356 -0.215,-10.61 -0.215,-15.868 0,-6.074 0.11,-12.16 0.215,-18.136 1.426,-0.102 2.746,-0.313 4.602,-0.313 z m -4.817,41.742 c 2.196,1.649 7.438,5.567 15.961,5.567 13.891,0 23.621,-10.723 23.621,-25.25 0,-15.973 -11.265,-29.684 -34.332,-29.684 -2.074,0 -3.394,0.102 -4.922,0.207 0.114,-12.367 0.332,-15.047 0.879,-24.726 l -0.652,-0.6214 c -3.836,-0.1093 -7.656,-0.2109 -11.484,-0.3125 l -0.547,0.6211 c 0.215,6.2808 0.437,12.7698 0.437,23.2888 0,6.082 -0.117,12.157 -0.117,18.242 -0.105,15.969 -0.105,23.188 -1.414,34.934 l 0.539,0.613 c 5.355,0.828 6.566,1.141 11.488,2.071 l 0.758,-0.621 -0.215,-4.329" /><path
id="path198"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 938.633,132.156 c 14.433,0 22.746,8.657 22.746,21.34 0,10.711 -6.02,17.305 -14.762,17.305 -5.91,0 -10.062,-2.676 -12.578,-4.328 -0.113,-5.356 -0.223,-10.61 -0.223,-15.868 0,-6.074 0.11,-12.16 0.223,-18.136 1.422,-0.102 2.738,-0.313 4.594,-0.313 z m -4.817,41.742 c 2.196,1.649 7.446,5.567 15.965,5.567 13.891,0 23.617,-10.723 23.617,-25.25 0,-15.973 -11.257,-29.684 -34.332,-29.684 -2.074,0 -3.386,0.102 -4.921,0.207 0.117,-12.367 0.332,-15.047 0.882,-24.726 l -0.656,-0.6214 c -3.836,-0.1093 -7.656,-0.2109 -11.48,-0.3125 l -0.551,0.6211 c 0.219,6.2808 0.441,12.7698 0.441,23.2888 0,6.082 -0.113,12.157 -0.113,18.242 -0.109,15.969 -0.109,23.188 -1.418,34.934 l 0.543,0.613 c 5.355,0.828 6.562,1.141 11.484,2.071 l 0.762,-0.621 -0.223,-4.329" /><path
id="path200"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1002.7,124.633 c -5.255,-0.102 -6.348,-0.199 -11.489,-0.41 l -0.535,0.722 c 0.215,7.313 0.535,16.598 0.535,36.383 0,14.219 0,29.473 -1.09,42.66 l 0.555,0.621 c 5.355,0.821 6.441,1.028 11.914,2.157 l 0.65,-0.719 c -0.76,-13.5 -0.76,-27.102 -0.76,-40.598 0,-22.57 0.32,-30.402 0.87,-40.195 l -0.65,-0.621" /><path
id="path202"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1035.38,193.168 c -5.59,-0.199 -6.79,-0.313 -12.14,-0.82 l -0.66,0.621 c 0.11,1.336 0.11,2.777 0.11,4.117 0,1.859 -0.11,3.504 -0.22,5.562 l 0.77,0.622 c 5.68,0.41 6.66,0.507 12.14,1.031 l 0.65,-0.621 c -0.11,-4.227 -0.11,-5.258 0,-9.793 l -0.65,-0.719 z m -0.12,-68.535 c -5.68,-0.102 -6.55,-0.102 -11.91,-0.41 l -0.55,0.722 c 0.33,5.465 0.66,10.2 0.66,21.641 0,19.687 -0.33,23.394 -1.1,29.473 l 0.55,0.718 c 4.7,0.731 6.34,0.934 11.81,2.071 l 1.09,-0.621 c -0.32,-5.356 -0.66,-10.922 -0.66,-24.223 0,-19.164 0.23,-21.746 0.66,-28.75 l -0.55,-0.621" /><path
id="path204"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1090.83,164.004 c -2.18,5.668 -6.99,8.035 -11.91,8.035 -6.12,0 -13.33,-3.914 -14.43,-14.219 13.23,-0.101 17.38,0 27.44,0.098 -0.1,1.449 -0.21,3.711 -1.1,6.086 z m 10.18,-26.902 c -0.55,-4.114 -0.65,-5.157 -0.87,-9.172 l -0.67,-0.719 c -1.85,-0.93 -7.75,-3.914 -17.49,-3.914 -17.93,0 -29.19,9.691 -29.19,27.621 0,19.164 12.25,28.547 26.58,28.547 8.63,0 14.64,-3.406 17.92,-7.113 6.24,-7.008 6.03,-17.211 5.92,-21.747 l -0.78,-0.621 c -17.06,0.114 -20,0.114 -37.94,0 0.11,-3.601 0.44,-8.652 4.16,-12.882 4.48,-5.043 10.72,-5.567 14.1,-5.567 3.18,0 6.46,0.524 9.51,1.551 4.06,1.551 6.46,3.398 7.88,4.539 l 0.87,-0.523" /><path
id="path206"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1156.76,170.703 c -1.86,0.098 -3.16,0.305 -5.47,0.305 -3.38,0 -10.6,-0.207 -15.85,-4.844 -2.4,-2.16 -6.33,-7.004 -6.33,-16.18 0,-5.875 1.75,-10.093 4.04,-12.671 1.97,-2.168 5.58,-4.637 11.25,-4.637 6.68,0 10.72,3.301 12.25,4.531 0.22,13.5 0.22,16.594 0.11,33.496 z m -0.11,33.906 c 5.59,0.926 6.68,1.133 11.6,2.157 l 0.76,-0.61 c -0.76,-14.332 -0.87,-39.883 -0.87,-50.195 0,-15.969 0.43,-23.594 0.87,-30.707 l -0.54,-0.723 c -4.82,0 -6.12,-0.097 -11.15,-0.308 l -0.78,0.621 0.22,3.808 c -2.61,-1.851 -7.11,-5.148 -15.08,-5.148 -14.55,0 -24.6,10.82 -24.6,26.48 0,11.235 5.03,18.352 9.61,22.157 7.99,6.804 18.38,7.117 24.06,7.117 2.3,0 3.4,0 6.35,-0.211 0.11,12.777 -0.45,18.965 -0.99,24.941 l 0.54,0.621" /><path
id="path208"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1254.52,165.758 c 7.96,-3.297 18.58,-7.629 18.58,-20.817 0,-11.543 -9.08,-21.953 -28.12,-21.953 -11.58,0 -19.01,3.293 -21.65,4.532 l -0.43,0.722 c 0.43,3.606 0.56,5.567 0.87,9.481 l 1.11,0.41 c 2.73,-1.746 9.08,-6.074 19.23,-6.074 11.28,0 15.98,5.453 15.98,11.64 0,7.219 -6.34,9.996 -13.47,12.574 l -5.45,2.266 c -7.77,3.399 -18.14,7.836 -18.14,20.406 0,3.817 1.08,7.727 3.37,10.825 5.05,6.796 14.12,9.062 22.98,9.062 8.64,0 13.87,-1.539 19.66,-3.297 l 0.56,-0.82 c -0.43,-3.914 -0.56,-5.356 -0.87,-9.07 l -0.9,-0.411 c -4.68,2.266 -9.81,4.735 -18.02,4.735 -9.07,0 -14.77,-4.02 -14.77,-10.09 0,-4.641 3.28,-6.809 5.58,-8.149 1.42,-0.82 1.85,-1.027 8.42,-3.71 l 5.48,-2.262" /><path
id="path210"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1331.34,136.797 c -0.43,-4.43 -0.54,-4.949 -0.88,-9.176 l -0.76,-0.719 c -3.17,-1.437 -7.43,-3.5 -15.1,-3.5 -16.5,0 -27.21,11.235 -27.21,27.305 0,16.387 10.5,28.758 27.43,28.758 7.11,0 12.14,-2.168 14.99,-3.301 l 0.43,-0.726 c -0.43,-3.708 -0.54,-5.047 -0.76,-8.133 l -0.88,-0.422 c -3.6,2.48 -7.76,4.027 -12.14,4.027 -9.07,0 -17.05,-6.594 -17.05,-19.789 0,-14.019 8.41,-19.062 16.94,-19.062 7.45,0 12.03,3.605 14.11,5.148 l 0.88,-0.41" /><path
id="path212"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1357.48,193.168 c -5.58,-0.199 -6.79,-0.313 -12.14,-0.82 l -0.65,0.621 c 0.09,1.336 0.09,2.777 0.09,4.117 0,1.859 -0.09,3.504 -0.21,5.562 l 0.77,0.622 c 5.7,0.41 6.66,0.507 12.14,1.031 l 0.65,-0.621 c -0.1,-4.227 -0.1,-5.258 0,-9.793 l -0.65,-0.719 z m -0.13,-68.535 c -5.67,-0.102 -6.56,-0.102 -11.92,-0.41 l -0.53,0.722 c 0.31,5.465 0.66,10.2 0.66,21.641 0,19.687 -0.35,23.394 -1.09,29.473 l 0.53,0.718 c 4.7,0.731 6.35,0.934 11.83,2.071 l 1.08,-0.621 c -0.34,-5.356 -0.65,-10.922 -0.65,-24.223 0,-19.164 0.22,-21.746 0.65,-28.75 l -0.56,-0.621" /><path
id="path214"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1412.96,164.004 c -2.19,5.668 -6.99,8.035 -11.92,8.035 -6.13,0 -13.34,-3.914 -14.42,-14.219 13.21,-0.101 17.36,0 27.43,0.098 -0.09,1.449 -0.22,3.711 -1.09,6.086 z m 10.16,-26.902 c -0.52,-4.114 -0.65,-5.157 -0.86,-9.172 l -0.65,-0.719 c -1.86,-0.93 -7.78,-3.914 -17.5,-3.914 -17.93,0 -29.2,9.691 -29.2,27.621 0,19.164 12.26,28.547 26.57,28.547 8.64,0 14.64,-3.406 17.92,-7.113 6.26,-7.008 6.04,-17.211 5.92,-21.747 l -0.77,-0.621 c -17.06,0.114 -20.01,0.114 -37.93,0 0.12,-3.601 0.43,-8.652 4.14,-12.882 4.49,-5.043 10.72,-5.567 14.12,-5.567 3.16,0 6.44,0.524 9.51,1.551 4.06,1.551 6.44,3.398 7.87,4.539 l 0.86,-0.523" /><path
id="path216"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1490.58,124.633 c -5.25,-0.102 -5.9,-0.102 -10.93,-0.41 l -0.77,0.722 c 0,1.137 0.1,2.266 0.1,3.403 0.11,5.05 0.11,10.097 0.11,15.152 0,15.867 -0.11,16.898 -0.65,19.059 -2.07,7.832 -8.31,7.832 -9.85,7.832 -6.54,0 -11.58,-3.606 -14.53,-5.77 -0.11,-17.933 0.11,-27.308 0.88,-39.367 l -0.67,-0.621 c -5.35,-0.102 -6.22,-0.102 -11.47,-0.41 l -0.56,0.722 c 0.13,5.77 0.34,11.336 0.34,18.965 0,16.488 -0.77,25.242 -1.31,32.149 l 0.65,0.718 c 5.46,0.934 6.45,1.141 11.6,2.071 l 0.75,-0.731 -0.1,-5.355 c 2.84,1.855 9.62,6.39 19.24,6.39 2.74,0 6.13,-0.414 9.07,-1.957 2.85,-1.547 5.14,-3.914 6.35,-6.703 1.42,-3.09 1.53,-6.176 1.64,-12.574 l 0,-12.051 c 0.33,-12.058 0.43,-16.699 0.76,-20.613 l -0.65,-0.621" /><path
id="path218"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1552.09,136.797 c -0.43,-4.43 -0.53,-4.949 -0.87,-9.176 l -0.77,-0.719 c -3.16,-1.437 -7.43,-3.5 -15.08,-3.5 -16.5,0 -27.22,11.235 -27.22,27.305 0,16.387 10.5,28.758 27.44,28.758 7.09,0 12.13,-2.168 14.99,-3.301 l 0.43,-0.726 c -0.43,-3.708 -0.56,-5.047 -0.78,-8.133 l -0.86,-0.422 c -3.63,2.48 -7.78,4.027 -12.14,4.027 -9.08,0 -17.06,-6.594 -17.06,-19.789 0,-14.019 8.42,-19.062 16.93,-19.062 7.47,0 12.05,3.605 14.12,5.148 l 0.87,-0.41" /><path
id="path220"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1601.36,164.004 c -2.17,5.668 -7,8.035 -11.9,8.035 -6.12,0 -13.34,-3.914 -14.45,-14.219 13.25,-0.101 17.4,0 27.46,0.098 -0.13,1.449 -0.21,3.711 -1.11,6.086 z m 10.18,-26.902 c -0.55,-4.114 -0.64,-5.157 -0.87,-9.172 l -0.67,-0.719 c -1.87,-0.93 -7.74,-3.914 -17.5,-3.914 -17.93,0 -29.17,9.691 -29.17,27.621 0,19.164 12.24,28.547 26.57,28.547 8.64,0 14.65,-3.406 17.93,-7.113 6.22,-7.008 6.01,-17.211 5.91,-21.747 l -0.77,-0.621 c -17.06,0.114 -20,0.114 -37.96,0 0.12,-3.601 0.46,-8.652 4.18,-12.882 4.45,-5.043 10.71,-5.567 14.08,-5.567 3.19,0 6.48,0.524 9.51,1.551 4.06,1.551 6.48,3.398 7.89,4.539 l 0.87,-0.523" /><path
id="path222"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1653.61,155.863 c 4.37,-1.343 14.32,-4.535 14.32,-15.461 0,-4.121 -1.64,-8.754 -6.13,-12.16 -5.79,-4.64 -13.55,-4.945 -17.49,-4.945 -5.9,0 -10.82,1.027 -14.97,2.574 -0.56,0.211 -1.11,0.41 -1.64,0.621 l -0.56,0.93 c 0.45,4.016 0.45,4.523 0.66,8.652 l 1.09,0.313 c 1.98,-1.442 6.77,-4.949 15.2,-4.949 8.63,0 11.81,4.539 11.81,7.726 0,4.746 -4.71,6.285 -11.38,8.356 l -3.49,1.125 c -4.48,1.339 -14.33,4.328 -14.33,14.945 0,10.617 9.85,15.875 22.1,15.875 8.08,0 13.78,-2.168 15.74,-2.891 l 0.55,-0.715 c -0.44,-3.82 -0.55,-4.23 -0.87,-8.144 l -1,-0.41 c -2.73,1.648 -6.99,4.117 -14.1,4.117 -1.53,0 -3.07,-0.102 -4.71,-0.512 -3.28,-0.828 -6,-2.988 -6,-6.183 0,-4.434 4.47,-5.778 11.25,-7.735 l 3.95,-1.129" /><path
id="path224"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1150.8,1.55078 c -7.43,0 -8.53,0 -15.75,-0.3125 l -0.75,0.72266 c -1.76,10.30076 -2.42,13.28906 -3.95,20.80856 l -8.97,44.4219 -9.07,-42.043 c -0.54,-2.789 -1.08,-5.6796 -1.75,-8.4492 -0.87,-4.4375 -2.51,-11.96092 -2.94,-14.43748 l -0.67,-0.71094 c -7.86,0 -8.31,-0.10937 -15.85,-0.3125 l -0.76,0.72266 c -1.98,9.26956 -11.05,48.32816 -16.95,71.61716 l 0.54,0.7305 c 6.13,0 7.11,0.1016 12.46,0.3125 l 0.67,-0.7305 c 0.65,-3.6093 1.3,-6.9023 2.29,-12.0625 0.88,-4.6289 1.75,-9.1679 2.63,-13.707 l 7.98,-39.35938 9.18,45.64848 c 1.53,7.5312 1.74,8.7617 3.71,19.1679 l 0.67,0.7305 c 8.31,0.1016 9.72,0.1016 17.38,0.3125 l 0.65,-0.7305 c 0.12,-0.8203 0.22,-1.6523 0.33,-2.5703 0.45,-2.6914 2.96,-15.8789 3.61,-19.3789 l 8.64,-43.48046 8.53,40.68746 c 4.05,19.9024 4.16,20.3125 4.7,24.4297 l 0.65,0.7305 c 5.04,0 6.14,0.1016 10.72,0.3125 l 0.56,-0.7305 c -2.53,-8.039 -3.18,-10.8203 -9.19,-35.8593 -2.74,-11.2305 -5.69,-22.3711 -8.09,-33.60161 -0.11,-0.71875 -0.33,-1.44141 -0.44,-2.16797 l -0.77,-0.71094" /><path
id="path226"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1215.16,41.0195 c -2.17,5.6719 -7,8.0391 -11.89,8.0391 -6.13,0 -13.35,-3.918 -14.46,-14.2305 13.25,-0.0976 17.4,0 27.46,0.1133 -0.12,1.4492 -0.21,3.6992 -1.11,6.0781 z m 10.19,-26.8984 C 1224.79,10 1224.7,8.96094 1224.48,4.94922 l -0.68,-0.71875 c -1.86,-0.92969 -7.74,-3.921876 -17.5,-3.921876 -17.93,0 -29.17,9.691406 -29.17,27.621106 0,19.1719 12.24,28.5508 26.57,28.5508 8.64,0 14.65,-3.4102 17.93,-7.1211 6.23,-7 6.01,-17.1992 5.92,-21.7383 L 1226.77,27 c -17.06,0.1094 -20,0.1094 -37.96,0 0.13,-3.6016 0.46,-8.6484 4.18,-12.8789 4.46,-5.05079 10.71,-5.57032 14.09,-5.57032 3.19,0 6.47,0.51953 9.51,1.55082 4.05,1.5468 6.47,3.3867 7.89,4.539 l 0.87,-0.5195" /><path
id="path228"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1267.4,32.8711 c 4.36,-1.332 14.33,-4.5313 14.33,-15.4492 0,-4.1211 -1.64,-8.76174 -6.12,-12.1719 -5.8,-4.640625 -13.57,-4.941406 -17.5,-4.941406 -5.91,0 -10.84,1.031246 -14.99,2.582036 -0.56,0.19921 -1.08,0.41015 -1.64,0.60937 l -0.56,0.92969 c 0.47,4.03125 0.47,4.53125 0.69,8.64841 l 1.08,0.3203 c 1.98,-1.4375 6.78,-4.93746 15.2,-4.93746 8.64,0 11.8,4.52736 11.8,7.71876 0,4.75 -4.7,6.2812 -11.36,8.3516 l -3.5,1.1289 c -4.49,1.3398 -14.34,4.3281 -14.34,14.9414 0,10.6172 9.85,15.8789 22.11,15.8789 8.08,0 13.78,-2.1719 15.73,-2.8907 l 0.56,-0.7187 c -0.44,-3.8125 -0.56,-4.2227 -0.87,-8.1406 l -0.99,-0.4102 c -2.73,1.6485 -7,4.1211 -14.12,4.1211 -1.52,0 -3.07,-0.1133 -4.71,-0.5195 -3.28,-0.8203 -6,-2.9805 -6,-6.1836 0,-4.4375 4.48,-5.7695 11.27,-7.7266 l 3.93,-1.1406" /><path
id="path230"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1322.22,9.69141 c -0.34,-3.40235 -0.34,-4.1211 -0.45,-7.11328 l -0.54,-0.61719 c -2.29,-0.51953 -4.15,-0.94141 -8.2,-0.94141 -2.62,0 -9.51,0 -12.9,5.37891 -1.97,2.98047 -1.97,5.45316 -1.97,17.61326 l 0.22,22.6797 c -3.82,0 -3.93,-0.1016 -7.87,-0.2109 l -0.45,0.6211 c 0.22,3.289 0.22,4.1172 0.22,7.4179 l 0.67,0.6094 c 2.4,0 3.82,-0.0976 7.43,0 -0.11,2.1719 -0.11,4.4414 -0.11,6.6016 -0.11,1.9609 -0.21,3.9101 -0.33,5.8711 l 0.55,0.7187 c 4.92,1.1406 6.13,1.4492 11.16,2.8906 l 0.76,-0.5117 c -0.33,-6.8008 -0.43,-8.1406 -0.43,-15.6679 4.58,0.0976 5.89,0.0976 12.13,0.3085 l 0.55,-0.621 c -0.22,-2.6797 -0.33,-3.8086 -0.33,-7.3086 l -0.56,-0.6211 C 1316.31,46.8906 1315.66,47 1309.87,47 l -0.22,-19.1719 c 0.11,-1.2383 0.11,-7.1172 0.11,-8.5468 0,-7.5313 0.97,-9.90239 6.44,-9.90239 2.31,0 4.05,0.51172 5.25,0.92969 l 0.77,-0.61719" /><path
id="path232"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1371.69,41.0195 c -2.2,5.6719 -7,8.0391 -11.92,8.0391 -6.13,0 -13.35,-3.918 -14.46,-14.2305 13.25,-0.0976 17.4,0 27.46,0.1133 -0.12,1.4492 -0.21,3.6992 -1.08,6.0781 z m 10.16,-26.8984 C 1381.29,10 1381.2,8.96094 1380.98,4.94922 l -0.68,-0.71875 c -1.86,-0.92969 -7.74,-3.921876 -17.5,-3.921876 -17.93,0 -29.17,9.691406 -29.17,27.621106 0,19.1719 12.23,28.5508 26.57,28.5508 8.64,0 14.65,-3.4102 17.93,-7.1211 6.23,-7 6.01,-17.1992 5.91,-21.7383 L 1383.27,27 c -17.06,0.1094 -20,0.1094 -37.96,0 0.12,-3.6016 0.46,-8.6484 4.18,-12.8789 4.46,-5.05079 10.71,-5.57032 14.08,-5.57032 3.2,0 6.48,0.51953 9.51,1.55082 4.06,1.5468 6.48,3.3867 7.9,4.539 l 0.87,-0.5195" /><path
id="path234"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1426.31,44.4219 c -1.11,0.4062 -2.54,0.9297 -4.4,0.9297 -2.07,0 -3.59,-0.7227 -4.58,-1.3399 -4.49,-2.9922 -4.49,-7.5312 -4.49,-18.25 0,-11.6406 0.34,-17.71092 0.77,-23.49998 l -0.55,-0.71094 c -5.14,0 -6.32,-0.10937 -11.58,-0.3125 l -0.56,0.61328 c 0.12,7.83985 0.25,14.94924 0.25,24.52734 0,16.4922 -0.34,20.7227 -0.99,26.6914 l 0.65,0.7188 c 4.15,0.7304 6.78,1.2422 11.36,2.0703 l 0.65,-0.6211 -0.53,-8.7578 c 1.3,3.289 4.03,9.8906 13.35,9.8906 1.4,0 2.17,-0.1016 3.04,-0.3125 l 0.46,-0.6172 c -1.11,-4.9414 -1.33,-5.9726 -2.1,-10.5 l -0.75,-0.5195" /><path
id="path236"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1490.75,1.64844 c -5.23,-0.09766 -5.88,-0.09766 -10.93,-0.41016 l -0.78,0.72266 c 0,1.1289 0.13,2.26953 0.13,3.39844 0.09,5.05082 0.09,10.10152 0.09,15.16012 0,15.8711 -0.09,16.8907 -0.65,19.0508 -2.07,7.8399 -8.3,7.8399 -9.85,7.8399 -6.53,0 -11.58,-3.6094 -14.52,-5.7696 -0.12,-17.9414 0.1,-27.3203 0.87,-39.37888 l -0.65,-0.61328 c -5.36,-0.09766 -6.23,-0.09766 -11.49,-0.41016 l -0.56,0.72266 c 0.13,5.76953 0.34,11.33986 0.34,18.96876 0,16.4805 -0.77,25.2422 -1.29,32.1406 l 0.64,0.7188 c 5.45,0.9297 6.44,1.1406 11.59,2.0703 l 0.77,-0.7305 -0.12,-5.3594 c 2.84,1.8594 9.62,6.4024 19.25,6.4024 2.73,0 6.14,-0.4219 9.08,-1.961 2.85,-1.5507 5.14,-3.9218 6.34,-6.6992 1.43,-3.0898 1.52,-6.1836 1.65,-12.5703 l 0,-12.0625 c 0.31,-12.0586 0.43,-16.69921 0.74,-20.61718 l -0.65,-0.61328" /><path
id="path238"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1576.81,42.7695 c 7.95,-3.3007 18.57,-7.6211 18.57,-20.8203 C 1595.38,10.4102 1586.31,0 1567.27,0 c -11.59,0 -19.02,3.30078 -21.65,4.53125 L 1545.19,5.25 c 0.43,3.62109 0.55,5.5703 0.86,9.4805 l 1.12,0.4179 c 2.72,-1.75 9.07,-6.07809 19.23,-6.07809 11.27,0 15.97,5.46099 15.97,11.64059 0,7.2188 -6.34,10 -13.46,12.5704 l -5.45,2.2773 c -7.78,3.3906 -18.15,7.832 -18.15,20.4023 0,3.8204 1.09,7.7305 3.37,10.8204 5.05,6.7968 14.12,9.0703 22.98,9.0703 8.64,0 13.88,-1.543 19.67,-3.3008 l 0.55,-0.8203 c -0.43,-3.9219 -0.55,-5.3594 -0.86,-9.0821 l -0.9,-0.4101 c -4.68,2.2812 -9.82,4.75 -18.02,4.75 -9.08,0 -14.78,-4.0195 -14.78,-10.0977 0,-4.6406 3.29,-6.8008 5.58,-8.1523 1.43,-0.8164 1.86,-1.0274 8.42,-3.6992 l 5.49,-2.2696" /><path
id="path240"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1675.09,1.64844 c -7.32,-0.09766 -8.21,-0.09766 -14.87,-0.41016 l -0.78,0.72266 c -1.3,6.27734 -3.37,14.64066 -5.22,21.94926 l -6.35,24.7382 -6.44,-25.3593 c -3.29,-12.4688 -4.4,-16.48051 -5.37,-21.02738 l -0.67,-0.61328 c -7.65,-0.09766 -8.17,-0.09766 -15.09,-0.41016 l -0.64,0.72266 c -4.81,18.44926 -13.01,45.44926 -15.29,52.24996 l 0.42,0.7188 c 5.24,0.3086 6.67,0.3086 11.93,0.8203 l 0.64,-0.6211 c 0.66,-3.3984 1.43,-6.5976 6.14,-25.6484 l 5.23,-21.24222 7.12,27.73052 c 3.28,13.7109 3.51,15.0429 4.15,18.3398 l 0.74,0.7227 c 6.48,0 8.33,0 15.55,0.3085 l 0.65,-0.7187 c 1.55,-7.1094 4.14,-17 6.13,-24.832 l 5.79,-21.85941 6.13,24.01951 c 0.87,3.6094 1.74,7.211 2.64,10.8203 1.85,7 2.07,7.8321 2.72,11.75 l 0.77,0.6094 c 1.74,0 3.6,-0.0976 5.36,-0.0976 1.65,0 3.26,0.0976 4.9,0.0976 l 0.67,-0.6094 c -2.07,-5.8711 -11.7,-34.6289 -16.19,-52.25778 l -0.77,-0.61328" /><path
id="path242"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1716.4,70.1797 c -5.58,-0.1992 -6.79,-0.3086 -12.14,-0.8203 l -0.66,0.6211 c 0.11,1.3398 0.11,2.7812 0.11,4.1211 0,1.8593 -0.11,3.5078 -0.21,5.5703 l 0.76,0.6094 c 5.69,0.4101 6.67,0.5078 12.14,1.0273 l 0.66,-0.6172 c -0.11,-4.2226 -0.11,-5.25 0,-9.793 l -0.66,-0.7187 z m -0.12,-68.53126 c -5.67,-0.09766 -6.56,-0.09766 -11.91,-0.41016 l -0.55,0.72266 c 0.33,5.46094 0.66,10.19926 0.66,21.64066 0,19.6875 -0.33,23.3984 -1.09,29.4687 l 0.54,0.7188 c 4.7,0.7304 6.34,0.9297 11.81,2.0703 l 1.11,-0.6211 c -0.35,-5.3594 -0.68,-10.918 -0.68,-24.2188 0,-19.1679 0.23,-21.73825 0.68,-28.75778 l -0.57,-0.61328" /><path
id="path244"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1761.66,9.69141 c -0.3,-3.40235 -0.3,-4.1211 -0.43,-7.11328 l -0.56,-0.61719 c -2.29,-0.51953 -4.15,-0.94141 -8.2,-0.94141 -2.61,0 -9.51,0 -12.88,5.37891 -1.98,2.98047 -1.98,5.45316 -1.98,17.61326 l 0.21,22.6797 c -3.81,0 -3.93,-0.1016 -7.87,-0.2109 l -0.43,0.6211 c 0.22,3.289 0.22,4.1172 0.22,7.4179 l 0.65,0.6094 c 2.41,0 3.84,-0.0976 7.43,0 -0.1,2.1719 -0.1,4.4414 -0.1,6.6016 -0.11,1.9609 -0.21,3.9101 -0.34,5.8711 l 0.56,0.7187 c 4.93,1.1406 6.13,1.4492 11.15,2.8906 l 0.77,-0.5117 c -0.34,-6.8008 -0.43,-8.1406 -0.43,-15.6679 4.58,0.0976 5.88,0.0976 12.14,0.3085 l 0.53,-0.621 c -0.22,-2.6797 -0.31,-3.8086 -0.31,-7.3086 l -0.56,-0.6211 C 1755.75,46.8906 1755.1,47 1749.31,47 l -0.22,-19.1719 c 0.13,-1.2383 0.13,-7.1172 0.13,-8.5468 0,-7.5313 0.96,-9.90239 6.43,-9.90239 2.3,0 4.07,0.51172 5.24,0.92969 l 0.77,-0.61719" /><path
id="path246"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1812.41,1.55078 c -3.03,0 -18.02,-0.10937 -21.42,-0.10937 -12.79,0 -14.21,0 -20.87,-0.20313 l -0.43,0.9336 c 8.29,12.97652 21.51,35.03902 27.09,44.92972 C 1782.34,47 1779.75,47 1772.74,46.6914 l -0.55,0.6094 c 0.44,3.3984 0.55,4.2305 0.78,7.1094 l 0.64,0.6211 c 18.37,0 20.44,0 39.49,0.3085 l 0.52,-0.8203 C 1803.9,39.4688 1790,14.9492 1787.05,9.69141 c 9.41,0.09765 18.83,0.30859 26.26,0.61719 l 0.53,-0.61719 c -0.43,-3.20313 -0.53,-4.54297 -0.74,-7.6211 l -0.69,-0.51953" /><path
id="path248"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1863.98,41.0195 c -2.17,5.6719 -6.99,8.0391 -11.9,8.0391 -6.13,0 -13.34,-3.918 -14.44,-14.2305 13.23,-0.0976 17.38,0 27.45,0.1133 -0.11,1.4492 -0.22,3.6992 -1.11,6.0781 z m 10.18,-26.8984 C 1873.61,10 1873.51,8.96094 1873.29,4.94922 l -0.66,-0.71875 c -1.86,-0.92969 -7.76,-3.921876 -17.5,-3.921876 -17.92,0 -29.18,9.691406 -29.18,27.621106 0,19.1719 12.24,28.5508 26.56,28.5508 8.64,0 14.65,-3.4102 17.93,-7.1211 6.24,-7 6.02,-17.1992 5.92,-21.7383 L 1875.59,27 c -17.06,0.1094 -20.01,0.1094 -37.95,0 0.12,-3.6016 0.45,-8.6484 4.16,-12.8789 4.48,-5.05079 10.71,-5.57032 14.11,-5.57032 3.17,0 6.45,0.51953 9.5,1.55082 4.06,1.5468 6.46,3.3867 7.88,4.539 l 0.87,-0.5195" /><path
id="path250"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1918.62,44.4219 c -1.11,0.4062 -2.51,0.9297 -4.39,0.9297 -2.07,0 -3.6,-0.7227 -4.58,-1.3399 -4.49,-2.9922 -4.49,-7.5312 -4.49,-18.25 0,-11.6406 0.34,-17.71092 0.77,-23.49998 l -0.56,-0.71094 c -5.14,0 -6.32,-0.10937 -11.58,-0.3125 l -0.56,0.61328 c 0.13,7.83985 0.26,14.94924 0.26,24.52734 0,16.4922 -0.35,20.7227 -1,26.6914 l 0.65,0.7188 c 4.15,0.7304 6.78,1.2422 11.36,2.0703 l 0.66,-0.6211 -0.53,-8.7578 c 1.3,3.289 4.02,9.8906 13.35,9.8906 1.39,0 2.17,-0.1016 3.03,-0.3125 l 0.46,-0.6172 c -1.11,-4.9414 -1.32,-5.9726 -2.1,-10.5 l -0.75,-0.5195" /><path
id="path252"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1946.37,1.64844 c -5.24,-0.09766 -6.32,-0.20703 -11.46,-0.41016 l -0.55,0.72266 c 0.21,7.32031 0.55,16.58986 0.55,36.37886 0,14.2188 0,29.4688 -1.11,42.6602 l 0.56,0.6211 c 5.36,0.8203 6.44,1.0273 11.92,2.1602 l 0.64,-0.711 c -0.77,-13.5117 -0.77,-27.1094 -0.77,-40.6094 0,-22.5703 0.34,-30.4023 0.9,-40.19918 l -0.68,-0.61328" /><path
id="path254"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 1996.48,30.3008 c -11.03,-1.5508 -21.31,-2.9922 -21.31,-12.1719 0,-0.5 0,-9.36718 10.39,-9.36718 6.77,0 10.71,3.49998 11.92,4.53908 l 0,17.2109 -1,-0.2109 z m 12.25,-7.5313 c 0,-12.7695 0.11,-13.89841 0.67,-20.59762 l -0.56,-0.52344 c -5.14,-0.09766 -6.01,-0.20703 -11.04,-0.41016 l -0.43,0.61328 0.11,3.71875 c -2.08,-1.55078 -7,-5.261716 -15.31,-5.261716 -10.94,0 -18.6,7.011716 -18.6,17.210906 0,13.8086 12.25,18.25 31.94,20.4024 l 1.86,0.207 c 0,2.7813 0,4.7422 -0.99,6.3906 -1.09,1.8594 -3.61,3.8086 -9.08,3.8086 -7.1,0 -12.03,-2.0468 -16.61,-3.9062 l -0.88,0.5195 c 0.22,4.7383 0.22,5.3477 0.33,7.5078 l 0.66,0.6211 c 6.11,2.0586 12.46,3.4102 18.91,3.4102 8.09,0 15.97,-2.5821 18.27,-10.6211 0.75,-2.8789 0.75,-8.5586 0.75,-12.8789 l 0,-10.211" /><path
id="path256"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2077.51,1.64844 c -5.25,-0.09766 -5.9,-0.09766 -10.94,-0.41016 l -0.77,0.72266 c 0,1.1289 0.11,2.26953 0.11,3.39844 0.13,5.05082 0.13,10.10152 0.13,15.16012 0,15.8711 -0.13,16.8907 -0.67,19.0508 -2.08,7.8399 -8.32,7.8399 -9.83,7.8399 -6.57,0 -11.59,-3.6094 -14.55,-5.7696 -0.11,-17.9414 0.1,-27.3203 0.88,-39.37888 l -0.67,-0.61328 c -5.36,-0.09766 -6.22,-0.09766 -11.47,-0.41016 l -0.56,0.72266 c 0.11,5.76953 0.34,11.33986 0.34,18.96876 0,16.4805 -0.77,25.2422 -1.32,32.1406 l 0.66,0.7188 c 5.46,0.9297 6.45,1.1406 11.59,2.0703 l 0.76,-0.7305 -0.11,-5.3594 c 2.86,1.8594 9.63,6.4024 19.25,6.4024 2.74,0 6.12,-0.4219 9.07,-1.961 2.85,-1.5507 5.14,-3.9218 6.35,-6.6992 1.42,-3.0898 1.53,-6.1836 1.64,-12.5703 l 0,-12.0625 c 0.32,-12.0586 0.43,-16.69921 0.75,-20.61718 l -0.64,-0.61328" /><path
id="path258"
style="fill:#aa9f93;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2134.67,47.7109 c -1.86,0.1094 -3.16,0.3204 -5.48,0.3204 -3.38,0 -10.6,-0.211 -15.86,-4.8516 -2.38,-2.1602 -6.31,-7 -6.31,-16.1797 0,-5.8789 1.73,-10.1016 4.02,-12.6797 1.99,-2.1601 5.57,-4.62889 11.27,-4.62889 6.66,0 10.72,3.29689 12.23,4.52739 0.23,13.5 0.23,16.6015 0.13,33.4921 z m -0.13,33.9102 c 5.61,0.9297 6.69,1.1289 11.61,2.1602 l 0.75,-0.6094 c -0.75,-14.3321 -0.86,-39.8828 -0.86,-50.1914 0,-15.9688 0.42,-23.60159 0.86,-30.71878 l -0.52,-0.71094 c -4.84,0 -6.14,-0.10937 -11.16,-0.3125 l -0.77,0.61328 0.22,3.8086 c -2.63,-1.83985 -7.12,-5.140629 -15.08,-5.140629 -14.55,0 -24.62,10.820269 -24.62,26.480469 0,11.2305 5.05,18.3516 9.63,22.1484 7.99,6.8125 18.36,7.1211 24.06,7.1211 2.3,0 3.38,0 6.35,-0.2109 0.1,12.7812 -0.47,18.9727 -1,24.9414 l 0.53,0.6211" /></g></g></svg>

After

Width:  |  Height:  |  Size: 92 KiB

View File

@@ -0,0 +1,130 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="361.64661mm"
height="65.339378mm"
viewBox="0 0 361.64661 65.339378"
version="1.1"
id="svg8"
inkscape:version="0.92.4 (5da689c313, 2019-01-14)"
sodipodi:docname="HESSO_Pictogram_only.svg">
<defs
id="defs2" />
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="0.35"
inkscape:cx="-290.85905"
inkscape:cy="737.76173"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
showgrid="false"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:window-width="1920"
inkscape:window-height="1017"
inkscape:window-x="-8"
inkscape:window-y="32"
inkscape:window-maximized="1" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-182.78979,-278.69341)">
<g
transform="matrix(0.35277777,0,0,-0.35277777,182.78979,344.03279)"
inkscape:label="ink_ext_XXXXXX"
id="g18">
<g
transform="scale(0.1)"
id="g20">
<path
inkscape:connector-curvature="0"
id="path22"
style="fill:#00a5e5;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2099.79,141.551 c 0,-78.1526 63.36,-141.5392812 141.5,-141.5392812 h 1569.09 c 78.14,0 141.49,63.3866812 141.49,141.5392812 V 1710.59 c 0,78.19 -63.35,141.55 -141.49,141.55 H 2241.29 c -78.14,0 -141.5,-63.36 -141.5,-141.55 V 141.551" />
<path
inkscape:connector-curvature="0"
id="path24"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 2610.25,1407.11 h 796.38 c 0,0 1.86,-50.27 5.1,-102.59 3.31,-55.33 7.74,-113.05 7.49,-117.61 -0.68,-8.68 -2.64,-17.14 -13.53,-20.96 -8.59,-3.02 -18.1,3.18 -20.4,20.36 -2.21,16.84 -6.05,33.97 -18.72,64.55 -5.69,13.6 -30.95,43.79 -65.73,59.46 -39.8,18.02 -87.92,17.91 -106.98,17.91 h -329.6 c 79.26,-115.23 191.6,-274.39 217.45,-319.38 10.87,-18.791 10.62,-42.912 -24.23,-92.952 -34.88,-50.039 -226.97,-301.16 -226.97,-301.16 h 375.43 c 55.95,0 96.77,6.274 122.62,18.66 25.76,12.332 45.07,57.793 49.67,74.481 4.41,16.59 6.45,32.953 26.01,31.891 12.59,-0.68 15.23,-15.301 15.39,-26.09 0,-4.758 -6.88,-64.668 -13.26,-119.899 -7.74,-68.281 -15.3,-134.152 -15.3,-134.152 h -775.79 c -10.81,0 -19.22,0 -22.11,7.191 -4.24,10.629 0.68,19.282 8.67,28.86 13.18,15.769 201.03,255.5 280.11,374.008 19.64,29.636 32.74,51.656 28.74,66.539 -4.58,17.089 -25.84,48.816 -55.01,92.933 -85.12,129.18 -244.83,330.92 -252.22,341.43 -10.12,14.03 -13.27,20.95 -8.85,30.47 2.65,6.05 8.94,6.05 15.64,6.05" />
<path
inkscape:connector-curvature="0"
id="path26"
style="fill:#e20571;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 4199.61,141.551 c 0,-78.1526 63.36,-141.5392812 141.5,-141.5392812 h 1569.11 c 78.14,0 141.48,63.3866812 141.48,141.5392812 V 1710.59 c 0,78.19 -63.34,141.55 -141.48,141.55 H 4341.11 c -78.14,0 -141.5,-63.36 -141.5,-141.55 V 141.551" />
<path
inkscape:connector-curvature="0"
id="path28"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 5235.11,1263.05 h -213.87 c -10.63,-123.98 -20.85,-229.42 -30.69,-308.581 -9.96,-79.168 -19.4,-139.418 -28.42,-196.43 -9.61,-56.949 -19.21,-108.898 -28.98,-155.699 -8.16,-36.668 -19.57,-65.031 -35.47,-85.559 -15.47,-20.66 -38.27,-34.98 -68.2,-43.031 -25,-6.09 -49.48,-1.148 -74.07,14.77 -24.14,16.062 -38.6,35.191 -43.8,57.421 -3.66,16.489 -4.66,30.489 -2.71,41.969 1.53,11.43 4.92,22.012 10.12,31.899 5.01,9.812 10.46,18.703 16.83,26.902 5.8,7.949 12.34,15.918 19.05,23.98 2.22,2.469 12.84,15.039 32.31,37.789 19.56,22.829 33.94,43.68 43.98,62.54 9.68,18.73 31.12,60.039 41.82,111.488 10.89,51.457 32.83,227.482 32.42,380.542 h -89.98 c -25.43,0 -50.17,-8.34 -73.48,-20.49 -22.69,-11.93 -42.77,-32.09 -51.77,-43.58 -9.53,-11.87 -34.03,-51.53 -39.98,-59.14 -5.7,-7.7 -17.35,-25.33 -26.28,-22.63 -9.69,3.07 -7.56,13.91 -6.03,22.63 1.7,8.66 19.21,52.97 32.31,86.31 13.44,33.67 31.29,66.15 54.08,97.56 17.61,26.73 41.92,45.59 72.04,64.74 30.43,19.58 65.38,29.29 105.61,29.29 h 655.21 c 11.39,0 72.96,-4.9 72.96,-76.76 0,-71.75 -65.4,-77.93 -72.96,-77.93 h -186.07 c -15.55,-147.45 -23.21,-299.577 -23.21,-448.78 0,-27.071 4.5,-53.649 13.85,-79.442 9.36,-25.969 20.76,-45.668 34.28,-59.039 17.52,-16.187 38.43,-26.469 63.51,-31.187 25.27,-4.563 50.6,3.218 76.37,23.5 14.22,11.269 24.49,23.859 31.3,37.847 6.38,14.223 10.46,28 12.4,40.832 1.7,13.008 4.6,31.309 5.13,35.719 0.51,4.441 -0.36,20.59 18.01,21.988 18.37,1.422 20.24,-14.879 21.95,-32.547 1.51,-17.73 -7.91,-83.562 -22.72,-124.472 -14.79,-41.141 -32.64,-74.02 -52.98,-98.891 -20.48,-25.168 -40.38,-43.098 -60.01,-54.117 -22.38,-13.563 -48.49,-21.731 -77.9,-24.582 -29.95,-2.758 -57.15,4.152 -81.65,20.723 -40.73,29.796 -71.93,76.25 -92.68,139.668 -12.17,37.05 -18.37,85.832 -19.73,146.609 -1.87,60.742 0.18,120.055 5.78,178.008 l 32.32,308.163" />
<path
inkscape:connector-curvature="0"
id="path30"
style="fill:#eeb00e;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 6299.44,141.551 c 0,-78.1526 63.36,-141.5392812 141.5,-141.5392812 h 1569.09 c 78.16,0 141.51,63.3866812 141.51,141.5392812 V 1710.59 c 0,78.19 -63.35,141.55 -141.51,141.55 H 6440.94 c -78.14,0 -141.5,-63.36 -141.5,-141.55 V 141.551" />
<path
inkscape:connector-curvature="0"
id="path32"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 6730.74,1007.61 c -11.04,5.09 -10.88,27.07 0.85,60.5 14.89,40.46 30.63,69.39 52.82,97.8 20.5,26.61 65.82,64.91 99.16,79.8 33.24,14.92 69.39,19.86 114.89,20.74 56.96,1.15 141.4,-28.48 238.68,-68.83 97.63,-40.23 186.91,-59.24 228.58,-58.66 61.48,0.71 123.39,12.87 176.78,50.67 31.81,22.35 44.65,37.66 59.7,68.26 4.6,9.37 10.64,11.46 17.1,7.8 10.3,-5.83 9.94,-20.33 7.4,-39.5 -14.71,-101.1 -58.34,-155.74 -103.23,-186.3 -23.3,-15.78 -57.83,-37.89 -109.03,-43.812 -51.36,-5.863 -140.64,10.132 -168.88,17.812 -55.35,14.81 -122.96,46.81 -163.44,62.81 -40.03,16.2 -70.66,31.47 -91.32,37.83 -16.15,4.42 -80.11,27.78 -138.61,25.18 -31.97,-1.33 -87.25,-13.26 -128.65,-39.88 -34.61,-22.45 -56.99,-51.01 -70.16,-75.97 -6.13,-11.5 -14.38,-20.22 -22.64,-16.25" />
<path
inkscape:connector-curvature="0"
id="path34"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 6730.74,598.41 c -11.04,5.11 -10.88,27.09 0.85,60.512 14.89,40.469 30.63,69.379 52.82,97.777 20.5,26.621 65.82,64.942 99.16,79.813 33.24,14.918 69.39,19.863 114.89,20.742 56.96,1.152 141.4,-28.465 238.68,-68.813 97.63,-40.25 186.91,-59.23 228.58,-58.679 61.48,0.707 123.39,12.879 176.78,50.668 31.81,22.359 44.65,37.66 59.7,68.242 4.6,9.383 10.64,11.473 17.1,7.82 10.3,-5.832 9.94,-20.312 7.4,-39.492 -14.71,-101.109 -58.34,-155.75 -103.23,-186.328 -23.3,-15.774 -57.83,-37.852 -109.03,-43.781 -51.36,-5.879 -140.64,10.121 -168.88,17.808 -55.35,14.801 -122.96,46.813 -163.44,62.813 -40.03,16.168 -70.66,31.457 -91.32,37.84 -16.15,4.418 -80.11,27.757 -138.61,25.179 -31.97,-1.32 -87.25,-13.281 -128.65,-39.902 -34.61,-22.469 -56.99,-51.008 -70.16,-75.969 -6.13,-11.48 -14.38,-20.199 -22.64,-16.25" />
<path
inkscape:connector-curvature="0"
id="path36"
style="fill:#00a770;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 8399.29,141.551 c 0,-78.1526 63.34,-141.5392812 141.49,-141.5392812 h 1569.12 c 78.1,0 141.5,63.3866812 141.5,141.5392812 V 1710.59 c 0,78.19 -63.4,141.55 -141.5,141.55 H 8540.78 c -78.15,0 -141.49,-63.36 -141.49,-141.55 V 141.551" />
<path
inkscape:connector-curvature="0"
id="path38"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 9789.2,518.73 -197.36,213.75 c 8.4,27.129 12.31,45.579 17.25,71.348 8.08,42.891 11.31,103.602 3.65,145.524 -2.3,12.855 -6.8,25.207 -16.16,31.242 -5.35,3.527 -16.31,4.699 -23.29,1.113 -6.03,-3.184 -11.65,-12.148 -12.59,-16.957 -2.39,-11.664 -4.75,-24.863 -6.3,-37.184 -0.67,-5.421 -1.19,-9.925 -1.7,-12.472 -2.53,-15.887 -5.77,-56.442 -11.56,-77.582 -3.9,-14.782 -6.3,-19.102 -13.16,-36.09 l -177.65,192.449 c 43.27,35.079 72.79,63.529 98.21,94.739 46.68,57.47 64.28,97.92 64.79,149.18 0.43,33.05 -4.07,56.52 -16.22,83.68 -5.37,11.91 -16.52,36.52 -42.86,60.18 -24.17,21.57 -47.37,36.13 -72.96,45.65 -26.55,9.99 -52.06,18.24 -92.96,18.24 -14.54,0 -30.18,-0.97 -48.31,-3 -65.04,-7.03 -122.36,-35.49 -161.14,-79.86 -34.87,-39.55 -47.69,-94.23 -48.04,-129.06 -0.68,-46.19 15.81,-98.55 44.13,-140.26 18.45,-27.2 36.73,-46 66.93,-77.13 l 15.82,-16.398 c -66.24,-48.59 -101.3,-78.629 -143.21,-122.363 -48.2,-50.309 -91.77,-102.821 -95.58,-193.649 -2.89,-64.261 29.17,-133.281 83.67,-180.09 52.22,-45.16 131.31,-70.039 222.37,-70.039 13.86,0 28.07,0.618 42.1,1.707 97.71,8.332 148.39,40.614 181.54,67.872 27.41,22.402 49.59,42.339 83.19,91.871 l 115.05,-127.621 1.19,-1.219 h 134.69 c 0.77,0.097 18.97,1.488 23.99,18.121 4.5,14.68 -15.57,32.566 -17.52,34.308 m -513.95,553.84 c -32.33,34.28 -65.23,73.61 -79.79,93.74 -10.88,14.89 -24.88,41.17 -29.06,66.35 -1.19,7.99 -3.82,35.79 15.29,60.88 10.63,13.65 25.76,28.92 59.1,39.16 11.58,3.53 26.46,5.48 41.93,5.48 16.68,0 33.5,-2.28 47.1,-6.46 27.13,-8.33 46.19,-24.53 59.53,-51.11 18.63,-36.68 10.2,-77.59 -24.4,-118.32 -32.49,-38.39 -58.68,-64.6 -89.7,-89.72 M 9132.99,820.449 c 22.6,27.942 54.81,56.367 104.33,92.133 l 219.57,-244.363 c -18.72,-24.617 -37.35,-46.489 -71.43,-65.969 -34.96,-19.922 -69.84,-29.129 -120.51,-31.66 -4.07,-0.211 -8.07,-0.289 -12.23,-0.289 -42.03,0 -77.74,11.269 -106.23,33.418 -34.43,26.871 -51.45,62.89 -53.41,113.14 -1.76,44.012 11.56,68.512 39.91,103.59" />
<path
inkscape:connector-curvature="0"
id="path40"
style="fill:#f25b28;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="M 0,141.559 C 0,63.4414 63.3398,0 141.422,0 H 1710.53 c 78.18,0 141.52,63.4414 141.52,141.559 V 1710.59 c 0,78.21 -63.34,141.55 -141.52,141.55 H 141.422 C 63.3398,1852.14 0,1788.8 0,1710.59 V 141.559" />
<path
inkscape:connector-curvature="0"
id="path42"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 803.223,1231.61 c 0,100.87 -81.778,182.65 -182.653,182.65 -100.879,0 -182.648,-81.78 -182.648,-182.65 0,-100.88 81.769,-182.66 182.648,-182.66 100.875,0 182.653,81.78 182.653,182.66" />
<path
inkscape:connector-curvature="0"
id="path44"
style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
d="m 803.223,671.25 c 0,100.879 -81.778,182.656 -182.653,182.656 -100.879,0 -182.648,-81.777 -182.648,-182.656 0,-100.871 81.769,-182.648 182.648,-182.648 100.875,0 182.653,81.777 182.653,182.648" />
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 766 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

@@ -0,0 +1,277 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
version="1.1"
id="svg1"
width="5926.6631"
height="1610.1256"
viewBox="0 0 5926.6631 1610.1256"
sodipodi:docname="swiss_universities-valais-excellence-logo.svg"
inkscape:version="1.4 (e7c3feb1, 2024-10-09)"
xml:space="preserve"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"><defs
id="defs1" /><sodipodi:namedview
id="namedview1"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:zoom="0.069789515"
inkscape:cx="4047.886"
inkscape:cy="601.8096"
inkscape:window-width="1920"
inkscape:window-height="999"
inkscape:window-x="1920"
inkscape:window-y="25"
inkscape:window-maximized="0"
inkscape:current-layer="g1" /><g
inkscape:groupmode="layer"
inkscape:label="Image"
id="g1"
transform="translate(2139.1749,374.06275)"><g
id="g2"
transform="matrix(16.047769,0,0,16.047769,-2139.1749,206.33126)"><g
id="g1-7">
<path
fill="#e11a27"
d="m 12.2,15.5 c 0,3.1 -2.7,4.6 -6,4.6 C 3,20.1 0,18.2 0,14.6 h 3.4 c 0,2 1.2,2.7 2.9,2.7 1.4,0 2.5,-0.5 2.5,-1.8 C 8.8,14.1 7.3,14 4.1,12.7 2,12 0.5,11.2 0.5,8.6 0.5,5.7 3.1,4.2 6.2,4.2 9.4,4.2 12,6.4 12,9.3 H 8.5 C 8.5,7.9 7.8,7 6.1,7 4.9,7 3.9,7.6 3.9,8.6 c 0,1.3 1.4,1.5 4.2,2.5 2.1,0.9 4.1,1.6 4.1,4.4"
id="path1-9" />
</g><polygon
fill="#e11a27"
points="21.8,19.7 19.5,19.7 13.6,4.6 17.4,4.6 20.7,14.2 24.1,4.6 27.6,4.6 31,14.2 34.3,4.6 38.1,4.6 32.2,19.7 29.8,19.7 25.8,8.4 "
id="polygon1" /><g
id="g7">
<path
fill="#e11a27"
d="m 41.2,4.6 h 3.5 v 15.1 h -3.5 z m 1.7,18.2 c 1.5,0 2.6,1.2 2.6,2.6 0,1.4 -1.2,2.6 -2.6,2.6 -1.4,0 -2.6,-1.2 -2.6,-2.6 0,-1.5 1.2,-2.6 2.6,-2.6"
id="path2" />
<path
fill="#e11a27"
d="m 60.8,15.5 c 0,3.1 -2.7,4.6 -6,4.6 -3.3,0 -6.2,-1.9 -6.2,-5.5 H 52 c 0,2 1.2,2.7 2.9,2.7 1.4,0 2.5,-0.5 2.5,-1.8 0,-1.4 -1.5,-1.5 -4.7,-2.8 -2.1,-0.8 -3.6,-1.6 -3.6,-4.2 0,-2.9 2.6,-4.4 5.7,-4.4 3.2,0 5.8,2.2 5.8,5.1 h -3.4 c 0,-1.4 -0.7,-2.3 -2.4,-2.3 -1.2,0 -2.2,0.6 -2.2,1.7 0,1.3 1.4,1.5 4.2,2.5 2,0.9 4,1.6 4,4.4"
id="path3" />
<path
fill="#e11a27"
d="m 75.7,15.5 c 0,3.1 -2.7,4.6 -6,4.6 -3.3,0 -6.2,-1.9 -6.2,-5.5 h 3.4 c 0,2 1.2,2.7 2.9,2.7 1.4,0 2.5,-0.5 2.5,-1.8 0,-1.4 -1.5,-1.5 -4.7,-2.8 C 65.5,12 64,11.2 64,8.6 c 0,-2.9 2.6,-4.4 5.7,-4.4 3.2,0 5.8,2.2 5.8,5.1 H 72 C 72,7.9 71.3,7 69.6,7 c -1.2,0 -2.2,0.6 -2.2,1.7 0,1.3 1.4,1.5 4.2,2.5 2.1,0.8 4.1,1.5 4.1,4.3"
id="path4" />
<path
fill="#e11a27"
d="m 93.2,4.6 v 15.1 h -3.5 v -2.1 c -0.9,1.6 -2.7,2.5 -4.9,2.5 -2.2,0 -3.7,-0.8 -4.6,-2 -0.7,-1.1 -1,-2.4 -1,-4.5 v -9 h 3.5 v 7.8 c 0,2.6 0.7,4.6 3.3,4.6 2.5,0 3.6,-2 3.6,-4.6 V 4.6 Z"
id="path5" />
<path
fill="#e11a27"
d="m 97.9,4.6 h 3.5 v 2.1 c 0.9,-1.6 2.7,-2.5 4.9,-2.5 2.2,0 3.7,0.8 4.5,2 0.7,1.1 1,2.4 1,4.5 v 9 h -3.5 v -7.8 c 0,-2.6 -0.7,-4.6 -3.3,-4.6 -2.5,0 -3.6,2 -3.6,4.6 v 7.8 h -3.5 z"
id="path6" />
<path
fill="#e11a27"
d="m 116.3,4.6 h 3.5 v 15.1 h -3.5 z m 1.7,18.2 c 1.5,0 2.6,1.2 2.6,2.6 0,1.4 -1.2,2.6 -2.6,2.6 -1.4,0 -2.6,-1.2 -2.6,-2.6 0,-1.5 1.2,-2.6 2.6,-2.6"
id="path7" />
</g><polygon
fill="#e11a27"
points="129.4,19.7 122.7,4.6 126.5,4.6 130.6,14.6 134.9,4.6 138.7,4.6 131.8,19.7 "
id="polygon7" /><g
id="g15">
<path
fill="#e11a27"
d="m 142.8,10.6 h 7.4 c 0,-2.1 -1.5,-3.4 -3.7,-3.4 -2,-0.1 -3.7,1.1 -3.7,3.4 m 0,2.6 c 0,2.2 1.1,3.9 4,3.9 2,0 2.8,-0.9 3.2,-2 h 3.6 c -0.5,2.6 -2.9,4.9 -6.8,4.9 -5.1,0 -7.6,-3.8 -7.6,-8 0,-4.5 2.7,-8 7.5,-8 3.9,0 7,3 7,6.8 0,0.5 0,1.2 -0.2,2.2 h -10.7 z"
id="path8" />
<path
fill="#e11a27"
d="m 167.2,7.9 c -0.6,-0.1 -0.8,-0.2 -1.4,-0.2 -3,0 -4.7,1.7 -4.7,5.5 v 6.5 h -3.5 V 4.6 h 3.5 V 7 c 0.7,-1.4 2.7,-2.6 4.7,-2.6 0.6,0 1,0.1 1.4,0.2 z"
id="path9" />
<path
fill="#e11a27"
d="m 180.8,15.5 c 0,3.1 -2.7,4.6 -6,4.6 -3.2,0 -6.2,-1.9 -6.2,-5.5 h 3.4 c 0,2 1.2,2.7 2.9,2.7 1.4,0 2.5,-0.5 2.5,-1.8 0,-1.4 -1.5,-1.5 -4.7,-2.8 -2.1,-0.8 -3.6,-1.6 -3.6,-4.2 0,-2.9 2.6,-4.4 5.7,-4.4 3.2,0 5.8,2.2 5.8,5.1 h -3.4 c 0,-1.4 -0.7,-2.3 -2.4,-2.3 -1.2,0 -2.2,0.6 -2.2,1.7 0,1.3 1.4,1.5 4.2,2.5 2,0.9 4,1.6 4,4.4"
id="path10" />
<path
fill="#e11a27"
d="m 184.5,4.6 h 3.5 v 15.1 h -3.5 z m 1.8,18.2 c 1.5,0 2.6,1.2 2.6,2.6 0,1.4 -1.2,2.6 -2.6,2.6 -1.4,0 -2.6,-1.2 -2.6,-2.6 0,-1.5 1.1,-2.6 2.6,-2.6"
id="path11" />
<path
fill="#e11a27"
d="m 201.4,19.7 c -0.6,0.1 -1.6,0.2 -2.6,0.2 -1.7,0 -4.9,-0.2 -4.9,-5.3 v -7 h -2.6 v -3 h 2.6 V 0 h 3.5 v 4.6 h 3.5 v 3 h -3.5 v 6.2 c 0,2.6 0.8,3 2.2,3 0.6,0 1.4,-0.1 1.8,-0.1 z"
id="path12" />
<path
fill="#e11a27"
d="m 205.3,4.6 h 3.5 v 15.1 h -3.5 z m 1.7,18.2 c 1.5,0 2.6,1.2 2.6,2.6 0,1.4 -1.2,2.6 -2.6,2.6 -1.4,0 -2.6,-1.2 -2.6,-2.6 0,-1.5 1.2,-2.6 2.6,-2.6"
id="path13" />
<path
fill="#e11a27"
d="m 216.3,10.6 h 7.4 c 0,-2.1 -1.5,-3.4 -3.7,-3.4 -2.1,-0.1 -3.7,1.1 -3.7,3.4 m -0.1,2.6 c 0,2.2 1.1,3.9 4,3.9 2,0 2.8,-0.9 3.2,-2 h 3.6 c -0.5,2.6 -2.9,4.9 -6.8,4.9 -5.1,0 -7.6,-3.8 -7.6,-8 0,-4.5 2.7,-8 7.5,-8 3.9,0 7,3 7,6.8 0,0.5 0,1.2 -0.2,2.2 h -10.7 z"
id="path14" />
<path
fill="#e11a27"
d="m 242,15.5 c 0,3.1 -2.7,4.6 -6,4.6 -3.2,0 -6.2,-1.9 -6.2,-5.5 h 3.4 c 0,2 1.2,2.7 2.9,2.7 1.4,0 2.5,-0.5 2.5,-1.8 0,-1.4 -1.5,-1.5 -4.7,-2.8 -2.1,-0.8 -3.6,-1.6 -3.6,-4.2 0,-2.9 2.6,-4.4 5.7,-4.4 3.2,0 5.8,2.2 5.8,5.1 h -3.4 c 0,-1.4 -0.7,-2.3 -2.4,-2.3 -1.2,0 -2.2,0.6 -2.2,1.7 0,1.3 1.4,1.5 4.2,2.5 2,0.9 4,1.6 4,4.4"
id="path15" />
</g></g><g
id="g3"
transform="matrix(3.2202511,0,0,3.2202511,2177.3625,-374.06275)"><g
id="g8"
transform="translate(-76.8,-76.4)">
<path
class="st0"
d="M 467,328.7 C 467,406.2 404.2,469 326.7,469 249.2,469 186.4,406.2 186.4,328.7 c 0,-77.5 62.8,-140.3 140.3,-140.3 77.5,0 140.3,62.8 140.3,140.3"
id="path4-3" />
<path
class="st0"
d="M 81.5,326.4 C 81.5,191.2 191.5,81.1 326.7,81.1 462,81.2 572,191.2 572,326.4 572,461.6 462,571.6 326.8,571.6 191.6,571.6 81.5,461.6 81.5,326.4 m -4.7,0 c 0,137.8 112.1,250 250,250 137.9,0 250,-112.1 250,-250 0,-137.9 -112.1,-250 -250,-250 -137.9,0 -250,112.2 -250,250"
id="path6-8" />
</g><polygon
class="st0"
points="336.5,129.4 358.1,129.4 340.5,142.8 349.6,177.7 328.2,151.6 308.8,164.2 314.9,142.8 291.3,129.4 320,129.4 328.2,96.9 "
id="polygon10"
transform="translate(-76.8,-76.4)" /><g
id="g20"
transform="translate(-76.8,-76.4)">
<path
class="st1"
d="m 434.2,459.1 c -29.4,23.8 -66.8,38.1 -107.5,38.1 -41.3,0 -79.3,-14.8 -108.8,-39.3 -20.6,2 -46.5,23.9 -46.5,23.9 39.8,39.8 94.8,64.4 155.4,64.4 60,0 114.5,-24.2 154.2,-63.3 0,0.2 -26.1,-22 -46.8,-23.8"
id="path12-0" />
<path
class="st2"
d="m 263.5,134.4 c -7.4,2.4 -9.7,8.8 -7.2,17.5 l 23.4,-7.6 c -2.7,-7.9 -7.5,-12.7 -16.2,-9.9 m -5.4,23.5 c 5.8,13.1 15.7,10.4 22.1,8.3 4,-1.3 7.5,-3 11.6,-5.1 l 1.9,6 c -4.8,3 -9.3,4.8 -14.1,6.3 -15.5,5 -26.9,-1.1 -31.7,-16.1 -5,-15.5 2.4,-25.1 13.7,-28.8 15.1,-4.9 24.3,2.4 28.8,16.6 l 0.7,2.2 z"
id="path14-2" />
<path
class="st2"
d="m 378.8,175.4 c -14.3,-4.2 -22,-15.1 -17.2,-31.2 4.2,-14.2 17.1,-19.1 30.4,-15.2 4.6,1.4 7.3,2.4 11.3,4.4 l -1.9,6.6 c -3.4,-1.6 -5.6,-2.7 -8.4,-3.5 -10,-3.1 -19,-0.9 -22.4,10.4 -3.4,11.5 1.7,19.2 12.7,22.4 2.5,0.6 5.2,1.3 9.3,1.7 l -1.9,6.5 c -4.7,-0.2 -8.3,-1 -11.9,-2.1"
id="path16" />
<path
class="st2"
d="m 436.8,157.9 c -6.6,-4.3 -13,-2.1 -18.1,5.4 l 20.6,13.5 c 4.4,-7.1 5.3,-13.9 -2.5,-18.9 m -21.6,10.6 c -6.5,12.8 1.8,18.8 7.4,22.4 3.5,2.3 7.1,4 11.3,5.8 l -3.4,5.2 c -5.4,-1.9 -9.5,-4.2 -13.8,-7 -13.6,-8.9 -16,-21.6 -7.4,-34.8 8.9,-13.6 21.1,-13.9 31,-7.4 13.3,8.7 13.4,20.4 5.2,32.9 l -1.3,1.9 z"
id="path18" />
</g><rect
x="167.85394"
y="349.28809"
transform="rotate(-43.760095)"
class="st2"
width="65.996155"
height="8.7994871"
id="rect22"
style="stroke-width:0.999942" /><polygon
class="st2"
points="454.5,229.4 508,190.7 513.1,197.9 459.6,236.5 "
id="polygon24"
transform="translate(-76.8,-76.4)" /><g
id="g36"
transform="translate(-76.8,-76.4)">
<path
class="st2"
d="m 513,249.8 c -3,-7.2 -9.6,-9 -18,-5.7 l 9.5,22.7 c 7.7,-3.4 12.1,-8.5 8.5,-17 m -23.8,-3.4 c -12.6,6.9 -9,16.5 -6.4,22.7 1.6,3.9 3.6,7.3 6.1,11.1 l -5.8,2.4 c -3.4,-4.6 -5.5,-8.9 -7.5,-13.6 -6.3,-15 -1.1,-26.9 13.4,-33 15,-6.3 25.2,0.3 29.8,11.3 6.1,14.7 -0.4,24.4 -14.1,30.1 l -2.1,0.9 z"
id="path26" />
<path
class="st2"
d="m 488,328.2 29.4,-2 c 4.9,-0.3 10.3,-0.8 9.7,-8.7 -0.3,-4.5 -3.3,-10.9 -5.2,-14.7 l -35.5,2.4 -0.6,-8.7 46.2,-3.1 0.5,8.1 -4.2,0.3 c 4.7,8.9 5.9,11.9 6.4,18.3 0.4,6.6 -2.9,14.1 -13.1,14.8 l -33,2.2 z"
id="path28" />
<path
class="st2"
d="m 480.5,372.5 c 3.5,-14.6 13.9,-22.7 30.2,-18.9 14.4,3.4 20,16 16.8,29.5 -1.1,4.7 -2,7.4 -3.8,11.5 L 517,393 c 1.5,-3.5 2.4,-5.8 3,-8.6 2.5,-10.2 -0.1,-19 -11.7,-21.7 -11.6,-2.8 -19.1,2.8 -21.7,13.9 -0.5,2.5 -1,5.3 -1.2,9.4 l -6.6,-1.6 c 0.2,-4.5 0.8,-8.2 1.7,-11.9"
id="path30" />
<path
class="st2"
d="m 501.2,429.5 c 3.9,-6.8 1.3,-13 -6.4,-17.8 L 482.4,433 c 7.4,4.1 14.1,4.5 18.8,-3.5 m -11.8,-21 c -13.1,-5.9 -18.6,2.8 -22,8.6 -2.1,3.7 -3.6,7.3 -5.2,11.5 l -5.4,-3.1 c 1.6,-5.5 3.7,-9.7 6.3,-14.2 8.2,-14.1 20.7,-17.2 34.3,-9.3 14.1,8.2 15,20.3 9.1,30.6 -8,13.8 -19.6,14.4 -32.5,7 l -2,-1.2 z"
id="path32" />
<path
class="st3"
d="m 212.5,498 c -4.8,-3.3 -6.2,-8.5 -2.9,-13.3 3.3,-4.9 8.4,-5.8 13.4,-2.4 1.4,1 3,2.1 4.2,3.4 l -1.9,2.8 c 0,0 -1.5,-1.5 -3,-2.5 -3.1,-2.1 -5.7,-2.2 -8.2,1.5 -2.5,3.6 -1.5,6 1.6,8.2 1.5,1 3.6,2 3.6,2 l -1.9,2.7 c -1.8,-0.5 -3.4,-1.3 -4.9,-2.4"
id="path34" />
</g><polygon
class="st3"
points="236.4,502.8 234.5,506.7 242.8,510.9 241.3,513.9 228.4,507.5 236.7,491 249.2,497.3 247.7,500.3 239.7,496.3 237.9,499.9 243.6,502.7 242.1,505.6 "
id="polygon38"
transform="translate(-76.8,-76.4)" /><g
id="g42"
transform="translate(-76.8,-76.4)">
<path
class="st3"
d="m 265.8,507.2 -2.5,-0.8 -1.8,5.3 2.5,0.8 c 1.9,0.6 3.1,0.3 3.8,-1.7 0.7,-2.1 0,-3 -2,-3.6 m 1.7,8.9 2.3,8.3 -5.5,-1.8 -1.6,-7 -2.2,-0.7 -2,5.9 -4.8,-1.6 5.8,-17.5 8.6,2.9 c 3.7,1.2 6.1,3.5 4.7,7.7 -1.4,4.1 -5.3,3.6 -5.3,3.6 z"
id="path40" />
</g><polygon
class="st3"
points="283.2,508.8 299.2,511.8 298.6,515.2 293.1,514.2 290.3,528.9 285.3,528 288.1,513.3 282.6,512.2 "
id="polygon44"
transform="translate(-76.8,-76.4)" /><polygon
class="st3"
points="308.7,531.2 313.8,531.6 315.1,513.2 310,512.9 "
id="polygon46"
transform="translate(-76.8,-76.4)" /><polygon
class="st3"
points="333.1,516.8 333.3,521.7 340,521.4 340.1,524.9 333.5,525.2 333.8,531.8 328.7,532 327.9,513.6 342.2,512.9 342.3,516.4 "
id="polygon48"
transform="translate(-76.8,-76.4)" /><polygon
class="st3"
points="353.5,511.4 356.5,529.6 361.5,528.8 358.5,510.6 "
id="polygon50"
transform="translate(-76.8,-76.4)" /><polygon
class="st3"
points="378.8,516.9 380,521.1 389,518.5 389.9,521.7 376.1,525.7 371,508 384.5,504.1 385.4,507.3 376.8,509.8 377.9,513.7 384,512 384.9,515.1 "
id="polygon52"
transform="translate(-76.8,-76.4)" /><g
id="g58"
transform="translate(-76.8,-76.4)">
<path
class="st3"
d="m 402.3,500.5 -1.4,0.7 5,10.8 1.4,-0.6 c 4,-1.7 5,-3.5 2.9,-7.9 -2,-4.5 -4,-5 -7.9,-3 m 8.1,13.1 -7.7,3.5 -7.7,-16.8 7.7,-3.5 c 4.8,-2.2 9.3,-2 12.3,4.4 2.6,5.7 0.4,10 -4.6,12.4"
id="path54" />
<path
class="st3"
d="m 431.5,486.9 -0.9,0.6 1.9,2.9 0.9,-0.6 c 1.1,-0.7 1.5,-1.6 0.8,-2.6 -0.7,-1 -1.6,-1 -2.7,-0.3 m 7,6 c -1.7,-0.7 -3.1,-1.3 -4.3,-1.8 l -0.8,0.6 2.2,3.2 -1.8,1.2 -5.8,-8.6 3.1,-2.1 c 2,-1.3 3.7,-1.5 5,0.5 0.7,1.1 0.8,2.4 -0.2,3.7 1.1,0.4 4.9,1.8 4.9,1.8 z m -8.6,-9 c -3.4,2.3 -4.3,6.8 -2.1,10.1 2.2,3.3 6.8,4.2 10.2,1.9 3.4,-2.3 4.4,-6.8 2.1,-10.2 -2.3,-3.3 -6.8,-4.1 -10.2,-1.8 m 9.3,13.9 c -4.4,3 -10.4,1.8 -13.3,-2.5 -2.9,-4.4 -1.7,-10.3 2.8,-13.3 4.4,-3 10.4,-1.9 13.4,2.5 2.8,4.3 1.5,10.3 -2.9,13.3"
id="path56" />
</g><polygon
class="st3"
points="332.8,227.5 350.5,227.5 336.2,238.5 343.6,267 326.1,245.6 310.2,256 315.2,238.5 296,227.5 319.4,227.5 326.1,201 "
id="polygon60"
transform="translate(-76.8,-76.4)" /><g
id="g64"
transform="translate(-76.8,-76.4)">
<path
class="st0"
d="m 155.7,260.6 c -0.6,1.5 -2.1,5.7 -2.6,7 -1.8,5.1 -3,9.7 3,11.8 6,2.1 7.9,-2.3 9.7,-7.3 0.9,-2.6 1.4,-4.7 2,-7.2 z m 17.5,15.7 c -4,10.9 -9.3,20.1 -21.9,15.7 -14.3,-5 -7.9,-21.5 -3.4,-34.2 -7.1,-2.5 -10.3,-3.5 -14.2,7.6 -2.1,6 -3.3,12.5 -3.7,15.8 l -8.5,-3 c 0.5,-4.1 2.2,-11.7 3.9,-16.5 3.7,-10.8 9.1,-22.3 23,-17.5 l 30.9,10.8 c -1.8,8.2 -3.6,14.7 -6.1,21.3"
id="path62" />
</g><polygon
class="st0"
points="139.4,451.5 184.2,406.6 176.8,391.5 107.7,400.7 116.3,411.8 168.7,403.6 169.2,404.7 130.8,440.5 "
id="polygon66"
transform="translate(-76.8,-76.4)" /><g
id="g72"
transform="translate(-76.8,-76.4)">
<path
class="st0"
d="m 195.6,187.6 c -4,2.6 -9.5,7 -12.6,3.8 -3.1,-3.2 0.9,-8.2 3.9,-11.1 3,-2.9 6.6,-5.6 9,-7.3 l -3.7,-7.7 c -1.7,1.3 -6.4,4.3 -13,10.7 -6.3,6.1 -13.2,16.8 -4.9,25.4 7.8,8.1 18.2,1 20.5,-0.4 6.7,-4.1 10.4,-7.4 13.6,-4.2 3.2,3.3 -0.8,8.8 -4.3,12.2 -4.1,4 -8.5,6.7 -12.8,9.3 l 6.3,6.5 c 4.1,-2.6 9.2,-6.3 14,-10.9 10.1,-9.9 12.5,-20.5 5.4,-27.9 -7.2,-7.1 -16.2,-1.8 -21.4,1.6"
id="path68" />
<path
class="st0"
d="m 153.1,363.2 c -6.3,0.9 -7.4,-3.7 -8.1,-9 -0.2,-1.4 -0.8,-5.8 -1,-7.4 l 12.7,-1.8 c 0.7,2.5 1.2,4.6 1.6,7.3 0.8,5.3 1.1,10 -5.2,10.9 m 13.7,-10.5 C 166,345.6 164.5,339 162.4,331 l -32.4,4.7 c -14.6,2.1 -14.1,14.9 -12.3,26.1 0.7,5 2.6,12.5 4.1,16.3 l 9,-1.2 c -1.2,-3.1 -3.1,-9.4 -4,-15.7 -1.7,-11.7 1.6,-12.2 9,-13.3 2,13.4 3.9,31 18.8,28.8 13.2,-1.9 13.7,-12.5 12.2,-24"
id="path70" />
</g><polygon
class="st0"
points="164,318.7 94.9,312.3 93.5,299.1 165.2,305.8 "
id="polygon74"
transform="translate(-76.8,-76.4)" /><path
class="st0"
d="m 109.5,168.5 -40,-26.4 7.1,-10.8 40,26.4 z m -47.2,-31.1 -9.1,-6 4.9,-12.3 11.3,7.5 z"
id="path76" /><g
id="g82"
transform="translate(-76.8,-76.4)">
<path
class="st3"
d="M 442.8,407.4 C 430.1,396 404.5,373 404.5,373 l -1.6,0.5 c -4,1.4 -10.2,0.5 -12,-0.1 -0.4,-0.5 -2.2,-3.3 -2.2,-3.3 -3.3,-5.1 -6,-9.1 -8.3,-10.8 l -2.8,-1.2 c -1.9,-0.7 -5.4,-1.9 -6.2,-3.4 -0.7,-1 -1.2,-2.7 -1.2,-4.9 0,-2.1 0.5,-4.5 1.9,-7.1 l 0.7,-1.4 -0.8,-1.3 c -1.3,-2.3 -5.3,-10.5 -8.9,-17.7 l -6.3,-12.7 -0.4,-0.3 c -6.7,-6 -13.1,-10.9 -14.6,-12 -6.7,-9.7 -14.8,-12.2 -22.6,-14.6 l -6.6,-2.1 -1.2,1.8 -11.6,18 v 0.8 c 0,0 -0.3,12.1 -0.4,15.8 -1.5,0.1 -4.2,0.4 -4.2,0.4 0,0 -4.7,6.6 -5.8,8.1 -1.2,0.2 -5.1,0.8 -5.1,0.8 v 2.2 c -0.5,7.7 -2.2,14.2 -3.7,19.9 -1.1,4.3 -2.2,8.5 -2.6,12.5 -9.7,7.8 -55.4,46.1 -62.6,52.6 -0.1,0 -0.1,0 -0.1,0.1 1.1,1.5 2.3,3 3.5,4.4 5.3,-4.7 54.8,-46.4 63.6,-53.4 l 1,-0.8 0.1,-1.2 c 0.3,-4 1.3,-8.1 2.6,-12.8 1.4,-5.4 3,-11.5 3.6,-18.7 0.9,-0.1 2.9,-0.5 2.9,-0.5 l 0.8,-1 c 0,0 3.9,-5.4 5,-7 1.5,-0.1 6.6,-0.6 6.6,-0.6 0,0 0.5,-18.5 0.5,-19.9 0.7,-1.1 7.8,-12.2 9.6,-14.9 1.3,0.4 2.7,0.8 2.7,0.8 7.7,2.3 14.3,4.3 19.9,12.8 l 0.3,0.4 0.4,0.3 c 0.1,0.1 7.1,5.2 14.1,11.5 0.4,0.8 5.8,11.6 5.8,11.6 3.4,6.8 6.7,13.7 8.4,16.8 -1.3,2.9 -2,5.7 -2,8.3 0,3.2 0.8,6 2.1,7.8 1.8,3.1 6.2,4.7 9.1,5.7 l 1.5,0.6 c 1.5,1.1 4.8,6.1 6.7,9.1 2.4,3.8 3,4.7 4.1,5.2 1.6,0.8 9.1,2.1 15,0.8 1.5,1.3 24,21.6 36.5,32.8 1,-1.2 2.1,-2.7 3.1,-4.3"
id="path78" />
<path
class="st4"
d="m 441.2,409.7 c -0.4,0.6 -0.8,1.2 -1.3,1.8 0.5,-0.6 0.9,-1.2 1.3,-1.8 0,0 0,0 0,0 m -53.1,-31.3 c -1,-0.5 -1.6,-1.4 -4.1,-5.2 -2,-3 -5.2,-8.1 -6.7,-9.2 l -1.5,-0.6 c -2.9,-1 -7.3,-2.6 -9.1,-5.7 -1.2,-1.8 -2.1,-4.6 -2.1,-7.8 0,-0.1 0,-0.2 0,-0.4 0,-0.2 0,-0.2 0,-0.4 0,-2.4 0.6,-5.2 1.8,-7.9 -1.7,-3.2 -5,-9.9 -8.2,-16.5 0,0 -5.4,-10.9 -5.8,-11.6 -7,-6.3 -14,-11.4 -14.1,-11.5 l -0.4,-0.3 -0.3,-0.4 c -5.7,-8.5 -12.3,-10.5 -19.9,-12.8 0,0 -1.4,-0.4 -2.7,-0.8 0,0 0,0 0,0.1 3.4,4.7 8.7,11.1 10.6,16 0.9,2.3 1.1,2.1 1.2,6.8 4.9,2.6 11.2,5.6 11.2,5.6 0,0 -4.9,3.9 -8.6,5.5 -4.6,9.5 -8.2,30.5 -6.3,40.4 -6.4,8.5 -10.3,14.2 -15.1,22.1 -0.4,0.6 2.3,4.8 1.6,5.6 -4.7,5 -21.1,13.8 -34.6,31.4 l -23.8,25.9 c 21.8,14 47.8,22.1 75.6,22.1 38.9,0 74.1,-15.9 99.5,-41.5 v 0 c 0.8,-0.8 1.6,-1.6 2.4,-2.5 0.1,-0.1 0.1,-0.2 0.2,-0.2 3.8,-4.1 7.4,-8.3 10.7,-12.8 -12.5,-11.2 -35,-31.5 -36.5,-32.8 -5.9,1.5 -13.5,0.2 -15,-0.6"
id="path80" />
</g></g></g><style
type="text/css"
id="style2">
.st0{fill:#E50012;}
.st1{fill:#B2A8A2;}
.st2{fill:#9B867D;}
.st3{fill:#FFFFFF;}
.st4{fill:#AC0003;}
</style></svg>

After

Width:  |  Height:  |  Size: 17 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 137 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 862 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 13 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 8.1 KiB

View File

@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="placeholder" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="400px" height="200px" viewBox="0 0 400 200" enable-background="new 0 0 400 200" xml:space="preserve">
<radialGradient id="SVGID_1_" cx="196.5469" cy="94.4341" r="276.6305" gradientUnits="userSpaceOnUse">
<stop offset="0" style="stop-color:#3AA9D7"/>
<stop offset="1" style="stop-color:#2BA3D4"/>
</radialGradient>
<rect fill="url(#SVGID_1_)" width="400" height="200"/>
<g>
<path fill="#FFFFFF" d="M145.254,56.93v86.14h109.492V56.93H145.254z M245.924,133.729h-91.33V66.27h91.33V133.729L245.924,133.729 z"/>
<polygon fill="#FFFFFF" points="159.506,126.463 178.329,106.68 185.382,109.73 207.635,86.04 216.393,96.519 220.348,94.132 241.732,126.463 "/>
<circle fill="#FFFFFF" cx="181.251" cy="83.424" r="8.222"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1004 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 75 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="27.975206mm"
height="10.474675mm"
viewBox="0 0 27.975205 10.474675"
version="1.1"
id="svg8"
inkscape:version="1.2.2 (b0a84865, 2022-12-01)"
sodipodi:docname="signature.svg"
inkscape:export-filename="C:\work\repo\edu\hevs-latextemplate-thesis\05-img\signature.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/">
<defs
id="defs2">
<rect
x="-6.5946274"
y="-8.2799215"
width="143.76288"
height="55.541416"
id="rect522" />
<rect
x="56.336304"
y="35.733311"
width="102.37111"
height="32.514095"
id="rect841" />
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="13.647473"
inkscape:cx="62.539051"
inkscape:cy="20.992898"
inkscape:document-units="mm"
inkscape:current-layer="layer1"
inkscape:document-rotation="0"
showgrid="false"
inkscape:window-width="3440"
inkscape:window-height="1359"
inkscape:window-x="0"
inkscape:window-y="25"
inkscape:window-maximized="0"
inkscape:showpageshadow="0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1" />
<metadata
id="metadata5">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-56.335937,-37.117427)">
<g
aria-label="Signature"
id="text839"
style="font-size:9.17222px;line-height:125%;font-family:Formata;-inkscape-font-specification:Formata;letter-spacing:0px;word-spacing:0px;white-space:pre;shape-inside:url(#rect841);display:inline;fill:#0000ff;stroke:#000000;stroke-width:0.264583px">
<path
d="m 59.316909,42.850065 q -0.220133,-0.293511 -0.568678,-0.816328 -2.412294,-0.238478 -2.412294,-1.008944 0,-0.174272 0.174273,-0.284339 0.183444,-0.110067 0.550333,-0.110067 0.917222,0 1.825272,1.164872 0.917222,0.09172 2.082094,0.09172 h 0.100894 q 1.174044,-0.706261 2.182989,-1.421694 0.412749,-0.752123 0.715433,-1.23825 0.302683,-0.4953 0.733777,-1.027289 0.853017,-1.082322 1.797756,-1.082322 0.247649,0 0.247649,0.220133 0,0.531989 -0.880533,1.394178 -0.880533,0.862189 -2.338916,1.852788 -0.440266,0.843845 -0.6604,1.229078 1.284111,-0.100895 1.852789,-0.311856 h 0.02752 q 0.03669,0 0.03669,0.05503 0,0.04586 -0.06421,0.137583 -0.687917,0.210961 -1.9812,0.3302 -0.4953,0.853016 -0.963083,1.329972 -0.458611,0.467783 -0.926394,0.467783 -0.752122,0 -1.421694,-0.834672 -1.311628,0.6604 -2.320572,1.008944 -0.137583,0.04586 -0.321028,0.04586 -0.174272,0 -0.174272,-0.137583 0,-0.07338 0.07338,-0.137583 0.07338,-0.05503 0.192616,-0.05503 0.733778,0 2.439811,-0.862188 z m 1.751894,-0.733778 q -0.697089,0.394406 -1.375833,0.74295 0.614539,0.761294 1.119011,0.761294 0.376061,0 0.74295,-0.403577 0.376061,-0.403578 0.8255,-1.164872 -0.559506,0.04586 -1.311628,0.06421 z m 5.173132,-4.778727 q -0.632883,0 -1.274938,0.843845 -0.531989,0.715433 -1.164872,1.889477 1.1557,-0.853016 1.852788,-1.550105 0.697089,-0.706261 0.697089,-1.091494 0,-0.09172 -0.110067,-0.09172 z m -9.465731,3.650544 q 0,0.522817 1.770239,0.761294 -0.715434,-0.953911 -1.440039,-0.953911 -0.3302,0 -0.3302,0.192617 z m 2.806699,1.73355 q 0.568678,-0.302684 1.091495,-0.605367 h -0.03669 q -0.797983,0 -1.540933,-0.05503 0.348544,0.486128 0.486127,0.6604 z m 3.421239,-1.788583 q -0.4953,0.3302 -1.540933,0.953911 0.706261,-0.01835 1.03646,-0.04586 0.174273,-0.302684 0.504473,-0.90805 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path541" />
<path
d="m 65.599866,40.988104 q 0.09172,0 0.137583,0.05503 0.05503,0.05503 0.05503,0.155928 0,0.100895 -0.137583,0.256822 -0.137583,0.155928 -0.238478,0.155928 -0.100894,0 -0.146755,-0.05503 -0.04586,-0.06421 -0.04586,-0.137584 0,-0.08255 0.146755,-0.256822 0.146756,-0.174272 0.229306,-0.174272 z m 0.761294,1.23825 q 0.07338,-0.04586 0.110066,-0.04586 0.04586,0 0.04586,0.05503 v 0.02752 q 0.03669,0 -0.4953,0.403577 -0.522817,0.403578 -1.128183,0.807156 -0.596195,0.403577 -0.752122,0.403577 -0.265995,0 -0.265995,-0.220133 0,-0.265994 0.458611,-0.999772 0.458611,-0.74295 0.669572,-0.74295 0.155928,0 0.155928,0.119239 0,0.119239 -0.421922,0.651228 -0.421922,0.531989 -0.421922,0.761294 0,0.128411 0.09172,0.128411 0.100894,0 0.486128,-0.256822 0.687916,-0.458611 1.265766,-0.926394 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path543" />
<path
d="m 69.066962,42.235526 q 0.06421,-0.04586 0.119239,-0.04586 0.05503,0 0.05503,0.06421 v 0.01835 q -0.889705,0.733778 -1.394177,1.063977 l -1.834444,1.192389 -0.568678,0.797983 q -1.3208,1.806928 -1.3208,1.944511 -0.146755,0.321028 -0.284338,0.321028 -0.174273,0 -0.174273,-0.229306 0,-0.229305 0.229306,-0.614539 0.220133,-0.385233 0.440267,-0.623711 l 0.87136,-0.917222 q 0.110067,-0.174272 0.449439,-0.642055 0.339372,-0.467783 0.449439,-0.623711 l 0.394406,-0.587022 0.01834,-0.03669 q 0,-0.01834 -0.01834,-0.01834 -0.541161,0.449438 -0.898878,0.449438 -0.357717,0 -0.357717,-0.201788 0,-0.210962 0.275167,-0.550334 0.275167,-0.339372 0.6604,-0.6604 0.394405,-0.321027 0.862189,-0.550333 0.476955,-0.238477 0.834672,-0.238477 0.366888,0 0.366888,0.256822 0,0.183444 -0.348544,0.440266 -0.339372,0.256822 -0.421922,0.256822 -0.07338,0 -0.07338,-0.03669 0,-0.05503 0.07338,-0.100895 0.311855,-0.220133 0.311855,-0.41275 0,-0.201789 -0.1651,-0.201789 -0.403577,0 -1.128183,0.687917 -0.715433,0.678744 -0.715433,0.963083 0,0.08255 0.128411,0.08255 0.137583,0 0.458611,-0.210961 0.321028,-0.220133 0.486128,-0.421922 l 0.24765,-0.311856 q 0.04586,-0.06421 0.119239,-0.06421 0.07338,0 0.128411,0.04586 0.05503,0.04586 0.05503,0.09172 l -1.109839,1.540933 1.357489,-0.853016 q 0.605367,-0.366889 1.210733,-0.880534 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path545" />
<path
d="m 72.800041,42.263043 q -1.935338,1.61431 -2.393949,1.61431 -0.265995,0 -0.265995,-0.220133 0,-0.220133 0.192617,-0.522816 0.201789,-0.302684 0.394405,-0.531989 0.201789,-0.238478 0.201789,-0.284339 0,-0.04586 -0.02752,-0.04586 -0.853016,0.568678 -1.018116,0.697089 -0.155928,0.128411 -0.522817,0.421922 -0.357716,0.293511 -0.467783,0.366889 -0.110066,0.07338 -0.238477,0.07338 -0.128412,0 -0.128412,-0.110066 0,-0.128411 0.513645,-0.807156 0.4953,-0.678744 0.4953,-0.761294 0,-0.01834 -0.03669,-0.01834 -0.02752,0 -0.788811,0.559505 l -0.03669,-0.137583 q 0.651228,-0.522817 0.880533,-0.669572 0.229306,-0.146756 0.366889,-0.146756 0.146755,0 0.146755,0.137583 0,0.09172 -0.522816,0.752122 -0.513644,0.651228 -0.513644,0.706261 0,0.04586 0.02752,0.04586 0.03669,0 1.045633,-0.733778 1.018117,-0.74295 1.23825,-0.74295 0.06421,0 0.119239,0.05503 0.06421,0.04586 0.06421,0.09172 0,0.110066 -0.486127,0.733777 -0.486128,0.614539 -0.486128,0.697089 0,0.08255 0.110067,0.08255 0.119239,0 0.4953,-0.24765 0.687916,-0.449439 1.265766,-0.926394 l 0.201789,-0.1651 q 0.06421,-0.04586 0.119239,-0.04586 0.05503,0 0.05503,0.05503 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path547" />
<path
d="m 73.561333,42.657448 q -0.05503,0 -0.05503,-0.03669 0,-0.04586 0.06421,-0.100894 0.302684,-0.24765 0.302684,-0.449439 0,-0.128411 -0.229306,-0.146755 -0.41275,0.0092 -0.9906,0.596194 -0.568677,0.587022 -0.568677,0.880533 0,0.100894 0.110066,0.100894 0.119239,0 0.311856,-0.155927 0.174272,-0.110067 0.651228,-0.550334 0.110066,-0.110066 0.210961,-0.110066 0.128411,0 0.128411,0.119239 0,0.04586 -0.02752,0.07338 -0.02752,0.02752 -0.100894,0.119239 -0.07338,0.08255 -0.128411,0.155928 -0.1651,0.238478 -0.1651,0.311856 0,0.183444 0.146755,0.183444 0.192617,0 0.724605,-0.348544 0.531989,-0.357717 0.972256,-0.715434 l 0.440266,-0.348544 q 0.06421,-0.04586 0.119239,-0.04586 0.05503,0 0.05503,0.06421 v 0.01835 q -0.706261,0.596194 -1.495072,1.119011 -0.779639,0.522816 -1.027289,0.522816 -0.293511,0 -0.293511,-0.311855 0,-0.07338 0.02752,-0.137583 0.02752,-0.06421 0.02752,-0.09172 0,-0.02752 -0.01834,-0.03669 -0.02752,0 -0.357717,0.24765 -0.321027,0.24765 -0.568677,0.24765 -0.238478,0 -0.238478,-0.256822 0,-0.256822 0.339372,-0.687916 0.348544,-0.440267 0.926394,-0.797984 0.57785,-0.357716 1.128183,-0.357716 0.128411,0 0.210961,0.06421 0.09172,0.06421 0.09172,0.201789 0,0.128411 -0.265995,0.394406 -0.265994,0.265994 -0.458611,0.265994 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path549" />
<path
d="m 80.312081,39.869093 -1.311628,-0.06421 q -0.807155,0 -1.605138,0.06421 l 0.04586,0.183445 q 0,0.100894 -0.596195,0.770466 -0.596194,0.6604 -1.192388,1.449211 -0.596195,0.779639 -0.596195,1.1557 0,0.146755 0.100895,0.146755 0.110067,0 0.486128,-0.256822 0.697088,-0.458611 1.274938,-0.926394 l 0.201789,-0.1651 q 0.06421,-0.04586 0.110067,-0.04586 0.04586,0 0.04586,0.05503 v 0.02752 q 0.03669,0 -0.4953,0.403577 -0.522817,0.403578 -1.128183,0.807156 -0.596195,0.403577 -0.752122,0.403577 -0.265995,0 -0.265995,-0.238477 0,-0.348545 0.385234,-0.963083 0.394405,-0.614539 0.853016,-1.1557 0.467783,-0.550333 0.880533,-1.036461 0.421922,-0.486128 0.458611,-0.596194 -1.008944,0.09172 -1.550105,0.220133 l -0.183444,0.03669 q -0.07338,0.0092 -0.07338,0.137583 0,0.05503 -0.128411,0.05503 -0.128411,0 -0.321028,-0.05503 -0.183444,-0.06421 -0.183444,-0.174272 0,-0.110067 0.183444,-0.146756 1.357489,-0.238477 1.926166,-0.284338 0.568678,-0.05503 0.752122,-0.06421 0.192617,-0.01834 0.587022,-0.02752 0.403578,-0.0092 0.541161,-0.0092 0.41275,-0.01834 0.963084,-0.01834 0.559505,0 0.678744,0.04586 0.119239,0.04586 0.119239,0.174272 0,0.09172 -0.210961,0.09172 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path551" />
<path
d="m 77.28524,43.638876 q 0,-0.137584 0.128411,-0.357717 0.137583,-0.220133 0.146755,-0.256822 0.0092,-0.03669 -0.01834,-0.03669 -0.02752,0 -0.08255,0.05503 -0.04586,0.04586 -0.559505,0.385234 -0.504473,0.3302 -0.697089,0.3302 -0.128411,0 -0.128411,-0.1651 0,-0.1651 0.513644,-0.853017 0.513644,-0.687916 0.724605,-0.687916 0.04586,0 0.08255,0.04586 0.04586,0.03669 0.04586,0.06421 0,0.01834 -0.476956,0.559506 -0.467783,0.541161 -0.467783,0.697088 0,0.03669 0.03669,0.03669 0.174272,0 0.752122,-0.467783 0.57785,-0.467783 0.816327,-0.724605 0.24765,-0.256822 0.385234,-0.256822 0.137583,0 0.137583,0.119238 0,0.07338 -0.05503,0.146756 -0.05503,0.07338 -0.210961,0.265994 -0.146756,0.183445 -0.275167,0.348545 -0.357717,0.458611 -0.357717,0.57785 0,0.110066 0.09172,0.110066 0.100894,0 0.476955,-0.256822 0.697089,-0.458611 1.274939,-0.926394 l 0.201789,-0.1651 q 0.06421,-0.04586 0.110066,-0.04586 0.04586,0 0.04586,0.05503 v 0.02752 q 0.03669,0 -0.4953,0.403577 -0.522816,0.403578 -1.128183,0.807156 -0.596194,0.403577 -0.752122,0.403577 -0.265994,0 -0.265994,-0.238477 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path553" />
<path
d="m 81.779624,42.235526 q 0.06421,-0.04586 0.119239,-0.04586 0.05503,0 0.05503,0.06421 v 0.01835 q -0.687917,0.550333 -1.357489,1.036461 -0.669572,0.476955 -0.981428,0.476955 -0.229305,0 -0.229305,-0.24765 0,-0.24765 0.220133,-0.4953 0.220133,-0.24765 0.431095,-0.431094 0.220133,-0.183444 0.220133,-0.238478 0,-0.06421 -0.07338,-0.137583 -0.06421,-0.08255 -0.110067,-0.110067 -0.155927,0.155928 -0.678744,0.568678 l -0.03669,-0.137583 q 0.57785,-0.458611 0.669572,-0.614539 v -0.08255 q 0,-0.229306 0.04586,-0.311855 0.04586,-0.08255 0.220134,-0.229306 0.174272,-0.146756 0.238477,-0.146756 0.06421,0 0.110067,0.04586 0.05503,0.04586 0.05503,0.09172 0,0.04586 -0.03669,0.110066 -0.02752,0.05503 -0.06421,0.100895 -0.02752,0.03669 -0.08255,0.100894 -0.05503,0.05503 -0.07338,0.08255 -0.0092,0.01835 -0.02752,0.07338 -0.0092,0.05503 -0.05503,0.09172 -0.04586,0.03669 -0.04586,0.09172 0,0.05503 0.07338,0.24765 0.07338,0.183445 0.07338,0.275167 0,0.08255 -0.339372,0.41275 -0.339373,0.321028 -0.339373,0.522816 0,0.110067 0.100895,0.110067 0.128411,0 0.476955,-0.229305 l 0.110067,-0.07338 q 0.596194,-0.41275 1.119011,-0.834672 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path555" />
<path
d="m 84.136872,42.235526 q 0.06421,-0.04586 0.119239,-0.04586 0.05503,0 0.05503,0.06421 v 0.01835 q -0.953911,0.788811 -1.586794,1.183216 -0.632884,0.394406 -1.146528,0.394406 -0.41275,0 -0.41275,-0.403578 0,-0.596194 0.605367,-1.219905 0.605366,-0.632883 1.018116,-0.632883 0.229306,0 0.229306,0.256822 -0.04586,0.504472 -1.449211,1.357488 v 0.09172 q 0,0.302683 0.311855,0.302683 0.321028,0 0.687917,-0.210961 0.715433,-0.421922 1.339144,-0.963083 z m -1.586794,-0.357717 q -0.201789,0 -0.522816,0.339373 -0.311856,0.339372 -0.421922,0.770466 0.440266,-0.265994 0.742949,-0.559505 0.302684,-0.302684 0.302684,-0.421922 0,-0.128412 -0.100895,-0.128412 z"
style="font-family:'Mrs Saint Delafield';-inkscape-font-specification:'Mrs Saint Delafield';stroke:none"
id="path557" />
</g>
<text
xml:space="preserve"
transform="matrix(0.26458333,0,0,0.26458333,56.006587,37.512502)"
id="text520"
style="font-size:21.3333px;line-height:1.3;font-family:'Fira Sans';-inkscape-font-specification:'Fira Sans';text-align:center;word-spacing:0px;white-space:pre;shape-inside:url(#rect522);display:inline" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 14 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 305 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 428 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 418 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 638 KiB

View File

@@ -0,0 +1,32 @@
time,co2,temperature,humidity,windows,battery
2026-05-27T14:21:48,0,29.2,29,0,47
2026-05-27T14:25:49,400,29.3,50,0,47
2026-05-27T14:31:49,400,29.2,50,0,47
2026-05-27T14:39:50,423,29.3,50,0,47
2026-05-27T14:41:50,400,29.2,50,0,47
2026-05-27T14:51:51,400,29.2,51,0,47
2026-05-27T14:59:52,400,29.3,51,0,47
2026-05-27T15:09:52,413,29.3,51,0,47
2026-05-27T15:11:53,427,29.5,52,0,44
2026-05-27T15:13:53,421,29.3,52,0,47
2026-05-27T15:15:54,400,29.5,51,0,47
2026-05-27T15:19:55,416,29.5,52,0,44
2026-05-27T15:21:55,406,29.5,52,0,44
2026-05-27T15:23:55,400,29.5,52,0,47
2026-05-27T15:27:56,407,29.5,52,0,44
2026-05-27T15:31:57,422,29.5,52,0,47
2026-05-27T15:35:58,452,29.6,52,0,47
2026-05-27T15:39:59,439,29.6,52,0,44
2026-05-27T15:41:59,403,29.6,52,0,44
2026-05-27T15:44:00,435,29.6,52,0,47
2026-05-27T16:30:11,481,29.8,51,0,47
2026-05-27T16:32:11,461,29.7,50,0,44
2026-05-27T16:34:12,480,29.7,50,0,44
2026-05-27T16:36:12,483,29.7,50,0,47
2026-05-27T16:38:13,459,29.7,50,0,47
2026-05-27T16:40:13,459,29.7,49,0,44
2026-05-27T16:42:14,461,29.7,48,0,44
2026-05-27T16:44:14,475,29.7,48,0,47
2026-05-27T16:48:16,524,29.7,48,0,47
2026-05-27T16:50:16,534,29.7,48,0,44
2026-05-27T16:52:16,508,29.7,47,0,47
1 time co2 temperature humidity windows battery
2 2026-05-27T14:21:48 0 29.2 29 0 47
3 2026-05-27T14:25:49 400 29.3 50 0 47
4 2026-05-27T14:31:49 400 29.2 50 0 47
5 2026-05-27T14:39:50 423 29.3 50 0 47
6 2026-05-27T14:41:50 400 29.2 50 0 47
7 2026-05-27T14:51:51 400 29.2 51 0 47
8 2026-05-27T14:59:52 400 29.3 51 0 47
9 2026-05-27T15:09:52 413 29.3 51 0 47
10 2026-05-27T15:11:53 427 29.5 52 0 44
11 2026-05-27T15:13:53 421 29.3 52 0 47
12 2026-05-27T15:15:54 400 29.5 51 0 47
13 2026-05-27T15:19:55 416 29.5 52 0 44
14 2026-05-27T15:21:55 406 29.5 52 0 44
15 2026-05-27T15:23:55 400 29.5 52 0 47
16 2026-05-27T15:27:56 407 29.5 52 0 44
17 2026-05-27T15:31:57 422 29.5 52 0 47
18 2026-05-27T15:35:58 452 29.6 52 0 47
19 2026-05-27T15:39:59 439 29.6 52 0 44
20 2026-05-27T15:41:59 403 29.6 52 0 44
21 2026-05-27T15:44:00 435 29.6 52 0 47
22 2026-05-27T16:30:11 481 29.8 51 0 47
23 2026-05-27T16:32:11 461 29.7 50 0 44
24 2026-05-27T16:34:12 480 29.7 50 0 44
25 2026-05-27T16:36:12 483 29.7 50 0 47
26 2026-05-27T16:38:13 459 29.7 50 0 47
27 2026-05-27T16:40:13 459 29.7 49 0 44
28 2026-05-27T16:42:14 461 29.7 48 0 44
29 2026-05-27T16:44:14 475 29.7 48 0 47
30 2026-05-27T16:48:16 524 29.7 48 0 47
31 2026-05-27T16:50:16 534 29.7 48 0 44
32 2026-05-27T16:52:16 508 29.7 47 0 47

View File

@@ -0,0 +1,34 @@
time,co2,temperature,humidity,windows,battery
2026-05-27T14:26:35,400,30.1,50,0,38
2026-05-27T14:40:36,400,29.8,50,0,38
2026-05-27T14:50:37,407,30,50,0,40
2026-05-27T14:54:38,459,29.8,50,0,40
2026-05-27T14:56:38,447,29.8,50,0,38
2026-05-27T14:58:39,441,30,50,0,40
2026-05-27T15:00:39,423,30,50,0,40
2026-05-27T15:02:40,400,30,50,0,38
2026-05-27T15:06:40,413,30,51,0,38
2026-05-27T15:08:41,409,30,51,0,38
2026-05-27T15:12:42,424,30,51,0,38
2026-05-27T15:14:42,413,30,51,0,38
2026-05-27T15:18:43,452,30,51,0,40
2026-05-27T15:20:44,422,30,51,0,40
2026-05-27T15:26:45,427,30.1,52,0,38
2026-05-27T15:28:46,434,30.1,51,0,38
2026-05-27T15:30:46,442,30.1,52,0,40
2026-05-27T15:32:47,438,30.1,51,0,40
2026-05-27T15:34:47,503,30.1,52,0,40
2026-05-27T15:38:48,452,30.1,52,0,38
2026-05-27T15:40:49,482,30.1,52,0,38
2026-05-27T15:42:49,447,30.1,52,0,38
2026-05-27T16:29:01,443,30.3,50,0,38
2026-05-27T16:31:01,435,30.3,49,0,38
2026-05-27T16:33:02,465,30.3,49,0,38
2026-05-27T16:35:02,463,30.3,49,0,38
2026-05-27T16:39:04,445,30.3,49,0,38
2026-05-27T16:41:04,444,30.3,48,0,38
2026-05-27T16:43:04,414,30.3,48,0,38
2026-05-27T16:45:05,450,30.3,47,0,38
2026-05-27T16:49:06,470,30.3,47,0,38
2026-05-27T16:51:07,463,30.3,48,0,38
2026-05-27T16:53:07,421,30.3,47,0,38
1 time co2 temperature humidity windows battery
2 2026-05-27T14:26:35 400 30.1 50 0 38
3 2026-05-27T14:40:36 400 29.8 50 0 38
4 2026-05-27T14:50:37 407 30 50 0 40
5 2026-05-27T14:54:38 459 29.8 50 0 40
6 2026-05-27T14:56:38 447 29.8 50 0 38
7 2026-05-27T14:58:39 441 30 50 0 40
8 2026-05-27T15:00:39 423 30 50 0 40
9 2026-05-27T15:02:40 400 30 50 0 38
10 2026-05-27T15:06:40 413 30 51 0 38
11 2026-05-27T15:08:41 409 30 51 0 38
12 2026-05-27T15:12:42 424 30 51 0 38
13 2026-05-27T15:14:42 413 30 51 0 38
14 2026-05-27T15:18:43 452 30 51 0 40
15 2026-05-27T15:20:44 422 30 51 0 40
16 2026-05-27T15:26:45 427 30.1 52 0 38
17 2026-05-27T15:28:46 434 30.1 51 0 38
18 2026-05-27T15:30:46 442 30.1 52 0 40
19 2026-05-27T15:32:47 438 30.1 51 0 40
20 2026-05-27T15:34:47 503 30.1 52 0 40
21 2026-05-27T15:38:48 452 30.1 52 0 38
22 2026-05-27T15:40:49 482 30.1 52 0 38
23 2026-05-27T15:42:49 447 30.1 52 0 38
24 2026-05-27T16:29:01 443 30.3 50 0 38
25 2026-05-27T16:31:01 435 30.3 49 0 38
26 2026-05-27T16:33:02 465 30.3 49 0 38
27 2026-05-27T16:35:02 463 30.3 49 0 38
28 2026-05-27T16:39:04 445 30.3 49 0 38
29 2026-05-27T16:41:04 444 30.3 48 0 38
30 2026-05-27T16:43:04 414 30.3 48 0 38
31 2026-05-27T16:45:05 450 30.3 47 0 38
32 2026-05-27T16:49:06 470 30.3 47 0 38
33 2026-05-27T16:51:07 463 30.3 48 0 38
34 2026-05-27T16:53:07 421 30.3 47 0 38

View File

@@ -0,0 +1,33 @@
time,co2,temperature,humidity,windows,battery
2026-05-27T15:02:17,451,31,48,0,6
2026-05-27T15:04:17,406,31,48,0,5
2026-05-27T15:06:18,417,31,48,0,5
2026-05-27T15:08:18,408,31.1,48,0,5
2026-05-27T15:10:19,405,31,47,0,5
2026-05-27T15:12:19,418,31.1,48,0,5
2026-05-27T15:14:20,422,31.1,48,0,5
2026-05-27T15:16:20,414,31.1,48,0,5
2026-05-27T15:18:21,414,31.1,48,0,5
2026-05-27T15:20:21,443,31.1,48,0,5
2026-05-27T15:22:22,405,31.1,48,0,5
2026-05-27T15:24:22,400,31.1,48,0,5
2026-05-27T15:28:23,443,31.1,48,0,5
2026-05-27T15:30:23,422,31.2,48,0,5
2026-05-27T15:34:24,410,31.2,48,0,5
2026-05-27T15:36:25,414,31.2,48,0,5
2026-05-27T15:38:25,414,31.2,48,0,5
2026-05-27T15:40:26,405,31.2,48,0,5
2026-05-27T15:42:26,410,31.3,48,0,5
2026-05-27T16:28:37,418,31.6,47,1,5
2026-05-27T16:30:38,400,31.6,44,1,5
2026-05-27T16:32:38,425,31.6,45,1,5
2026-05-27T16:34:39,425,31.6,45,1,5
2026-05-27T16:36:39,435,31.6,45,1,5
2026-05-27T16:38:40,410,31.6,45,1,5
2026-05-27T16:40:40,423,31.6,45,1,5
2026-05-27T16:42:41,400,31.5,44,1,5
2026-05-27T16:44:42,441,31.5,44,1,5
2026-05-27T16:46:42,441,31.5,43,1,5
2026-05-27T16:48:42,452,31.3,44,1,5
2026-05-27T16:50:43,408,31.5,43,1,5
2026-05-27T16:52:44,400,31.5,42,1,5
1 time co2 temperature humidity windows battery
2 2026-05-27T15:02:17 451 31 48 0 6
3 2026-05-27T15:04:17 406 31 48 0 5
4 2026-05-27T15:06:18 417 31 48 0 5
5 2026-05-27T15:08:18 408 31.1 48 0 5
6 2026-05-27T15:10:19 405 31 47 0 5
7 2026-05-27T15:12:19 418 31.1 48 0 5
8 2026-05-27T15:14:20 422 31.1 48 0 5
9 2026-05-27T15:16:20 414 31.1 48 0 5
10 2026-05-27T15:18:21 414 31.1 48 0 5
11 2026-05-27T15:20:21 443 31.1 48 0 5
12 2026-05-27T15:22:22 405 31.1 48 0 5
13 2026-05-27T15:24:22 400 31.1 48 0 5
14 2026-05-27T15:28:23 443 31.1 48 0 5
15 2026-05-27T15:30:23 422 31.2 48 0 5
16 2026-05-27T15:34:24 410 31.2 48 0 5
17 2026-05-27T15:36:25 414 31.2 48 0 5
18 2026-05-27T15:38:25 414 31.2 48 0 5
19 2026-05-27T15:40:26 405 31.2 48 0 5
20 2026-05-27T15:42:26 410 31.3 48 0 5
21 2026-05-27T16:28:37 418 31.6 47 1 5
22 2026-05-27T16:30:38 400 31.6 44 1 5
23 2026-05-27T16:32:38 425 31.6 45 1 5
24 2026-05-27T16:34:39 425 31.6 45 1 5
25 2026-05-27T16:36:39 435 31.6 45 1 5
26 2026-05-27T16:38:40 410 31.6 45 1 5
27 2026-05-27T16:40:40 423 31.6 45 1 5
28 2026-05-27T16:42:41 400 31.5 44 1 5
29 2026-05-27T16:44:42 441 31.5 44 1 5
30 2026-05-27T16:46:42 441 31.5 43 1 5
31 2026-05-27T16:48:42 452 31.3 44 1 5
32 2026-05-27T16:50:43 408 31.5 43 1 5
33 2026-05-27T16:52:44 400 31.5 42 1 5

View File

@@ -0,0 +1,36 @@
time,co2,temperature,humidity,windows,battery
2026-05-27T14:22:05,0,29.7,30,0,47
2026-05-27T14:32:06,400,30,50,0,47
2026-05-27T14:40:06,415,29.8,52,0,47
2026-05-27T14:42:07,451,29.8,51,0,47
2026-05-27T14:44:08,416,30,51,0,47
2026-05-27T14:46:08,400,29.8,51,0,47
2026-05-27T14:54:09,426,30,52,0,47
2026-05-27T14:56:10,400,30,50,0,47
2026-05-27T15:00:11,420,30,51,0,47
2026-05-27T15:02:11,400,30.1,51,0,47
2026-05-27T15:08:12,442,30,53,0,47
2026-05-27T15:12:13,421,30.1,51,0,47
2026-05-27T15:16:14,436,30.1,54,0,47
2026-05-27T15:18:14,409,30.1,50,0,47
2026-05-27T15:20:15,432,30.1,50,0,47
2026-05-27T15:22:16,436,30.1,50,0,47
2026-05-27T15:24:16,450,30.2,52,0,47
2026-05-27T15:26:16,436,30.1,53,0,47
2026-05-27T15:28:17,425,30.2,52,0,47
2026-05-27T15:30:18,428,30.1,52,0,47
2026-05-27T15:32:18,445,30.2,51,0,47
2026-05-27T15:34:18,497,30.1,52,0,47
2026-05-27T15:36:19,423,30.2,52,0,47
2026-05-27T15:38:20,459,30.2,51,0,47
2026-05-27T15:40:20,459,30.2,53,0,47
2026-05-27T15:42:20,427,30.2,52,0,47
2026-05-27T16:28:32,520,30.5,50,0,47
2026-05-27T16:30:32,482,30.3,49,0,47
2026-05-27T16:32:33,463,30.5,49,0,47
2026-05-27T16:34:34,475,30.5,48,0,47
2026-05-27T16:36:34,480,30.5,49,0,47
2026-05-27T16:38:34,473,30.5,48,0,44
2026-05-27T16:42:36,448,30.5,48,0,47
2026-05-27T16:44:36,495,30.5,49,0,47
2026-05-27T16:52:38,518,30.5,47,0,44
1 time co2 temperature humidity windows battery
2 2026-05-27T14:22:05 0 29.7 30 0 47
3 2026-05-27T14:32:06 400 30 50 0 47
4 2026-05-27T14:40:06 415 29.8 52 0 47
5 2026-05-27T14:42:07 451 29.8 51 0 47
6 2026-05-27T14:44:08 416 30 51 0 47
7 2026-05-27T14:46:08 400 29.8 51 0 47
8 2026-05-27T14:54:09 426 30 52 0 47
9 2026-05-27T14:56:10 400 30 50 0 47
10 2026-05-27T15:00:11 420 30 51 0 47
11 2026-05-27T15:02:11 400 30.1 51 0 47
12 2026-05-27T15:08:12 442 30 53 0 47
13 2026-05-27T15:12:13 421 30.1 51 0 47
14 2026-05-27T15:16:14 436 30.1 54 0 47
15 2026-05-27T15:18:14 409 30.1 50 0 47
16 2026-05-27T15:20:15 432 30.1 50 0 47
17 2026-05-27T15:22:16 436 30.1 50 0 47
18 2026-05-27T15:24:16 450 30.2 52 0 47
19 2026-05-27T15:26:16 436 30.1 53 0 47
20 2026-05-27T15:28:17 425 30.2 52 0 47
21 2026-05-27T15:30:18 428 30.1 52 0 47
22 2026-05-27T15:32:18 445 30.2 51 0 47
23 2026-05-27T15:34:18 497 30.1 52 0 47
24 2026-05-27T15:36:19 423 30.2 52 0 47
25 2026-05-27T15:38:20 459 30.2 51 0 47
26 2026-05-27T15:40:20 459 30.2 53 0 47
27 2026-05-27T15:42:20 427 30.2 52 0 47
28 2026-05-27T16:28:32 520 30.5 50 0 47
29 2026-05-27T16:30:32 482 30.3 49 0 47
30 2026-05-27T16:32:33 463 30.5 49 0 47
31 2026-05-27T16:34:34 475 30.5 48 0 47
32 2026-05-27T16:36:34 480 30.5 49 0 47
33 2026-05-27T16:38:34 473 30.5 48 0 44
34 2026-05-27T16:42:36 448 30.5 48 0 47
35 2026-05-27T16:44:36 495 30.5 49 0 47
36 2026-05-27T16:52:38 518 30.5 47 0 44

View File

@@ -0,0 +1,37 @@
time,co2,temperature,humidity,windows,battery
2026-05-27T14:21:29,0,30.1,29,0,33
2026-05-27T14:25:30,400,30.5,50,0,31
2026-05-27T14:31:30,400,30.3,50,0,36
2026-05-27T14:39:31,400,30.2,51,0,36
2026-05-27T14:49:31,421,30.2,50,0,33
2026-05-27T14:51:31,414,30.2,51,0,33
2026-05-27T14:53:32,407,30.2,51,0,33
2026-05-27T14:57:33,414,30.2,50,0,33
2026-05-27T14:59:34,425,30.2,51,0,36
2026-05-27T15:01:34,424,30.2,50,0,33
2026-05-27T15:07:35,436,30.2,51,0,33
2026-05-27T15:09:36,436,30.2,51,0,36
2026-05-27T15:13:37,459,30.2,51,0,33
2026-05-27T15:15:38,463,30.2,51,0,33
2026-05-27T15:17:38,475,30.2,51,0,36
2026-05-27T15:19:39,496,30.2,51,0,33
2026-05-27T15:21:39,501,30.3,52,0,33
2026-05-27T15:23:40,505,30.3,51,0,33
2026-05-27T15:25:40,496,30.2,51,0,36
2026-05-27T15:29:41,523,30.3,52,0,33
2026-05-27T15:31:42,551,30.3,52,0,33
2026-05-27T15:33:42,570,30.3,51,0,33
2026-05-27T15:35:43,596,30.3,52,0,33
2026-05-27T15:37:43,551,30.3,52,0,33
2026-05-27T15:39:44,555,30.3,52,0,33
2026-05-27T15:41:44,578,30.3,52,0,33
2026-05-27T15:43:45,549,30.3,52,0,33
2026-05-27T16:29:56,780,30.6,51,0,33
2026-05-27T16:31:57,780,30.6,51,0,33
2026-05-27T16:33:57,791,30.6,51,0,33
2026-05-27T16:35:58,708,30.6,50,0,33
2026-05-27T16:37:58,754,30.6,50,0,33
2026-05-27T16:42:00,754,30.5,50,0,33
2026-05-27T16:46:00,802,30.6,49,0,33
2026-05-27T16:48:01,834,30.6,49,0,33
2026-05-27T16:50:01,915,30.5,49,0,33
1 time co2 temperature humidity windows battery
2 2026-05-27T14:21:29 0 30.1 29 0 33
3 2026-05-27T14:25:30 400 30.5 50 0 31
4 2026-05-27T14:31:30 400 30.3 50 0 36
5 2026-05-27T14:39:31 400 30.2 51 0 36
6 2026-05-27T14:49:31 421 30.2 50 0 33
7 2026-05-27T14:51:31 414 30.2 51 0 33
8 2026-05-27T14:53:32 407 30.2 51 0 33
9 2026-05-27T14:57:33 414 30.2 50 0 33
10 2026-05-27T14:59:34 425 30.2 51 0 36
11 2026-05-27T15:01:34 424 30.2 50 0 33
12 2026-05-27T15:07:35 436 30.2 51 0 33
13 2026-05-27T15:09:36 436 30.2 51 0 36
14 2026-05-27T15:13:37 459 30.2 51 0 33
15 2026-05-27T15:15:38 463 30.2 51 0 33
16 2026-05-27T15:17:38 475 30.2 51 0 36
17 2026-05-27T15:19:39 496 30.2 51 0 33
18 2026-05-27T15:21:39 501 30.3 52 0 33
19 2026-05-27T15:23:40 505 30.3 51 0 33
20 2026-05-27T15:25:40 496 30.2 51 0 36
21 2026-05-27T15:29:41 523 30.3 52 0 33
22 2026-05-27T15:31:42 551 30.3 52 0 33
23 2026-05-27T15:33:42 570 30.3 51 0 33
24 2026-05-27T15:35:43 596 30.3 52 0 33
25 2026-05-27T15:37:43 551 30.3 52 0 33
26 2026-05-27T15:39:44 555 30.3 52 0 33
27 2026-05-27T15:41:44 578 30.3 52 0 33
28 2026-05-27T15:43:45 549 30.3 52 0 33
29 2026-05-27T16:29:56 780 30.6 51 0 33
30 2026-05-27T16:31:57 780 30.6 51 0 33
31 2026-05-27T16:33:57 791 30.6 51 0 33
32 2026-05-27T16:35:58 708 30.6 50 0 33
33 2026-05-27T16:37:58 754 30.6 50 0 33
34 2026-05-27T16:42:00 754 30.5 50 0 33
35 2026-05-27T16:46:00 802 30.6 49 0 33
36 2026-05-27T16:48:01 834 30.6 49 0 33
37 2026-05-27T16:50:01 915 30.5 49 0 33

View File

@@ -0,0 +1,57 @@
time,co2,temperature,humidity,windows,battery
2026-05-27T14:01:17,428,31.8,45,0,53
2026-05-27T14:03:17,461,31.7,45,0,53
2026-05-27T14:05:18,487,31.6,45,0,51
2026-05-27T14:07:18,508,31.6,45,0,51
2026-05-27T14:11:19,497,31.5,45,0,51
2026-05-27T14:15:20,549,31.3,46,0,51
2026-05-27T14:17:21,480,31.3,46,0,51
2026-05-27T14:21:21,478,31.2,46,0,53
2026-05-27T14:23:22,478,31.2,46,0,51
2026-05-27T14:25:22,548,31.1,46,0,53
2026-05-27T14:27:23,508,31.1,46,0,51
2026-05-27T14:29:23,492,31.1,46,0,53
2026-05-27T14:31:24,497,31.1,47,0,53
2026-05-27T14:33:24,534,31.1,47,0,53
2026-05-27T14:35:25,475,31.1,47,0,51
2026-05-27T14:39:26,487,31,47,0,51
2026-05-27T14:41:27,457,31,47,0,51
2026-05-27T14:43:27,461,31,48,0,53
2026-05-27T14:45:28,450,31,47,0,51
2026-05-27T14:47:28,482,31,47,0,51
2026-05-27T14:49:28,482,30.8,47,0,51
2026-05-27T14:51:29,485,30.8,47,0,51
2026-05-27T14:53:30,543,30.8,47,0,53
2026-05-27T14:55:30,551,30.8,47,0,51
2026-05-27T14:57:31,551,30.8,47,0,51
2026-05-27T14:59:31,543,30.8,48,0,53
2026-05-27T15:03:32,565,30.8,48,0,53
2026-05-27T15:05:33,611,30.8,48,0,51
2026-05-27T15:07:33,581,30.8,49,0,53
2026-05-27T15:09:33,555,30.8,48,0,51
2026-05-27T15:11:34,548,30.8,48,0,51
2026-05-27T15:13:35,581,30.8,48,0,51
2026-05-27T15:15:35,602,30.8,48,0,51
2026-05-27T15:17:36,570,30.7,49,0,51
2026-05-27T15:19:36,567,30.8,48,0,51
2026-05-27T15:23:37,588,30.8,49,0,51
2026-05-27T15:25:38,602,30.8,49,0,51
2026-05-27T15:27:38,594,30.8,49,0,51
2026-05-27T15:29:38,594,30.8,49,0,51
2026-05-27T15:35:40,623,30.8,49,0,53
2026-05-27T15:37:41,638,30.8,49,0,51
2026-05-27T15:39:41,623,30.8,49,0,51
2026-05-27T15:41:42,623,30.8,49,0,51
2026-05-27T15:43:42,615,30.8,49,0,53
2026-05-27T16:29:54,553,31,48,1,51
2026-05-27T16:31:54,575,31,47,1,51
2026-05-27T16:33:55,627,31,47,1,51
2026-05-27T16:35:55,599,31,47,1,51
2026-05-27T16:37:56,572,31,46,1,51
2026-05-27T16:39:56,519,31,46,1,51
2026-05-27T16:41:57,530,31,47,1,51
2026-05-27T16:43:57,552,31,46,1,51
2026-05-27T16:45:58,580,31,46,1,51
2026-05-27T16:47:58,679,31,46,1,51
2026-05-27T16:49:59,645,31,46,1,51
2026-05-27T16:51:59,688,31,46,1,51
1 time co2 temperature humidity windows battery
2 2026-05-27T14:01:17 428 31.8 45 0 53
3 2026-05-27T14:03:17 461 31.7 45 0 53
4 2026-05-27T14:05:18 487 31.6 45 0 51
5 2026-05-27T14:07:18 508 31.6 45 0 51
6 2026-05-27T14:11:19 497 31.5 45 0 51
7 2026-05-27T14:15:20 549 31.3 46 0 51
8 2026-05-27T14:17:21 480 31.3 46 0 51
9 2026-05-27T14:21:21 478 31.2 46 0 53
10 2026-05-27T14:23:22 478 31.2 46 0 51
11 2026-05-27T14:25:22 548 31.1 46 0 53
12 2026-05-27T14:27:23 508 31.1 46 0 51
13 2026-05-27T14:29:23 492 31.1 46 0 53
14 2026-05-27T14:31:24 497 31.1 47 0 53
15 2026-05-27T14:33:24 534 31.1 47 0 53
16 2026-05-27T14:35:25 475 31.1 47 0 51
17 2026-05-27T14:39:26 487 31 47 0 51
18 2026-05-27T14:41:27 457 31 47 0 51
19 2026-05-27T14:43:27 461 31 48 0 53
20 2026-05-27T14:45:28 450 31 47 0 51
21 2026-05-27T14:47:28 482 31 47 0 51
22 2026-05-27T14:49:28 482 30.8 47 0 51
23 2026-05-27T14:51:29 485 30.8 47 0 51
24 2026-05-27T14:53:30 543 30.8 47 0 53
25 2026-05-27T14:55:30 551 30.8 47 0 51
26 2026-05-27T14:57:31 551 30.8 47 0 51
27 2026-05-27T14:59:31 543 30.8 48 0 53
28 2026-05-27T15:03:32 565 30.8 48 0 53
29 2026-05-27T15:05:33 611 30.8 48 0 51
30 2026-05-27T15:07:33 581 30.8 49 0 53
31 2026-05-27T15:09:33 555 30.8 48 0 51
32 2026-05-27T15:11:34 548 30.8 48 0 51
33 2026-05-27T15:13:35 581 30.8 48 0 51
34 2026-05-27T15:15:35 602 30.8 48 0 51
35 2026-05-27T15:17:36 570 30.7 49 0 51
36 2026-05-27T15:19:36 567 30.8 48 0 51
37 2026-05-27T15:23:37 588 30.8 49 0 51
38 2026-05-27T15:25:38 602 30.8 49 0 51
39 2026-05-27T15:27:38 594 30.8 49 0 51
40 2026-05-27T15:29:38 594 30.8 49 0 51
41 2026-05-27T15:35:40 623 30.8 49 0 53
42 2026-05-27T15:37:41 638 30.8 49 0 51
43 2026-05-27T15:39:41 623 30.8 49 0 51
44 2026-05-27T15:41:42 623 30.8 49 0 51
45 2026-05-27T15:43:42 615 30.8 49 0 53
46 2026-05-27T16:29:54 553 31 48 1 51
47 2026-05-27T16:31:54 575 31 47 1 51
48 2026-05-27T16:33:55 627 31 47 1 51
49 2026-05-27T16:35:55 599 31 47 1 51
50 2026-05-27T16:37:56 572 31 46 1 51
51 2026-05-27T16:39:56 519 31 46 1 51
52 2026-05-27T16:41:57 530 31 47 1 51
53 2026-05-27T16:43:57 552 31 46 1 51
54 2026-05-27T16:45:58 580 31 46 1 51
55 2026-05-27T16:47:58 679 31 46 1 51
56 2026-05-27T16:49:59 645 31 46 1 51
57 2026-05-27T16:51:59 688 31 46 1 51

View File

@@ -0,0 +1,23 @@
#import "/resources/measures/plot_measures.typ": *
#let start-date = datetime(year: 2026, month: 5, day: 27, hour: 14, minute: 0, second: 0)
#let stop-date = datetime(year: 2026, month: 5, day: 27, hour: 17, minute: 59, second: 59)
// #let node = "A2-C2_64_0F_68_35_3E"
// #let node = "A2-C6_7E_0A_DE_DA_74"
// #let node = "A2-E1_C0_30_15_4E_89"
// #let node = "A2-E8_F3_0A_F7_3B_F3"
// #let node = "A2-C6_95_1B_A6_49_E6" // Windows
#let node = "A2-F5_80_05_76_53_F0" // Windows
= Indoor Air Quality Analysis
Data range: #start-date.display("[day] [month repr:long] [year] [hour]h[minute]") to #stop-date.display("[day] [month repr:long] [year] [hour]h[minute]")
== CO2 Level #node
#plot_co2("/resources/measures/" + node + ".csv", start-date, stop-date)
== Temperature / Humidity #node
#plot_temp_hum("/resources/measures/" + node + ".csv", start-date, stop-date)

Some files were not shown because too many files have changed in this diff Show More