Merge branch 'current' into next

This commit is contained in:
Franck Nijhof 2024-12-23 09:43:15 +00:00
commit 719e580df2
No known key found for this signature in database
GPG Key ID: D62583BA8AB11CA3
140 changed files with 10268 additions and 252 deletions

View File

@ -29,10 +29,10 @@ GEM
ffi (1.17.0-arm64-darwin)
ffi (1.17.0-x86_64-linux-gnu)
forwardable-extended (2.6.0)
google-protobuf (4.29.1-arm64-darwin)
google-protobuf (4.29.2-arm64-darwin)
bigdecimal
rake (>= 13)
google-protobuf (4.29.1-x86_64-linux)
google-protobuf (4.29.2-x86_64-linux)
bigdecimal
rake (>= 13)
http_parser.rb (0.8.0)
@ -66,7 +66,7 @@ GEM
nokogiri (~> 1.12)
jekyll-watch (2.2.1)
listen (~> 3.0)
json (2.9.0)
json (2.9.1)
kramdown (2.5.1)
rexml (>= 3.3.9)
kramdown-parser-gfm (1.1.0)
@ -76,7 +76,7 @@ GEM
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.6.3)
logger (1.6.4)
mercenary (0.4.0)
multi_json (1.15.0)
mustermann (3.0.3)
@ -91,7 +91,7 @@ GEM
racc
pathutil (0.16.2)
forwardable-extended (~> 2.6)
prism (1.2.0)
prism (1.3.0)
public_suffix (6.0.1)
racc (1.8.1)
rack (3.1.8)
@ -134,10 +134,9 @@ GEM
ruby2_keywords (0.0.5)
safe_yaml (1.0.5)
sass (3.4.25)
sass-embedded (1.83.0-arm64-darwin)
google-protobuf (~> 4.28)
sass-embedded (1.83.0-x86_64-linux-gnu)
sass-embedded (1.83.0)
google-protobuf (~> 4.28)
rake (>= 13)
sass-globbing (1.1.5)
sass (>= 3.1)
sassc (2.1.0)
@ -151,11 +150,11 @@ GEM
rack-protection (= 4.1.1)
rack-session (>= 2.0.0, < 3)
tilt (~> 2.0)
sorbet-runtime (0.5.11694)
sorbet-runtime (0.5.11708)
stringex (2.8.6)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
tilt (2.4.0)
tilt (2.5.0)
tzinfo (2.0.6)
concurrent-ruby (~> 1.0)
tzinfo-data (1.2024.2)

View File

@ -108,8 +108,8 @@ social:
# Home Assistant release details
current_major_version: 2024
current_minor_version: 12
current_patch_version: 3
date_released: 2024-12-13
current_patch_version: 5
date_released: 2024-12-20
# Either # or the anchor link to latest release notes in the blog post.
# Must be prefixed with a # and have double quotes around it.

View File

@ -844,6 +844,7 @@ $ha__primary_color: #03a9f4;
margin: auto;
summary.region {
cursor: pointer;
display: list-item;
}
}

View File

@ -88,4 +88,8 @@ Andy Gill:
Missy Quarry:
name: Missy Quarry
github: missyquarry
github: missyquarry
Annika Schulz:
name: Annika Schulz
github: anakinsbrna

View File

@ -144,6 +144,7 @@
<li>{% active_link /voice_control/worlds-most-private-voice-assistant/ Tutorial: World's most private voice assistant %}</li>
<li>{% active_link /voice_control/assist_daily_summary/ Tutorial: Your daily summary by Assist %}</li>
<li>{% active_link /voice_control/start_assist_from_dashboard/ Starting Assist from your dashboard %}</li>
<li>{% active_link /voice_control/contribute-voice/ Contribute to the Voice initiative %}</li>
</ul>
</li>
<li>{% icon "mdi:account-help" %} Troubleshooting

View File

@ -36,6 +36,7 @@
<li>{% active_link /voice_control/worlds-most-private-voice-assistant/ Tutorial: World's most private voice assistant %}</li>
<li>{% active_link /voice_control/assist_daily_summary/ Tutorial: Your daily summary by Assist %}</li>
<li>{% active_link /voice_control/start_assist_from_dashboard/ Starting Assist from your dashboard %}</li>
<li>{% active_link /voice_control/contribute-voice/ Contribute to the Voice initiative %}</li>
</ul>
</div>
<div class="section">

View File

@ -54,10 +54,10 @@ You can enable I2C via this terminal:
```shell
mkdir /tmp/mnt
mount /dev/sda1 /tmp/mnt
mkdir -p /tmp/mnt/CONFIG/modules
echo -ne i2c-dev>/tmp/mnt/CONFIG/modules/rpi-i2c.conf
echo dtparam=i2c_vc=on >> /tmp/mnt/CONFIG/config.txt
echo dtparam=i2c_arm=on >> /tmp/mnt/CONFIG/config.txt
mkdir -p /tmp/mnt/modules
echo -ne i2c-dev>/tmp/mnt/modules/rpi-i2c.conf
echo dtparam=i2c_vc=on >> /tmp/mnt/config.txt
echo dtparam=i2c_arm=on >> /tmp/mnt/config.txt
sync
reboot
```

View File

@ -73,29 +73,6 @@
<div class="grid__item one-third lap-one-half palm-one-whole">
<!-- All landing pages have a block. -->
<a
href="https://www.youtube.com/watch?v=ZgoaoTpIhm8&ab_channel=HomeAssistant"
class="material-card picture-promo"
target="_blank"
rel="noopener noreferrer"
aria-label="Don't miss our Voice: Chapter 8 live stream on YouTube"
style="
background-image: url(/images/frontpage/feature-voice-c8.jpg);
background-size: cover;
padding-top: 55%;
"
>
<div class="caption">
<div>
<div class="title">
Product launch incoming
</div>
<div class="subtitle">
Join our Voice Chapter 8 live stream and see our new hardware ushering in the era of open voice.
</div>
</div>
</div>
</a>
{% assign pages_by_date = site.pages | sort: "date" | reverse %} {% for
page in pages_by_date %} {% if page.layout == "landingpage" and
page.frontpage != false %}

View File

@ -18,7 +18,7 @@ ha_platforms:
ha_integration_type: integration
---
[apcupsd](http://www.apcupsd.org/) status information can be integrated into Home Assistant when the Network Information Server (NIS) [is configured](http://www.apcupsd.org/manual/manual.html#nis-server-client-configuration-using-the-net-driver) on the APC device.
[apcupsd](http://www.apcupsd.org/) status information can be integrated into Home Assistant when the Network Information Server (NIS) is configured on the APC device.
There is currently support for the following device types within Home Assistant:
@ -35,7 +35,7 @@ After installation, follow the instructions on the GitHub page to configure the
{% note %}
If you get `ConnectionRefusedError: Connection refused` errors in the Home Assistant logs, ensure the [apcupsd](http://www.apcupsd.org/) configuration directives used by its Network Information Server is set to permit connections from all addresses [NISIP 0.0.0.0](http://www.apcupsd.org/manual/manual.html#configuration-directives-used-by-the-network-information-server), else non-local addresses will not connect.
If you get `ConnectionRefusedError: Connection refused` errors in the Home Assistant logs, ensure the [apcupsd](http://www.apcupsd.org/) configuration directives used by its Network Information Server is set to permit connections from all addresses NISIP 0.0.0.0, else non-local addresses will not connect.
{% endnote %}

View File

@ -14,26 +14,90 @@ ha_platforms:
ha_integration_type: device
---
AquaCell is a water-softening device. The **AquaCell** {% term integration %} allows you to monitor your AquaCell device in Home Assistant.
AquaCell is a water-softening device. The [AquaCell](https://www.aquacell-waterontharder.nl/) {% term integration %} allows you to monitor your AquaCell device in Home Assistant.
You will need your Aquacell account information as used in the **AquaCell** app.
This integration also supports **Harvey** softeners.
This integration also supports [Harvey](https://www.harveywatersofteners.co.uk/) softeners.
## Supported devices
This integration only works for softener models which have an **i-Lid** and are configured through the 'Mijn AquaCell' or 'My Harvey' mobile app.
These models are also recognizable by the required curved salt blocks.
- [AquaCell](https://www.aquacell-waterontharder.nl/aquacell)
- [HarveyArc Water Softener](https://www.harveywatersofteners.co.uk/products/water-softeners/harveyarc-water-softener)
## Prerequisites
The softener needs to be set up with the official app before being able to integrate it in Home Assistant.
{% include integrations/config_flow.md %}
<div class='note warning'>
This integration only works with <b>AquaCell</b> or <b>Harvey</b> devices which have an <b>i-Lid</b> and are configured through the 'Mijn AquaCell' or 'My Harvey' mobile app.
</div>
{% configuration_basic %}
Email address:
description: The email address used to log in to the mobile app used to monitor the softener.
required: true
type: string
Password:
description: The password used to log in to the mobile app used to monitor the softener.
required: true
type: string
{% endconfiguration_basic %}
## Sensors
This integration provides {% term sensors %} for the following information from the AquaCell device:
This integration provides {% term sensors %} for the following information from the softener device:
- Percentage of salt remaining.
- Time remaining until 0% salt level is reached.
- iLid battery level.
- i-Lid battery level.
- Wi-Fi signal strength.
<div class="note">
The device does not update frequently, the integration polls the information once a day from the cloud.
</div>
## Use cases
The integration provides sensors to monitor the salt level of the softener. You can use this information to create automations, for example, to notify you when the salt level is low and a refill is needed.
You can also easily plot the history of the salt level sensors over time, which can give you more insight into usage.
## Examples
The following examples show how to use this integration in Home Assistant automations.
### Send notification when salt is running out
The following example sends a notification to your mobile device when the salt is running out on either side.
```yaml
automation:
- alias: "Notify when salt is running low"
triggers:
- trigger: numeric_state
entity_id:
- sensor.my_softener_salt_left_side_percentage
- sensor.my_softener_salt_right_side_percentage
below: 10
actions:
- action: notify.mobile_app_your_device
data:
title: "Softener is almost out of salt"
message: >
Place new salt blocks in the softener.
```
## Data updates
The device does not update frequently, the integration is {% term polling %} new data every day from the cloud.
## Known limitations
There are no known limitations for this integration.
## Troubleshooting
There are no commonly known issues with this integration.
## Remove integration
This integration follows standard integration removal, no extra steps are required.
{% include integrations/remove_device_service.md %}

View File

@ -23,67 +23,135 @@ related:
title: Google Tasks
- url: https://console.cloud.google.com/apis/library/tasks.googleapis.com
title: Google Developers Console
google_dev_console_link: https://console.developers.google.com/start/api?id=tasks
api: Google Tasks API
api_link: https://console.cloud.google.com/apis/enableflow?apiid=tasks.googleapis.com
---
The **Google Tasks** integration allows you to connect your [Google Tasks](https://support.google.com/tasks/answer/7675772) to Home Assistant. The integration adds a [to-do list entity](/integrations/todo) for
each task list, allowing you to create, update, or delete items on the list from the **To-do list** dashboard.
The **Google Tasks** integration allows you to connect your [Google Tasks](https://support.google.com/tasks/answer/7675772)
to Home Assistant. The integration adds a [to-do list entity](/integrations/todo) for
each task list, allowing you to create, update, or delete items on the list
from the **To-do list** dashboard.
{% note %}
The Google Tasks public API does not support viewing or setting the due time of tasks, only the due date.
{% endnote %}
You can use to-do lists in automations, such as adding a new task when Home Assistant detects
a device has low batteries. When you combine with a Home Assistant voice assistant, you can
manage your Google Tasks by saying something like *Add clean out garage to personal task list*.
## Prerequisites
You need to configure developer credentials to allow Home Assistant to access your Google Account.
These credentials are the same as the ones for [Nest](/integrations/nest) and [Google Mail](/integrations/google_mail).
These credentials are the same as the ones for [Nest](/integrations/nest), [Google Mail](/integrations/google_mail), and most other Google integrations.
These are not the same as *Device Auth* credentials previously recommended for [Google Calendar](/integrations/google).
If you have already set up the correct credentials, you can do step 1 and then skip to step 13 on the below instructions.
{% details "Generate Client ID and Client Secret" %}
This section explains how to generate a Client ID and Client Secret on
[Google Developers Console](https://console.cloud.google.com/apis/library/tasks.googleapis.com).
1. First, go to the Google Developers Console to enable [Google Tasks](https://console.cloud.google.com/apis/library/tasks.googleapis.com)
2. The wizard will ask you to choose a project to manage your application. Select a project and select **Continue**.
3. Verify that your Google Tasks API was enabled and select **Go to credentials**.
4. Navigate to **APIs & Services** (left sidebar) > [Credentials](https://console.cloud.google.com/apis/credentials).
5. Click on the field on the left of the screen, **OAuth Consent Screen**.
6. Select **External** and **Create**.
7. Set the **App Name** (the name of the application asking for consent) to anything you want, for example to *Home Assistant*.
8. You then need to select a **Support email**. To do this, from the dropdown menu, select your email address.
9. You finally need to complete the section: **Developer contact information**. To do this, enter your email address (the same as above is fine).
10. Scroll to the bottom and select **Save and Continue**. You don't have to fill out anything else, or it may enable additional review.
11. You will then be automatically taken to the **Scopes** page. You do not need to add any scopes here, so select **Save and Continue** to move to the **Optional info** page. You do not need to add anything to the **Optional info** page, so select **Save and Continue**, which will take you to the **Summary** page. Select **Back to Dashboard**.
12. Select **OAuth consent screen** again and set **Publish Status** to **Production**. Otherwise, your credentials will expire every 7 days.
13. Make sure **Publishing status** is set to production.
14. Select **Credentials** in the menu on the left-hand side of the screen, then select **Create credentials** (at the top of the screen), then select **OAuth client ID**.
15. Set the Application type to **Web application** and give this credential set a name (like "Home Assistant Credentials").
16. Add `https://my.home-assistant.io/redirect/oauth` to **Authorized redirect URIs** then select **Create**. This is not a placeholder and is the URI that must be used.
17. You will then be presented with a pop-up saying **OAuth client created**, showing **Your Client ID** and **Your Client Secret**. Make a note of these (for example, copy and paste them into a text editor), as you will need them shortly. Once you have noted these strings, select **OK**. If you need to find these credentials again at any point, then navigate to **APIs & Services** > **Credentials**, and you will see **Home Assistant Credentials** (or whatever you named them in the previous step) under **OAuth 2.0 Client IDs**. To view both the **Client ID** and **Client secret**, select the pencil icon. This will take you to the settings page for these credentials, and the information will be on the right-hand side of the page.
18. Double-check that the **Google Tasks API** has been automatically enabled. To do this, select **Library** from the menu, then search for **Google Tasks API**. If it is enabled, you will see **API Enabled** with a green tick next to it. If it is not enabled, then enable it.
{% enddetails %}
{% include integrations/google_client_secret.md %}
{% include integrations/config_flow.md %}
The integration setup will next give you instructions to enter the [Application Credentials](/integrations/application_credentials/) (OAuth Client ID and Client Secret) and authorize Home Assistant to access your Google Tasks.
{% include integrations/google_oauth.md %}
{% details "OAuth and Device Authorization steps" %}
## Supported functionality
1. Continue through the steps of selecting the account you want to authorize.
### Entities
2. **NOTE**: You may get a message telling you that the app has not been verified and you will need to acknowledge that in order to proceed.
The Google Tasks integration provides the following entities.
3. You can now see the details of what you are authorizing Home Assistant to access with two options at the bottom. Select **Continue**.
#### To-do lists
4. The page will now display **Link account to Home Assistant?**, note **Your instance URL**. If this is not correct, refer to [My Home Assistant](/integrations/my). If everything looks good, select **Link Account**.
The integration will create a [to-do list entity](/integrations/todo) for every task list.
For example, a Google Tasks list named *My Tasks* then will have a Home Assistant
to-do list entity named *My Tasks*.
5. You may close the window, and return back to Home Assistant where you should see a **Success!** message from Home Assistant.
The Google Task integration can create, update, or delete items on a to-do list.
The to-do list entities support creating, updating, and deleting items on the to-do
list. A to-do list item supports the following fields:
{% enddetails %}
- **Item**: The item is the Google Task *Title* field.
- **Due date**: The Google Tasks Date. The time field in Google Tasks is not supported
by the Google Tasks API.
- **Description**: The Google Tasks *Details* field.
- **Status**: The Google Tasks *Completed* check box corresponds to the to-do list
status `needs_action` when not checked and `completed` when checked.
## Actions
The Google Tasks integration provides all actions supported by a to-do list entity
including actions for retrieving, creating, updating, and deleting to-do list items and the fields
described above. See the [To-do list: Actions](/integrations/todo#actions) documentation
for more details.
## Examples
### Low Battery Maintenance
You can use Google Tasks to help you automate battery maintenance. To tackle this
you can use this blueprint to send a notification with devices that have low
low battery level. The notification includes a button that can add an item to your
Google Tasks to-do list.
[Low Battery Notifications & Actions](https://community.home-assistant.io/t/low-battery-notifications-actions/653754)
## Data updates
The Google Tasks integration fetches task lists once initially, and creates a
to-do list for each task list. Data for each to-do list refreshed refreshed by
{% term polling %} every 30 minutes.
Updates to the to-do list in Home Assistant use the Google Tasks API and changes
are reflected immediately in Google Tasks. This will also refresh the to-do
list contents, {% term polling %} again for any new changes.
## Known limitations
There are some known Google Tasks API limitations that affect this integration:
- Only supports {% term polling %}. Updates in Google Tasks are not reflected immediately in Home Assistant.
- Only supports viewing or setting a task due date. A task due *time* is not supported.
## Troubleshooting
If you have an error with your credentials, you can delete them in the [Application Credentials](/integrations/application_credentials/) user interface.
### Cant setup the integration
#### Symptom: “The OAuth client was not found.”
When trying to configure the integration, the Google OAuth flows shows the message *The OAuth client was not found* and *Error 401: invalid_client*.
##### Description
This means that the application credentials in Home Assistant do not match the
OAuth credentials in the Google Cloud console.
##### Resolution
To resolve this issue:
1. Follow the instructions in [Application Credentials](/integrations/application_credentials/#deleting-application-credentials) to remove any existing credentials.
1. Follow the steps above in the [Prerequisites](#prerequisites).
1. Follow the steps above in the [Configuration](#configuration).
#### Symptom: "Unable to access the Google API: Tasks API has not been used in project before or it is disabled"
Home Assistant fails to configure the integration with the error *Unable to access the
Google API: Google Tasks API has not been used in project before or it is disabled*.
##### Description
This means that Home Assistant is unable to use the Google Tasks API because it was not
enabled in the Google Cloud Console.
##### Resolution
Follow the steps above in the [Prerequisites](#prerequisites) to enable the Google Tasks API.
## Removing the integration
This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}
You will be asked if you would like to remove [Application Credentials](/integrations/application_credentials/) which you can do if you no longer plan to use
Google Tasks with Home Assistant. You may want to also remove any credentials
in the Google Cloud Console, created above in the Prerequisites, if they are no
longer in use with any of your other Home Assistant integrations.

View File

@ -44,6 +44,13 @@ Home Assistant will detect nearby IronOS devices. Discovered devices will show u
{% include integrations/config_flow.md %}
### Configuration parameters
{% configuration_basic %}
"Address":
description: "The Bluetooth address of the detected IronOS device."
{% endconfiguration_basic %}
## Number controls
- **Setpoint temperature:** Allows to set the desired target temperature for the soldering iron tip.

View File

@ -19,7 +19,7 @@ ha_platforms:
ha_integration_type: service
---
The Mealie integration will fetch data from your [Mealie instance](https://mealie.io/).
[Mealie](https://mealie.io/) is an open source, self-hosted recipe manager, meal planner, and shopping list. The Mealie {% term integration %} will fetch and allow you to create and update data held in your Mealie instance.
## Prerequisites

View File

@ -79,23 +79,21 @@ Common use cases include:
## Example
Automation that will send a notification to a smartphone when the hot water reserve is getting low. Note that actual entity name varies between models of heat pumps. You will have to adapt the yaml code to your own installation.
Automation that will send a notification to a smartphone when the hot water reserve is getting low. In this example a temperature below 42°C in the middle of the water tank will trigger the notification. Note that actual entity name varies between models of heat pumps. You will have to adapt the yaml code to your own installation.
```yaml
automation:
alias: Notify on low hot water reserve
triggers:
- trigger: numeric_state
entity_id:
- sensor.your_pump_hot_water_charging_bt6
below: 42
actions:
- action: notify.mobile_app_your_device
metadata: {}
data:
message: Hot water reserve is getting low.
title: Water heater
mode: single
- alias: "Notify on low hot water reserve"
triggers:
- trigger: numeric_state
entity_id:
- sensor.your_pump_hot_water_charging_bt6
below: 42
actions:
- action: notify.mobile_app_your_device
data:
message: "Hot water reserve is getting low."
title: "Water heater"
```
## Data updates

View File

@ -103,6 +103,19 @@ scan_interval:
milliseconds: 0
```
### Alarm System Configuration
As part of the installation process of the IP232 module, the device will need to be configured with the correct settings. From the [iComms Manual](https://ness.zendesk.com/hc/en-us/articles/360021989074-iComms-Manual), there are 3 essential steps:
1. Setting up the IP232 module with the correct baud rate (9600).
2. Ensuring connectivity of the device on either a DHCP assigned or Static IP address.
3. Setting the alarm panel up to allow for serial control. On D8x/D16x panels this is enabled by setting `P 199 E` `1E` to `6E` to be `ON` (6E available on v6 panels and later only).
If the settings in steps 1 and 2 are not set correctly, the integration will not be able to communicate properly with the device. If the `P 199 E` from step 3 is not configured properly, data will not be sent to the integration when events occur.
{% important %}
Incorrect configuration of these settings will prevent the integration from functioning properly.
{% endimportant %}
## Actions
### Action `aux`

View File

@ -14,7 +14,7 @@ ha_config_flow: true
ha_integration_type: integration
---
The `russound_rio` {% term integration %} allows you to control Russound devices that make use of the RIO protocol.
The Russound RIO {% term integration %} allows you to control Russound devices that make use of the RIO protocol.
The platform automatically discovers all enabled zones and sources. Each zone is added as a media player device with the enabled sources available as inputs. Media information is supported if the selected source reports it. The integration allows you to navigate presets, control volume of all zones, and play radio stations all from your Home Assistant dashboard.

View File

@ -30,6 +30,12 @@ You need to grab your API key from your SABnzbd instance in order to configure t
- Copy your API key under "Security".
{% include integrations/config_flow.md %}
{% configuration_basic %}
URL:
description: "The full URL, including port, of your SABnzbd server. Example: `http://localhost:8080` or `http://a02368d7-sabnzbd:8080`, if you are using the add-on."
API key:
description: "The API key of your SABnzbd server. You can find this in the SABnzbd web interface under **Config cog** (top right) > **General** > **Security**."
{% endconfiguration_basic %}
## Sensor
@ -61,3 +67,9 @@ This integration will create two buttons:
## Number
This integration will create a number entity to set the download queue speed limit in percentage.
## Removing the integration
This integration follows standard integration removal. No extra steps are required.
{% include integrations/remove_device_service.md %}

View File

@ -179,8 +179,8 @@ You can find your external IP address using the service [JSON Test](https://www.
```yaml
sensor:
- platform: rest
resource: http://ip.jsontest.com
name: External IP
name: "External IP"
resource: "https://api.ipify.org/?format=json"
value_template: "{{ value_json.ip }}"
```

View File

@ -302,7 +302,7 @@ The personal access token does not match the expected format. Make sure you are
You can fix this by using the SmartThings App to re-grant authorization to the API token you created before.
1. Open SmartThings app on your mobile device (not HA).
2. Select **Automations** from bottom.
2. Select **Routines** from bottom.
3. Select your Home Assistant automation from the list.
4. Select **Done**, then select **Allow**.
5. Reload your SmartThings integration from Home Assistant Devices panel.

View File

@ -18,7 +18,7 @@ ha_release: 2024.8
ha_iot_class: Cloud Polling
ha_config_flow: true
ha_codeowners:
- '@Bre77'
- "@Bre77"
ha_domain: tesla_fleet
ha_platforms:
- binary_sensor
@ -73,143 +73,153 @@ You will need to use Tesla's [command line tools](https://github.com/teslamotors
```shell
tesla-keygen -key-file tesla_fleet.key create > tesla_fleet.pem
tesla-control -ble -key-file tesla_fleet.key -vin VINVINVINVIN add-key-request tesla_fleet.pem owner cloud_key
tesla-control -ble -key-file tesla_fleet.key -vin VINVINVINVIN -debug add-key-request tesla_fleet.pem owner cloud_key
```
Finally, copy `tesla_fleet.key` to your Home Assistant config directory and then reload the Tesla Fleet {% term integration %}.
{% note %}
If you receive a "BLE connection attempt failed" error, follow these steps:
1. Disable Bluetooth on your phone
2. Execute the `tesla-control` command
3. Re-enable Bluetooth after the command completes
This is necessary because the tool cannot establish a connection while another Bluetooth device is connected to the car.
{% endnote %}
## Entities
These are the entities available in the Tesla Fleet integration. Not all entities are enabled by default, and not all values are always available.
### Vehicles
|Domain|Name|Enabled|
|---|---|---|
|Binary sensor|Battery heater|No|
|Binary sensor|Cabin overheat protection actively cooling|No|
|Binary sensor|Charge cable|Yes|
|Binary sensor|Charger has multiple phases|No|
|Binary sensor|Dashcam|No|
|Binary sensor|Front driver door|Yes|
|Binary sensor|Front driver window|Yes|
|Binary sensor|Front passenger door|Yes|
|Binary sensor|Front passenger window|Yes|
|Binary sensor|Preconditioning enabled|No|
|Binary sensor|Preconditioning|No|
|Binary sensor|Rear driver door|Yes|
|Binary sensor|Rear driver window|Yes|
|Binary sensor|Rear passenger door|Yes|
|Binary sensor|Rear passenger window|Yes|
|Binary sensor|Scheduled charging pending|No|
|Binary sensor|Status|Yes|
|Binary sensor|Tire pressure warning front left|No|
|Binary sensor|Tire pressure warning front right|No|
|Binary sensor|Tire pressure warning rear left|No|
|Binary sensor|Tire pressure warning rear right|No|
|Binary sensor|Trip charging|No|
|Binary sensor|User present|Yes|
|Button|Flash lights|Yes|
|Button|Homelink|Yes|
|Button|Honk horn|Yes|
|Button|Keyless driving|Yes|
|Button|Play fart|Yes|
|Button|Wake|Yes|
|Climate|Cabin overheat protection|No|
|Climate|Climate|Yes|
|Cover|Charge port door|Yes|
|Cover|Frunk|Yes|
|Cover|Sunroof|No|
|Cover|Trunk|Yes|
|Cover|Vent windows|Yes|
|Device tracker|Location|Yes|
|Device tracker|Route|Yes|
|Lock|Charge cable lock|Yes|
|Lock|Lock|Yes|
|Media player|Media player|Yes|
|Number|Charge current|Yes|
|Number|Charge limit|Yes|
|Select|Seat heater front left|Yes|
|Select|Seat heater front right|Yes|
|Select|Seat heater rear center|No|
|Select|Seat heater rear left|No|
|Select|Seat heater rear right|No|
|Select|Seat heater third row left|No|
|Select|Seat heater third row right|No|
|Select|Steering wheel heater|Yes|
|Sensor|Battery level|Yes|
|Sensor|Battery range|Yes|
|Sensor|Charge cable|No|
|Sensor|Charge energy added|Yes|
|Sensor|Charge rate|Yes|
|Sensor|Charger current|Yes|
|Sensor|Charger power|Yes|
|Sensor|Charger voltage|Yes|
|Sensor|Charging|Yes|
|Sensor|Distance to arrival|Yes|
|Sensor|Driver temperature setting|No|
|Sensor|Estimate battery range|No|
|Sensor|Fast charger type|No|
|Sensor|Ideal battery range|No|
|Sensor|Inside temperature|Yes|
|Sensor|Odometer|No|
|Sensor|Outside temperature|Yes|
|Sensor|Passenger temperature setting|No|
|Sensor|Power|No|
|Sensor|Shift state|No|
|Sensor|Speed|No|
|Sensor|State of charge at arrival|No|
|Sensor|Time to arrival|Yes|
|Sensor|Time to full charge|Yes|
|Sensor|Tire pressure front left|No|
|Sensor|Tire pressure front right|No|
|Sensor|Tire pressure rear left|No|
|Sensor|Tire pressure rear right|No|
|Sensor|Traffic delay|No|
|Sensor|Usable battery level|No|
|Switch|Auto seat climate left|Yes|
|Switch|Auto seat climate right|Yes|
|Switch|Auto steering wheel heater|Yes|
|Switch|Charge|Yes|
|Switch|Defrost|Yes|
|Switch|Sentry mode|Yes|
| Domain | Name | Enabled |
| -------------- | ------------------------------------------ | ------- |
| Binary sensor | Battery heater | No |
| Binary sensor | Cabin overheat protection actively cooling | No |
| Binary sensor | Charge cable | Yes |
| Binary sensor | Charger has multiple phases | No |
| Binary sensor | Dashcam | No |
| Binary sensor | Front driver door | Yes |
| Binary sensor | Front driver window | Yes |
| Binary sensor | Front passenger door | Yes |
| Binary sensor | Front passenger window | Yes |
| Binary sensor | Preconditioning enabled | No |
| Binary sensor | Preconditioning | No |
| Binary sensor | Rear driver door | Yes |
| Binary sensor | Rear driver window | Yes |
| Binary sensor | Rear passenger door | Yes |
| Binary sensor | Rear passenger window | Yes |
| Binary sensor | Scheduled charging pending | No |
| Binary sensor | Status | Yes |
| Binary sensor | Tire pressure warning front left | No |
| Binary sensor | Tire pressure warning front right | No |
| Binary sensor | Tire pressure warning rear left | No |
| Binary sensor | Tire pressure warning rear right | No |
| Binary sensor | Trip charging | No |
| Binary sensor | User present | Yes |
| Button | Flash lights | Yes |
| Button | Homelink | Yes |
| Button | Honk horn | Yes |
| Button | Keyless driving | Yes |
| Button | Play fart | Yes |
| Button | Wake | Yes |
| Climate | Cabin overheat protection | No |
| Climate | Climate | Yes |
| Cover | Charge port door | Yes |
| Cover | Frunk | Yes |
| Cover | Sunroof | No |
| Cover | Trunk | Yes |
| Cover | Vent windows | Yes |
| Device tracker | Location | Yes |
| Device tracker | Route | Yes |
| Lock | Charge cable lock | Yes |
| Lock | Lock | Yes |
| Media player | Media player | Yes |
| Number | Charge current | Yes |
| Number | Charge limit | Yes |
| Select | Seat heater front left | Yes |
| Select | Seat heater front right | Yes |
| Select | Seat heater rear center | No |
| Select | Seat heater rear left | No |
| Select | Seat heater rear right | No |
| Select | Seat heater third row left | No |
| Select | Seat heater third row right | No |
| Select | Steering wheel heater | Yes |
| Sensor | Battery level | Yes |
| Sensor | Battery range | Yes |
| Sensor | Charge cable | No |
| Sensor | Charge energy added | Yes |
| Sensor | Charge rate | Yes |
| Sensor | Charger current | Yes |
| Sensor | Charger power | Yes |
| Sensor | Charger voltage | Yes |
| Sensor | Charging | Yes |
| Sensor | Distance to arrival | Yes |
| Sensor | Driver temperature setting | No |
| Sensor | Estimate battery range | No |
| Sensor | Fast charger type | No |
| Sensor | Ideal battery range | No |
| Sensor | Inside temperature | Yes |
| Sensor | Odometer | No |
| Sensor | Outside temperature | Yes |
| Sensor | Passenger temperature setting | No |
| Sensor | Power | No |
| Sensor | Shift state | No |
| Sensor | Speed | No |
| Sensor | State of charge at arrival | No |
| Sensor | Time to arrival | Yes |
| Sensor | Time to full charge | Yes |
| Sensor | Tire pressure front left | No |
| Sensor | Tire pressure front right | No |
| Sensor | Tire pressure rear left | No |
| Sensor | Tire pressure rear right | No |
| Sensor | Traffic delay | No |
| Sensor | Usable battery level | No |
| Switch | Auto seat climate left | Yes |
| Switch | Auto seat climate right | Yes |
| Switch | Auto steering wheel heater | Yes |
| Switch | Charge | Yes |
| Switch | Defrost | Yes |
| Switch | Sentry mode | Yes |
### Energy sites
|Domain|Name|Enabled|
|---|---|---|
|Binary sensor|Backup capable|Yes|
|Binary sensor|Grid services active|Yes|
|Binary sensor|Grid services enabled|Yes|
|Binary sensor|Storm watch active|Yes|
|Number|Backup reserve|Yes|
|Number|Off grid reserve|Yes|
|Select|Allow export|Yes|
|Select|Operation mode|Yes|
|Sensor|Battery power|Yes|
|Sensor|Energy left|Yes|
|Sensor|Generator power|No|
|Sensor|Grid power|Yes|
|Sensor|Grid services power|Yes|
|Sensor|Grid status|Yes|
|Sensor|Island status|Yes|
|Sensor|Load power|Yes|
|Sensor|Percentage charged|Yes|
|Sensor|Solar power|Yes|
|Sensor|Total pack energy|No|
|Sensor|VPP backup reserve|Yes|
|Sensor|Version|Yes|
|Switch|Allow charging from grid|Yes|
|Switch|Storm watch|Yes|
| Domain | Name | Enabled |
| ------------- | ------------------------ | ------- |
| Binary sensor | Backup capable | Yes |
| Binary sensor | Grid services active | Yes |
| Binary sensor | Grid services enabled | Yes |
| Binary sensor | Storm watch active | Yes |
| Number | Backup reserve | Yes |
| Number | Off grid reserve | Yes |
| Select | Allow export | Yes |
| Select | Operation mode | Yes |
| Sensor | Battery power | Yes |
| Sensor | Energy left | Yes |
| Sensor | Generator power | No |
| Sensor | Grid power | Yes |
| Sensor | Grid services power | Yes |
| Sensor | Grid status | Yes |
| Sensor | Island status | Yes |
| Sensor | Load power | Yes |
| Sensor | Percentage charged | Yes |
| Sensor | Solar power | Yes |
| Sensor | Total pack energy | No |
| Sensor | VPP backup reserve | Yes |
| Sensor | Version | Yes |
| Switch | Allow charging from grid | Yes |
| Switch | Storm watch | Yes |
### Wall connector
|Domain|Name|Enabled|
|---|---|---|
|Sensor|Fault state|No|
|Sensor|Power|Yes|
|Sensor|State|Yes|
|Sensor|Vehicle|Yes|
| Domain | Name | Enabled |
| ------ | ----------- | ------- |
| Sensor | Fault state | No |
| Sensor | Power | Yes |
| Sensor | State | Yes |
| Sensor | Vehicle | Yes |
## Vehicle sleep

View File

@ -17,7 +17,7 @@ When a timer finishes or gets canceled the corresponding events are fired. This
{% note %}
Timers will be restored to their correct state and time on Home Assistant startup and restarts when configured with the `restore` option.
However, automations using the `timer.finished` event **will not** trigger if the timer expires when Home Assistant is not running.
However, automations using the `timer.finished` event **will not** trigger on startup if the timer expires when Home Assistant is not running.
{% endnote %}
## Configuration
@ -56,7 +56,7 @@ timer:
required: false
type: icon
restore:
description: When true, active and paused timers will be restored to the correct state and time on Home Assistant startup and restarts. If an active timer was supposed to end while Home Assistant is stopped, the `timer.finished` event will fire on startup for that timer. The `finished_at` property in the event data will provide you with the time that the timer was actually supposed to fire which you can use in automation conditions to decide whether or not to act on it.
description: When true, active and paused timers will be restored to the correct state and time on Home Assistant startup and restarts.
required: false
type: boolean
default: false
@ -77,7 +77,7 @@ Pick an icon from [Material Design Icons](https://pictogrammers.com/library/mdi/
| Event | Description |
| --------------- | ----------- |
| `timer.cancelled` | Fired when a timer has been canceled |
| `timer.finished` | Fired when a timer has completed and includes `finished_at` date/time in event data. `finished_at` should usually be now, or within the last several seconds, but if the `restore` property is true, `finished_at` may be further in the past since this event will fire on startup for any timers that would have ended while Home Assistant was stopped. |
| `timer.finished` | Fired when a timer has completed and includes `finished_at` date/time in event data. `finished_at` should usually be now, or within the last several seconds. |
| `timer.started` | Fired when a timer has been started |
| `timer.restarted` | Fired when a timer has been restarted |
| `timer.paused` | Fired when a timer has been paused |

View File

@ -232,6 +232,21 @@ To see OTA updates for a device, it's required that it both supports OTA updates
Before updating a device, you should search for any disadvantages or if you even need to install an available update. Some firmware updates can break features you might use (e.g. group binding for IKEA devices). Some updates might also require changes to ZHA. In rare cases, you can even brick devices by installing a firmware update.
{% endwarning %}
### Global Options
There are a few global options available once ZHA has been configured. Press **Configure** to access these settings.
The options are as follows:
{% configuration_basic %}
Enable enhanced light color/temperature transition from an off-state:
description: "For older non Zigbee 3.0 lights, this still allows a proper transition from an off-state to a new color (without seeing the old color). _(default: off)_"
Enable enhanced brightness slider during light transition:
description: "This avoids seeing intermediary brightness state when turning on lights with a transition. _(default: on)_"
Group members assume state of group:
description: "When using ZHA groups, turning on a ZHA group light makes the ZHA group members optimistically change their state to \"on\", instead of waiting and polling the lights when off. _(default: on)_"
{% endconfiguration_basic %}
## Configuration - YAML
For more advanced configuration, you can modify {% term "`configuration.yaml`" %} and restart Home Assistant
@ -239,7 +254,7 @@ For more advanced configuration, you can modify {% term "`configuration.yaml`" %
{% configuration %}
database_path:
description: _Full_ path to the database which will keep persistent network data.
required: true
required: false
type: string
enable_quirks:
description: Enable quirks mode for devices where manufacturers didn't follow specs.

View File

@ -50,6 +50,8 @@ hear from 👉 **YOU** 👈!
[voice-controlled Home Assistant]: /blog/2022/12/20/year-of-voice/
[years]: /blog/2022/09/30/the-month-of-what-the-heck/
<!--more-->
### Lowering the barrier for sharing WTH?! moments
We realize reporting bugs on our [GitHub] might be a steep hill and, for some,

View File

@ -70,6 +70,8 @@ Happy holidays! And for the last time in 2024: Enjoy the release!
- [2024.12.1 - December 6](#2024121---december-6)
- [2024.12.2 - December 10](#2024122---december-10)
- [2024.12.3 - December 13](#2024123---december-13)
- [2024.12.4 - December 17](#2024124---december-17)
- [2024.12.5 - December 20](#2024125---december-20)
- [Need help? Join the community!](#need-help-join-the-community)
- [Backward-incompatible changes](#backward-incompatible-changes)
- [All changes](#all-changes)
@ -597,6 +599,107 @@ release every Friday.
[@weltall]: https://github.com/weltall
[@zxdavb]: https://github.com/zxdavb
### 2024.12.4 - December 17
- Simplify recorder RecorderRunsManager ([@emontnemery] - [#131785])
- Fix fibaro climate hvac mode ([@rappenze] - [#132508])
- Bump yt-dlp to 2024.12.13 ([@joostlek] - [#133129])
- Fix strptime in python_script ([@gjohansson-ST] - [#133159])
- Bump yalexs-ble to 2.5.4 ([@bdraco] - [#133172])
- Bump starlink-grpc-core to 1.2.1 to fix missing ping ([@MrConorAE] - [#133183])
- Bump aiolifx to 1.1.2 and add new HomeKit product prefixes ([@Djelibeybi] - [#133191])
- Revert "Simplify recorder RecorderRunsManager" ([@emontnemery] - [#133201])
- Revert "Improve recorder history queries (#131702)" ([@emontnemery] - [#133203])
- Bump incomfort-client to v0.6.4 ([@jbouwh] - [#133205])
- Bump yalexs-ble to 2.5.5 ([@bdraco] - [#133229])
- Set code_arm_required to False for homekit_controller ([@bdraco] - [#133284])
- Allow load_verify_locations with only cadata passed ([@mib1185] - [#133299])
- Bump `imgw-pib` to version 1.0.7 ([@bieniu] - [#133364])
- Fix fan setpoints for flexit_bacnet ([@lellky] - [#133388])
- Bump holidays to 0.63 ([@gjohansson-ST] - [#133391])
[#131785]: https://github.com/home-assistant/core/pull/131785
[#132195]: https://github.com/home-assistant/core/pull/132195
[#132508]: https://github.com/home-assistant/core/pull/132508
[#132509]: https://github.com/home-assistant/core/pull/132509
[#132846]: https://github.com/home-assistant/core/pull/132846
[#133123]: https://github.com/home-assistant/core/pull/133123
[#133129]: https://github.com/home-assistant/core/pull/133129
[#133159]: https://github.com/home-assistant/core/pull/133159
[#133172]: https://github.com/home-assistant/core/pull/133172
[#133183]: https://github.com/home-assistant/core/pull/133183
[#133191]: https://github.com/home-assistant/core/pull/133191
[#133201]: https://github.com/home-assistant/core/pull/133201
[#133203]: https://github.com/home-assistant/core/pull/133203
[#133205]: https://github.com/home-assistant/core/pull/133205
[#133229]: https://github.com/home-assistant/core/pull/133229
[#133284]: https://github.com/home-assistant/core/pull/133284
[#133299]: https://github.com/home-assistant/core/pull/133299
[#133364]: https://github.com/home-assistant/core/pull/133364
[#133388]: https://github.com/home-assistant/core/pull/133388
[#133391]: https://github.com/home-assistant/core/pull/133391
[@Djelibeybi]: https://github.com/Djelibeybi
[@MrConorAE]: https://github.com/MrConorAE
[@bdraco]: https://github.com/bdraco
[@bieniu]: https://github.com/bieniu
[@emontnemery]: https://github.com/emontnemery
[@frenck]: https://github.com/frenck
[@gjohansson-ST]: https://github.com/gjohansson-ST
[@jbouwh]: https://github.com/jbouwh
[@joostlek]: https://github.com/joostlek
[@lellky]: https://github.com/lellky
[@mib1185]: https://github.com/mib1185
[@rappenze]: https://github.com/rappenze
### 2024.12.5 - December 20
- Bump `nice-go` to 1.0.0 ([@IceBotYT] - [#133185])
- Add support for Nice G.O. HAE00080 wall station ([@IceBotYT] - [#133186])
- Bugfix: also schedule time based integration when source is 0 ([@ronweikamp] - [#133438])
- Ensure screenlogic retries if the protocol adapter is still booting ([@bdraco] - [#133444])
- Bump Freebox to 1.2.1 ([@Quentame] - [#133455])
- Bump pyOverkiz to 1.15.3 ([@iMicknl] - [#133458])
- Don't raise Overkiz user flow unique_id check ([@iMicknl] - [#133471])
- Update Roborock to 2.8.1 ([@Lash-L] - [#133492])
- Update fjäråskupan to 2.3.1 ([@elupus] - [#133493])
- Update fjäråskupan to 2.3.2 ([@elupus] - [#133499])
- Bump gardena_bluetooth to 1.5.0 ([@elupus] - [#133502])
- Bump aiohttp to 3.11.11 ([@bdraco] - [#133530])
- Handle null value for elapsed time in Music Assistant ([@marcelveldt] - [#133597])
- Fix Twinkly raise on progress ([@joostlek] - [#133601])
- Handle mqtt.WebsocketConnectionError when connecting to the MQTT broker ([@bdraco] - [#133610])
[#132195]: https://github.com/home-assistant/core/pull/132195
[#132509]: https://github.com/home-assistant/core/pull/132509
[#132846]: https://github.com/home-assistant/core/pull/132846
[#133123]: https://github.com/home-assistant/core/pull/133123
[#133185]: https://github.com/home-assistant/core/pull/133185
[#133186]: https://github.com/home-assistant/core/pull/133186
[#133422]: https://github.com/home-assistant/core/pull/133422
[#133438]: https://github.com/home-assistant/core/pull/133438
[#133444]: https://github.com/home-assistant/core/pull/133444
[#133455]: https://github.com/home-assistant/core/pull/133455
[#133458]: https://github.com/home-assistant/core/pull/133458
[#133471]: https://github.com/home-assistant/core/pull/133471
[#133492]: https://github.com/home-assistant/core/pull/133492
[#133493]: https://github.com/home-assistant/core/pull/133493
[#133499]: https://github.com/home-assistant/core/pull/133499
[#133502]: https://github.com/home-assistant/core/pull/133502
[#133530]: https://github.com/home-assistant/core/pull/133530
[#133597]: https://github.com/home-assistant/core/pull/133597
[#133601]: https://github.com/home-assistant/core/pull/133601
[#133610]: https://github.com/home-assistant/core/pull/133610
[@IceBotYT]: https://github.com/IceBotYT
[@Lash-L]: https://github.com/Lash-L
[@Quentame]: https://github.com/Quentame
[@bdraco]: https://github.com/bdraco
[@elupus]: https://github.com/elupus
[@frenck]: https://github.com/frenck
[@iMicknl]: https://github.com/iMicknl
[@joostlek]: https://github.com/joostlek
[@marcelveldt]: https://github.com/marcelveldt
[@ronweikamp]: https://github.com/ronweikamp
## Need help? Join the community!
Home Assistant has a great community of users who are all more than willing

View File

@ -0,0 +1,47 @@
---
layout: post
title: "Understanding Our Community: The 2024 Home Assistant Survey"
description: "Today we launch our annual survey of our community, the insights gained will help us make Home Assistant better reflect all our users."
date: 2024-12-16 00:00:00
date_formatted: "December 16, 2024"
author: Annika Schulz
comments: true
categories: Announcements
og_image: /images/blog/2024-12-survey/art.jpg
---
<img src='/images/blog/2024-12-survey/art.jpg' alt="2024 community survey">
As Home Assistant continues to grow and evolve, so does our commitment to making it more inclusive, accessible, and aligned with the diverse needs of our community. To that end, we're launching an annual survey&mdash;and we hope you'll participate!
A big part of building our [roadmap](/blog/2024/06/12/roadmap-introduction/) going forward was focusing more on research, which led the team to bring me (Annika) in as a Senior User Experience Researcher. We could keep assuming our community's wants and needs, but we'd rather base our decisions on data-driven insights 😉. With this survey, we aim to better understand not just how you use Home Assistant, but also who you are as a person, a smart home user, and a member of our community. This knowledge will help us:
- Tailor our future work to address the needs of our community.
- Identify trends and shifts in the smart home landscape over time.
- Ensure Home Assistant and its ecosystem reflect the values and priorities of those who use it.
We understand that some of the questions we're asking touch on sensitive topics. Rest assured, your responses are completely anonymous, and all questions are optional. If you're ever uncomfortable, you can skip a question&mdash;but for the results to be recorded, you must hit the submit button at the end of the survey. This survey isn't short; we recommend setting aside around 20 minutes to complete it. [**Fill out the survey here**](https://home-assistant.typeform.com/communitysurvey#source=blog) or read more about what we're trying to learn below.
~Annika
<!--more-->
## What we're hoping to learn
We're curious about how you began your smart home journey and what drives your decisions today in your home. From the types of devices you use to how your household interacts with your smart home. We want to learn who is using Home Assistant, not just the primary user, but also those living in your smart home. These insights allow us to understand the varied experiences and expertise within the community. For example, knowing your professional background helps us identify areas where your day-to-day knowledge intersects with smart home technologies. We are also asking about neurodiversity, which can help us understand how our community processes and interacts with information. By learning about these differences, we can make our communication and platform design more inclusive. Again, we can understand if you prefer not to share this information.
One area we're trying to understand better is how you personally resonate with the values of the Open Home. We believe in privacy, sustainability, and choice&mdash;but how important are these values to you?
## Your data
First and foremost, the survey is entirely anonymous, and you can skip any question you don't want to answer. For sensitive questions (e.g., gender), we provide options like "prefer not to say" or open text fields.
Once collected, the data will be anonymized and aggregated to ensure your privacy. Because we cannot identify individual responses, certain data rights (like deletion requests) won't be applicable after submission. Please note around halfway through the survey there is a partial submit point, once you click continue the previous answers will be recorded. The data will be stored and handled according to GDPR standards. For more details, see our [User Research Agreement](https://www.openhomefoundation.org/user-research-agreement/).
## How you can help
This isn't a short survey and should take around 20 minutes - don't hesitate to return later to complete it. For the results to be recorded, you must progress past the partial submission point or hit the submit button at the end of the survey. While responding to the survey, be aware that there is no right or wrong answer. It is about you as a person, your experience, opinions, and feelings. Don't overthink your responses, but stay with the answers that come to your mind intuitively. The more detail, the better - your insights will help shape our future directions. Also, share it with friends, family, or anyone who uses Home Assistant.
### Fill out the Survey [here](https://home-assistant.typeform.com/communitysurvey#source=blog)
The survey opens on Monday, December 16, and **closes on Monday, January 20**. Once we've analyzed the data, we'll share the results and insights with the community. By participating, you're helping us build a better Home Assistant - one that grows with its users and stays true to its values. Thanks for your support!

View File

@ -0,0 +1,129 @@
---
layout: post
title: "Voice Chapter 8 - Assist in the home today"
description: "All the things you can do with Assist today, along with the state of our development, limitations, and where you can help."
date: 2024-12-19 00:00:01
date_formatted: "December 19, 2024"
author: Mike Hansen
comments: true
categories: Assist
og_image: /images/blog/2024-12-voice-chapter-8/art.png
---
<img src='/images/blog/2024-12-voice-chapter-8/art.png' alt="Voice chapter 8 - Assist in the home today">
As you have probably already read, we launched our [Home Assistant Voice Preview Edition](/voice-pe/) today. The culmination of the past several years of open-source software progress on Home Assistant's home-grown voice assistant, [Assist](/voice_control/). A sizable group of dedicated developers has been working together on adding and honing its many features, and if it's been a while since you tried Assist, you should use this launch as a chance to jump back in and see the progress we've made.
[Home Assistant Voice Preview Edition](/voice-pe/) has been launched to build on this work, continuing the momentum we've already built and accelerating our goal of not only matching the capabilities of existing voice assistants but surpassing them. We had an early production run of Voice Preview Edition (a preview preview 😉), and we tried to get them in the hands of as many of our language leaders and voice developers as possible - and we're already seeing the fruits of their efforts with language support improving over the past month alone!
I'd like to highlight in this voice chapter all the things you can do with Assist today. I also want to give the state of our development, what the limitations are, and where your support can be best applied.
### Table of Contents
- [Assist in the home today](#assist-in-the-home-today)
- [Origins of Assist](#origins-of-assist)
- [Commands](#commands)
- [Timers](#timers)
- [Exposing devices and Aliases](#exposing-devices-and-aliases)
- [Room context](#room-context)
- [Wake words](#wake-words)
- [Speech Processing](#speech-processing)
- [Language support](#language-support)
- [Text-to-speech](#text-to-speech)
- [Speech-to-text](#speech-to-text)
- [AI and Assist](#ai-and-assist)
- [Conclusion](#conclusion)
<!--more-->
## Assist in the home today
### Origins of Assist
<p class='img'><img src='/images/blog/2024-12-voice-chapter-8/assist.png' style='border: 0;box-shadow: none;' alt="Early Assist being used in chat">Early versions of Assist via chat - things have come a long way</p>
Voice control for Home Assistant goes back further than most people assume, with some of the groundwork we use today being [added as far back as 2017](/blog/2017/07/29/release-50/). The major turning point came when we refocused our efforts and declared 2023 the [Year of the Voice](/blog/2022/12/20/year-of-voice/). This was an effort to focus development and find areas where our community could make the most impact. During the Year of the Voice [Assist](/voice_control/) was added to voice, intents were improved, languages added, wake words were created, and we established great local and cloud options for running voice. Shortly after Year of the Voice many more features were added, including integrated AI, timers, and even better wake words. Year of the Voice got the ball rolling, and Voice Preview Edition will continue its momentum.
### Commands
[Assist](/voice_control/) is the underlying technology that allows Home Assistant to turn commands ("turn on the light") into Actions (`light.turn_on`). Commands, or as we call them *intents*, allow you to control pretty much every aspect of your smart home, including on, off, play, pause, next, open, close, and more. We also have intents that give you helpful information like what's the time, weather, temperature, and so on. Lastly, there are a bunch of other useful miscellaneous things, like adding items to a shopping list and setting timers. If you're interested, there is a [full list here](https://developers.home-assistant.io/docs/intent_builtin/).
### Timers
<div style="text-align: center;">
<video src="/images/blog/2024-12-voice-chapter-8/timer.webm"
autoplay muted loop playsinline>
Your browser does not support the video tag.
</video>
</div>
When we [asked our community](https://community.home-assistant.io/t/poll-what-do-you-use-your-voice-assistant-for-what-do-you-expect-it-to-do-multiple-selections/693669) timers were a top-requested ability. You can not only set a timer, pause, increase, decrease or cancel it, but you can also set commands to [trigger after a set amount of time](/blog/2024/06/26/voice-chapter-7/#timers-control-devices), for example, "turn off the TV in 15 minutes". You can also just say "Stop" without a wake word, to silence the timer's alarm. On our Voice Preview Edition, when you set a timer the LED ring counts down the last seconds and flashes when it's done.
### Exposing devices and Aliases
This sets us apart from other voice assistants: we allow you to expose and effectively hide devices from your voice assistant. For example, you could choose not to expose a door lock but instead just expose the sensor that knows if the door is closed. It puts you in the driver's seat on what voice can do in your home. We also introduced aliases to allow you to give devices multiple names, allowing you to speak more naturally with Assist.
### Room context
If you tell your Assist hardware what room it is in and ensure other devices are organized by room, you can give commands like "turn off the lights", and without specifying anything, it will turn off the lights in the room you are in. This feature also works with media players (play/pause/next) and timers.
### Wake words
<p class='img'><img src='/images/blog/2024-12-voice-chapter-8/wake-word.webp' style="max-width: 100%; height: auto; display: inline-block;" alt="Timer animation video"><br>Our community is donating small amounts of time to improve wake words <a href="/blog/2024/10/24/wake-word-collective/" target="_blank">with our tool</a>.</br></a>
Wake Words are the unique phrases that initiate a voice assistant to listen and start processing a command. Wake words originally had to be processed on Home Assistant via an add-on like openWakeWord, meaning the Assist hardware needed to continuously stream audio to Home Assistant. Shortly after Year of the Voice [microWakeWord](/blog/2024/02/21/voice-chapter-6/#microwakeword) was released, which brought wake word processing on-device for faster responses. It is improving fast thanks to our community using our [fast and easy tool](/blog/2024/10/24/wake-word-collective/) to donate samples of their voice. There is a growing list of wake words, and the on-device options include "Okay Nabu" (default and most reliable), "Hey Jarvis", and "Hey Mycroft". Both of these wake word engines were built by the Home Assistant community and are open source, giving the world two great free and open wake word engines!
## Speech Processing
<p class='img'><img src='/images/blog/2024-12-voice-chapter-8/voice-pipeline.png' alt="Timer animation video">The Assist pipeline in all its glory</a>
Assist can't understand spoken words and needs something to take that audio and turn it into text - all this together is called an Assist pipeline. This speech processing is really CPU intensive, so it can't happen on the Voice Assistant Hardware, and sometimes your Home Assistant system can't even handle it. One important step we made was adding speech-to-text and text-to-speech capabilities to [Home Assistant Cloud](/cloud/), which allows low-powered Home Assistant hardware to offload speech processing to the cloud. Home Assistant Cloud doesn't store or use this data to train on - clouds don't get any more private than ours. It is also the most accurate and power-efficient way to process speech. We've put considerable effort into local speech processing, building the add-ons and a new protocol they use to speak to Home Assistant, but they are very reliant on language support from the community.
### Language support
<p class='img'><img src='/images/blog/2024-12-voice-chapter-8/language-support.png' style='border: 0;box-shadow: none;' alt="Our language checker">See if your language is supported with <a href="/voice-pe/#language-support" target="_blank">our checker</a>.</p>
Assist aims to support more languages than other voice assistants, and this has been a massive undertaking for our community - We need more help. The first step for language support is getting the commands (intents) right, and we have [over 25 major languages](https://home-assistant.github.io/intents/) that are ready to use today. Our wake words are also getting better at understanding different accents thanks to our [Wake Word Collective tool](https://ohf-voice.github.io/wake-word-collective/).
### Text-to-speech
We built our own text-to-speech system, [Piper](/integrations/piper/), and it now supports over 30 languages. It's a fast, local neural network-powered text-to-speech system that sounds great and can run on low-powered hardware (it's optimized for Pi4!). It was built with the voices of our community, and if you don't see your native tongue, [add your voice](https://github.com/rhasspy/piper/blob/master/TRAINING.md)!
### Speech-to-text
There is one area that holds back the rest of our language support more than others, and that's local speech-to-text. Building a full speech-to-text model needs big compute resources and terabytes of samples, which is currently outside our reach. We use [Whisper](/integrations/whisper/) for local speech-to-text processing, an open-source project from OpenAI, and we're grateful it exists. For some languages, it works great and doesn't require a lot of system resources to run well, but for others, you need a pretty beefy system to get acceptable results. In our opinion, only about 15 languages are ready to be run locally on reasonable hardware (an Intel N100 or better) - that's why before you begin dreaming up your perfect all-local setup, we recommend checking [language support](/voice-pe/#language-support).
We're always looking for new solutions for low-powered hardware, and are now building another tool that uses much less complex sentence recognition. This could even run on a Raspberry Pi 4, but it would only be able to identify predefined sentences, so if you go off script you may need to call in an AI to help Assist understand your needs. Our language leaders are hard at work putting together the needed translations, but if you want to learn more visit [Rhasspy Speech](https://github.com/rhasspy/rhasspy-speech).
In general, even when your language is supported, you'll almost always get better results from Home Assistant Cloud. Use the free trial to see what works best for you. Also, you can use both, we know someone using an automation to switch the Assist pipeline to an all local setup when their internet is down.
### AI and Assist
<p class='img'><lite-youtube videoid="vThoxRIxHyI" videotitle="Assist working with AI"></lite-youtube>Our default local conversation agent mixed with AI is great for natural language and speed</p>
Another aspect where we beat the competition hands down is the integration of AI into our voice assistant. You can choose from some of the biggest cloud AI providers like ChatGPT, Google Gemini, and Claude (paid accounts required). You can also run it locally via [Ollama](https://ollama.com/) if you have a modern graphics processor with enough VRAM, allowing you to build the most capable offline voice setup around.
Our intents (Assist's built-in sentences) are getting better at understanding most commands, but AI processes commands in natural language, meaning if you get the device's name ever so slightly off, it can still figure things out. It also provides the ability to ask outside the built-in intents. For instance, if you tell it "It's a bit cold in here", it may raise the temperature on your thermostat, but it could forgo any home control and just tell you to put on a jacket - results are not yet consistent. More useful is its ability to take multiple sensors and provide context. For instance, you could ask it for an air quality report, and it could review the CO2 levels and tell you to open a window it observes is shut. All this is experimental, and having an AI control your home is not for everyone, but what's important is that you have the choice.
## Conclusion
So many new innovations and improvements for Assist have happened in the past couple of months, and this speaks to the power of having good hardware to build our software on. Voice Preview Edition is the best open voice hardware available today, and even with it only in the hands of a couple of hundred people today, it's making a noticeable difference. Whether that's writing code, improving language support, making blueprints, or even just reporting bugs. The momentum we will build having this in the hands of thousands will be game-changing - it's why we've declared that the era of open voice assistants has arrived.
In the comments sections, we always have a couple of people saying, "but I don't use voice, what about improving (this or that)". The good news is that improving Assist and Home Assistant's other features are already happening in tandem (check out [our roadmap](/blog/2024/11/15/roadmap-2024h2/) for the complete picture of our priorities). In the end, only a fraction of our development goes towards voice, and our budget is what Amazon's voice team probably spends on pizza parties 😆. A great side effect is the problems we're solving with voice are benefiting other parts of Home Assistant, for example, our integration of AI was driven by voice.
We really think voice is an integral part of a well-rounded smart home ecosystem. It's especially important for improving the accessibility of home control to all members of the household. There needs to be real options in the space, most importantly ones that give you full control and a real choice on privacy.
### Home Assistant Voice Preview is available at retailers today,<!-- omit in toc -->
<div style="text-align: center; margin-bottom: 20px;">
<img src="/images/blog/2024-12-voice-chapter-8/vpe-packaging.png"
alt="Voice Preview Edition with packaging">
</div>
<div style="text-align: center; margin-bottom: 20px;">
<a href="/voice-pe/">
<img src="/images/blog/2024-12-voice-chapter-8/buy-now.png"
style="border: 0; box-shadow: none;"
alt="buy now">
</a>
</div>

View File

@ -0,0 +1,125 @@
---
layout: post
title: "The era of open voice assistants has arrived"
description: "Home Assistant Voice Preview Edition is the best way to get started with our open and privacy-focused voice assistant."
date: 2024-12-19 00:00:02
date_formatted: "December 19, 2024"
author: Paulus Schoutsen
comments: true
categories:
- Announcements
- Assist
og_image: /images/blog/2024-12-vpe/art.jpg
---
<lite-youtube videoid="ZgoaoTpIhm8" videotitle="Voice Chapter 8 - Voice Preview Edition launch"></lite-youtube>
**TL;DR: [Check out the product page](/voice-pe/)**
We all deserve a voice assistant that doesn't harvest our data and arbitrarily limit features. In the same way Home Assistant made private and local home automation a viable option, we believe the same can, and must be done for voice assistants.
Since we began developing our open-source voice assistant for Home Assistant, one key element has been missing - great hardware that's simple to set up and use. Hardware that hears you, gives you clear feedback, and seamlessly fits into the home. Affordable and high-quality voice hardware will let more people join in on its development and allow anyone to *preview* the future of voice assistants today. Setting a standard for the next several years to base our development around.
<p class='img'><img src='/images/blog/2024-12-vpe/vpe-packaging.png' style='border: 0;box-shadow: none;' alt="Voice Preview Edition with packaging"></p>
We're launching [Home Assistant Voice Preview Edition](/voice-pe/) to help accelerate our goal of not only matching the capabilities of existing voice assistants but surpassing them. This is inevitable: They'll focus their efforts on monetizing voice, while our community will be focused on improving open and private voice. We'll support the languages big tech ignores and provide a real choice in how you run voice in your home.
**The era of open, private voice assistants begins now, and we'd love for you to be part of it.**
### Table of contents
- [Introducing Home Assistant Voice Preview Edition](#introducing-home-assistant-voice-preview-edition)
- [Why Preview Edition](#why-preview-edition)
- [Built for Home Assistant](#built-for-home-assistant)
- [Advanced audio processing](#advanced-audio-processing)
- [Bringing choice to voice](#bringing-choice-to-voice)
- [Fully open and customizable](#fully-open-and-customizable)
- [Community-driven](#community-driven)
- [Conclusion](#conclusion)
- [See what voice can do today](#see-what-voice-can-do-today)
<!--more-->
## Introducing Home Assistant Voice Preview Edition
<img src='/images/blog/2024-12-vpe/voice-preview-edition.png' style='border: 0;box-shadow: none;' alt="Voice Preview Edition with packaging">
Our main goal with Voice Preview Edition was to make the best hardware to get started with [Assist](/voice_control/), Home Assistant's built-in voice assistant. If you're already using other third-party hardware to run Assist, this will be a big upgrade. We prioritized its ability to hear commands, giving it an industry-leading dedicated audio processor and dual microphones - I'm always blown away by how well it picks up my voice around the room.
Next, we ensured it would blend into the home, giving it a sleek but unobtrusive design. That's not to say it doesn't have flair. When you get your hands on Voice Preview Edition the first thing you'll notice is its premium-feeling injection-molded shell, which is semi-transparent, just like your favorite '90s tech. The LED ring is also really eye-catching, and you can customize it to your heart's content from full gamer RGB to subtle glow.
<div style="text-align: center; margin-top: 20px;">
<img src='/images/blog/2024-12-vpe/vpe-finish.png' style='border: 0;box-shadow: none;' alt="3 different views of Voice Preview Edition">
</div>
It's hard to convey how nice the rotary dial is to use; its subtle clicks paired with LED animations are hard not to play with. Most importantly, the dial lets anyone in your home intuitively adjust the volume. The same can be said for the multipurpose button and mute switch (which physically cuts power to the microphone for ultimate privacy). We knew for it to work best, it needed to be out in the open, and let's just say that [Home Approval Factor](https://newsletter.openhomefoundation.org/open-home-approval-factor/#:~:text=2023.1%20release%20notes.-,Home%20Approval%20Factor,-We%20have%20a) was very front of mind when designing it.
We also worked hard to keep the price affordable and comparable to other voice assistant hardware at just $59 (that's the recommended MSRP, and pricing will vary by retailer). This isn't a preorder, it's available now!
<div style="text-align: center; margin-bottom: 20px;">
<img src='/images/blog/2024-12-vpe/vpe-price.png' style='border: 0;box-shadow: none;' alt="Voice Preview Edition price">
</div>
<div style="text-align: center; margin-bottom: 20px;">
<a href="/voice-pe/">
<img src="/images/blog/2024-12-voice-chapter-8/buy-now.png"
style="border: 0; box-shadow: none;"
alt="buy now">
</a>
</div>
### Why Preview Edition
For some, our voice assistant is all they need; they just want to say a couple of commands, set timers, manage their shopping list, and control their most used devices. For others, we understand they want to ask their voice assistant to make whale sounds or to tell them how tall Taylor Swift is - this voice assistant doesn't entirely do those things ([yet](/voice_control/assist_create_open_ai_personality/)). We think there is still more we can do before this is ready for every home, and until then, we'll be selling this *Preview* of the future of voice assistants. We've built the best hardware on the market, and set a new standard for the coming years, allowing us to focus our development as we prepare our voice assistant for every home. Taking back our privacy isn't for everyone - it's a journey - and we want as many people as possible to join us early and make it better.
### Built for Home Assistant
Many other voice assistants work with Home Assistant, but this one was *built* for Home Assistant. Unlike other voice hardware that can work with Assist, this doesn't require flashing firmware or any assembly. You plug it into power, and it is seamlessly discovered by Home Assistant. A wizard instantly starts helping you set up your voice assistant, but critically, if you haven't used voice before, it will quickly guide you through what you need to get the best experience.
<p class='img'><img src='/images/blog/2024-12-vpe/wizard.webp' alt="Video of Assist wizard">Get up and running with Voice Preview Edition in minutes with our new wizard</a>
This is not a DIY product. We've worked to make the experience as smooth as possible, with easy and fast updates and settings you can manage from the Home Assistant UI.
### Advanced audio processing
If you have been following our work on voice, you know we've tried a lot of different voice assistant hardware. Most available Assist-capable hardware is bad at its most important job - hearing your voice and then providing audiovisual feedback. That was really what drove us to build Voice Preview Edition.
<p class='img'><lite-youtube videoid="DS_8cDZKBPc" videotitle="Music Assistant - VPE"></lite-youtube>Voice Preview Editions mics and audio processors effortlessly hear commands through loud music it is playing</p>
Our Assist software could only do so much with substandard audio, and its functionality is massively improved with clear audio. The dual microphones combined with the XMOS audio processing chip are what makes it so capable. Together, they allow Voice Preview Edition to have echo cancellation, stationary noise removal, and auto gain control, which all adds up to clearer audio. This combined with an ESP32-S3 with 8 MB of octal PSRAM - one of the fastest ESP and RAM combinations available - makes for an incredibly responsive device. This is the best Assist hardware you can buy today, and it will continue to give a great experience as Assist's feature set expands in the years to come.
### Bringing choice to voice
Assist can do something almost no other voice assistant can achieve - *it can run without the internet* 🤯. You can speak to your Voice Preview Edition, and those commands can be processed completely within the walls of your home. At the time of writing this, there are some pretty big caveats, specifically that you need to speak a [supported language](/voice-pe/#language-support) and have pretty powerful hardware to run it (we recommend a Home Assistant system running on an Intel N100 or better).
<p class='img'><img src='/images/blog/2024-12-vpe/local-cloud.png' style='border: 0;box-shadow: none;' alt="graphic of local vs cloud">Diagram of cloud vs local speech processing</p>
If you use low-powered Home Assistant hardware, there is an easy and affordable internet-based solution; [Home Assistant Cloud](/cloud/). This privacy-focused service allows you to offload your speech-to-text and text-to-speech processing, all while being very responsive and keeping your energy bill low. Speech-to-text is the harder of the two to run locally, and our cloud processing is almost always more accurate for more languages (visit our [language support checker here](/voice-pe/#language-support)).
Our goal is for Assist to run easily, affordably, and fully locally for all languages. As someone who has seen the rapid development of this technology over the past several years, I'm optimistic that this will happen, but until then, many languages have a good range of choices that provide strong privacy.
### Fully open and customizable
<p class='img'><img src='/images/blog/2024-12-vpe/3d-prints.jpg' style='border: 0;box-shadow: none;' alt="Some interesting cartoon-inspired 3D prints for Voice Preview Edition">We are sharing the design files if you want to 3D print a new case... these ones were inevitable</p>
We're not just launching a new product, ***we're open sourcing all of it***. We built this for the Home Assistant community. Our community doesn't want a single voice assistant, they want the one that works for them -- they want choice. Creating a voice assistant is hard, and until now, parts of the solution were locked behind expensive licenses and proprietary software. With Voice Preview Edition being open source, we hope to bootstrap an ecosystem of voice assistants.
We tried to make every aspect of Voice Preview Edition customizable, which is actually pretty easy when you're working hand-in-hand with ESPHome and Home Assistant. It works great with the stock settings, but if you're so inclined, you can customize the Assist software, ESP32 firmware, and XMOS firmware.
<p class='img'><img src='/images/blog/2024-12-vpe/grove.jpg' style='border: 0;box-shadow: none;' alt="Voice Preview Edition with packaging">Connecting Grove sensors allows you to use your Voice Preview Edition as a more traditional ESPHome device - here is it acting as a voice assistant and air monitor.</p>
We also made the hardware easy to modify, inside and out. For instance, the included speaker is for alerts and voice prompts, but if you want to use it as a media player, connect a speaker to the included 3.5mm headphone jack and control it with software like [Music Assistant](https://music-assistant.io/). The included DAC is very clean and capable of streaming lossless audio. It can also be used as a very capable ESP32 device. On the bottom of the device is a [Grove port](https://wiki.seeedstudio.com/Grove_System/) (concealed under a cover that can be permanently removed), which allows you to connect a large ecosystem of sensors and accessories.
We've also made it quite painless to open, with easy-to-access screws and no clips. We even included exposed pads on the circuit board to make modifying it more straightforward. We're providing all the [3D files](https://voice-pe.home-assistant.io/resources/) so you can print your own components... even cartoon character-inspired ones. We're not here to dictate what you can and can't do with your device, and we tried our best to stay out of your way.
### Community-driven
The beauty of Home Assistant and ESPHome is that you are never alone when fixing an issue or adding a feature. We made this device so the community could start working more closely together on voice; we even considered calling it the *Community* edition. Ultimately, it is the community driving forward voice - either by taking part in its development or supporting its development by buying official hardware or Home Assistant Cloud. So much has already been done for voice, and I can't wait to see the advancements we make together.
## Conclusion
Home Assistant ~~values~~ champions choice. Today, we're providing one of the best choices for voice hardware. One that is truly private and totally open. I'm so proud of the team for building such a great working and feeling piece of hardware - this is a really big leap for voice hardware. I expect it to be the hardware benchmark for open-voice projects for years to come. I would also like to thank our language leaders who are expanding the reach of this project, our testers of this Preview Edition, and anyone who has joined in our voice work over the past years.
The hardware really is only half the picture, and it's the software that really brings this all together. Mike Hansen has just written the [Voice Chapter 8 blog](/blog/2024/12/19/voice-chapter-8-assist-in-the-home/) to accompany this launch, and this explains all the things we've built over the past two years to make Assist work in the home today. He also highlights everything that Voice Preview Edition was built to help accelerate development.
### [See what voice can do today](/blog/2024/12/19/voice-chapter-8-assist-in-the-home/)

View File

@ -1008,6 +1008,107 @@ For a summary in a more readable format:
[@robinostlund]: https://github.com/robinostlund
[@sdb9696]: https://github.com/sdb9696
## Release 2024.12.4 - December 17
- Simplify recorder RecorderRunsManager ([@emontnemery] - [#131785])
- Fix fibaro climate hvac mode ([@rappenze] - [#132508])
- Bump yt-dlp to 2024.12.13 ([@joostlek] - [#133129])
- Fix strptime in python_script ([@gjohansson-ST] - [#133159])
- Bump yalexs-ble to 2.5.4 ([@bdraco] - [#133172])
- Bump starlink-grpc-core to 1.2.1 to fix missing ping ([@MrConorAE] - [#133183])
- Bump aiolifx to 1.1.2 and add new HomeKit product prefixes ([@Djelibeybi] - [#133191])
- Revert "Simplify recorder RecorderRunsManager" ([@emontnemery] - [#133201])
- Revert "Improve recorder history queries (#131702)" ([@emontnemery] - [#133203])
- Bump incomfort-client to v0.6.4 ([@jbouwh] - [#133205])
- Bump yalexs-ble to 2.5.5 ([@bdraco] - [#133229])
- Set code_arm_required to False for homekit_controller ([@bdraco] - [#133284])
- Allow load_verify_locations with only cadata passed ([@mib1185] - [#133299])
- Bump `imgw-pib` to version 1.0.7 ([@bieniu] - [#133364])
- Fix fan setpoints for flexit_bacnet ([@lellky] - [#133388])
- Bump holidays to 0.63 ([@gjohansson-ST] - [#133391])
[#131785]: https://github.com/home-assistant/core/pull/131785
[#132195]: https://github.com/home-assistant/core/pull/132195
[#132508]: https://github.com/home-assistant/core/pull/132508
[#132509]: https://github.com/home-assistant/core/pull/132509
[#132846]: https://github.com/home-assistant/core/pull/132846
[#133123]: https://github.com/home-assistant/core/pull/133123
[#133129]: https://github.com/home-assistant/core/pull/133129
[#133159]: https://github.com/home-assistant/core/pull/133159
[#133172]: https://github.com/home-assistant/core/pull/133172
[#133183]: https://github.com/home-assistant/core/pull/133183
[#133191]: https://github.com/home-assistant/core/pull/133191
[#133201]: https://github.com/home-assistant/core/pull/133201
[#133203]: https://github.com/home-assistant/core/pull/133203
[#133205]: https://github.com/home-assistant/core/pull/133205
[#133229]: https://github.com/home-assistant/core/pull/133229
[#133284]: https://github.com/home-assistant/core/pull/133284
[#133299]: https://github.com/home-assistant/core/pull/133299
[#133364]: https://github.com/home-assistant/core/pull/133364
[#133388]: https://github.com/home-assistant/core/pull/133388
[#133391]: https://github.com/home-assistant/core/pull/133391
[@Djelibeybi]: https://github.com/Djelibeybi
[@MrConorAE]: https://github.com/MrConorAE
[@bdraco]: https://github.com/bdraco
[@bieniu]: https://github.com/bieniu
[@emontnemery]: https://github.com/emontnemery
[@frenck]: https://github.com/frenck
[@gjohansson-ST]: https://github.com/gjohansson-ST
[@jbouwh]: https://github.com/jbouwh
[@joostlek]: https://github.com/joostlek
[@lellky]: https://github.com/lellky
[@mib1185]: https://github.com/mib1185
[@rappenze]: https://github.com/rappenze
## Release 2024.12.5 - December 20
- Bump `nice-go` to 1.0.0 ([@IceBotYT] - [#133185])
- Add support for Nice G.O. HAE00080 wall station ([@IceBotYT] - [#133186])
- Bugfix: also schedule time based integration when source is 0 ([@ronweikamp] - [#133438])
- Ensure screenlogic retries if the protocol adapter is still booting ([@bdraco] - [#133444])
- Bump Freebox to 1.2.1 ([@Quentame] - [#133455])
- Bump pyOverkiz to 1.15.3 ([@iMicknl] - [#133458])
- Don't raise Overkiz user flow unique_id check ([@iMicknl] - [#133471])
- Update Roborock to 2.8.1 ([@Lash-L] - [#133492])
- Update fjäråskupan to 2.3.1 ([@elupus] - [#133493])
- Update fjäråskupan to 2.3.2 ([@elupus] - [#133499])
- Bump gardena_bluetooth to 1.5.0 ([@elupus] - [#133502])
- Bump aiohttp to 3.11.11 ([@bdraco] - [#133530])
- Handle null value for elapsed time in Music Assistant ([@marcelveldt] - [#133597])
- Fix Twinkly raise on progress ([@joostlek] - [#133601])
- Handle mqtt.WebsocketConnectionError when connecting to the MQTT broker ([@bdraco] - [#133610])
[#132195]: https://github.com/home-assistant/core/pull/132195
[#132509]: https://github.com/home-assistant/core/pull/132509
[#132846]: https://github.com/home-assistant/core/pull/132846
[#133123]: https://github.com/home-assistant/core/pull/133123
[#133185]: https://github.com/home-assistant/core/pull/133185
[#133186]: https://github.com/home-assistant/core/pull/133186
[#133422]: https://github.com/home-assistant/core/pull/133422
[#133438]: https://github.com/home-assistant/core/pull/133438
[#133444]: https://github.com/home-assistant/core/pull/133444
[#133455]: https://github.com/home-assistant/core/pull/133455
[#133458]: https://github.com/home-assistant/core/pull/133458
[#133471]: https://github.com/home-assistant/core/pull/133471
[#133492]: https://github.com/home-assistant/core/pull/133492
[#133493]: https://github.com/home-assistant/core/pull/133493
[#133499]: https://github.com/home-assistant/core/pull/133499
[#133502]: https://github.com/home-assistant/core/pull/133502
[#133530]: https://github.com/home-assistant/core/pull/133530
[#133597]: https://github.com/home-assistant/core/pull/133597
[#133601]: https://github.com/home-assistant/core/pull/133601
[#133610]: https://github.com/home-assistant/core/pull/133610
[@IceBotYT]: https://github.com/IceBotYT
[@Lash-L]: https://github.com/Lash-L
[@Quentame]: https://github.com/Quentame
[@bdraco]: https://github.com/bdraco
[@elupus]: https://github.com/elupus
[@frenck]: https://github.com/frenck
[@iMicknl]: https://github.com/iMicknl
[@joostlek]: https://github.com/joostlek
[@marcelveldt]: https://github.com/marcelveldt
[@ronweikamp]: https://github.com/ronweikamp
[#113438]: https://github.com/home-assistant/core/pull/113438
[#120357]: https://github.com/home-assistant/core/pull/120357
[#123563]: https://github.com/home-assistant/core/pull/123563

View File

@ -144,6 +144,10 @@ description: "The Home Assistant contributor license agreement (CLA) signature p
currentUser.getProfile(function(err, profile){
if(err){
console.error('Got an error when attempting to load users profile', err);
const errorEl = document.querySelector("#error");
errorEl.textContent = "Failed to load your GitHub profile: " + (err.response?.data?.message || err.message);
errorEl.style.display = "block";
$('#loading').hide();
} else {
$("#name").val(profile.name);
$('#github_user_id').val(profile.id);
@ -152,6 +156,10 @@ description: "The Home Assistant contributor license agreement (CLA) signature p
currentUser.getEmails(function(err, emails){
if(err){
console.error('Got an error when attempting to load users emails', err);
const errorEl = document.querySelector("#error");
errorEl.textContent = "Failed to load your GitHub emails: " + (err.response?.data?.message || err.message);
errorEl.style.display = "block";
$('#loading').hide();
} else {
$.each(emails, function (i, item) {
$('#email').append($('<option>', { value: item.email, text: item.email }));

View File

@ -2580,6 +2580,24 @@ dark_header: true
</div>
</a>
<a
href="https://www.robbshop.nl/home-assistant-green-smart-hub"
target="_blank"
>
<div class="distributor">
<div>
<div>🇳🇱</div>
<div>ROBBshop</div>
<div>Shipping from the Netherlands</div>
</div>
<svg width="24" height="24" viewBox="0 0 24 24">
<path
d="M8.59,16.58L13.17,12L8.59,7.41L10,6L16,12L10,18L8.59,16.58Z"
/>
</svg>
</div>
</a>
<a
href="https://www.kjell.com/no/produkter/smarte-hjem/kontroller/nabu-casa-home-assistant-green-p88430"
target="_blank"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 54 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 179 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 203 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 184 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 47 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -0,0 +1,54 @@
<svg width="63" height="207" viewBox="0 0 63 207" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1114_1894)">
<path d="M31.5936 206.397C23.3957 206.397 15.6786 204.571 9.84391 201.249C3.96033 197.895 0.676276 193.391 0.611084 188.581V185.042C0.676276 180.232 3.95218 175.728 9.84391 172.366C10.2106 172.157 10.5855 171.956 10.9685 171.763V12.5957C10.9766 9.32211 13.1769 6.28178 17.1536 4.02163C21.0081 1.8178 26.1338 0.603271 31.561 0.603271C36.9883 0.603271 42.0977 1.8178 45.9359 4.02163C49.88 6.28178 52.0476 9.32211 52.0232 12.5957V171.674C52.4551 171.891 52.8788 172.125 53.2863 172.366C59.1373 175.72 62.3724 180.224 62.3887 185.034L62.3561 187.889C62.3724 188.082 62.3806 188.324 62.3806 188.565C62.3724 193.383 59.1373 197.879 53.2863 201.241C47.4923 204.563 39.7915 206.389 31.6018 206.389L31.5936 206.397Z" fill="white"/>
<path d="M31.5611 1.20648C36.6542 1.20648 41.7474 2.31644 45.6263 4.54441C49.5052 6.76434 51.4284 9.68402 51.4121 12.5957V172.101H51.518C52.0151 172.35 52.5041 172.615 52.9767 172.889C58.8277 176.243 61.7613 180.634 61.7776 185.042L61.7451 187.889C61.7613 188.115 61.7695 188.348 61.7695 188.573C61.7614 192.973 58.8277 197.372 52.9767 200.726C47.085 204.104 39.3434 205.794 31.5937 205.794C23.844 205.794 16.0861 204.104 10.1537 200.726C4.26193 197.364 1.28754 192.973 1.22235 188.573V185.042C1.27939 180.642 4.26193 176.251 10.1537 172.889C10.6182 172.623 11.0908 172.374 11.5716 172.133H11.5797V12.5957C11.5879 9.68402 13.5518 6.76434 17.4552 4.54441C21.3586 2.31644 26.4598 1.20648 31.5611 1.20648ZM31.5611 0C26.0279 0 20.7963 1.2467 16.844 3.4988C12.6799 5.87154 10.3737 9.09687 10.3492 12.5876V171.393C10.0722 171.546 9.80326 171.69 9.54249 171.843C3.45518 175.318 0.0651921 179.999 0 185.026V188.573C0.0733411 193.624 3.46333 198.305 9.54249 201.772C15.4668 205.142 23.298 207 31.5937 207C39.8894 207 47.7043 205.142 53.5879 201.772C59.6426 198.305 62.9837 193.616 62.9919 188.581C62.9919 188.34 62.9918 188.098 62.9674 187.857L63 185.058C62.9837 179.999 59.6426 175.318 53.5879 171.851C53.2701 171.666 52.9523 171.489 52.6345 171.32V12.5957C52.6508 9.10491 50.3853 5.87154 46.2375 3.4988C42.3097 1.2467 37.0943 0 31.5611 0Z" fill="#002332"/>
<path d="M1.23047 184.865V185.041" stroke="#002332" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7776 188.573C61.7695 192.973 58.8358 197.372 52.9848 200.726C41.2014 207.483 22.0267 207.483 10.1618 200.726C4.27005 197.364 1.29566 192.973 1.23047 188.573V185.042C1.24677 186.112 1.43419 187.173 1.79275 188.227C2.90916 191.509 5.70428 194.646 10.1618 197.187C22.0267 203.952 41.2014 203.952 52.9848 197.187C57.4097 194.646 60.1723 191.509 61.2561 188.227C61.525 187.399 61.6961 186.562 61.7532 185.726V187.881C61.7695 188.106 61.7776 188.34 61.7776 188.565V188.573Z" stroke="#002332" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7776 185.042C61.7776 185.275 61.7776 185.5 61.7532 185.734" stroke="#002332" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M1.23047 185.042C1.28751 180.642 4.27005 176.251 10.1618 172.889C10.6263 172.623 11.0989 172.374 11.5797 172.133" stroke="#002332" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7776 185.034C61.7613 180.634 58.8358 176.235 52.9848 172.881C52.5122 172.607 52.0232 172.35 51.5261 172.093" stroke="#002332" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4121 150.352V150.312" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 181.656C11.5959 184.568 13.5598 187.487 17.4632 189.707C21.3666 191.935 26.4678 193.045 31.5691 193.045" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M31.561 193.045C36.6623 193.045 41.7554 191.935 45.6262 189.715C49.5052 187.487 51.4283 184.576 51.412 181.664" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 12.5957C11.5959 15.5073 13.5598 18.427 17.4632 20.647C21.3666 22.8749 26.4678 23.9849 31.5691 23.9849" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M31.561 23.9849C36.6623 23.9849 41.7554 22.8749 45.6262 20.655C49.5052 18.427 51.4283 15.5154 51.412 12.6038" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4203 20.0517V143.459C51.4203 146.362 49.4972 149.258 45.6345 151.478C41.7556 153.698 36.6625 154.808 31.5612 154.808C31.5041 154.808 31.4553 154.808 31.3982 154.808C29.4506 154.8 27.886 153.199 27.886 151.277V34.9236C27.886 32.953 29.5239 31.3927 31.5204 31.3927C31.5367 31.3927 31.5449 31.3927 31.5612 31.3927C36.6625 31.3927 41.7556 30.2827 45.6345 28.0628C49.4972 25.8429 51.4203 22.9473 51.4203 20.0437V20.0517Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4202 20.0518V20.0115" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 181.656V177.835" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 150.312V12.5957" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4202 12.5957V20.0115V20.0518" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4202 150.312V143.459" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4121 181.656V177.884" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.412 177.884V150.352C51.412 153.255 49.4806 156.151 45.6262 158.363C41.7472 160.583 36.6541 161.693 31.561 161.693C26.4678 161.693 21.3584 160.583 17.4632 158.363C13.5598 156.135 11.5959 153.223 11.5796 150.312V177.843M43.5074 179.613C43.0755 179.677 42.6844 179.532 42.4236 179.251C42.3829 179.203 42.3503 179.154 42.3095 179.106C42.3095 179.09 42.2932 179.082 42.2851 179.066C42.2688 179.042 42.2525 179.018 42.2443 178.994C42.2362 178.969 42.228 178.953 42.2117 178.929C42.1139 178.728 42.0569 178.495 42.0569 178.238C42.0569 178.109 42.0732 177.972 42.0976 177.843C42.1302 177.715 42.171 177.586 42.228 177.465C42.3666 177.176 42.5703 176.926 42.8229 176.75C42.8392 176.733 42.8636 176.717 42.8881 176.709C43.0837 176.589 43.2955 176.5 43.5237 176.468C44.3386 176.355 44.9987 176.967 44.9987 177.835C44.9987 178.704 44.3386 179.492 43.5156 179.605L43.5074 179.613Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M44.9825 177.843C44.9825 178.712 44.3224 179.5 43.4994 179.613C43.0675 179.677 42.6763 179.532 42.4155 179.251C42.3748 179.203 42.3422 179.154 42.3014 179.106C42.3014 179.09 42.2852 179.082 42.277 179.066C42.2607 179.042 42.2444 179.018 42.2363 178.994C42.2281 178.969 42.22 178.953 42.2037 178.929C42.1059 178.728 42.0488 178.495 42.0488 178.237C42.0488 178.109 42.0651 177.972 42.0896 177.843C42.1222 177.715 42.1629 177.586 42.22 177.465C42.3585 177.176 42.5622 176.926 42.8148 176.749C42.8311 176.733 42.8556 176.717 42.88 176.709C43.0756 176.589 43.2875 176.5 43.5157 176.468C44.3306 176.355 44.9906 176.967 44.9906 177.835L44.9825 177.843Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 12.5957C11.5959 9.68408 13.5598 6.7644 17.4632 4.54447C21.3666 2.31651 26.4678 1.20654 31.5691 1.20654" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M31.561 1.20654C36.6623 1.20654 41.7554 2.31651 45.6262 4.53643C49.5052 6.7644 51.4283 9.67604 51.412 12.5877" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7532 185.734V185.211" stroke="#002332" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M48.3725 30.9824C48.3725 30.8296 48.3155 30.7009 48.2259 30.6205C48.1362 30.532 48.0058 30.4918 47.8673 30.5079C47.7288 30.524 47.5984 30.6044 47.5087 30.717C47.4191 30.8296 47.3621 30.9744 47.3621 31.1191V62.5922C47.3621 62.745 47.4191 62.8737 47.5087 62.9542C47.5984 63.0426 47.7288 63.0829 47.8673 63.0668C48.0058 63.0507 48.1362 62.9703 48.2259 62.8576C48.3155 62.745 48.3725 62.6003 48.3725 62.4555V30.9824Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M48.3725 71.9143C48.3725 71.7615 48.3155 71.6328 48.2259 71.5524C48.1362 71.4639 48.0058 71.4237 47.8673 71.4398C47.7288 71.4558 47.5984 71.5363 47.5087 71.6489C47.4191 71.7615 47.3621 71.9063 47.3621 72.051V103.524C47.3621 103.677 47.4191 103.806 47.5087 103.886C47.5984 103.975 47.7288 104.015 47.8673 103.999C48.0058 103.983 48.1362 103.902 48.2259 103.79C48.3155 103.677 48.3725 103.532 48.3725 103.387V71.9143Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M48.3725 112.838C48.3725 112.685 48.3155 112.557 48.2259 112.476C48.1362 112.388 48.0058 112.347 47.8673 112.364C47.7288 112.38 47.5984 112.46 47.5087 112.573C47.4191 112.685 47.3621 112.83 47.3621 112.975V144.448C47.3621 144.601 47.4191 144.729 47.5087 144.81C47.5984 144.898 47.7288 144.939 47.8673 144.922C48.0058 144.906 48.1362 144.826 48.2259 144.713C48.3155 144.601 48.3725 144.456 48.3725 144.311V112.838Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M45.2107 33.0898C45.2107 32.937 45.1536 32.8083 45.064 32.7279C44.9743 32.6394 44.844 32.5992 44.7054 32.6153C44.5669 32.6314 44.4365 32.7118 44.3469 32.8244C44.2572 32.937 44.2002 33.0818 44.2002 33.2266V64.6996C44.2002 64.8525 44.2572 64.9812 44.3469 65.0616C44.4365 65.1501 44.5669 65.1903 44.7054 65.1742C44.844 65.1581 44.9743 65.0777 45.064 64.9651C45.1536 64.8525 45.2107 64.7077 45.2107 64.5629V33.0898Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M45.2107 74.0217C45.2107 73.8689 45.1536 73.7402 45.064 73.6598C44.9743 73.5713 44.844 73.5311 44.7054 73.5472C44.5669 73.5633 44.4365 73.6437 44.3469 73.7563C44.2572 73.8689 44.2002 74.0137 44.2002 74.1585V105.632C44.2002 105.784 44.2572 105.913 44.3469 105.993C44.4365 106.082 44.5669 106.122 44.7054 106.106C44.844 106.09 44.9743 106.01 45.064 105.897C45.1536 105.784 45.2107 105.64 45.2107 105.495V74.0217Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M45.2107 114.946C45.2107 114.793 45.1536 114.664 45.064 114.584C44.9743 114.495 44.844 114.455 44.7054 114.471C44.5669 114.487 44.4365 114.568 44.3469 114.68C44.2572 114.793 44.2002 114.938 44.2002 115.082V146.555C44.2002 146.708 44.2572 146.837 44.3469 146.917C44.4365 147.006 44.5669 147.046 44.7054 147.03C44.844 147.014 44.9743 146.933 45.064 146.821C45.1536 146.708 45.2107 146.563 45.2107 146.419V114.946Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9231 28.0627C50.9231 27.9099 50.866 27.7812 50.7764 27.7008C50.6868 27.6123 50.5564 27.5721 50.4178 27.5882C50.2793 27.6043 50.1489 27.6847 50.0593 27.7973C49.9696 27.9099 49.9126 28.0547 49.9126 28.1995V59.6725C49.9126 59.8254 49.9696 59.9541 50.0593 60.0345C50.1489 60.123 50.2793 60.1632 50.4178 60.1471C50.5564 60.131 50.6868 60.0506 50.7764 59.938C50.866 59.8254 50.9231 59.6806 50.9231 59.5358V28.0627Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9231 68.9946C50.9231 68.8418 50.866 68.7131 50.7764 68.6327C50.6868 68.5442 50.5564 68.504 50.4178 68.5201C50.2793 68.5362 50.1489 68.6166 50.0593 68.7292C49.9696 68.8418 49.9126 68.9866 49.9126 69.1314V100.604C49.9126 100.757 49.9696 100.886 50.0593 100.966C50.1489 101.055 50.2793 101.095 50.4178 101.079C50.5564 101.063 50.6868 100.982 50.7764 100.87C50.866 100.757 50.9231 100.612 50.9231 100.468V68.9946Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9231 109.927C50.9231 109.774 50.866 109.645 50.7764 109.565C50.6868 109.476 50.5564 109.436 50.4178 109.452C50.2793 109.468 50.1489 109.548 50.0593 109.661C49.9696 109.774 49.9126 109.918 49.9126 110.063V141.536C49.9126 141.689 49.9696 141.818 50.0593 141.898C50.1489 141.987 50.2793 142.027 50.4178 142.011C50.5564 141.995 50.6868 141.914 50.7764 141.802C50.866 141.689 50.9231 141.544 50.9231 141.4V109.927Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M42.0488 34.2722C42.0488 34.1194 41.9918 33.9907 41.9021 33.9103C41.8125 33.8218 41.6821 33.7816 41.5436 33.7977C41.405 33.8137 41.2747 33.8942 41.185 34.0068C41.0954 34.1194 41.0383 34.2642 41.0383 34.4089V65.882C41.0383 66.0348 41.0954 66.1635 41.185 66.244C41.2747 66.3324 41.405 66.3727 41.5436 66.3566C41.6821 66.3405 41.8125 66.26 41.9021 66.1474C41.9918 66.0348 42.0488 65.8901 42.0488 65.7453V34.2722Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M42.0488 75.2041C42.0488 75.0513 41.9918 74.9226 41.9021 74.8421C41.8125 74.7537 41.6821 74.7135 41.5436 74.7295C41.405 74.7456 41.2747 74.8261 41.185 74.9387C41.0954 75.0513 41.0383 75.196 41.0383 75.3408V106.814C41.0383 106.967 41.0954 107.095 41.185 107.176C41.2747 107.264 41.405 107.305 41.5436 107.288C41.6821 107.272 41.8125 107.192 41.9021 107.079C41.9918 106.967 42.0488 106.822 42.0488 106.677V75.2041Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M42.0488 116.128C42.0488 115.975 41.9918 115.846 41.9021 115.766C41.8125 115.678 41.6821 115.637 41.5436 115.653C41.405 115.669 41.2747 115.75 41.185 115.863C41.0954 115.975 41.0383 116.12 41.0383 116.265V147.738C41.0383 147.891 41.0954 148.019 41.185 148.1C41.2747 148.188 41.405 148.228 41.5436 148.212C41.6821 148.196 41.8125 148.116 41.9021 148.003C41.9918 147.891 42.0488 147.746 42.0488 147.601V116.128Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.8869 35.157C38.8869 35.0042 38.8299 34.8755 38.7403 34.795C38.6506 34.7066 38.5202 34.6663 38.3817 34.6824C38.2432 34.6985 38.1128 34.7789 38.0231 34.8916C37.9335 35.0042 37.8765 35.1489 37.8765 35.2937V66.7668C37.8765 66.9196 37.9335 67.0483 38.0231 67.1287C38.1128 67.2172 38.2432 67.2574 38.3817 67.2413C38.5202 67.2252 38.6506 67.1448 38.7403 67.0322C38.8299 66.9196 38.8869 66.7748 38.8869 66.63V35.157Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.8869 76.0889C38.8869 75.936 38.8299 75.8073 38.7403 75.7269C38.6506 75.6384 38.5202 75.5982 38.3817 75.6143C38.2432 75.6304 38.1128 75.7108 38.0231 75.8234C37.9335 75.936 37.8765 76.0808 37.8765 76.2256V107.699C37.8765 107.851 37.9335 107.98 38.0231 108.061C38.1128 108.149 38.2432 108.189 38.3817 108.173C38.5202 108.157 38.6506 108.077 38.7403 107.964C38.8299 107.851 38.8869 107.707 38.8869 107.562V76.0889Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.8869 117.021C38.8869 116.868 38.8299 116.739 38.7403 116.659C38.6506 116.57 38.5202 116.53 38.3817 116.546C38.2432 116.562 38.1128 116.643 38.0231 116.755C37.9335 116.868 37.8765 117.013 37.8765 117.157V148.631C37.8765 148.783 37.9335 148.912 38.0231 148.993C38.1128 149.081 38.2432 149.121 38.3817 149.105C38.5202 149.089 38.6506 149.009 38.7403 148.896C38.8299 148.783 38.8869 148.639 38.8869 148.494V117.021Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M35.717 35.6555C35.717 35.5027 35.66 35.374 35.5703 35.2936C35.4807 35.2051 35.3503 35.1649 35.2118 35.181C35.0732 35.197 34.9429 35.2775 34.8532 35.3901C34.7636 35.5027 34.7065 35.6475 34.7065 35.7922V67.2653C34.7065 67.4181 34.7636 67.5468 34.8532 67.6273C34.9429 67.7157 35.0732 67.756 35.2118 67.7399C35.3503 67.7238 35.4807 67.6433 35.5703 67.5307C35.66 67.4181 35.717 67.2734 35.717 67.1286V35.6555Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M35.717 76.5793C35.717 76.4265 35.66 76.2978 35.5703 76.2174C35.4807 76.1289 35.3503 76.0887 35.2118 76.1048C35.0732 76.1209 34.9429 76.2013 34.8532 76.3139C34.7636 76.4265 34.7065 76.5713 34.7065 76.7161V108.189C34.7065 108.342 34.7636 108.471 34.8532 108.551C34.9429 108.64 35.0732 108.68 35.2118 108.664C35.3503 108.648 35.4807 108.567 35.5703 108.455C35.66 108.342 35.717 108.197 35.717 108.052V76.5793Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M35.717 117.511C35.717 117.358 35.66 117.23 35.5703 117.149C35.4807 117.061 35.3503 117.021 35.2118 117.037C35.0732 117.053 34.9429 117.133 34.8532 117.246C34.7636 117.358 34.7065 117.503 34.7065 117.648V149.121C34.7065 149.274 34.7636 149.403 34.8532 149.483C34.9429 149.571 35.0732 149.612 35.2118 149.596C35.3503 149.58 35.4807 149.499 35.5703 149.386C35.66 149.274 35.717 149.129 35.717 148.984V117.511Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M32.5552 35.8406C32.5552 35.6877 32.4981 35.5591 32.4085 35.4786C32.3188 35.3901 32.1885 35.3499 32.0499 35.366C31.9114 35.3821 31.781 35.4625 31.6914 35.5751C31.6017 35.6877 31.5447 35.8325 31.5447 35.9773V67.4504C31.5447 67.6032 31.6017 67.7319 31.6914 67.8123C31.781 67.9008 31.9114 67.941 32.0499 67.9249C32.1885 67.9088 32.3188 67.8284 32.4085 67.7158C32.4981 67.6032 32.5552 67.4584 32.5552 67.3136V35.8406Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M32.5552 76.7725C32.5552 76.6196 32.4981 76.4909 32.4085 76.4105C32.3188 76.322 32.1885 76.2818 32.0499 76.2979C31.9114 76.314 31.781 76.3944 31.6914 76.507C31.6017 76.6196 31.5447 76.7644 31.5447 76.9092V108.382C31.5447 108.535 31.6017 108.664 31.6914 108.744C31.781 108.833 31.9114 108.873 32.0499 108.857C32.1885 108.841 32.3188 108.76 32.4085 108.648C32.4981 108.535 32.5552 108.39 32.5552 108.246V76.7725Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M32.5552 117.704C32.5552 117.552 32.4981 117.423 32.4085 117.342C32.3188 117.254 32.1885 117.214 32.0499 117.23C31.9114 117.246 31.781 117.326 31.6914 117.439C31.6017 117.552 31.5447 117.696 31.5447 117.841V149.314C31.5447 149.467 31.6017 149.596 31.6914 149.676C31.781 149.765 31.9114 149.805 32.0499 149.789C32.1885 149.773 32.3188 149.692 32.4085 149.58C32.4981 149.467 32.5552 149.322 32.5552 149.177V117.704Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
</g>
<defs>
<clipPath id="clip0_1114_1894">
<rect width="63" height="207" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -0,0 +1,54 @@
<svg width="63" height="207" viewBox="0 0 63 207" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1114_1838)">
<path d="M31.5936 206.397C23.3957 206.397 15.6786 204.571 9.84391 201.249C3.96033 197.895 0.676276 193.391 0.611084 188.581V185.042C0.676276 180.232 3.95218 175.728 9.84391 172.366C10.2106 172.157 10.5855 171.956 10.9685 171.763V12.5957C10.9766 9.32211 13.1769 6.28178 17.1536 4.02163C21.0081 1.8178 26.1338 0.603271 31.561 0.603271C36.9883 0.603271 42.0977 1.8178 45.9359 4.02163C49.88 6.28178 52.0476 9.32211 52.0232 12.5957V171.674C52.4551 171.891 52.8788 172.125 53.2863 172.366C59.1373 175.72 62.3724 180.224 62.3887 185.034L62.3561 187.889C62.3724 188.082 62.3806 188.324 62.3806 188.565C62.3724 193.383 59.1373 197.879 53.2863 201.241C47.4923 204.563 39.7915 206.389 31.6018 206.389L31.5936 206.397Z" fill="#002332"/>
<path d="M31.5611 1.20648C36.6542 1.20648 41.7474 2.31644 45.6263 4.54441C49.5052 6.76434 51.4284 9.68402 51.4121 12.5957V172.101H51.518C52.0151 172.35 52.5041 172.615 52.9767 172.889C58.8277 176.243 61.7613 180.634 61.7776 185.042L61.7451 187.889C61.7613 188.115 61.7695 188.348 61.7695 188.573C61.7614 192.973 58.8277 197.372 52.9767 200.726C47.085 204.104 39.3434 205.794 31.5937 205.794C23.844 205.794 16.0861 204.104 10.1537 200.726C4.26193 197.364 1.28754 192.973 1.22235 188.573V185.042C1.27939 180.642 4.26193 176.251 10.1537 172.889C10.6182 172.623 11.0908 172.374 11.5716 172.133H11.5797V12.5957C11.5879 9.68402 13.5518 6.76434 17.4552 4.54441C21.3586 2.31644 26.4598 1.20648 31.5611 1.20648ZM31.5611 0C26.0279 0 20.7963 1.2467 16.844 3.4988C12.6799 5.87154 10.3737 9.09687 10.3492 12.5876V171.393C10.0722 171.546 9.80326 171.69 9.54249 171.843C3.45518 175.318 0.0651921 179.999 0 185.026V188.573C0.0733411 193.624 3.46333 198.305 9.54249 201.772C15.4668 205.142 23.298 207 31.5937 207C39.8894 207 47.7043 205.142 53.5879 201.772C59.6426 198.305 62.9837 193.616 62.9919 188.581C62.9919 188.34 62.9918 188.098 62.9674 187.857L63 185.058C62.9837 179.999 59.6426 175.318 53.5879 171.851C53.2701 171.666 52.9523 171.489 52.6345 171.32V12.5957C52.6508 9.10491 50.3853 5.87154 46.2375 3.4988C42.3097 1.2467 37.0943 0 31.5611 0Z" fill="#008BC6"/>
<path d="M1.23047 184.865V185.041" stroke="#008BC6" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7776 188.573C61.7695 192.973 58.8358 197.372 52.9848 200.726C41.2014 207.483 22.0267 207.483 10.1618 200.726C4.27005 197.364 1.29566 192.973 1.23047 188.573V185.042C1.24677 186.112 1.43419 187.173 1.79275 188.227C2.90916 191.509 5.70428 194.646 10.1618 197.187C22.0267 203.952 41.2014 203.952 52.9848 197.187C57.4097 194.646 60.1723 191.509 61.2561 188.227C61.525 187.399 61.6961 186.562 61.7532 185.726V187.881C61.7695 188.106 61.7776 188.34 61.7776 188.565V188.573Z" stroke="#008BC6" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7776 185.042C61.7776 185.275 61.7776 185.5 61.7532 185.734" stroke="#008BC6" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M1.23047 185.042C1.28751 180.642 4.27005 176.251 10.1618 172.889C10.6263 172.623 11.0989 172.374 11.5797 172.133" stroke="#008BC6" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7776 185.034C61.7613 180.634 58.8358 176.235 52.9848 172.881C52.5122 172.607 52.0232 172.35 51.5261 172.093" stroke="#008BC6" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4121 150.352V150.312" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 181.656C11.5959 184.568 13.5598 187.487 17.4632 189.707C21.3666 191.935 26.4678 193.045 31.5691 193.045" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M31.561 193.045C36.6623 193.045 41.7554 191.935 45.6262 189.715C49.5052 187.487 51.4283 184.576 51.412 181.664" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 12.5957C11.5959 15.5073 13.5598 18.427 17.4632 20.647C21.3666 22.8749 26.4678 23.9849 31.5691 23.9849" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M31.561 23.9849C36.6623 23.9849 41.7554 22.8749 45.6262 20.655C49.5052 18.427 51.4283 15.5154 51.412 12.6038" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4203 20.0517V143.459C51.4203 146.362 49.4972 149.258 45.6345 151.478C41.7556 153.698 36.6625 154.808 31.5612 154.808C31.5041 154.808 31.4553 154.808 31.3982 154.808C29.4506 154.8 27.886 153.199 27.886 151.277V34.9236C27.886 32.953 29.5239 31.3927 31.5204 31.3927C31.5367 31.3927 31.5449 31.3927 31.5612 31.3927C36.6625 31.3927 41.7556 30.2827 45.6345 28.0628C49.4972 25.8429 51.4203 22.9473 51.4203 20.0437V20.0517Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4202 20.0518V20.0115" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 181.656V177.835" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 150.312V12.5957" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4202 12.5957V20.0115V20.0518" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4202 150.312V143.459" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.4121 181.656V177.884" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M51.412 177.884V150.352C51.412 153.255 49.4806 156.151 45.6262 158.363C41.7472 160.583 36.6541 161.693 31.561 161.693C26.4678 161.693 21.3584 160.583 17.4632 158.363C13.5598 156.135 11.5959 153.223 11.5796 150.312V177.843M43.5074 179.613C43.0755 179.677 42.6844 179.532 42.4236 179.251C42.3829 179.203 42.3503 179.154 42.3095 179.106C42.3095 179.09 42.2932 179.082 42.2851 179.066C42.2688 179.042 42.2525 179.018 42.2443 178.994C42.2362 178.969 42.228 178.953 42.2117 178.929C42.1139 178.728 42.0569 178.495 42.0569 178.238C42.0569 178.109 42.0732 177.972 42.0976 177.843C42.1302 177.715 42.171 177.586 42.228 177.465C42.3666 177.176 42.5703 176.926 42.8229 176.75C42.8392 176.733 42.8636 176.717 42.8881 176.709C43.0837 176.589 43.2955 176.5 43.5237 176.468C44.3386 176.355 44.9987 176.967 44.9987 177.835C44.9987 178.704 44.3386 179.492 43.5156 179.605L43.5074 179.613Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M44.9825 177.843C44.9825 178.712 44.3224 179.5 43.4994 179.613C43.0675 179.677 42.6763 179.532 42.4155 179.251C42.3748 179.203 42.3422 179.154 42.3014 179.106C42.3014 179.09 42.2852 179.082 42.277 179.066C42.2607 179.042 42.2444 179.018 42.2363 178.994C42.2281 178.969 42.22 178.953 42.2037 178.929C42.1059 178.728 42.0488 178.495 42.0488 178.237C42.0488 178.109 42.0651 177.972 42.0896 177.843C42.1222 177.715 42.1629 177.586 42.22 177.465C42.3585 177.176 42.5622 176.926 42.8148 176.749C42.8311 176.733 42.8556 176.717 42.88 176.709C43.0756 176.589 43.2875 176.5 43.5157 176.468C44.3306 176.355 44.9906 176.967 44.9906 177.835L44.9825 177.843Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M11.5796 12.5957C11.5959 9.68408 13.5598 6.7644 17.4632 4.54447C21.3666 2.31651 26.4678 1.20654 31.5691 1.20654" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M31.561 1.20654C36.6623 1.20654 41.7554 2.31651 45.6262 4.53643C49.5052 6.7644 51.4283 9.67604 51.412 12.5877" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M61.7532 185.734V185.211" stroke="#008BC6" stroke-width="0.61" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M48.3725 30.9824C48.3725 30.8296 48.3155 30.7009 48.2259 30.6205C48.1362 30.532 48.0058 30.4918 47.8673 30.5079C47.7288 30.524 47.5984 30.6044 47.5087 30.717C47.4191 30.8296 47.3621 30.9744 47.3621 31.1191V62.5922C47.3621 62.745 47.4191 62.8737 47.5087 62.9542C47.5984 63.0426 47.7288 63.0829 47.8673 63.0668C48.0058 63.0507 48.1362 62.9703 48.2259 62.8576C48.3155 62.745 48.3725 62.6003 48.3725 62.4555V30.9824Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M48.3725 71.9143C48.3725 71.7615 48.3155 71.6328 48.2259 71.5524C48.1362 71.4639 48.0058 71.4237 47.8673 71.4398C47.7288 71.4558 47.5984 71.5363 47.5087 71.6489C47.4191 71.7615 47.3621 71.9063 47.3621 72.051V103.524C47.3621 103.677 47.4191 103.806 47.5087 103.886C47.5984 103.975 47.7288 104.015 47.8673 103.999C48.0058 103.983 48.1362 103.902 48.2259 103.79C48.3155 103.677 48.3725 103.532 48.3725 103.387V71.9143Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M48.3725 112.838C48.3725 112.685 48.3155 112.557 48.2259 112.476C48.1362 112.388 48.0058 112.347 47.8673 112.364C47.7288 112.38 47.5984 112.46 47.5087 112.573C47.4191 112.685 47.3621 112.83 47.3621 112.975V144.448C47.3621 144.601 47.4191 144.729 47.5087 144.81C47.5984 144.898 47.7288 144.939 47.8673 144.922C48.0058 144.906 48.1362 144.826 48.2259 144.713C48.3155 144.601 48.3725 144.456 48.3725 144.311V112.838Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M45.2107 33.0898C45.2107 32.937 45.1536 32.8083 45.064 32.7279C44.9743 32.6394 44.844 32.5992 44.7054 32.6153C44.5669 32.6314 44.4365 32.7118 44.3469 32.8244C44.2572 32.937 44.2002 33.0818 44.2002 33.2266V64.6996C44.2002 64.8525 44.2572 64.9812 44.3469 65.0616C44.4365 65.1501 44.5669 65.1903 44.7054 65.1742C44.844 65.1581 44.9743 65.0777 45.064 64.9651C45.1536 64.8525 45.2107 64.7077 45.2107 64.5629V33.0898Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M45.2107 74.0217C45.2107 73.8689 45.1536 73.7402 45.064 73.6598C44.9743 73.5713 44.844 73.5311 44.7054 73.5472C44.5669 73.5633 44.4365 73.6437 44.3469 73.7563C44.2572 73.8689 44.2002 74.0137 44.2002 74.1585V105.632C44.2002 105.784 44.2572 105.913 44.3469 105.993C44.4365 106.082 44.5669 106.122 44.7054 106.106C44.844 106.09 44.9743 106.01 45.064 105.897C45.1536 105.784 45.2107 105.64 45.2107 105.495V74.0217Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M45.2107 114.946C45.2107 114.793 45.1536 114.664 45.064 114.584C44.9743 114.495 44.844 114.455 44.7054 114.471C44.5669 114.487 44.4365 114.568 44.3469 114.68C44.2572 114.793 44.2002 114.938 44.2002 115.082V146.555C44.2002 146.708 44.2572 146.837 44.3469 146.917C44.4365 147.006 44.5669 147.046 44.7054 147.03C44.844 147.014 44.9743 146.933 45.064 146.821C45.1536 146.708 45.2107 146.563 45.2107 146.419V114.946Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9231 28.0627C50.9231 27.9099 50.866 27.7812 50.7764 27.7008C50.6868 27.6123 50.5564 27.5721 50.4178 27.5882C50.2793 27.6043 50.1489 27.6847 50.0593 27.7973C49.9696 27.9099 49.9126 28.0547 49.9126 28.1995V59.6725C49.9126 59.8254 49.9696 59.9541 50.0593 60.0345C50.1489 60.123 50.2793 60.1632 50.4178 60.1471C50.5564 60.131 50.6868 60.0506 50.7764 59.938C50.866 59.8254 50.9231 59.6806 50.9231 59.5358V28.0627Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9231 68.9946C50.9231 68.8418 50.866 68.7131 50.7764 68.6327C50.6868 68.5442 50.5564 68.504 50.4178 68.5201C50.2793 68.5362 50.1489 68.6166 50.0593 68.7292C49.9696 68.8418 49.9126 68.9866 49.9126 69.1314V100.604C49.9126 100.757 49.9696 100.886 50.0593 100.966C50.1489 101.055 50.2793 101.095 50.4178 101.079C50.5564 101.063 50.6868 100.982 50.7764 100.87C50.866 100.757 50.9231 100.612 50.9231 100.468V68.9946Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9231 109.927C50.9231 109.774 50.866 109.645 50.7764 109.565C50.6868 109.476 50.5564 109.436 50.4178 109.452C50.2793 109.468 50.1489 109.548 50.0593 109.661C49.9696 109.774 49.9126 109.918 49.9126 110.063V141.536C49.9126 141.689 49.9696 141.818 50.0593 141.898C50.1489 141.987 50.2793 142.027 50.4178 142.011C50.5564 141.995 50.6868 141.914 50.7764 141.802C50.866 141.689 50.9231 141.544 50.9231 141.4V109.927Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M42.0488 34.2722C42.0488 34.1194 41.9918 33.9907 41.9021 33.9103C41.8125 33.8218 41.6821 33.7816 41.5436 33.7977C41.405 33.8137 41.2747 33.8942 41.185 34.0068C41.0954 34.1194 41.0383 34.2642 41.0383 34.4089V65.882C41.0383 66.0348 41.0954 66.1635 41.185 66.244C41.2747 66.3324 41.405 66.3727 41.5436 66.3566C41.6821 66.3405 41.8125 66.26 41.9021 66.1474C41.9918 66.0348 42.0488 65.8901 42.0488 65.7453V34.2722Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M42.0488 75.2041C42.0488 75.0513 41.9918 74.9226 41.9021 74.8421C41.8125 74.7537 41.6821 74.7135 41.5436 74.7295C41.405 74.7456 41.2747 74.8261 41.185 74.9387C41.0954 75.0513 41.0383 75.196 41.0383 75.3408V106.814C41.0383 106.967 41.0954 107.095 41.185 107.176C41.2747 107.264 41.405 107.305 41.5436 107.288C41.6821 107.272 41.8125 107.192 41.9021 107.079C41.9918 106.967 42.0488 106.822 42.0488 106.677V75.2041Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M42.0488 116.128C42.0488 115.975 41.9918 115.846 41.9021 115.766C41.8125 115.678 41.6821 115.637 41.5436 115.653C41.405 115.669 41.2747 115.75 41.185 115.863C41.0954 115.975 41.0383 116.12 41.0383 116.265V147.738C41.0383 147.891 41.0954 148.019 41.185 148.1C41.2747 148.188 41.405 148.228 41.5436 148.212C41.6821 148.196 41.8125 148.116 41.9021 148.003C41.9918 147.891 42.0488 147.746 42.0488 147.601V116.128Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.8869 35.157C38.8869 35.0042 38.8299 34.8755 38.7403 34.795C38.6506 34.7066 38.5202 34.6663 38.3817 34.6824C38.2432 34.6985 38.1128 34.7789 38.0231 34.8916C37.9335 35.0042 37.8765 35.1489 37.8765 35.2937V66.7668C37.8765 66.9196 37.9335 67.0483 38.0231 67.1287C38.1128 67.2172 38.2432 67.2574 38.3817 67.2413C38.5202 67.2252 38.6506 67.1448 38.7403 67.0322C38.8299 66.9196 38.8869 66.7748 38.8869 66.63V35.157Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.8869 76.0889C38.8869 75.936 38.8299 75.8073 38.7403 75.7269C38.6506 75.6384 38.5202 75.5982 38.3817 75.6143C38.2432 75.6304 38.1128 75.7108 38.0231 75.8234C37.9335 75.936 37.8765 76.0808 37.8765 76.2256V107.699C37.8765 107.851 37.9335 107.98 38.0231 108.061C38.1128 108.149 38.2432 108.189 38.3817 108.173C38.5202 108.157 38.6506 108.077 38.7403 107.964C38.8299 107.851 38.8869 107.707 38.8869 107.562V76.0889Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M38.8869 117.021C38.8869 116.868 38.8299 116.739 38.7403 116.659C38.6506 116.57 38.5202 116.53 38.3817 116.546C38.2432 116.562 38.1128 116.643 38.0231 116.755C37.9335 116.868 37.8765 117.013 37.8765 117.157V148.631C37.8765 148.783 37.9335 148.912 38.0231 148.993C38.1128 149.081 38.2432 149.121 38.3817 149.105C38.5202 149.089 38.6506 149.009 38.7403 148.896C38.8299 148.783 38.8869 148.639 38.8869 148.494V117.021Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M35.717 35.6555C35.717 35.5027 35.66 35.374 35.5703 35.2936C35.4807 35.2051 35.3503 35.1649 35.2118 35.181C35.0732 35.197 34.9429 35.2775 34.8532 35.3901C34.7636 35.5027 34.7065 35.6475 34.7065 35.7922V67.2653C34.7065 67.4181 34.7636 67.5468 34.8532 67.6273C34.9429 67.7157 35.0732 67.756 35.2118 67.7399C35.3503 67.7238 35.4807 67.6433 35.5703 67.5307C35.66 67.4181 35.717 67.2734 35.717 67.1286V35.6555Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M35.717 76.5793C35.717 76.4265 35.66 76.2978 35.5703 76.2174C35.4807 76.1289 35.3503 76.0887 35.2118 76.1048C35.0732 76.1209 34.9429 76.2013 34.8532 76.3139C34.7636 76.4265 34.7065 76.5713 34.7065 76.7161V108.189C34.7065 108.342 34.7636 108.471 34.8532 108.551C34.9429 108.64 35.0732 108.68 35.2118 108.664C35.3503 108.648 35.4807 108.567 35.5703 108.455C35.66 108.342 35.717 108.197 35.717 108.052V76.5793Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M35.717 117.511C35.717 117.358 35.66 117.23 35.5703 117.149C35.4807 117.061 35.3503 117.021 35.2118 117.037C35.0732 117.053 34.9429 117.133 34.8532 117.246C34.7636 117.358 34.7065 117.503 34.7065 117.648V149.121C34.7065 149.274 34.7636 149.403 34.8532 149.483C34.9429 149.571 35.0732 149.612 35.2118 149.596C35.3503 149.58 35.4807 149.499 35.5703 149.386C35.66 149.274 35.717 149.129 35.717 148.984V117.511Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M32.5552 35.8406C32.5552 35.6877 32.4981 35.5591 32.4085 35.4786C32.3188 35.3901 32.1885 35.3499 32.0499 35.366C31.9114 35.3821 31.781 35.4625 31.6914 35.5751C31.6017 35.6877 31.5447 35.8325 31.5447 35.9773V67.4504C31.5447 67.6032 31.6017 67.7319 31.6914 67.8123C31.781 67.9008 31.9114 67.941 32.0499 67.9249C32.1885 67.9088 32.3188 67.8284 32.4085 67.7158C32.4981 67.6032 32.5552 67.4584 32.5552 67.3136V35.8406Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M32.5552 76.7725C32.5552 76.6196 32.4981 76.4909 32.4085 76.4105C32.3188 76.322 32.1885 76.2818 32.0499 76.2979C31.9114 76.314 31.781 76.3944 31.6914 76.507C31.6017 76.6196 31.5447 76.7644 31.5447 76.9092V108.382C31.5447 108.535 31.6017 108.664 31.6914 108.744C31.781 108.833 31.9114 108.873 32.0499 108.857C32.1885 108.841 32.3188 108.76 32.4085 108.648C32.4981 108.535 32.5552 108.39 32.5552 108.246V76.7725Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M32.5552 117.704C32.5552 117.552 32.4981 117.423 32.4085 117.342C32.3188 117.254 32.1885 117.214 32.0499 117.23C31.9114 117.246 31.781 117.326 31.6914 117.439C31.6017 117.552 31.5447 117.696 31.5447 117.841V149.314C31.5447 149.467 31.6017 149.596 31.6914 149.676C31.781 149.765 31.9114 149.805 32.0499 149.789C32.1885 149.773 32.3188 149.692 32.4085 149.58C32.4981 149.467 32.5552 149.322 32.5552 149.177V117.704Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
</g>
<defs>
<clipPath id="clip0_1114_1838">
<rect width="63" height="207" fill="white"/>
</clipPath>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 18 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 20 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 9.6 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 50 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 50 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 17 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -0,0 +1,25 @@
<svg width="163" height="202" viewBox="0 0 163 202" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M60.3722 178.946L50.68 173.35L2.79179 201.001L1.29781 200.123L1.25424 93.0233L160.22 1.24316L161.714 2.12088L161.757 109.22L111.398 138.297L120.057 143.302C121.14 143.924 121.663 144.746 121.632 145.568V146.539C121.632 147.323 121.115 148.101 120.088 148.699L67.979 178.983C65.9062 180.184 62.5074 180.184 60.422 178.983M117.753 146.302C117.915 146.209 118.034 146.103 118.133 145.985C118.034 145.873 117.903 145.767 117.741 145.667L111.46 142.044L114.921 147.946L117.753 146.302ZM111.46 149.956L111.429 149.944L106.704 142.256L105.615 141.634L67.6242 163.564L72.8158 172.416L111.454 149.956H111.46ZM62.775 176.586C63.578 177.053 64.8479 177.053 65.6447 176.586L69.3672 174.426L69.3299 174.408L64.6051 166.72L63.3851 166.01L53.9232 171.476L62.775 176.586ZM111.404 138.291L50.6862 173.35L111.404 138.291Z" fill="white"/>
<path d="M60.3722 178.946L50.68 173.35L2.79179 201.001L1.29781 200.123L1.25425 93.0233L160.22 1.24316L161.714 2.12088L161.757 109.22L111.398 138.297L120.057 143.302C121.14 143.924 121.663 144.746 121.632 145.568V146.539C121.632 147.323 121.115 148.101 120.088 148.699L67.979 178.983C65.9062 180.184 62.5074 180.184 60.422 178.983M111.404 138.291L50.6862 173.35M117.753 146.302C117.915 146.209 118.034 146.103 118.133 145.985C118.034 145.873 117.903 145.767 117.741 145.667L111.46 142.044L114.921 147.946L117.753 146.302ZM111.46 149.956L111.429 149.944L106.704 142.256L105.615 141.634L67.6242 163.564L72.8158 172.416L111.454 149.956H111.46ZM62.775 176.586C63.578 177.053 64.8479 177.053 65.6447 176.586L69.3672 174.426L69.3299 174.408L64.6051 166.72L63.3851 166.01L53.9232 171.476L62.775 176.586Z" stroke="#002332" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M111.69 141.802L117.971 145.431C118.139 145.53 118.27 145.636 118.37 145.755" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M118.575 145.088V144.466C118.575 144.167 118.382 143.862 117.978 143.632L109.972 139.013" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M71.2905 175.155L68.2279 176.935" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M113.383 150.691L73.9112 173.63" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M68.221 178.734L120.336 148.45C121.363 147.852 121.874 147.074 121.874 146.29V145.331C121.874 145.331 121.793 145.132 121.625 145.437C121.376 145.885 120.946 146.302 120.342 146.657L116.01 149.178" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9226 173.106L60.6147 178.703" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M60.6709 176.935L52.4789 172.204" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<circle cx="0.102711" cy="0.102711" r="0.102711" transform="matrix(-1 0 0 1 68.3306 176.832)" fill="#002332" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M60.671 176.935C62.7563 178.136 66.1551 178.136 68.228 176.935" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M68.2217 178.734C66.1488 179.935 62.75 179.935 60.6646 178.734" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M111.64 138.048L120.305 143.053C122.391 144.254 122.415 146.215 120.343 147.423L68.2276 177.707C66.1547 178.908 62.7559 178.908 60.6706 177.707L51.8125 172.59M115.033 147.784L117.99 146.066C118.774 145.611 118.786 144.87 117.977 144.403L110.669 140.183" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M67.8667 163.321L74.2534 174.209L71.9627 175.541L65.5759 164.647" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M65.5761 164.647L71.9629 175.541L69.5663 174.159L64.8416 166.478L63.6215 165.768" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M109.978 139.006L116.353 149.751L114.056 151.083L107.743 140.326" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M111.665 149.7L106.94 142.013L105.783 141.34" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M107.743 140.326L114.055 151.082L111.665 149.7" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M3.03467 200.751L1.53445 199.879L1.49089 92.7798L2.98487 93.6575L3.03467 200.751Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M2.98516 93.6578L1.49118 92.7801L160.457 1L161.951 1.87771L2.98516 93.6578Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M52.5349 172.173L3.03446 200.751L2.98466 93.658L161.95 1.87793L162 108.971" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M5.15715 94.9032L159.796 5.62549L159.771 105.1L5.13225 194.377L5.15715 94.9032Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M90.239 148.494L86.9771 150.38C86.6036 150.598 86.2986 150.467 86.2986 150.093C86.2986 149.72 86.6036 149.241 86.9771 149.029L90.239 147.143C90.6125 146.925 90.9175 147.056 90.9175 147.429C90.9175 147.803 90.6125 148.282 90.239 148.494Z" stroke="#002332" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 5.5 KiB

View File

@ -0,0 +1,25 @@
<svg width="163" height="202" viewBox="0 0 163 202" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M60.3722 178.945L50.68 173.349L2.79179 201L1.29781 200.123L1.25424 93.023L160.22 1.24292L161.714 2.12063L161.757 109.22L111.398 138.297L120.057 143.302C121.14 143.924 121.663 144.746 121.632 145.567V146.539C121.632 147.323 121.115 148.101 120.088 148.699L67.979 178.983C65.9062 180.184 62.5074 180.184 60.422 178.983M117.753 146.302C117.915 146.209 118.034 146.103 118.133 145.985C118.034 145.873 117.903 145.767 117.741 145.667L111.46 142.044L114.921 147.945L117.753 146.302ZM111.46 149.956L111.429 149.944L106.704 142.256L105.615 141.633L67.6242 163.564L72.8158 172.416L111.454 149.956H111.46ZM62.775 176.586C63.578 177.053 64.8479 177.053 65.6447 176.586L69.3672 174.426L69.3299 174.408L64.6051 166.72L63.3851 166.01L53.9232 171.476L62.775 176.586ZM111.404 138.291L50.6862 173.349L111.404 138.291Z" fill="#002332"/>
<path d="M60.3722 178.945L50.68 173.349L2.79179 201L1.29781 200.123L1.25425 93.023L160.22 1.24292L161.714 2.12063L161.757 109.22L111.398 138.297L120.057 143.302C121.14 143.924 121.663 144.746 121.632 145.567V146.539C121.632 147.323 121.115 148.101 120.088 148.699L67.979 178.983C65.9062 180.184 62.5074 180.184 60.422 178.983M111.404 138.291L50.6862 173.349M117.753 146.302C117.915 146.209 118.034 146.103 118.133 145.985C118.034 145.873 117.903 145.767 117.741 145.667L111.46 142.044L114.921 147.945L117.753 146.302ZM111.46 149.956L111.429 149.944L106.704 142.256L105.615 141.633L67.6242 163.564L72.8158 172.416L111.454 149.956H111.46ZM62.775 176.586C63.578 177.053 64.8479 177.053 65.6447 176.586L69.3672 174.426L69.3299 174.408L64.6051 166.72L63.3851 166.01L53.9232 171.476L62.775 176.586Z" stroke="#008BC6" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M111.69 141.802L117.971 145.431C118.139 145.53 118.27 145.636 118.37 145.754" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M118.575 145.088V144.466C118.575 144.167 118.382 143.862 117.978 143.632L109.972 139.013" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M71.2905 175.155L68.2279 176.935" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M113.383 150.691L73.9112 173.63" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M68.221 178.734L120.336 148.449C121.363 147.852 121.874 147.074 121.874 146.289V145.331C121.874 145.331 121.793 145.132 121.625 145.437C121.376 145.885 120.946 146.302 120.342 146.657L116.01 149.178" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M50.9226 173.106L60.6147 178.703" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M60.6709 176.935L52.4789 172.204" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<circle cx="0.102711" cy="0.102711" r="0.102711" transform="matrix(-1 0 0 1 68.3306 176.832)" fill="#008BC6" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M60.671 176.935C62.7563 178.137 66.1551 178.137 68.228 176.935" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M68.2217 178.734C66.1488 179.935 62.75 179.935 60.6646 178.734" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M111.64 138.048L120.305 143.053C122.391 144.254 122.415 146.215 120.343 147.423L68.2276 177.707C66.1547 178.908 62.7559 178.908 60.6706 177.707L51.8125 172.59M115.033 147.784L117.99 146.066C118.774 145.611 118.786 144.87 117.977 144.403L110.669 140.183" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M67.8667 163.321L74.2534 174.209L71.9627 175.541L65.5759 164.647" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M65.5761 164.647L71.9629 175.541L69.5663 174.159L64.8416 166.477L63.6215 165.768" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M109.978 139.007L116.353 149.751L114.056 151.083L107.743 140.326" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M111.665 149.701L106.94 142.013L105.783 141.341" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M107.743 140.326L114.055 151.083L111.665 149.701" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M3.03467 200.751L1.53445 199.879L1.49089 92.7798L2.98487 93.6575L3.03467 200.751Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M2.98516 93.6578L1.49118 92.7801L160.457 1L161.951 1.87771L2.98516 93.6578Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M52.5349 172.173L3.03446 200.751L2.98466 93.6578L161.95 1.87769L162 108.971" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M5.15715 94.9032L159.796 5.62549L159.771 105.1L5.13225 194.377L5.15715 94.9032Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M90.239 148.493L86.9771 150.379C86.6036 150.597 86.2986 150.467 86.2986 150.093C86.2986 149.72 86.6036 149.24 86.9771 149.029L90.239 147.142C90.6125 146.925 90.9175 147.055 90.9175 147.429C90.9175 147.802 90.6125 148.282 90.239 148.493Z" stroke="#008BC6" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 5.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 322 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 159 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 269 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 858 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@ -0,0 +1,3 @@
<svg width="33" height="20" viewBox="0 0 33 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M28.0669 9.66077C28.0669 9.56409 28.0744 9.46913 28.0744 9.37074C28.0727 7.33456 27.4217 5.354 26.2187 3.72934C25.0158 2.10382 23.3271 0.922327 21.407 0.361951C19.4869 -0.198425 17.4405 -0.106027 15.5766 0.6246C13.7127 1.35523 12.133 2.68473 11.0755 4.41206C9.99404 4.00995 8.83902 3.85339 7.69227 3.9552C6.54552 4.05701 5.4343 4.41291 4.43709 4.99895C3.43988 5.58499 2.58064 6.38663 1.91969 7.34825C1.25874 8.30902 0.812599 9.40667 0.611835 10.5625C0.411071 11.7183 0.461469 12.905 0.758897 14.0385C1.05632 15.1721 1.59335 16.2261 2.33279 17.1262C3.07223 18.0253 3.9959 18.7491 5.03938 19.2453C6.08286 19.7415 7.21969 19.9991 8.37057 19.9999H27.3407C28.6337 20.0076 29.8812 19.5131 30.8305 18.6182C31.7798 17.7225 32.359 16.4922 32.4515 15.1773C32.544 13.8623 32.1425 12.5602 31.3279 11.5361C30.5141 10.512 29.3483 9.84128 28.0669 9.66077Z" fill="#00AEF8"/>
</svg>

After

Width:  |  Height:  |  Size: 971 B

View File

@ -0,0 +1,24 @@
<svg width="70" height="142" viewBox="0 0 70 142" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="66.9441" height="140" rx="8" transform="matrix(1 0 0 -1 1.48389 141)" fill="#CCEFFE" stroke="#002332" stroke-width="2"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 59.897 9.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.0566 17.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.4246 17.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 59.897 29)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.0566 36.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.4246 36.75)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 59.897 48.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.0566 56)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.4246 56)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 59.897 67.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.0566 75.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.4246 75.25)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 59.897 86.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.0566 94.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.4246 94.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 59.897 106)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.0566 113.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.4246 113.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="10.9012" rx="0.666666" transform="matrix(-4.75477e-08 1 1 4.01846e-08 13.1992 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="11.645" rx="0.666666" transform="matrix(-4.5472e-08 1 1 4.2019e-08 43.324 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="9.88889" height="9.41353" rx="4.70677" transform="matrix(-3.29507e-08 1 1 5.79862e-08 29.0981 125.25)" stroke="#002332"/>
</svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@ -0,0 +1,232 @@
<svg width="123" height="122" viewBox="0 0 123 122" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="119.9" height="120" rx="8" transform="matrix(1 0 0 -1 1.95337 121)" fill="white" stroke="#002332" stroke-width="2"/>
<path d="M28.8395 99.9306C28.8395 100.522 28.3617 101 27.7709 101C27.1801 101 26.6936 100.513 26.6936 99.9306C26.6936 99.3481 27.1714 98.8525 27.7709 98.8525C28.3704 98.8525 28.8395 99.3394 28.8395 99.9306Z" fill="#002332"/>
<path d="M33.1398 99.9306C33.1398 100.522 32.662 101 32.0712 101C31.4804 101 30.9939 100.513 30.9939 99.9306C30.9939 99.3394 31.4717 98.8525 32.0712 98.8525C32.6707 98.8525 33.1398 99.3394 33.1398 99.9306Z" fill="#002332"/>
<path d="M37.4318 99.9306C37.4318 100.522 36.954 101 36.3632 101C35.7724 101 35.2859 100.513 35.2859 99.9306C35.2859 99.3481 35.7637 98.8525 36.3632 98.8525C36.9627 98.8525 37.4318 99.3394 37.4318 99.9306Z" fill="#002332"/>
<path d="M41.7238 99.9306C41.7238 100.522 41.246 101 40.6552 101C40.0644 101 39.5779 100.513 39.5779 99.9306C39.5779 99.3481 40.0557 98.8525 40.6552 98.8525C41.2546 98.8525 41.7238 99.3394 41.7238 99.9306Z" fill="#002332"/>
<path d="M46.0241 99.9306C46.0241 100.522 45.5463 101 44.9555 101C44.3647 101 43.8782 100.513 43.8782 99.9306C43.8782 99.3394 44.356 98.8525 44.9555 98.8525C45.5549 98.8525 46.0241 99.3394 46.0241 99.9306Z" fill="#002332"/>
<path d="M50.3158 99.9306C50.3158 100.522 49.838 101 49.2472 101C48.6564 101 48.1699 100.513 48.1699 99.9306C48.1699 99.3481 48.6478 98.8525 49.2472 98.8525C49.8467 98.8525 50.3158 99.3394 50.3158 99.9306Z" fill="#002332"/>
<path d="M54.6166 99.9306C54.6166 100.522 54.1388 101 53.548 101C52.9572 101 52.4707 100.513 52.4707 99.9306C52.4707 99.3481 52.9485 98.8525 53.548 98.8525C54.1475 98.8525 54.6166 99.3394 54.6166 99.9306Z" fill="#002332"/>
<path d="M67.5007 99.9306C67.5007 100.522 67.0228 101 66.432 101C65.8413 101 65.3547 100.513 65.3547 99.9306C65.3547 99.3481 65.8326 98.8525 66.432 98.8525C67.0315 98.8525 67.5007 99.3394 67.5007 99.9306Z" fill="#002332"/>
<path d="M71.8009 99.9306C71.8009 100.522 71.3231 101 70.7323 101C70.1416 101 69.655 100.513 69.655 99.9306C69.655 99.3481 70.1329 98.8525 70.7323 98.8525C71.3318 98.8525 71.8009 99.3394 71.8009 99.9306Z" fill="#002332"/>
<path d="M76.0929 99.9306C76.0929 100.522 75.6151 101 75.0243 101C74.4335 101 73.947 100.513 73.947 99.9306C73.947 99.3481 74.4335 98.8525 75.0243 98.8525C75.6151 98.8525 76.0929 99.3394 76.0929 99.9306Z" fill="#002332"/>
<path d="M80.3937 99.9306C80.3937 100.522 79.9159 101 79.3251 101C78.7343 101 78.2478 100.513 78.2478 99.9306C78.2478 99.3481 78.7256 98.8525 79.3251 98.8525C79.9246 98.8525 80.3937 99.3394 80.3937 99.9306Z" fill="#002332"/>
<path d="M84.6852 99.9306C84.6852 100.522 84.2074 101 83.6166 101C83.0258 101 82.5393 100.513 82.5393 99.9306C82.5393 99.3481 83.0171 98.8525 83.6166 98.8525C84.2161 98.8525 84.6852 99.3394 84.6852 99.9306Z" fill="#002332"/>
<path d="M88.977 99.9306C88.977 100.522 88.4991 101 87.9084 101C87.3176 101 86.8311 100.513 86.8311 99.9306C86.8311 99.3394 87.3176 98.8525 87.9084 98.8525C88.4991 98.8525 88.977 99.3394 88.977 99.9306Z" fill="#002332"/>
<path d="M93.278 99.9306C93.278 100.522 92.8002 101 92.2094 101C91.6186 101 91.1321 100.513 91.1321 99.9306C91.1321 99.3481 91.6099 98.8525 92.2094 98.8525C92.8088 98.8525 93.278 99.3394 93.278 99.9306Z" fill="#002332"/>
<path d="M97.5695 99.9306C97.5695 100.522 97.0917 101 96.5009 101C95.9101 101 95.4236 100.513 95.4236 99.9306C95.4236 99.3481 95.9014 98.8525 96.5009 98.8525C97.1003 98.8525 97.5695 99.3394 97.5695 99.9306Z" fill="#002332"/>
<path d="M24.5475 95.6274C24.5475 96.2186 24.0697 96.6967 23.4789 96.6967C22.8881 96.6967 22.4016 96.2099 22.4016 95.6274C22.4016 95.0449 22.8794 94.5493 23.4789 94.5493C24.0784 94.5493 24.5475 95.0362 24.5475 95.6274Z" fill="#002332"/>
<path d="M28.8395 95.6274C28.8395 96.2186 28.3617 96.6967 27.7709 96.6967C27.1801 96.6967 26.6936 96.2099 26.6936 95.6274C26.6936 95.0449 27.1714 94.5493 27.7709 94.5493C28.3704 94.5493 28.8395 95.0362 28.8395 95.6274Z" fill="#002332"/>
<path d="M33.1398 95.6274C33.1398 96.2186 32.662 96.6967 32.0712 96.6967C31.4804 96.6967 30.9939 96.2099 30.9939 95.6274C30.9939 95.0449 31.4717 94.5493 32.0712 94.5493C32.6707 94.5493 33.1398 95.0362 33.1398 95.6274Z" fill="#002332"/>
<path d="M37.4318 95.6274C37.4318 96.2186 36.954 96.6967 36.3632 96.6967C35.7724 96.6967 35.2859 96.2099 35.2859 95.6274C35.2859 95.0449 35.7637 94.5493 36.3632 94.5493C36.9627 94.5493 37.4318 95.0362 37.4318 95.6274Z" fill="#002332"/>
<path d="M41.7238 95.6274C41.7238 96.2186 41.246 96.6967 40.6552 96.6967C40.0644 96.6967 39.5779 96.2099 39.5779 95.6274C39.5779 95.0449 40.0557 94.5493 40.6552 94.5493C41.2546 94.5493 41.7238 95.0362 41.7238 95.6274Z" fill="#002332"/>
<path d="M46.0241 95.6274C46.0241 96.2186 45.5463 96.6967 44.9555 96.6967C44.3647 96.6967 43.8782 96.2099 43.8782 95.6274C43.8782 95.0449 44.356 94.5493 44.9555 94.5493C45.5549 94.5493 46.0241 95.0362 46.0241 95.6274Z" fill="#002332"/>
<path d="M50.3158 95.6274C50.3158 96.2186 49.838 96.6967 49.2472 96.6967C48.6564 96.6967 48.1699 96.2099 48.1699 95.6274C48.1699 95.0449 48.6478 94.5493 49.2472 94.5493C49.8467 94.5493 50.3158 95.0362 50.3158 95.6274Z" fill="#002332"/>
<path d="M58.9084 95.6274C58.9084 96.2186 58.4305 96.6967 57.8397 96.6967C57.249 96.6967 56.7625 96.2099 56.7625 95.6274C56.7625 95.0449 57.2403 94.5493 57.8397 94.5493C58.4392 94.5493 58.9084 95.0362 58.9084 95.6274Z" fill="#002332"/>
<path d="M67.5007 95.6274C67.5007 96.2186 67.0228 96.6967 66.432 96.6967C65.8413 96.6967 65.3547 96.2099 65.3547 95.6274C65.3547 95.0449 65.8326 94.5493 66.432 94.5493C67.0315 94.5493 67.5007 95.0362 67.5007 95.6274Z" fill="#002332"/>
<path d="M71.8009 95.6274C71.8009 96.2186 71.3231 96.6967 70.7323 96.6967C70.1416 96.6967 69.655 96.2099 69.655 95.6274C69.655 95.0449 70.1329 94.5493 70.7323 94.5493C71.3318 94.5493 71.8009 95.0362 71.8009 95.6274Z" fill="#002332"/>
<path d="M76.0929 95.6274C76.0929 96.2186 75.6151 96.6967 75.0243 96.6967C74.4335 96.6967 73.947 96.2099 73.947 95.6274C73.947 95.0449 74.4335 94.5493 75.0243 94.5493C75.6151 94.5493 76.0929 95.0362 76.0929 95.6274Z" fill="#002332"/>
<path d="M80.3937 95.6274C80.3937 96.2186 79.9159 96.6967 79.3251 96.6967C78.7343 96.6967 78.2478 96.2099 78.2478 95.6274C78.2478 95.0449 78.7256 94.5493 79.3251 94.5493C79.9246 94.5493 80.3937 95.0362 80.3937 95.6274Z" fill="#002332"/>
<path d="M84.6852 95.6274C84.6852 96.2186 84.2074 96.6967 83.6166 96.6967C83.0258 96.6967 82.5393 96.2099 82.5393 95.6274C82.5393 95.0449 83.0171 94.5493 83.6166 94.5493C84.2161 94.5493 84.6852 95.0362 84.6852 95.6274Z" fill="#002332"/>
<path d="M88.977 95.6274C88.977 96.2186 88.4991 96.6967 87.9084 96.6967C87.3176 96.6967 86.8311 96.2099 86.8311 95.6274C86.8311 95.0449 87.3176 94.5493 87.9084 94.5493C88.4991 94.5493 88.977 95.0362 88.977 95.6274Z" fill="#002332"/>
<path d="M93.278 95.6274C93.278 96.2186 92.8002 96.6967 92.2094 96.6967C91.6186 96.6967 91.1321 96.2099 91.1321 95.6274C91.1321 95.0449 91.6099 94.5493 92.2094 94.5493C92.8088 94.5493 93.278 95.0362 93.278 95.6274Z" fill="#002332"/>
<path d="M97.5695 95.6274C97.5695 96.2186 97.0917 96.6967 96.5009 96.6967C95.9101 96.6967 95.4236 96.2099 95.4236 95.6274C95.4236 95.0449 95.9014 94.5493 96.5009 94.5493C97.1003 94.5493 97.5695 95.0362 97.5695 95.6274Z" fill="#002332"/>
<path d="M101.87 95.6274C101.87 96.2186 101.392 96.6967 100.801 96.6967C100.211 96.6967 99.7241 96.2099 99.7241 95.6274C99.7241 95.0449 100.211 94.5493 100.801 94.5493C101.392 94.5493 101.87 95.0362 101.87 95.6274Z" fill="#002332"/>
<path d="M24.5475 91.3324C24.5475 91.9236 24.0697 92.4018 23.4789 92.4018C22.8881 92.4018 22.4016 91.9149 22.4016 91.3324C22.4016 90.7499 22.8794 90.2544 23.4789 90.2544C24.0784 90.2544 24.5475 90.7413 24.5475 91.3324Z" fill="#002332"/>
<path d="M28.8395 91.3324C28.8395 91.9236 28.3617 92.4018 27.7709 92.4018C27.1801 92.4018 26.6936 91.9149 26.6936 91.3324C26.6936 90.7499 27.1714 90.2544 27.7709 90.2544C28.3704 90.2544 28.8395 90.7413 28.8395 91.3324Z" fill="#002332"/>
<path d="M33.1398 91.3324C33.1398 91.9236 32.662 92.4018 32.0712 92.4018C31.4804 92.4018 30.9939 91.9149 30.9939 91.3324C30.9939 90.7499 31.4717 90.2544 32.0712 90.2544C32.6707 90.2544 33.1398 90.7413 33.1398 91.3324Z" fill="#002332"/>
<path d="M37.4318 91.3324C37.4318 91.9236 36.954 92.4018 36.3632 92.4018C35.7724 92.4018 35.2859 91.9149 35.2859 91.3324C35.2859 90.7499 35.7637 90.2544 36.3632 90.2544C36.9627 90.2544 37.4318 90.7413 37.4318 91.3324Z" fill="#002332"/>
<path d="M41.7323 91.3324C41.7323 91.9236 41.2545 92.4018 40.6637 92.4018C40.0729 92.4018 39.5864 91.9149 39.5864 91.3324C39.5864 90.7499 40.0643 90.2544 40.6637 90.2544C41.2632 90.2544 41.7323 90.7413 41.7323 91.3324Z" fill="#002332"/>
<path d="M46.0241 91.3324C46.0241 91.9236 45.5463 92.4018 44.9555 92.4018C44.3647 92.4018 43.8782 91.9149 43.8782 91.3324C43.8782 90.7499 44.356 90.2544 44.9555 90.2544C45.5549 90.2544 46.0241 90.7413 46.0241 91.3324Z" fill="#002332"/>
<path d="M54.6166 91.3324C54.6166 91.9236 54.1388 92.4018 53.548 92.4018C52.9572 92.4018 52.4707 91.9149 52.4707 91.3324C52.4707 90.7499 52.9485 90.2544 53.548 90.2544C54.1475 90.2544 54.6166 90.7413 54.6166 91.3324Z" fill="#002332"/>
<path d="M58.9084 91.3324C58.9084 91.9236 58.4305 92.4018 57.8397 92.4018C57.249 92.4018 56.7625 91.9149 56.7625 91.3324C56.7625 90.7499 57.2403 90.2544 57.8397 90.2544C58.4392 90.2544 58.9084 90.7413 58.9084 91.3324Z" fill="#002332"/>
<path d="M71.8009 91.3324C71.8009 91.9236 71.3231 92.4018 70.7323 92.4018C70.1416 92.4018 69.655 91.9149 69.655 91.3324C69.655 90.7499 70.1329 90.2544 70.7323 90.2544C71.3318 90.2544 71.8009 90.7413 71.8009 91.3324Z" fill="#002332"/>
<path d="M76.0929 91.3324C76.0929 91.9236 75.6151 92.4018 75.0243 92.4018C74.4335 92.4018 73.947 91.9149 73.947 91.3324C73.947 90.7499 74.4335 90.2544 75.0243 90.2544C75.6151 90.2544 76.0929 90.7413 76.0929 91.3324Z" fill="#002332"/>
<path d="M80.3937 91.3324C80.3937 91.9236 79.9159 92.4018 79.3251 92.4018C78.7343 92.4018 78.2478 91.9149 78.2478 91.3324C78.2478 90.7499 78.7256 90.2544 79.3251 90.2544C79.9246 90.2544 80.3937 90.7413 80.3937 91.3324Z" fill="#002332"/>
<path d="M84.6852 91.3324C84.6852 91.9236 84.2074 92.4018 83.6166 92.4018C83.0258 92.4018 82.5393 91.9149 82.5393 91.3324C82.5393 90.7499 83.0171 90.2544 83.6166 90.2544C84.2161 90.2544 84.6852 90.7413 84.6852 91.3324Z" fill="#002332"/>
<path d="M88.977 91.3324C88.977 91.9236 88.4991 92.4018 87.9084 92.4018C87.3176 92.4018 86.8311 91.9149 86.8311 91.3324C86.8311 90.7499 87.3176 90.2544 87.9084 90.2544C88.4991 90.2544 88.977 90.7413 88.977 91.3324Z" fill="#002332"/>
<path d="M93.278 91.3324C93.278 91.9236 92.8002 92.4018 92.2094 92.4018C91.6186 92.4018 91.1321 91.9149 91.1321 91.3324C91.1321 90.7499 91.6099 90.2544 92.2094 90.2544C92.8088 90.2544 93.278 90.7413 93.278 91.3324Z" fill="#002332"/>
<path d="M97.5695 91.3324C97.5695 91.9236 97.0917 92.4018 96.5009 92.4018C95.9101 92.4018 95.4236 91.9149 95.4236 91.3324C95.4236 90.7499 95.9014 90.2544 96.5009 90.2544C97.1003 90.2544 97.5695 90.7413 97.5695 91.3324Z" fill="#002332"/>
<path d="M101.87 91.3324C101.87 91.9236 101.392 92.4018 100.801 92.4018C100.211 92.4018 99.7241 91.9149 99.7241 91.3324C99.7241 90.7499 100.211 90.2544 100.801 90.2544C101.392 90.2544 101.87 90.7413 101.87 91.3324Z" fill="#002332"/>
<path d="M24.5475 87.0287C24.5475 87.6199 24.0697 88.0981 23.4789 88.0981C22.8881 88.0981 22.4016 87.6112 22.4016 87.0287C22.4016 86.4462 22.8794 85.9507 23.4789 85.9507C24.0784 85.9507 24.5475 86.4375 24.5475 87.0287Z" fill="#002332"/>
<path d="M28.8395 87.0287C28.8395 87.6199 28.3617 88.0981 27.7709 88.0981C27.1801 88.0981 26.6936 87.6112 26.6936 87.0287C26.6936 86.4462 27.1714 85.9507 27.7709 85.9507C28.3704 85.9507 28.8395 86.4375 28.8395 87.0287Z" fill="#002332"/>
<path d="M33.1398 87.0287C33.1398 87.6199 32.662 88.0981 32.0712 88.0981C31.4804 88.0981 30.9939 87.6112 30.9939 87.0287C30.9939 86.4462 31.4717 85.9507 32.0712 85.9507C32.6707 85.9507 33.1398 86.4375 33.1398 87.0287Z" fill="#002332"/>
<path d="M50.3158 87.0287C50.3158 87.6199 49.838 88.0981 49.2472 88.0981C48.6564 88.0981 48.1699 87.6112 48.1699 87.0287C48.1699 86.4462 48.6478 85.9507 49.2472 85.9507C49.8467 85.9507 50.3158 86.4375 50.3158 87.0287Z" fill="#002332"/>
<path d="M54.6166 87.0287C54.6166 87.6199 54.1388 88.0981 53.548 88.0981C52.9572 88.0981 52.4707 87.6112 52.4707 87.0287C52.4707 86.4462 52.9485 85.9507 53.548 85.9507C54.1475 85.9507 54.6166 86.4375 54.6166 87.0287Z" fill="#002332"/>
<path d="M58.9084 87.0287C58.9084 87.6199 58.4305 88.0981 57.8397 88.0981C57.249 88.0981 56.7625 87.6112 56.7625 87.0287C56.7625 86.4462 57.2403 85.9507 57.8397 85.9507C58.4392 85.9507 58.9084 86.4375 58.9084 87.0287Z" fill="#002332"/>
<path d="M67.5007 87.0287C67.5007 87.6199 67.0228 88.0981 66.432 88.0981C65.8413 88.0981 65.3547 87.6112 65.3547 87.0287C65.3547 86.4462 65.8326 85.9507 66.432 85.9507C67.0315 85.9507 67.5007 86.4375 67.5007 87.0287Z" fill="#002332"/>
<path d="M76.0929 87.0287C76.0929 87.6199 75.6151 88.0981 75.0243 88.0981C74.4335 88.0981 73.947 87.6112 73.947 87.0287C73.947 86.4462 74.4335 85.9507 75.0243 85.9507C75.6151 85.9507 76.0929 86.4375 76.0929 87.0287Z" fill="#002332"/>
<path d="M80.3937 87.0287C80.3937 87.6199 79.9159 88.0981 79.3251 88.0981C78.7343 88.0981 78.2478 87.6112 78.2478 87.0287C78.2478 86.4462 78.7256 85.9507 79.3251 85.9507C79.9246 85.9507 80.3937 86.4375 80.3937 87.0287Z" fill="#002332"/>
<path d="M84.6852 87.0287C84.6852 87.6199 84.2074 88.0981 83.6166 88.0981C83.0258 88.0981 82.5393 87.6112 82.5393 87.0287C82.5393 86.4462 83.0171 85.9507 83.6166 85.9507C84.2161 85.9507 84.6852 86.4375 84.6852 87.0287Z" fill="#002332"/>
<path d="M88.977 87.0287C88.977 87.6199 88.4991 88.0981 87.9084 88.0981C87.3176 88.0981 86.8311 87.6112 86.8311 87.0287C86.8311 86.4462 87.3176 85.9507 87.9084 85.9507C88.4991 85.9507 88.977 86.4375 88.977 87.0287Z" fill="#002332"/>
<path d="M93.278 87.0287C93.278 87.6199 92.8002 88.0981 92.2094 88.0981C91.6186 88.0981 91.1321 87.6112 91.1321 87.0287C91.1321 86.4462 91.6099 85.9507 92.2094 85.9507C92.8088 85.9507 93.278 86.4375 93.278 87.0287Z" fill="#002332"/>
<path d="M97.5695 87.0287C97.5695 87.6199 97.0917 88.0981 96.5009 88.0981C95.9101 88.0981 95.4236 87.6112 95.4236 87.0287C95.4236 86.4462 95.9014 85.9507 96.5009 85.9507C97.1003 85.9507 97.5695 86.4375 97.5695 87.0287Z" fill="#002332"/>
<path d="M101.87 87.0287C101.87 87.6199 101.392 88.0981 100.801 88.0981C100.211 88.0981 99.7241 87.6112 99.7241 87.0287C99.7241 86.4462 100.211 85.9507 100.801 85.9507C101.392 85.9507 101.87 86.4375 101.87 87.0287Z" fill="#002332"/>
<path d="M24.5475 82.7343C24.5475 83.3255 24.0697 83.8036 23.4789 83.8036C22.8881 83.8036 22.4016 83.3168 22.4016 82.7343C22.4016 82.1518 22.8794 81.6562 23.4789 81.6562C24.0784 81.6562 24.5475 82.1431 24.5475 82.7343Z" fill="#002332"/>
<path d="M28.8395 82.7343C28.8395 83.3255 28.3617 83.8036 27.7709 83.8036C27.1801 83.8036 26.6936 83.3168 26.6936 82.7343C26.6936 82.1518 27.1714 81.6562 27.7709 81.6562C28.3704 81.6562 28.8395 82.1431 28.8395 82.7343Z" fill="#002332"/>
<path d="M33.1398 82.7343C33.1398 83.3255 32.662 83.8036 32.0712 83.8036C31.4804 83.8036 30.9939 83.3168 30.9939 82.7343C30.9939 82.1518 31.4717 81.6562 32.0712 81.6562C32.6707 81.6562 33.1398 82.1431 33.1398 82.7343Z" fill="#002332"/>
<path d="M50.3158 82.7343C50.3158 83.3255 49.838 83.8036 49.2472 83.8036C48.6564 83.8036 48.1699 83.3168 48.1699 82.7343C48.1699 82.1518 48.6478 81.6562 49.2472 81.6562C49.8467 81.6562 50.3158 82.1431 50.3158 82.7343Z" fill="#002332"/>
<path d="M54.6166 82.7343C54.6166 83.3255 54.1388 83.8036 53.548 83.8036C52.9572 83.8036 52.4707 83.3168 52.4707 82.7343C52.4707 82.1518 52.9485 81.6562 53.548 81.6562C54.1475 81.6562 54.6166 82.1431 54.6166 82.7343Z" fill="#002332"/>
<path d="M58.9084 82.7343C58.9084 83.3255 58.4305 83.8036 57.8397 83.8036C57.249 83.8036 56.7625 83.3168 56.7625 82.7343C56.7625 82.1518 57.2403 81.6562 57.8397 81.6562C58.4392 81.6562 58.9084 82.1431 58.9084 82.7343Z" fill="#002332"/>
<path d="M67.5007 82.7343C67.5007 83.3255 67.0228 83.8036 66.432 83.8036C65.8413 83.8036 65.3547 83.3168 65.3547 82.7343C65.3547 82.1518 65.8326 81.6562 66.432 81.6562C67.0315 81.6562 67.5007 82.1431 67.5007 82.7343Z" fill="#002332"/>
<path d="M71.8009 82.7343C71.8009 83.3255 71.3231 83.8036 70.7323 83.8036C70.1416 83.8036 69.655 83.3168 69.655 82.7343C69.655 82.1518 70.1329 81.6562 70.7323 81.6562C71.3318 81.6562 71.8009 82.1431 71.8009 82.7343Z" fill="#002332"/>
<path d="M80.3937 82.7343C80.3937 83.3255 79.9159 83.8036 79.3251 83.8036C78.7343 83.8036 78.2478 83.3168 78.2478 82.7343C78.2478 82.1518 78.7256 81.6562 79.3251 81.6562C79.9246 81.6562 80.3937 82.1431 80.3937 82.7343Z" fill="#002332"/>
<path d="M84.6852 82.7343C84.6852 83.3255 84.2074 83.8036 83.6166 83.8036C83.0258 83.8036 82.5393 83.3168 82.5393 82.7343C82.5393 82.1518 83.0171 81.6562 83.6166 81.6562C84.2161 81.6562 84.6852 82.1431 84.6852 82.7343Z" fill="#002332"/>
<path d="M88.977 82.7343C88.977 83.3255 88.4991 83.8036 87.9084 83.8036C87.3176 83.8036 86.8311 83.3168 86.8311 82.7343C86.8311 82.1518 87.3176 81.6562 87.9084 81.6562C88.4991 81.6562 88.977 82.1431 88.977 82.7343Z" fill="#002332"/>
<path d="M93.278 82.7343C93.278 83.3255 92.8002 83.8036 92.2094 83.8036C91.6186 83.8036 91.1321 83.3168 91.1321 82.7343C91.1321 82.1518 91.6099 81.6562 92.2094 81.6562C92.8088 81.6562 93.278 82.1431 93.278 82.7343Z" fill="#002332"/>
<path d="M97.5695 82.7343C97.5695 83.3255 97.0917 83.8036 96.5009 83.8036C95.9101 83.8036 95.4236 83.3168 95.4236 82.7343C95.4236 82.1518 95.9014 81.6562 96.5009 81.6562C97.1003 81.6562 97.5695 82.1431 97.5695 82.7343Z" fill="#002332"/>
<path d="M101.87 82.7343C101.87 83.3255 101.392 83.8036 100.801 83.8036C100.211 83.8036 99.7241 83.3168 99.7241 82.7343C99.7241 82.1518 100.211 81.6562 100.801 81.6562C101.392 81.6562 101.87 82.1431 101.87 82.7343Z" fill="#002332"/>
<path d="M24.5475 78.4306C24.5475 79.0218 24.0697 79.4999 23.4789 79.4999C22.8881 79.4999 22.4016 79.0131 22.4016 78.4306C22.4016 77.8481 22.8794 77.3525 23.4789 77.3525C24.0784 77.3525 24.5475 77.8394 24.5475 78.4306Z" fill="#002332"/>
<path d="M28.8395 78.4306C28.8395 79.0218 28.3617 79.4999 27.7709 79.4999C27.1801 79.4999 26.6936 79.0131 26.6936 78.4306C26.6936 77.8481 27.1714 77.3525 27.7709 77.3525C28.3704 77.3525 28.8395 77.8394 28.8395 78.4306Z" fill="#002332"/>
<path d="M33.1398 78.4306C33.1398 79.0218 32.662 79.4999 32.0712 79.4999C31.4804 79.4999 30.9939 79.0131 30.9939 78.4306C30.9939 77.8481 31.4717 77.3525 32.0712 77.3525C32.6707 77.3525 33.1398 77.8394 33.1398 78.4306Z" fill="#002332"/>
<path d="M50.3158 78.4306C50.3158 79.0218 49.838 79.4999 49.2472 79.4999C48.6564 79.4999 48.1699 79.0131 48.1699 78.4306C48.1699 77.8481 48.6478 77.3525 49.2472 77.3525C49.8467 77.3525 50.3158 77.8394 50.3158 78.4306Z" fill="#002332"/>
<path d="M54.6166 78.4306C54.6166 79.0218 54.1388 79.4999 53.548 79.4999C52.9572 79.4999 52.4707 79.0131 52.4707 78.4306C52.4707 77.8481 52.9485 77.3525 53.548 77.3525C54.1475 77.3525 54.6166 77.8394 54.6166 78.4306Z" fill="#002332"/>
<path d="M58.9084 78.4306C58.9084 79.0218 58.4305 79.4999 57.8397 79.4999C57.249 79.4999 56.7625 79.0131 56.7625 78.4306C56.7625 77.8481 57.2403 77.3525 57.8397 77.3525C58.4392 77.3525 58.9084 77.8394 58.9084 78.4306Z" fill="#002332"/>
<path d="M67.5007 78.4306C67.5007 79.0218 67.0228 79.4999 66.432 79.4999C65.8413 79.4999 65.3547 79.0131 65.3547 78.4306C65.3547 77.8481 65.8326 77.3525 66.432 77.3525C67.0315 77.3525 67.5007 77.8394 67.5007 78.4306Z" fill="#002332"/>
<path d="M71.8009 78.4306C71.8009 79.0218 71.3231 79.4999 70.7323 79.4999C70.1416 79.4999 69.655 79.0131 69.655 78.4306C69.655 77.8481 70.1329 77.3525 70.7323 77.3525C71.3318 77.3525 71.8009 77.8394 71.8009 78.4306Z" fill="#002332"/>
<path d="M76.0929 78.4306C76.0929 79.0218 75.6151 79.4999 75.0243 79.4999C74.4335 79.4999 73.947 79.0131 73.947 78.4306C73.947 77.8481 74.4335 77.3525 75.0243 77.3525C75.6151 77.3525 76.0929 77.8394 76.0929 78.4306Z" fill="#002332"/>
<path d="M93.278 78.4306C93.278 79.0218 92.8002 79.4999 92.2094 79.4999C91.6186 79.4999 91.1321 79.0131 91.1321 78.4306C91.1321 77.8481 91.6099 77.3525 92.2094 77.3525C92.8088 77.3525 93.278 77.8394 93.278 78.4306Z" fill="#002332"/>
<path d="M97.5695 78.4306C97.5695 79.0218 97.0917 79.4999 96.5009 79.4999C95.9101 79.4999 95.4236 79.0131 95.4236 78.4306C95.4236 77.8481 95.9014 77.3525 96.5009 77.3525C97.1003 77.3525 97.5695 77.8394 97.5695 78.4306Z" fill="#002332"/>
<path d="M101.87 78.4306C101.87 79.0218 101.392 79.4999 100.801 79.4999C100.211 79.4999 99.7241 79.0131 99.7241 78.4306C99.7241 77.8481 100.211 77.3525 100.801 77.3525C101.392 77.3525 101.87 77.8394 101.87 78.4306Z" fill="#002332"/>
<path d="M24.5475 74.1357C24.5475 74.7269 24.0697 75.205 23.4789 75.205C22.8881 75.205 22.4016 74.7182 22.4016 74.1357C22.4016 73.5532 22.8794 73.0576 23.4789 73.0576C24.0784 73.0576 24.5475 73.5445 24.5475 74.1357Z" fill="#002332"/>
<path d="M28.8395 74.1357C28.8395 74.7269 28.3617 75.205 27.7709 75.205C27.1801 75.205 26.6936 74.7182 26.6936 74.1357C26.6936 73.5532 27.1714 73.0576 27.7709 73.0576C28.3704 73.0576 28.8395 73.5445 28.8395 74.1357Z" fill="#002332"/>
<path d="M33.1398 74.1357C33.1398 74.7269 32.662 75.205 32.0712 75.205C31.4804 75.205 30.9939 74.7182 30.9939 74.1357C30.9939 73.5532 31.4717 73.0576 32.0712 73.0576C32.6707 73.0576 33.1398 73.5445 33.1398 74.1357Z" fill="#002332"/>
<path d="M37.4318 74.1357C37.4318 74.7269 36.954 75.205 36.3632 75.205C35.7724 75.205 35.2859 74.7182 35.2859 74.1357C35.2859 73.5532 35.7637 73.0576 36.3632 73.0576C36.9627 73.0576 37.4318 73.5445 37.4318 74.1357Z" fill="#002332"/>
<path d="M41.7323 74.1357C41.7323 74.7269 41.2545 75.205 40.6637 75.205C40.0729 75.205 39.5864 74.7182 39.5864 74.1357C39.5864 73.5532 40.0643 73.0576 40.6637 73.0576C41.2632 73.0576 41.7323 73.5445 41.7323 74.1357Z" fill="#002332"/>
<path d="M46.0241 74.1357C46.0241 74.7269 45.5463 75.205 44.9555 75.205C44.3647 75.205 43.8782 74.7182 43.8782 74.1357C43.8782 73.5532 44.356 73.0576 44.9555 73.0576C45.5549 73.0576 46.0241 73.5445 46.0241 74.1357Z" fill="#002332"/>
<path d="M50.3158 74.1357C50.3158 74.7269 49.838 75.205 49.2472 75.205C48.6564 75.205 48.1699 74.7182 48.1699 74.1357C48.1699 73.5532 48.6478 73.0576 49.2472 73.0576C49.8467 73.0576 50.3158 73.5445 50.3158 74.1357Z" fill="#002332"/>
<path d="M54.6166 74.1357C54.6166 74.7269 54.1388 75.205 53.548 75.205C52.9572 75.205 52.4707 74.7182 52.4707 74.1357C52.4707 73.5532 52.9485 73.0576 53.548 73.0576C54.1475 73.0576 54.6166 73.5445 54.6166 74.1357Z" fill="#002332"/>
<path d="M58.9084 74.1357C58.9084 74.7269 58.4305 75.205 57.8397 75.205C57.249 75.205 56.7625 74.7182 56.7625 74.1357C56.7625 73.5532 57.2403 73.0576 57.8397 73.0576C58.4392 73.0576 58.9084 73.5445 58.9084 74.1357Z" fill="#002332"/>
<path d="M67.5007 74.1357C67.5007 74.7269 67.0228 75.205 66.432 75.205C65.8413 75.205 65.3547 74.7182 65.3547 74.1357C65.3547 73.5532 65.8326 73.0576 66.432 73.0576C67.0315 73.0576 67.5007 73.5445 67.5007 74.1357Z" fill="#002332"/>
<path d="M71.8009 74.1357C71.8009 74.7269 71.3231 75.205 70.7323 75.205C70.1416 75.205 69.655 74.7182 69.655 74.1357C69.655 73.5532 70.1329 73.0576 70.7323 73.0576C71.3318 73.0576 71.8009 73.5445 71.8009 74.1357Z" fill="#002332"/>
<path d="M76.0929 74.1357C76.0929 74.7269 75.6151 75.205 75.0243 75.205C74.4335 75.205 73.947 74.7182 73.947 74.1357C73.947 73.5532 74.4335 73.0576 75.0243 73.0576C75.6151 73.0576 76.0929 73.5445 76.0929 74.1357Z" fill="#002332"/>
<path d="M93.278 74.1357C93.278 74.7269 92.8002 75.205 92.2094 75.205C91.6186 75.205 91.1321 74.7182 91.1321 74.1357C91.1321 73.5532 91.6099 73.0576 92.2094 73.0576C92.8088 73.0576 93.278 73.5445 93.278 74.1357Z" fill="#002332"/>
<path d="M97.5695 74.1357C97.5695 74.7269 97.0917 75.205 96.5009 75.205C95.9101 75.205 95.4236 74.7182 95.4236 74.1357C95.4236 73.5532 95.9014 73.0576 96.5009 73.0576C97.1003 73.0576 97.5695 73.5445 97.5695 74.1357Z" fill="#002332"/>
<path d="M101.87 74.1357C101.87 74.7269 101.392 75.205 100.801 75.205C100.211 75.205 99.7241 74.7182 99.7241 74.1357C99.7241 73.5532 100.211 73.0576 100.801 73.0576C101.392 73.0576 101.87 73.5445 101.87 74.1357Z" fill="#002332"/>
<path d="M24.5475 69.8324C24.5475 70.4236 24.0697 70.9018 23.4789 70.9018C22.8881 70.9018 22.4016 70.4149 22.4016 69.8324C22.4016 69.2499 22.8794 68.7544 23.4789 68.7544C24.0784 68.7544 24.5475 69.2413 24.5475 69.8324Z" fill="#002332"/>
<path d="M28.8395 69.8324C28.8395 70.4236 28.3617 70.9018 27.7709 70.9018C27.1801 70.9018 26.6936 70.4149 26.6936 69.8324C26.6936 69.2499 27.1714 68.7544 27.7709 68.7544C28.3704 68.7544 28.8395 69.2413 28.8395 69.8324Z" fill="#002332"/>
<path d="M33.1398 69.8324C33.1398 70.4236 32.662 70.9018 32.0712 70.9018C31.4804 70.9018 30.9939 70.4149 30.9939 69.8324C30.9939 69.2499 31.4717 68.7544 32.0712 68.7544C32.6707 68.7544 33.1398 69.2413 33.1398 69.8324Z" fill="#002332"/>
<path d="M37.4318 69.8324C37.4318 70.4236 36.954 70.9018 36.3632 70.9018C35.7724 70.9018 35.2859 70.4149 35.2859 69.8324C35.2859 69.2499 35.7637 68.7544 36.3632 68.7544C36.9627 68.7544 37.4318 69.2413 37.4318 69.8324Z" fill="#002332"/>
<path d="M41.7323 69.8324C41.7323 70.4236 41.2545 70.9018 40.6637 70.9018C40.0729 70.9018 39.5864 70.4149 39.5864 69.8324C39.5864 69.2499 40.0643 68.7544 40.6637 68.7544C41.2632 68.7544 41.7323 69.2413 41.7323 69.8324Z" fill="#002332"/>
<path d="M46.0241 69.8324C46.0241 70.4236 45.5463 70.9018 44.9555 70.9018C44.3647 70.9018 43.8782 70.4149 43.8782 69.8324C43.8782 69.2499 44.356 68.7544 44.9555 68.7544C45.5549 68.7544 46.0241 69.2413 46.0241 69.8324Z" fill="#002332"/>
<path d="M50.3158 69.8324C50.3158 70.4236 49.838 70.9018 49.2472 70.9018C48.6564 70.9018 48.1699 70.4149 48.1699 69.8324C48.1699 69.2499 48.6478 68.7544 49.2472 68.7544C49.8467 68.7544 50.3158 69.2413 50.3158 69.8324Z" fill="#002332"/>
<path d="M54.6166 69.8324C54.6166 70.4236 54.1388 70.9018 53.548 70.9018C52.9572 70.9018 52.4707 70.4149 52.4707 69.8324C52.4707 69.2499 52.9485 68.7544 53.548 68.7544C54.1475 68.7544 54.6166 69.2413 54.6166 69.8324Z" fill="#002332"/>
<path d="M58.9084 69.8324C58.9084 70.4236 58.4305 70.9018 57.8397 70.9018C57.249 70.9018 56.7625 70.4149 56.7625 69.8324C56.7625 69.2499 57.2403 68.7544 57.8397 68.7544C58.4392 68.7544 58.9084 69.2413 58.9084 69.8324Z" fill="#002332"/>
<path d="M67.5007 69.8324C67.5007 70.4236 67.0228 70.9018 66.432 70.9018C65.8413 70.9018 65.3547 70.4149 65.3547 69.8324C65.3547 69.2499 65.8326 68.7544 66.432 68.7544C67.0315 68.7544 67.5007 69.2413 67.5007 69.8324Z" fill="#002332"/>
<path d="M71.8009 69.8324C71.8009 70.4236 71.3231 70.9018 70.7323 70.9018C70.1416 70.9018 69.655 70.4149 69.655 69.8324C69.655 69.2499 70.1329 68.7544 70.7323 68.7544C71.3318 68.7544 71.8009 69.2413 71.8009 69.8324Z" fill="#002332"/>
<path d="M76.0929 69.8324C76.0929 70.4236 75.6151 70.9018 75.0243 70.9018C74.4335 70.9018 73.947 70.4149 73.947 69.8324C73.947 69.2499 74.4335 68.7544 75.0243 68.7544C75.6151 68.7544 76.0929 69.2413 76.0929 69.8324Z" fill="#002332"/>
<path d="M93.278 69.8324C93.278 70.4236 92.8002 70.9018 92.2094 70.9018C91.6186 70.9018 91.1321 70.4149 91.1321 69.8324C91.1321 69.2499 91.6099 68.7544 92.2094 68.7544C92.8088 68.7544 93.278 69.2413 93.278 69.8324Z" fill="#002332"/>
<path d="M97.5695 69.8324C97.5695 70.4236 97.0917 70.9018 96.5009 70.9018C95.9101 70.9018 95.4236 70.4149 95.4236 69.8324C95.4236 69.2499 95.9014 68.7544 96.5009 68.7544C97.1003 68.7544 97.5695 69.2413 97.5695 69.8324Z" fill="#002332"/>
<path d="M101.87 69.8324C101.87 70.4236 101.392 70.9018 100.801 70.9018C100.211 70.9018 99.7241 70.4149 99.7241 69.8324C99.7241 69.2499 100.211 68.7544 100.801 68.7544C101.392 68.7544 101.87 69.2413 101.87 69.8324Z" fill="#002332"/>
<path d="M24.5475 65.5375C24.5475 66.1287 24.0697 66.6069 23.4789 66.6069C22.8881 66.6069 22.4016 66.12 22.4016 65.5375C22.4016 64.955 22.8794 64.4595 23.4789 64.4595C24.0784 64.4595 24.5475 64.9463 24.5475 65.5375Z" fill="#002332"/>
<path d="M28.8395 65.5375C28.8395 66.1287 28.3617 66.6069 27.7709 66.6069C27.1801 66.6069 26.6936 66.12 26.6936 65.5375C26.6936 64.955 27.1714 64.4595 27.7709 64.4595C28.3704 64.4595 28.8395 64.9463 28.8395 65.5375Z" fill="#002332"/>
<path d="M33.1398 65.5375C33.1398 66.1287 32.662 66.6069 32.0712 66.6069C31.4804 66.6069 30.9939 66.12 30.9939 65.5375C30.9939 64.955 31.4717 64.4595 32.0712 64.4595C32.6707 64.4595 33.1398 64.9463 33.1398 65.5375Z" fill="#002332"/>
<path d="M37.4318 65.5375C37.4318 66.1287 36.954 66.6069 36.3632 66.6069C35.7724 66.6069 35.2859 66.12 35.2859 65.5375C35.2859 64.955 35.7637 64.4595 36.3632 64.4595C36.9627 64.4595 37.4318 64.9463 37.4318 65.5375Z" fill="#002332"/>
<path d="M41.7323 65.5375C41.7323 66.1287 41.2545 66.6069 40.6637 66.6069C40.0729 66.6069 39.5864 66.12 39.5864 65.5375C39.5864 64.955 40.0643 64.4595 40.6637 64.4595C41.2632 64.4595 41.7323 64.9463 41.7323 65.5375Z" fill="#002332"/>
<path d="M46.0241 65.5375C46.0241 66.1287 45.5463 66.6069 44.9555 66.6069C44.3647 66.6069 43.8782 66.12 43.8782 65.5375C43.8782 64.955 44.356 64.4595 44.9555 64.4595C45.5549 64.4595 46.0241 64.9463 46.0241 65.5375Z" fill="#002332"/>
<path d="M50.3158 65.5375C50.3158 66.1287 49.838 66.6069 49.2472 66.6069C48.6564 66.6069 48.1699 66.12 48.1699 65.5375C48.1699 64.955 48.6478 64.4595 49.2472 64.4595C49.8467 64.4595 50.3158 64.9463 50.3158 65.5375Z" fill="#002332"/>
<path d="M54.6166 65.5375C54.6166 66.1287 54.1388 66.6069 53.548 66.6069C52.9572 66.6069 52.4707 66.12 52.4707 65.5375C52.4707 64.955 52.9485 64.4595 53.548 64.4595C54.1475 64.4595 54.6166 64.9463 54.6166 65.5375Z" fill="#002332"/>
<path d="M58.9084 65.5375C58.9084 66.1287 58.4305 66.6069 57.8397 66.6069C57.249 66.6069 56.7625 66.12 56.7625 65.5375C56.7625 64.955 57.2403 64.4595 57.8397 64.4595C58.4392 64.4595 58.9084 64.9463 58.9084 65.5375Z" fill="#002332"/>
<path d="M67.5007 65.5375C67.5007 66.1287 67.0228 66.6069 66.432 66.6069C65.8413 66.6069 65.3547 66.12 65.3547 65.5375C65.3547 64.955 65.8326 64.4595 66.432 64.4595C67.0315 64.4595 67.5007 64.9463 67.5007 65.5375Z" fill="#002332"/>
<path d="M71.8009 65.5375C71.8009 66.1287 71.3231 66.6069 70.7323 66.6069C70.1416 66.6069 69.655 66.12 69.655 65.5375C69.655 64.955 70.1329 64.4595 70.7323 64.4595C71.3318 64.4595 71.8009 64.9463 71.8009 65.5375Z" fill="#002332"/>
<path d="M76.0929 65.5375C76.0929 66.1287 75.6151 66.6069 75.0243 66.6069C74.4335 66.6069 73.947 66.12 73.947 65.5375C73.947 64.955 74.4335 64.4595 75.0243 64.4595C75.6151 64.4595 76.0929 64.9463 76.0929 65.5375Z" fill="#002332"/>
<path d="M80.3937 65.5375C80.3937 66.1287 79.9159 66.6069 79.3251 66.6069C78.7343 66.6069 78.2478 66.12 78.2478 65.5375C78.2478 64.955 78.7256 64.4595 79.3251 64.4595C79.9246 64.4595 80.3937 64.9463 80.3937 65.5375Z" fill="#002332"/>
<path d="M84.6852 65.5375C84.6852 66.1287 84.2074 66.6069 83.6166 66.6069C83.0258 66.6069 82.5393 66.12 82.5393 65.5375C82.5393 64.955 83.0171 64.4595 83.6166 64.4595C84.2161 64.4595 84.6852 64.9463 84.6852 65.5375Z" fill="#002332"/>
<path d="M88.977 65.5375C88.977 66.1287 88.4991 66.6069 87.9084 66.6069C87.3176 66.6069 86.8311 66.12 86.8311 65.5375C86.8311 64.955 87.3176 64.4595 87.9084 64.4595C88.4991 64.4595 88.977 64.9463 88.977 65.5375Z" fill="#002332"/>
<path d="M93.278 65.5375C93.278 66.1287 92.8002 66.6069 92.2094 66.6069C91.6186 66.6069 91.1321 66.12 91.1321 65.5375C91.1321 64.955 91.6099 64.4595 92.2094 64.4595C92.8088 64.4595 93.278 64.9463 93.278 65.5375Z" fill="#002332"/>
<path d="M97.5695 65.5375C97.5695 66.1287 97.0917 66.6069 96.5009 66.6069C95.9101 66.6069 95.4236 66.12 95.4236 65.5375C95.4236 64.955 95.9014 64.4595 96.5009 64.4595C97.1003 64.4595 97.5695 64.9463 97.5695 65.5375Z" fill="#002332"/>
<path d="M101.87 65.5375C101.87 66.1287 101.392 66.6069 100.801 66.6069C100.211 66.6069 99.7241 66.12 99.7241 65.5375C99.7241 64.955 100.211 64.4595 100.801 64.4595C101.392 64.4595 101.87 64.9463 101.87 65.5375Z" fill="#002332"/>
<path d="M24.5475 61.2343C24.5475 61.8255 24.0697 62.3037 23.4789 62.3037C22.8881 62.3037 22.4016 61.8168 22.4016 61.2343C22.4016 60.6518 22.8794 60.1562 23.4789 60.1562C24.0784 60.1562 24.5475 60.6431 24.5475 61.2343Z" fill="#002332"/>
<path d="M28.8395 61.2343C28.8395 61.8255 28.3617 62.3037 27.7709 62.3037C27.1801 62.3037 26.6936 61.8168 26.6936 61.2343C26.6936 60.6518 27.1714 60.1562 27.7709 60.1562C28.3704 60.1562 28.8395 60.6431 28.8395 61.2343Z" fill="#002332"/>
<path d="M33.1398 61.2343C33.1398 61.8255 32.662 62.3037 32.0712 62.3037C31.4804 62.3037 30.9939 61.8168 30.9939 61.2343C30.9939 60.6518 31.4717 60.1562 32.0712 60.1562C32.6707 60.1562 33.1398 60.6431 33.1398 61.2343Z" fill="#002332"/>
<path d="M37.4318 61.2343C37.4318 61.8255 36.954 62.3037 36.3632 62.3037C35.7724 62.3037 35.2859 61.8168 35.2859 61.2343C35.2859 60.6518 35.7637 60.1562 36.3632 60.1562C36.9627 60.1562 37.4318 60.6431 37.4318 61.2343Z" fill="#002332"/>
<path d="M41.7323 61.2343C41.7323 61.8255 41.2545 62.3037 40.6637 62.3037C40.0729 62.3037 39.5864 61.8168 39.5864 61.2343C39.5864 60.6518 40.0643 60.1562 40.6637 60.1562C41.2632 60.1562 41.7323 60.6431 41.7323 61.2343Z" fill="#002332"/>
<path d="M46.0241 61.2343C46.0241 61.8255 45.5463 62.3037 44.9555 62.3037C44.3647 62.3037 43.8782 61.8168 43.8782 61.2343C43.8782 60.6518 44.356 60.1562 44.9555 60.1562C45.5549 60.1562 46.0241 60.6431 46.0241 61.2343Z" fill="#002332"/>
<path d="M50.3158 61.2343C50.3158 61.8255 49.838 62.3037 49.2472 62.3037C48.6564 62.3037 48.1699 61.8168 48.1699 61.2343C48.1699 60.6518 48.6478 60.1562 49.2472 60.1562C49.8467 60.1562 50.3158 60.6431 50.3158 61.2343Z" fill="#002332"/>
<path d="M54.6166 61.2343C54.6166 61.8255 54.1388 62.3037 53.548 62.3037C52.9572 62.3037 52.4707 61.8168 52.4707 61.2343C52.4707 60.6518 52.9485 60.1562 53.548 60.1562C54.1475 60.1562 54.6166 60.6431 54.6166 61.2343Z" fill="#002332"/>
<path d="M58.9084 61.2343C58.9084 61.8255 58.4305 62.3037 57.8397 62.3037C57.249 62.3037 56.7625 61.8168 56.7625 61.2343C56.7625 60.6518 57.2403 60.1562 57.8397 60.1562C58.4392 60.1562 58.9084 60.6431 58.9084 61.2343Z" fill="#002332"/>
<path d="M67.5007 61.2343C67.5007 61.8255 67.0228 62.3037 66.432 62.3037C65.8413 62.3037 65.3547 61.8168 65.3547 61.2343C65.3547 60.6518 65.8326 60.1562 66.432 60.1562C67.0315 60.1562 67.5007 60.6431 67.5007 61.2343Z" fill="#002332"/>
<path d="M71.8009 61.2343C71.8009 61.8255 71.3231 62.3037 70.7323 62.3037C70.1416 62.3037 69.655 61.8168 69.655 61.2343C69.655 60.6518 70.1329 60.1562 70.7323 60.1562C71.3318 60.1562 71.8009 60.6431 71.8009 61.2343Z" fill="#002332"/>
<path d="M76.0929 61.2343C76.0929 61.8255 75.6151 62.3037 75.0243 62.3037C74.4335 62.3037 73.947 61.8168 73.947 61.2343C73.947 60.6518 74.4335 60.1562 75.0243 60.1562C75.6151 60.1562 76.0929 60.6431 76.0929 61.2343Z" fill="#002332"/>
<path d="M80.3937 61.2343C80.3937 61.8255 79.9159 62.3037 79.3251 62.3037C78.7343 62.3037 78.2478 61.8168 78.2478 61.2343C78.2478 60.6518 78.7256 60.1562 79.3251 60.1562C79.9246 60.1562 80.3937 60.6431 80.3937 61.2343Z" fill="#002332"/>
<path d="M84.6852 61.2343C84.6852 61.8255 84.2074 62.3037 83.6166 62.3037C83.0258 62.3037 82.5393 61.8168 82.5393 61.2343C82.5393 60.6518 83.0171 60.1562 83.6166 60.1562C84.2161 60.1562 84.6852 60.6431 84.6852 61.2343Z" fill="#002332"/>
<path d="M88.977 61.2343C88.977 61.8255 88.4991 62.3037 87.9084 62.3037C87.3176 62.3037 86.8311 61.8168 86.8311 61.2343C86.8311 60.6518 87.3176 60.1562 87.9084 60.1562C88.4991 60.1562 88.977 60.6431 88.977 61.2343Z" fill="#002332"/>
<path d="M93.278 61.2343C93.278 61.8255 92.8002 62.3037 92.2094 62.3037C91.6186 62.3037 91.1321 61.8168 91.1321 61.2343C91.1321 60.6518 91.6099 60.1562 92.2094 60.1562C92.8088 60.1562 93.278 60.6431 93.278 61.2343Z" fill="#002332"/>
<path d="M97.5695 61.2343C97.5695 61.8255 97.0917 62.3037 96.5009 62.3037C95.9101 62.3037 95.4236 61.8168 95.4236 61.2343C95.4236 60.6518 95.9014 60.1562 96.5009 60.1562C97.1003 60.1562 97.5695 60.6431 97.5695 61.2343Z" fill="#002332"/>
<path d="M101.87 61.2343C101.87 61.8255 101.392 62.3037 100.801 62.3037C100.211 62.3037 99.7241 61.8168 99.7241 61.2343C99.7241 60.6518 100.211 60.1562 100.801 60.1562C101.392 60.1562 101.87 60.6431 101.87 61.2343Z" fill="#002332"/>
<path d="M28.8395 56.9394C28.8395 57.5306 28.3617 58.0087 27.7709 58.0087C27.1801 58.0087 26.6936 57.5219 26.6936 56.9394C26.6936 56.3569 27.1714 55.8613 27.7709 55.8613C28.3704 55.8613 28.8395 56.3482 28.8395 56.9394Z" fill="#002332"/>
<path d="M33.1398 56.9394C33.1398 57.5306 32.662 58.0087 32.0712 58.0087C31.4804 58.0087 30.9939 57.5219 30.9939 56.9394C30.9939 56.3569 31.4717 55.8613 32.0712 55.8613C32.6707 55.8613 33.1398 56.3482 33.1398 56.9394Z" fill="#002332"/>
<path d="M37.4318 56.9394C37.4318 57.5306 36.954 58.0087 36.3632 58.0087C35.7724 58.0087 35.2859 57.5219 35.2859 56.9394C35.2859 56.3569 35.7637 55.8613 36.3632 55.8613C36.9627 55.8613 37.4318 56.3482 37.4318 56.9394Z" fill="#002332"/>
<path d="M41.7323 56.9394C41.7323 57.5306 41.2545 58.0087 40.6637 58.0087C40.0729 58.0087 39.5864 57.5219 39.5864 56.9394C39.5864 56.3569 40.0643 55.8613 40.6637 55.8613C41.2632 55.8613 41.7323 56.3482 41.7323 56.9394Z" fill="#002332"/>
<path d="M46.0241 56.9394C46.0241 57.5306 45.5463 58.0087 44.9555 58.0087C44.3647 58.0087 43.8782 57.5219 43.8782 56.9394C43.8782 56.3569 44.356 55.8613 44.9555 55.8613C45.5549 55.8613 46.0241 56.3482 46.0241 56.9394Z" fill="#002332"/>
<path d="M50.3158 56.9394C50.3158 57.5306 49.838 58.0087 49.2472 58.0087C48.6564 58.0087 48.1699 57.5219 48.1699 56.9394C48.1699 56.3569 48.6478 55.8613 49.2472 55.8613C49.8467 55.8613 50.3158 56.3482 50.3158 56.9394Z" fill="#002332"/>
<path d="M54.6166 56.9394C54.6166 57.5306 54.1388 58.0087 53.548 58.0087C52.9572 58.0087 52.4707 57.5219 52.4707 56.9394C52.4707 56.3569 52.9485 55.8613 53.548 55.8613C54.1475 55.8613 54.6166 56.3482 54.6166 56.9394Z" fill="#002332"/>
<path d="M71.8009 56.9394C71.8009 57.5306 71.3231 58.0087 70.7323 58.0087C70.1416 58.0087 69.655 57.5219 69.655 56.9394C69.655 56.3569 70.1329 55.8613 70.7323 55.8613C71.3318 55.8613 71.8009 56.3482 71.8009 56.9394Z" fill="#002332"/>
<path d="M76.0929 56.9394C76.0929 57.5306 75.6151 58.0087 75.0243 58.0087C74.4335 58.0087 73.947 57.5219 73.947 56.9394C73.947 56.3569 74.4335 55.8613 75.0243 55.8613C75.6151 55.8613 76.0929 56.3482 76.0929 56.9394Z" fill="#002332"/>
<path d="M80.3937 56.9394C80.3937 57.5306 79.9159 58.0087 79.3251 58.0087C78.7343 58.0087 78.2478 57.5219 78.2478 56.9394C78.2478 56.3569 78.7256 55.8613 79.3251 55.8613C79.9246 55.8613 80.3937 56.3482 80.3937 56.9394Z" fill="#002332"/>
<path d="M84.6852 56.9394C84.6852 57.5306 84.2074 58.0087 83.6166 58.0087C83.0258 58.0087 82.5393 57.5219 82.5393 56.9394C82.5393 56.3569 83.0171 55.8613 83.6166 55.8613C84.2161 55.8613 84.6852 56.3482 84.6852 56.9394Z" fill="#002332"/>
<path d="M88.977 56.9394C88.977 57.5306 88.4991 58.0087 87.9084 58.0087C87.3176 58.0087 86.8311 57.5219 86.8311 56.9394C86.8311 56.3569 87.3176 55.8613 87.9084 55.8613C88.4991 55.8613 88.977 56.3482 88.977 56.9394Z" fill="#002332"/>
<path d="M93.278 56.9394C93.278 57.5306 92.8002 58.0087 92.2094 58.0087C91.6186 58.0087 91.1321 57.5219 91.1321 56.9394C91.1321 56.3569 91.6099 55.8613 92.2094 55.8613C92.8088 55.8613 93.278 56.3482 93.278 56.9394Z" fill="#002332"/>
<path d="M97.5695 56.9394C97.5695 57.5306 97.0917 58.0087 96.5009 58.0087C95.9101 58.0087 95.4236 57.5219 95.4236 56.9394C95.4236 56.3569 95.9014 55.8613 96.5009 55.8613C97.1003 55.8613 97.5695 56.3482 97.5695 56.9394Z" fill="#002332"/>
<path d="M33.1398 52.6357C33.1398 53.2268 32.662 53.705 32.0712 53.705C31.4804 53.705 30.9939 53.2182 30.9939 52.6357C30.9939 52.0532 31.4717 51.5576 32.0712 51.5576C32.6707 51.5576 33.1398 52.0445 33.1398 52.6357Z" fill="#002332"/>
<path d="M37.4318 52.6357C37.4318 53.2268 36.954 53.705 36.3632 53.705C35.7724 53.705 35.2859 53.2182 35.2859 52.6357C35.2859 52.0532 35.7637 51.5576 36.3632 51.5576C36.9627 51.5576 37.4318 52.0445 37.4318 52.6357Z" fill="#002332"/>
<path d="M41.7323 52.6357C41.7323 53.2268 41.2545 53.705 40.6637 53.705C40.0729 53.705 39.5864 53.2182 39.5864 52.6357C39.5864 52.0532 40.0643 51.5576 40.6637 51.5576C41.2632 51.5576 41.7323 52.0445 41.7323 52.6357Z" fill="#002332"/>
<path d="M46.0241 52.6357C46.0241 53.2268 45.5463 53.705 44.9555 53.705C44.3647 53.705 43.8782 53.2182 43.8782 52.6357C43.8782 52.0532 44.356 51.5576 44.9555 51.5576C45.5549 51.5576 46.0241 52.0445 46.0241 52.6357Z" fill="#002332"/>
<path d="M50.3158 52.6357C50.3158 53.2268 49.838 53.705 49.2472 53.705C48.6564 53.705 48.1699 53.2182 48.1699 52.6357C48.1699 52.0532 48.6478 51.5576 49.2472 51.5576C49.8467 51.5576 50.3158 52.0445 50.3158 52.6357Z" fill="#002332"/>
<path d="M54.6166 52.6357C54.6166 53.2268 54.1388 53.705 53.548 53.705C52.9572 53.705 52.4707 53.2182 52.4707 52.6357C52.4707 52.0532 52.9485 51.5576 53.548 51.5576C54.1475 51.5576 54.6166 52.0445 54.6166 52.6357Z" fill="#002332"/>
<path d="M40.6549 80.5781C39.4647 80.5781 38.509 81.5432 38.509 82.7342C38.509 83.9253 39.4647 84.8816 40.6549 84.8816C41.8452 84.8816 42.8009 83.9166 42.8009 82.7342C42.8009 81.5432 41.8365 80.5781 40.6549 80.5781ZM40.6549 83.8036C40.0642 83.8036 39.5863 83.3167 39.5863 82.7255C39.5863 82.1256 40.0729 81.6475 40.6549 81.6475C41.237 81.6475 41.7322 82.1256 41.7322 82.7255C41.7322 83.3254 41.2457 83.8036 40.6549 83.8036Z" fill="#002332"/>
<path d="M83.6166 71.9795C82.4264 71.9795 81.4707 72.9445 81.4707 74.1356C81.4707 75.3267 82.4264 76.283 83.6166 76.283C84.8069 76.283 85.7625 75.318 85.7625 74.1356C85.7625 72.9445 84.7982 71.9795 83.6166 71.9795ZM83.6166 75.2049C83.0258 75.2049 82.548 74.7181 82.548 74.1269C82.548 73.5357 83.0345 73.0488 83.6166 73.0488C84.1987 73.0488 84.6939 73.527 84.6939 74.1269C84.6939 74.7268 84.2074 75.2049 83.6166 75.2049Z" fill="#002332"/>
<path d="M62.1315 50.4883C60.95 50.4883 59.9856 51.4533 59.9856 52.6357C59.9856 53.8181 60.95 54.7831 62.1315 54.7831C63.3131 54.7831 64.2774 53.8181 64.2774 52.6357C64.2774 51.4533 63.3131 50.4883 62.1315 50.4883ZM62.1315 53.7137C61.5407 53.7137 61.0629 53.2269 61.0629 52.6357C61.0629 52.0445 61.5494 51.5576 62.1315 51.5576C62.7136 51.5576 63.2088 52.0358 63.2088 52.6357C63.2088 53.2356 62.7223 53.7137 62.1315 53.7137Z" fill="#002332"/>
<path d="M71.8009 52.6357C71.8009 53.2268 71.3231 53.705 70.7323 53.705C70.1416 53.705 69.655 53.2182 69.655 52.6357C69.655 52.0532 70.1329 51.5576 70.7323 51.5576C71.3318 51.5576 71.8009 52.0445 71.8009 52.6357Z" fill="#002332"/>
<path d="M76.0929 52.6357C76.0929 53.2268 75.6151 53.705 75.0243 53.705C74.4335 53.705 73.947 53.2182 73.947 52.6357C73.947 52.0532 74.4335 51.5576 75.0243 51.5576C75.6151 51.5576 76.0929 52.0445 76.0929 52.6357Z" fill="#002332"/>
<path d="M80.3937 52.6357C80.3937 53.2268 79.9159 53.705 79.3251 53.705C78.7343 53.705 78.2478 53.2182 78.2478 52.6357C78.2478 52.0532 78.7256 51.5576 79.3251 51.5576C79.9246 51.5576 80.3937 52.0445 80.3937 52.6357Z" fill="#002332"/>
<path d="M84.6852 52.6357C84.6852 53.2268 84.2074 53.705 83.6166 53.705C83.0258 53.705 82.5393 53.2182 82.5393 52.6357C82.5393 52.0532 83.0171 51.5576 83.6166 51.5576C84.2161 51.5576 84.6852 52.0445 84.6852 52.6357Z" fill="#002332"/>
<path d="M88.977 52.6357C88.977 53.2268 88.4991 53.705 87.9084 53.705C87.3176 53.705 86.8311 53.2182 86.8311 52.6357C86.8311 52.0532 87.3176 51.5576 87.9084 51.5576C88.4991 51.5576 88.977 52.0445 88.977 52.6357Z" fill="#002332"/>
<path d="M93.278 52.6357C93.278 53.2268 92.8002 53.705 92.2094 53.705C91.6186 53.705 91.1321 53.2182 91.1321 52.6357C91.1321 52.0532 91.6099 51.5576 92.2094 51.5576C92.8088 51.5576 93.278 52.0445 93.278 52.6357Z" fill="#002332"/>
<path d="M37.4318 48.3412C37.4318 48.9324 36.954 49.4106 36.3632 49.4106C35.7724 49.4106 35.2859 48.9237 35.2859 48.3412C35.2859 47.7587 35.7637 47.2632 36.3632 47.2632C36.9627 47.2632 37.4318 47.75 37.4318 48.3412Z" fill="#002332"/>
<path d="M41.7323 48.3412C41.7323 48.9324 41.2545 49.4106 40.6637 49.4106C40.0729 49.4106 39.5864 48.9237 39.5864 48.3412C39.5864 47.7587 40.0643 47.2632 40.6637 47.2632C41.2632 47.2632 41.7323 47.75 41.7323 48.3412Z" fill="#002332"/>
<path d="M46.0241 48.3412C46.0241 48.9324 45.5463 49.4106 44.9555 49.4106C44.3647 49.4106 43.8782 48.9237 43.8782 48.3412C43.8782 47.7587 44.356 47.2632 44.9555 47.2632C45.5549 47.2632 46.0241 47.75 46.0241 48.3412Z" fill="#002332"/>
<path d="M50.3158 48.3412C50.3158 48.9324 49.838 49.4106 49.2472 49.4106C48.6564 49.4106 48.1699 48.9237 48.1699 48.3412C48.1699 47.7587 48.6478 47.2632 49.2472 47.2632C49.8467 47.2632 50.3158 47.75 50.3158 48.3412Z" fill="#002332"/>
<path d="M54.6166 48.3412C54.6166 48.9324 54.1388 49.4106 53.548 49.4106C52.9572 49.4106 52.4707 48.9237 52.4707 48.3412C52.4707 47.7587 52.9485 47.2632 53.548 47.2632C54.1475 47.2632 54.6166 47.75 54.6166 48.3412Z" fill="#002332"/>
<path d="M71.8009 48.3412C71.8009 48.9324 71.3231 49.4106 70.7323 49.4106C70.1416 49.4106 69.655 48.9237 69.655 48.3412C69.655 47.7587 70.1329 47.2632 70.7323 47.2632C71.3318 47.2632 71.8009 47.75 71.8009 48.3412Z" fill="#002332"/>
<path d="M76.0929 48.3412C76.0929 48.9324 75.6151 49.4106 75.0243 49.4106C74.4335 49.4106 73.947 48.9237 73.947 48.3412C73.947 47.7587 74.4335 47.2632 75.0243 47.2632C75.6151 47.2632 76.0929 47.75 76.0929 48.3412Z" fill="#002332"/>
<path d="M80.3937 48.3412C80.3937 48.9324 79.9159 49.4106 79.3251 49.4106C78.7343 49.4106 78.2478 48.9237 78.2478 48.3412C78.2478 47.7587 78.7256 47.2632 79.3251 47.2632C79.9246 47.2632 80.3937 47.75 80.3937 48.3412Z" fill="#002332"/>
<path d="M84.6852 48.3412C84.6852 48.9324 84.2074 49.4106 83.6166 49.4106C83.0258 49.4106 82.5393 48.9237 82.5393 48.3412C82.5393 47.7587 83.0171 47.2632 83.6166 47.2632C84.2161 47.2632 84.6852 47.75 84.6852 48.3412Z" fill="#002332"/>
<path d="M88.977 48.3412C88.977 48.9324 88.4991 49.4106 87.9084 49.4106C87.3176 49.4106 86.8311 48.9237 86.8311 48.3412C86.8311 47.7587 87.3176 47.2632 87.9084 47.2632C88.4991 47.2632 88.977 47.75 88.977 48.3412Z" fill="#002332"/>
<path d="M41.7323 44.0463C41.7323 44.6375 41.2545 45.1157 40.6637 45.1157C40.0729 45.1157 39.5864 44.6288 39.5864 44.0463C39.5864 43.4638 40.0643 42.9683 40.6637 42.9683C41.2632 42.9683 41.7323 43.4551 41.7323 44.0463Z" fill="#002332"/>
<path d="M46.0241 44.0463C46.0241 44.6375 45.5463 45.1157 44.9555 45.1157C44.3647 45.1157 43.8782 44.6288 43.8782 44.0463C43.8782 43.4638 44.356 42.9683 44.9555 42.9683C45.5549 42.9683 46.0241 43.4551 46.0241 44.0463Z" fill="#002332"/>
<path d="M50.3158 44.0463C50.3158 44.6375 49.838 45.1157 49.2472 45.1157C48.6564 45.1157 48.1699 44.6288 48.1699 44.0463C48.1699 43.4638 48.6478 42.9683 49.2472 42.9683C49.8467 42.9683 50.3158 43.4551 50.3158 44.0463Z" fill="#002332"/>
<path d="M54.6166 44.0463C54.6166 44.6375 54.1388 45.1157 53.548 45.1157C52.9572 45.1157 52.4707 44.6288 52.4707 44.0463C52.4707 43.4638 52.9485 42.9683 53.548 42.9683C54.1475 42.9683 54.6166 43.4551 54.6166 44.0463Z" fill="#002332"/>
<path d="M58.9084 44.0463C58.9084 44.6375 58.4305 45.1157 57.8397 45.1157C57.249 45.1157 56.7625 44.6288 56.7625 44.0463C56.7625 43.4638 57.2403 42.9683 57.8397 42.9683C58.4392 42.9683 58.9084 43.4551 58.9084 44.0463Z" fill="#002332"/>
<path d="M63.2087 44.0463C63.2087 44.6375 62.7308 45.1157 62.14 45.1157C61.5493 45.1157 61.0627 44.6288 61.0627 44.0463C61.0627 43.4638 61.5493 42.9683 62.14 42.9683C62.7308 42.9683 63.2087 43.4551 63.2087 44.0463Z" fill="#002332"/>
<path d="M67.5007 44.0463C67.5007 44.6375 67.0228 45.1157 66.432 45.1157C65.8413 45.1157 65.3547 44.6288 65.3547 44.0463C65.3547 43.4638 65.8326 42.9683 66.432 42.9683C67.0315 42.9683 67.5007 43.4551 67.5007 44.0463Z" fill="#002332"/>
<path d="M71.8009 44.0463C71.8009 44.6375 71.3231 45.1157 70.7323 45.1157C70.1416 45.1157 69.655 44.6288 69.655 44.0463C69.655 43.4638 70.1329 42.9683 70.7323 42.9683C71.3318 42.9683 71.8009 43.4551 71.8009 44.0463Z" fill="#002332"/>
<path d="M76.0929 44.0463C76.0929 44.6375 75.6151 45.1157 75.0243 45.1157C74.4335 45.1157 73.947 44.6288 73.947 44.0463C73.947 43.4638 74.4335 42.9683 75.0243 42.9683C75.6151 42.9683 76.0929 43.4551 76.0929 44.0463Z" fill="#002332"/>
<path d="M80.3937 44.0463C80.3937 44.6375 79.9159 45.1157 79.3251 45.1157C78.7343 45.1157 78.2478 44.6288 78.2478 44.0463C78.2478 43.4638 78.7256 42.9683 79.3251 42.9683C79.9246 42.9683 80.3937 43.4551 80.3937 44.0463Z" fill="#002332"/>
<path d="M84.6852 44.0463C84.6852 44.6375 84.2074 45.1157 83.6166 45.1157C83.0258 45.1157 82.5393 44.6288 82.5393 44.0463C82.5393 43.4638 83.0171 42.9683 83.6166 42.9683C84.2161 42.9683 84.6852 43.4551 84.6852 44.0463Z" fill="#002332"/>
<path d="M46.0241 39.7426C46.0241 40.3338 45.5463 40.812 44.9555 40.812C44.3647 40.812 43.8782 40.3251 43.8782 39.7426C43.8782 39.1601 44.356 38.6646 44.9555 38.6646C45.5549 38.6646 46.0241 39.1514 46.0241 39.7426Z" fill="#002332"/>
<path d="M50.3158 39.7426C50.3158 40.3338 49.838 40.812 49.2472 40.812C48.6564 40.812 48.1699 40.3251 48.1699 39.7426C48.1699 39.1601 48.6478 38.6646 49.2472 38.6646C49.8467 38.6646 50.3158 39.1514 50.3158 39.7426Z" fill="#002332"/>
<path d="M54.6166 39.7426C54.6166 40.3338 54.1388 40.812 53.548 40.812C52.9572 40.812 52.4707 40.3251 52.4707 39.7426C52.4707 39.1601 52.9485 38.6646 53.548 38.6646C54.1475 38.6646 54.6166 39.1514 54.6166 39.7426Z" fill="#002332"/>
<path d="M58.9084 39.7426C58.9084 40.3338 58.4305 40.812 57.8397 40.812C57.249 40.812 56.7625 40.3251 56.7625 39.7426C56.7625 39.1601 57.2403 38.6646 57.8397 38.6646C58.4392 38.6646 58.9084 39.1514 58.9084 39.7426Z" fill="#002332"/>
<path d="M63.2087 39.7426C63.2087 40.3338 62.7308 40.812 62.14 40.812C61.5493 40.812 61.0627 40.3251 61.0627 39.7426C61.0627 39.1601 61.5493 38.6646 62.14 38.6646C62.7308 38.6646 63.2087 39.1514 63.2087 39.7426Z" fill="#002332"/>
<path d="M67.5007 39.7426C67.5007 40.3338 67.0228 40.812 66.432 40.812C65.8413 40.812 65.3547 40.3251 65.3547 39.7426C65.3547 39.1601 65.8326 38.6646 66.432 38.6646C67.0315 38.6646 67.5007 39.1514 67.5007 39.7426Z" fill="#002332"/>
<path d="M71.8009 39.7426C71.8009 40.3338 71.3231 40.812 70.7323 40.812C70.1416 40.812 69.655 40.3251 69.655 39.7426C69.655 39.1601 70.1329 38.6646 70.7323 38.6646C71.3318 38.6646 71.8009 39.1514 71.8009 39.7426Z" fill="#002332"/>
<path d="M76.0929 39.7426C76.0929 40.3338 75.6151 40.812 75.0243 40.812C74.4335 40.812 73.947 40.3251 73.947 39.7426C73.947 39.1601 74.4335 38.6646 75.0243 38.6646C75.6151 38.6646 76.0929 39.1514 76.0929 39.7426Z" fill="#002332"/>
<path d="M80.3937 39.7426C80.3937 40.3338 79.9159 40.812 79.3251 40.812C78.7343 40.812 78.2478 40.3251 78.2478 39.7426C78.2478 39.1601 78.7256 38.6646 79.3251 38.6646C79.9246 38.6646 80.3937 39.1514 80.3937 39.7426Z" fill="#002332"/>
<path d="M50.3158 35.4482C50.3158 36.0394 49.838 36.5175 49.2472 36.5175C48.6564 36.5175 48.1699 36.0307 48.1699 35.4482C48.1699 34.8657 48.6478 34.3701 49.2472 34.3701C49.8467 34.3701 50.3158 34.857 50.3158 35.4482Z" fill="#002332"/>
<path d="M54.6166 35.4482C54.6166 36.0394 54.1388 36.5175 53.548 36.5175C52.9572 36.5175 52.4707 36.0307 52.4707 35.4482C52.4707 34.8657 52.9485 34.3701 53.548 34.3701C54.1475 34.3701 54.6166 34.857 54.6166 35.4482Z" fill="#002332"/>
<path d="M58.9084 35.4482C58.9084 36.0394 58.4305 36.5175 57.8397 36.5175C57.249 36.5175 56.7625 36.0307 56.7625 35.4482C56.7625 34.8657 57.2403 34.3701 57.8397 34.3701C58.4392 34.3701 58.9084 34.857 58.9084 35.4482Z" fill="#002332"/>
<path d="M63.2087 35.4482C63.2087 36.0394 62.7308 36.5175 62.14 36.5175C61.5493 36.5175 61.0627 36.0307 61.0627 35.4482C61.0627 34.8657 61.5493 34.3701 62.14 34.3701C62.7308 34.3701 63.2087 34.857 63.2087 35.4482Z" fill="#002332"/>
<path d="M67.5007 35.4482C67.5007 36.0394 67.0228 36.5175 66.432 36.5175C65.8413 36.5175 65.3547 36.0307 65.3547 35.4482C65.3547 34.8657 65.8326 34.3701 66.432 34.3701C67.0315 34.3701 67.5007 34.857 67.5007 35.4482Z" fill="#002332"/>
<path d="M71.8009 35.4482C71.8009 36.0394 71.3231 36.5175 70.7323 36.5175C70.1416 36.5175 69.655 36.0307 69.655 35.4482C69.655 34.8657 70.1329 34.3701 70.7323 34.3701C71.3318 34.3701 71.8009 34.857 71.8009 35.4482Z" fill="#002332"/>
<path d="M76.0929 35.4482C76.0929 36.0394 75.6151 36.5175 75.0243 36.5175C74.4335 36.5175 73.947 36.0307 73.947 35.4482C73.947 34.8657 74.4335 34.3701 75.0243 34.3701C75.6151 34.3701 76.0929 34.857 76.0929 35.4482Z" fill="#002332"/>
<path d="M54.6166 31.1445C54.6166 31.7356 54.1388 32.2138 53.548 32.2138C52.9572 32.2138 52.4707 31.7269 52.4707 31.1445C52.4707 30.562 52.9485 30.0664 53.548 30.0664C54.1475 30.0664 54.6166 30.5533 54.6166 31.1445Z" fill="#002332"/>
<path d="M58.9084 31.1445C58.9084 31.7356 58.4305 32.2138 57.8397 32.2138C57.249 32.2138 56.7625 31.7269 56.7625 31.1445C56.7625 30.562 57.2403 30.0664 57.8397 30.0664C58.4392 30.0664 58.9084 30.5533 58.9084 31.1445Z" fill="#002332"/>
<path d="M63.2087 31.1445C63.2087 31.7356 62.7308 32.2138 62.14 32.2138C61.5493 32.2138 61.0627 31.7269 61.0627 31.1445C61.0627 30.562 61.5493 30.0664 62.14 30.0664C62.7308 30.0664 63.2087 30.5533 63.2087 31.1445Z" fill="#002332"/>
<path d="M67.5007 31.1445C67.5007 31.7356 67.0228 32.2138 66.432 32.2138C65.8413 32.2138 65.3547 31.7269 65.3547 31.1445C65.3547 30.562 65.8326 30.0664 66.432 30.0664C67.0315 30.0664 67.5007 30.5533 67.5007 31.1445Z" fill="#002332"/>
<path d="M71.8009 31.1445C71.8009 31.7356 71.3231 32.2138 70.7323 32.2138C70.1416 32.2138 69.655 31.7269 69.655 31.1445C69.655 30.562 70.1329 30.0664 70.7323 30.0664C71.3318 30.0664 71.8009 30.5533 71.8009 31.1445Z" fill="#002332"/>
<path d="M58.9084 26.8495C58.9084 27.4407 58.4305 27.9189 57.8397 27.9189C57.249 27.9189 56.7625 27.432 56.7625 26.8495C56.7625 26.267 57.2403 25.7715 57.8397 25.7715C58.4392 25.7715 58.9084 26.2583 58.9084 26.8495Z" fill="#002332"/>
<path d="M63.2087 26.8495C63.2087 27.4407 62.7308 27.9189 62.14 27.9189C61.5493 27.9189 61.0627 27.432 61.0627 26.8495C61.0627 26.267 61.5493 25.7715 62.14 25.7715C62.7308 25.7715 63.2087 26.2583 63.2087 26.8495Z" fill="#002332"/>
<path d="M67.5007 26.8495C67.5007 27.4407 67.0228 27.9189 66.432 27.9189C65.8413 27.9189 65.3547 27.432 65.3547 26.8495C65.3547 26.267 65.8326 25.7715 66.432 25.7715C67.0315 25.7715 67.5007 26.2583 67.5007 26.8495Z" fill="#002332"/>
<path d="M63.2087 22.5463C63.2087 23.1375 62.7308 23.6157 62.14 23.6157C61.5493 23.6157 61.0627 23.1288 61.0627 22.5463C61.0627 21.9638 61.5493 21.4683 62.14 21.4683C62.7308 21.4683 63.2087 21.9551 63.2087 22.5463Z" fill="#002332"/>
</svg>

After

Width:  |  Height:  |  Size: 53 KiB

View File

@ -0,0 +1,3 @@
<svg width="21" height="19" viewBox="0 0 21 19" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M19.4629 8.3878L11.2348 0.357491C10.7464 -0.119164 9.95279 -0.119164 9.47118 0.357491L1.24315 8.38118C0.754754 8.85784 0.361328 9.79129 0.361328 10.4599V17.7753C0.361328 18.4439 0.924335 18.9934 1.60944 18.9934H11.1059H19.1033C19.7885 18.9934 20.3515 18.4439 20.3515 17.7753V10.4599C20.3515 9.79129 19.9512 8.85122 19.4696 8.38118L19.4629 8.3878Z" fill="#DB582E"/>
</svg>

After

Width:  |  Height:  |  Size: 477 B

View File

@ -0,0 +1,3 @@
<svg width="520" height="500" viewBox="0 0 520 500" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M282.483 9.76654L282.483 9.76683L496.516 220.99C502.714 227.117 508.411 236.334 512.56 246.229C516.709 256.123 519.287 266.643 519.287 275.357V467.933C519.287 485.253 504.883 499.5 487.347 499.5H279.485H32.6596C15.1236 499.5 0.719727 485.253 0.719727 467.933V275.357C0.719727 266.642 3.25437 256.165 7.38059 246.293C11.5067 236.422 17.2042 227.204 23.4906 220.99C23.4906 220.99 23.4907 220.99 23.4907 220.99L237.347 9.76669L237.35 9.76407C249.67 -2.58667 269.983 -2.5902 282.483 9.76654Z" fill="#E5F7FE" stroke="white"/>
</svg>

After

Width:  |  Height:  |  Size: 637 B

View File

@ -0,0 +1,5 @@
<svg width="172" height="244" viewBox="0 0 172 244" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M12 46.6667C13.4728 46.6667 14.6667 45.4728 14.6667 44C14.6667 42.5272 13.4728 41.3333 12 41.3333C10.5272 41.3333 9.33333 42.5272 9.33333 44C9.33333 45.4728 10.5272 46.6667 12 46.6667ZM12 44.5L52 44.5L52 43.5L12 43.5L12 44.5ZM52 44.5C73.8152 44.5 91.5 62.1848 91.5 84L92.5 84C92.5 61.6325 74.3675 43.5 52 43.5L52 44.5Z" fill="#EAA088"/>
<rect x="0.5" y="32.5" width="22.98" height="23" rx="11.49" stroke="#EAA088"/>
<path d="M94.6666 3.00001C94.6666 4.47277 93.4727 5.66667 92 5.66667C90.5272 5.66667 89.3333 4.47277 89.3333 3.00001C89.3333 1.52725 90.5272 0.33334 92 0.33334C93.4727 0.33334 94.6666 1.52725 94.6666 3.00001ZM92.5 3.00001L92.5 203L91.5 203L91.5 3.00001L92.5 3.00001ZM132 242.5L172 242.5L172 243.5L132 243.5L132 242.5ZM92.5 203C92.5 224.815 110.185 242.5 132 242.5L132 243.5C109.632 243.5 91.5 225.368 91.5 203L92.5 203Z" fill="#EAA088"/>
</svg>

After

Width:  |  Height:  |  Size: 970 B

View File

@ -0,0 +1,19 @@
<svg width="123" height="142" viewBox="0 0 123 142" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="119.9" height="140" rx="8" transform="matrix(1 0 0 -1 1.15234 141)" fill="white" stroke="#002332" stroke-width="2"/>
<rect x="-0.5" y="-0.5" width="119.001" height="14.6129" rx="1.5" transform="matrix(-2.10388e-08 -1 -1 9.0817e-08 66.7229 130.001)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 63.0999 20)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 63.0999 118)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 63.0999 124)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="119.001" height="14.6129" rx="1.5" transform="matrix(-2.10388e-08 -1 -1 9.0817e-08 86.7063 130.001)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 83.0833 20)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 83.0833 118)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 83.0833 124)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="119.001" height="14.6129" rx="1.5" transform="matrix(-2.10388e-08 -1 -1 9.0817e-08 106.69 130.001)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 103.067 20)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 103.067 118)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="6.99334" rx="1" transform="matrix(-3.88623e-08 -1 -1 4.91655e-08 103.067 124)" stroke="#002332"/>
<line x1="40.6199" y1="1" x2="40.6199" y2="141" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="11.9892" rx="1" transform="matrix(-4.77449e-08 -1 -1 4.00186e-08 27.1299 25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="11.9892" rx="1" transform="matrix(-4.77449e-08 -1 -1 4.00186e-08 27.1299 30)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2" height="11.9892" rx="1" transform="matrix(-4.77449e-08 -1 -1 4.00186e-08 27.1299 20)" stroke="#002332"/>
</svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -0,0 +1,5 @@
<svg width="284" height="293" viewBox="0 0 284 293" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M79.3334 12C79.3334 13.4728 80.5273 14.6667 82 14.6667C83.4728 14.6667 84.6667 13.4728 84.6667 12C84.6667 10.5272 83.4728 9.33334 82 9.33334C80.5273 9.33334 79.3334 10.5272 79.3334 12ZM81.5 12L81.5 252L82.5 252L82.5 12L81.5 12ZM42 291.5L-2.44143e-05 291.5L-2.45017e-05 292.5L42 292.5L42 291.5ZM81.5 252C81.5 273.815 63.8152 291.5 42 291.5L42 292.5C64.3675 292.5 82.5 274.368 82.5 252L81.5 252Z" fill="#99DFFC"/>
<rect x="70.4768" y="0.5" width="22.98" height="23" rx="11.49" stroke="#99DFFC"/>
<path d="M281 134.667C279.527 134.667 278.333 133.473 278.333 132C278.333 130.527 279.527 129.333 281 129.333C282.473 129.333 283.667 130.527 283.667 132C283.667 133.473 282.473 134.667 281 134.667ZM281 132.5L122 132.5L122 131.5L281 131.5L281 132.5ZM122 132.5C100.185 132.5 82.5 150.185 82.5 172L81.5 172C81.5 149.632 99.6325 131.5 122 131.5L122 132.5Z" fill="#99DFFC"/>
</svg>

After

Width:  |  Height:  |  Size: 981 B

View File

@ -0,0 +1,68 @@
<svg width="204" height="142" viewBox="0 0 204 142" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="66.9441" height="140" rx="8" transform="matrix(1 0 0 -1 1.98682 141)" fill="#CCEFFE" stroke="#002332" stroke-width="2"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 60.3999 9.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.5596 17.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.9275 17.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 60.3999 29)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.5596 36.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.9275 36.75)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 60.3999 48.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.5596 56)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.9275 56)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 60.3999 67.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.5596 75.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.9275 75.25)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 60.3999 86.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.5596 94.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.9275 94.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 60.3999 106)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 18.5596 113.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 26.9275 113.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="10.9012" rx="0.666666" transform="matrix(-4.75477e-08 1 1 4.01846e-08 13.7021 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="11.645" rx="0.666666" transform="matrix(-4.5472e-08 1 1 4.2019e-08 43.8269 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="9.88889" height="9.41353" rx="4.70677" transform="matrix(-3.29507e-08 1 1 5.79862e-08 29.6011 125.25)" stroke="#002332"/>
<rect width="66.9441" height="140" rx="8" transform="matrix(1 0 0 -1 68.9309 141)" fill="#CCEFFE" stroke="#002332" stroke-width="2"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 127.344 9.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 85.5037 17.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 93.8713 17.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 127.344 29)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 85.5037 36.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 93.8713 36.75)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 127.344 48.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 85.5037 56)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 93.8713 56)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 127.344 67.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 85.5037 75.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 93.8713 75.25)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 127.344 86.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 85.5037 94.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 93.8713 94.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 127.344 106)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 85.5037 113.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 93.8713 113.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="10.9012" rx="0.666666" transform="matrix(-4.75477e-08 1 1 4.01846e-08 80.646 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="11.645" rx="0.666666" transform="matrix(-4.5472e-08 1 1 4.2019e-08 110.771 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="9.88889" height="9.41353" rx="4.70677" transform="matrix(-3.29507e-08 1 1 5.79862e-08 96.5452 125.25)" stroke="#002332"/>
<rect width="66.9441" height="140" rx="8" transform="matrix(1 0 0 -1 135.875 141)" fill="#CCEFFE" stroke="#002332" stroke-width="2"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 194.288 9.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 152.448 17.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 160.816 17.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 194.288 29)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 152.448 36.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 160.816 36.75)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 194.288 48.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 152.448 56)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 160.816 56)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 194.288 67.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 152.448 75.25)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 160.816 75.25)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 194.288 86.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 152.448 94.5)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 160.816 94.5)" stroke="#002332"/>
<rect x="-0.5" y="0.5" width="50.8817" height="13" rx="1.5" transform="matrix(-1 1.05525e-07 1.21415e-07 1 194.288 106)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 152.448 113.75)" stroke="#002332"/>
<rect x="-0.5" y="-0.5" width="2.5" height="5.69441" rx="1.25" transform="matrix(-2.66453e-08 -1 -1 7.1708e-08 160.816 113.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="10.9012" rx="0.666666" transform="matrix(-4.75477e-08 1 1 4.01846e-08 147.591 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="1.33333" height="11.645" rx="0.666666" transform="matrix(-4.5472e-08 1 1 4.2019e-08 177.716 128.75)" stroke="#002332"/>
<rect x="0.5" y="0.5" width="9.88889" height="9.41353" rx="4.70677" transform="matrix(-3.29507e-08 1 1 5.79862e-08 163.49 125.25)" stroke="#002332"/>
</svg>

After

Width:  |  Height:  |  Size: 9.4 KiB

View File

@ -0,0 +1,5 @@
<svg width="135" height="219" viewBox="0 0 135 219" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M123 204.333C121.527 204.333 120.333 205.527 120.333 207C120.333 208.473 121.527 209.667 123 209.667C124.473 209.667 125.667 208.473 125.667 207C125.667 205.527 124.473 204.333 123 204.333ZM123.5 207L123.5 169.364L122.5 169.364L122.5 207L123.5 207ZM123.5 169.364L123.5 2.18557e-08L122.5 -2.18557e-08L122.5 169.364L123.5 169.364Z" fill="#EAA088"/>
<path d="M3 136.333C4.47276 136.333 5.66667 137.527 5.66666 139C5.66666 140.473 4.47276 141.667 3 141.667C1.52724 141.667 0.333331 140.473 0.333332 139C0.333332 137.527 1.52724 136.333 3 136.333ZM3 138.5L83 138.5L83 139.5L3 139.5L3 138.5ZM83 138.5C104.815 138.5 122.5 120.815 122.5 99L123.5 99C123.5 121.368 105.368 139.5 83 139.5L83 138.5Z" fill="#EAA088"/>
<rect x="111.167" y="195.5" width="22.98" height="23" rx="11.49" stroke="#EAA088"/>
</svg>

After

Width:  |  Height:  |  Size: 906 B

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