Compare commits

..

1 Commits

Author SHA1 Message Date
dettlaff 53b7f8a845 add howto desec token 2023-05-19 13:56:21 +04:00
17 changed files with 98 additions and 189 deletions

View File

@ -1,59 +1,28 @@
---
title: "Privacy Policy"
date: 2023-05-15
title: "Policy"
date: 2023-04-23
weight: 4
description: >
Our policies and politics.
---
**Last updated: May 15, 2023**
Our mission is humanitarian - to realize the right to privacy.
This SelfPrivacy (“SelfPrivacy” or “we” or “us” or “our”) privacy policy (the “**Privacy Policy**”) is designed to help you understand what information we collect, including information that directly or indirectly identifies an individual (“personal information”), and how we use or share that information.
We are not involved in politics, we do not support or belong to political parties, we do not condemn anyone, and we do not participate in conflicts.
We take your privacy very seriously, and we are committed to ensuring that your personal information is kept safe and secure. This Privacy Policy explains how we manage your personal information when you use our application.
## Privacy Policy
We want to keep it simple, and we don't want to hide behind long paragraphs of text, small lines or difficult words.
The mobile application is completely self-contained, it does not download any data from websites, does not contain any trackers and communicates only with your server.
SelfPrivacy is an open-source project. Please note that we are neither the data controller nor the data processor for any data processing operations carried out through our application. We do not have control over how users utilize the application or how they process any data that they may choose to host or store through the application. As such, we cannot be held responsible for any data processing activities carried out by our users. We encourage all users to carefully consider their data processing activities and to comply with applicable data protection laws and regulations.
When you install the SelfPrivacy server part, it accesses our server, but only the git repository to retrieve the necessary files. This connection is established between the servers - the administrator's smartphone, i.e. your smartphone, is not involved.
## Collection of Information
Our application does not collect any personal information from you. We do not collect your name, email address, or any other contact information. We also do not collect any technical information about your device, including your IP address, operating system, or browser type.
The SelfPrivacy server communicates with our NixOS infrastructure.
SelfPrivacy does not collect limited service and usage data like error and diagnostics information, security alerts, and log file reports associated with device identifiers. We refer to this information as “telemetry data,” and it does not include any end user personal identifiers or message contents.
The recommended client applications will only interact with your server. Exceptions:
- Delta.Chat when using geolocation publishing [forced](https://support.delta.chat/t/tracker-on-android-app/1814) use mapbox.
We collect access logs to determine our user count and the countries they are visiting from. However, we store visitor IP addresses as subnets (x.x.x.0) which may not be sufficient to uniquely identify individuals. Although we cannot guarantee that our server provider does not collect meta-information, we advise users to use methods of traffic anonymization for added privacy.
## Tracking
Our application provides users with the necessary tools to create self-hosted services, such as web servers or databases, without requiring them to provide any personal information. We do not track users' activities or behaviors within the application, and we do not use cookies or other tracking technologies.
## Third-party service providers
We have no control over the personal information that users provide to third-party service providers when opting for self-hosted services. Our application initiates interactions with third-party service providers only after the user has selected them. When users consent to allow third-party service providers to collect and process personal information about their online activities using cookies, pixels, local storage, and other technologies, we are not accountable for the privacy practices of these third parties. This Privacy Policy does not cover the information practices of these third parties.
## Use of Information
Since we do not collect any personal information from you, we cannot use it for any purpose. Our application is designed to allow you to set up and use self-hosted services without the need for any personal information. We do not use your information for marketing purposes.
## Disclosure of Information
Since we do not collect any personal information from you, we cannot disclose it to anyone. We do not share your personal information with any third parties.
## Protection of Information
We take the security of your personal information very seriously. Even though we do not collect any personal information about you, we still use industry-standard security measures to protect our application and the data it contains. We use encryption, firewalls, and other security measures to protect your information from unauthorized access, disclosure, alteration, or destruction.
## Changes to this Privacy Policy
We may update this Privacy Policy from time to time to reflect changes in our practices or to comply with legal requirements. We encourage you to review this Privacy Policy regularly to stay informed about how we collect, use, and protect your personal information.
## Contact Us
If you have any questions or concerns about our Privacy Policy or the collection, use, or disclosure of your personal information, please contact us at `privacy@selfprivacy.org`. We will do our best to address your concerns in a timely and satisfactory manner.
---
*We are pleased to offer this Privacy Policy under Creative Commons Zero license as a template that can be used by anyone in the open-source community. We hope that this contribution will help to support the development of privacy policies that promote transparency, accountability, and respect for the privacy of individuals. As part of our commitment to open-source values, we believe in sharing knowledge and resources to foster innovation and collaboration. Therefore, we encourage others to adapt and modify our privacy policy to meet their specific needs, while ensuring that they comply with applicable laws and regulations.*
![Licensed under CC0](/images/icons/cc-zero.svg)
## Our web-resources
When you visit any site, you leave a lot of data behind. At a minimum, your IP address; at a maximum, all sorts of tracking data.
We **do not use tracking** in any form, on any of our public services.
But **we aggregate access-logging** to understand how many users we have and from what country. All visitor IPs are stored as subnets (x.x.x.0) and may not uniquely identify you. But we recommend to use means of traffic anonymization, as we do not guarantee that our server provider does not collect meta-information.

View File

@ -9,27 +9,26 @@ description: >
Yes, you could use kubernetes. But why when immutability is ensured by NixOS?
**Stack**: [NixOS](https://nixos.org/), Python (backend, server part), Flutter (user application).
## Mobile app ##
[Flutter](https://flutter.dev/)/[Dart](https://dart.dev/) was chosen because of the speed and smoothness of the UI and cross-platform.
Flutter/Dart was chosen because of the speed and smoothness of the UI and cross-platform.
## Backend
[NixOS](https://nixos.org/) + [Python](https://www.python.org/). NixOS was chosen because of its reproducibility, python because of its versatility and popularity.
NixOS + Python. NixOS was chosen because of its reproducibility, python because of its versatility and popularity.
## Service providers
**We do not get paid by any service providers!** We are not affiliated with them in any way. We chose them purely for professional reasons. But we do not exclude partnership in the future.
We do not get paid by any service providers! We are not affiliated with them in any way. We chose them purely for professional reasons. But we do not exclude partnership in the future.
### Hosting
SelfPrivacy supports two hosting providers: [Hetzer](https://www.hetzner.com/) and [DigitalOcean](https://digitalocean.com)
Both were chosen because of low price and acceptable level of service, quality REST API.
Hetzer has not been seen to have any privacy or data collection problems.
[Hetzer](https://www.hetzner.com/) was chosen because of low price and acceptable level of service, quality REST API. Wasn't noticed any privacy or data collection issues.
Candidates:
- Own personal iron server. **Our main priority right now**;
- A service provider that will provide an API to deploy an iron server. Outside [FVEY](https://en.wikipedia.org/wiki/Five_Eyes);
- Own personal iron server. Our main priority right now.
- A service provider that will provide an API to deploy an iron server. Outside [FVEY](https://en.wikipedia.org/wiki/Five_Eyes)
- OVH
- Scaleway
- DigitalOcean
There's also free [Oracle Cloud](https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier_topic-Always_Free_Resources.htm), but where you don't pay, you're usually a commodity.

View File

@ -102,4 +102,4 @@ We are working to ensure that the general configuration of SelfPrivacy can be ex
All transactions take place between your application, your server, and your service providers without SelfPrivacy being involved. Your copy of SelfPrivacy App is completely autonomous and independent in managing your infrastructure. No information about your interactions with your infrastructure reaches SelfPrivacy. All backups of your services leave your server in a fully encrypted form.
You can read more about this in our [privacy policy]({{< ref "policy.md" >}}).
You can read more about this in our [privacy policy.](https://selfprivacy.org/en/docs/about-us/policy/).

View File

@ -77,7 +77,7 @@ jackson.live or carson.health, or it can be something creative, like: unicorn-la
### Advice:
- **Be sure to look at the annual renewal price,** it can be many times the purchase price.
- **Normal domain price is $8-10 per year.**
- **Normal domain price is $8-10 per year.** The cheapest are Chinese .icu and .cyou - $4-6.
* **When registering a domain, make sure you enter your real email address, otherwise your registration may be
cancelled.** And if you can't renew the domain, the system won't work as intended.
- A good name comes in handy, both on the phone to dictate, and on your business card.
@ -104,10 +104,37 @@ After a few minutes or, in the worst case, up to 2 days, the settings will be ap
**_API tokens_ are almost the same as login and password, only for a program, not a person.**
SelfPrivacy application uses them to manage services in all accounts instead of you. Convenient!
We do not need a token for your domain registrar. But we will need one for the CloudFlare to use it for domain management.
We do not need a token for your domain registrar. But we need a DNS provider token to manage the domain.
### How to get Cloudflare API Token
SelfPrivacy supports two providers to choose from: the popular [Cloudflare] (https://www.cloudflare.com/) and the privacy-focused [deSEC] (https://desec.io/).
### If you chose deSEC: How to get a token
1. Log in at: https://desec.io/login
2. Go to **Domains** page at: https://desec.io/domains
3. Go to **Token management** tab.
4. Click on the round "plus" button in the upper right corner.
{{< imgproc desec-tokenmanagment Fill "626x287">}}
{{< /imgproc >}}
5. "**Generate New Token**" dialogue must be displayed. Enter any **Token name** you wish. Advanced settings are not required, so do not touch anything there.
6. Click on **Save**.
7. Make sure you save the token's "**secret value**" as it will only be displayed once.
{{< imgproc dncsec-copy Fill "626x287">}}
{{< /imgproc >}}
8. Now you can safely **close** the dialogue.
### If you chose Cloudflare: How to get a token
{{< video src="Cloudflare" muted="true" autoplay="true" autoplay="true" loop="true" >}}

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

View File

@ -5,7 +5,7 @@ description: >
Self-hosted e-mail service
---
E-mail is a time-tested protocol that needs no introduction. A personal mail server will provide special privacy for all correspondence and is useful for registering in online services and personal correspondence, especially for [Delta.Chat]({{< ref "delta-chat.md" >}}).
E-mail is a time-tested protocol that needs no introduction. A personal mail server will provide special privacy for all correspondence and is useful for registering in online services and personal correspondence, especially for [Delta Chat]({{< ref "delta-chat.md" >}}).
## Authentication

View File

@ -1,8 +0,0 @@
---
title: "Theory"
linkTitle: "Theory"
weight: 5
date: 2023-05-09
description: >
Discussion of various aspects of the project
---

View File

@ -1,65 +0,0 @@
---
title: "Privacy Policy"
date: 2023-05-15
weight: 4
---
{{< blocks/section color="white" type="section" >}}
# Privacy policy
---
**Last updated: May 15, 2023**
This SelfPrivacy (“SelfPrivacy” or “we” or “us” or “our”) privacy policy (the “**Privacy Policy**”) is designed to help you understand what information we collect, including information that directly or indirectly identifies an individual (“personal information”), and how we use or share that information.
We take your privacy very seriously, and we are committed to ensuring that your personal information is kept safe and secure. This Privacy Policy explains how we manage your personal information when you use our application.
We want to keep it simple, and we don't want to hide behind long paragraphs of text, small lines or difficult words.
SelfPrivacy is an open-source project. Please note that we are neither the data controller nor the data processor for any data processing operations carried out through our application. We do not have control over how users utilize the application or how they process any data that they may choose to host or store through the application. As such, we cannot be held responsible for any data processing activities carried out by our users. We encourage all users to carefully consider their data processing activities and to comply with applicable data protection laws and regulations.
## Collection of Information
Our application does not collect any personal information from you. We do not collect your name, email address, or any other contact information. We also do not collect any technical information about your device, including your IP address, operating system, or browser type.
SelfPrivacy does not collect limited service and usage data like error and diagnostics information, security alerts, and log file reports associated with device identifiers. We refer to this information as “telemetry data,” and it does not include any end user personal identifiers or message contents.
We collect access logs to determine our user count and the countries they are visiting from. However, we store visitor IP addresses as subnets (x.x.x.0) which may not be sufficient to uniquely identify individuals. Although we cannot guarantee that our server provider does not collect meta-information, we advise users to use methods of traffic anonymization for added privacy.
## Tracking
Our application provides users with the necessary tools to create self-hosted services, such as web servers or databases, without requiring them to provide any personal information. We do not track users' activities or behaviors within the application, and we do not use cookies or other tracking technologies.
## Third-party service providers
We have no control over the personal information that users provide to third-party service providers when opting for self-hosted services. Our application initiates interactions with third-party service providers only after the user has selected them. When users consent to allow third-party service providers to collect and process personal information about their online activities using cookies, pixels, local storage, and other technologies, we are not accountable for the privacy practices of these third parties. This Privacy Policy does not cover the information practices of these third parties.
## Use of Information
Since we do not collect any personal information from you, we cannot use it for any purpose. Our application is designed to allow you to set up and use self-hosted services without the need for any personal information. We do not use your information for marketing purposes.
## Disclosure of Information
Since we do not collect any personal information from you, we cannot disclose it to anyone. We do not share your personal information with any third parties.
## Protection of Information
We take the security of your personal information very seriously. Even though we do not collect any personal information about you, we still use industry-standard security measures to protect our application and the data it contains. We use encryption, firewalls, and other security measures to protect your information from unauthorized access, disclosure, alteration, or destruction.
## Changes to this Privacy Policy
We may update this Privacy Policy from time to time to reflect changes in our practices or to comply with legal requirements. We encourage you to review this Privacy Policy regularly to stay informed about how we collect, use, and protect your personal information.
## Contact Us
If you have any questions or concerns about our Privacy Policy or the collection, use, or disclosure of your personal information, please contact us at `privacy@selfprivacy.org`. We will do our best to address your concerns in a timely and satisfactory manner.
---
*We are pleased to offer this Privacy Policy under Creative Commons Zero license as a template that can be used by anyone in the open-source community. We hope that this contribution will help to support the development of privacy policies that promote transparency, accountability, and respect for the privacy of individuals. As part of our commitment to open-source values, we believe in sharing knowledge and resources to foster innovation and collaboration. Therefore, we encourage others to adapt and modify our privacy policy to meet their specific needs, while ensuring that they comply with applicable laws and regulations.*
![Licensed under CC0](/images/icons/cc-zero.svg)
{{< /blocks/section >}}

View File

@ -1,7 +1,7 @@
---
title: "Архитектура проекта"
linkTitle: "Архитектура"
weight: 1
weight: 5
date: 2022-01-09
description: >
Как организован проект и как он работает.
@ -9,25 +9,24 @@ description: >
Да, вы можете использовать kubernetes. Но зачем, если неизменяемость обеспечивается NixOS?
**Мобильное приложение:** [Flutter](https://flutter.dev/)/[Dart](https://dart.dev/) выбрали из-за скорости и плавности работы UI, а также очень соблазнительна их кроссплатформенность.
**Stack**: [NixOS](https://nixos.org/), Python (бэкенд, серверная часть), Flutter (пользовательское приложение).
**Бэкенд**: [NixOS](https://nixos.org/) + [Python](https://www.python.org/). NixOS выбран из-за воспроизводимости, Python из-за универсальности и популярности.
**Мобильное приложение:** Flutter/Dart выбрали из-за скорости и плавности работы UI, а также очень соблазнительна их кроссплатформенность.
**Бэкенд**: NixOS + Python. NixOS выбран из-за воспроизводимости, Python из-за универсальности и популярности.
# Сервис-провайдеры
**Нам не платит ни один сервис-провайдер!** Мы никак с ними не аффилированы. Выбирали исключительно из профессиональных соображений. Но не исключаем партнерство в будущем.
Нам не платит ни один сервис-провайдер! Мы никак с ними не аффилированы. Выбирали исключительно из профессиональных соображений. Но не исключаем партнерство в будущем.
### Хостинг
[Hetzer](https://www.hetzner.com/) выбрали из-за низкой цены и приемлемый уровень сервиса, качественного REST API. Сервис не был замечен в проблемах с приватностью и сбором данных.
SelfPrivacy поддерживает два хостинг провайдера: [Hetzer](https://www.hetzner.com/) и [DigitalOcean](https://digitalocean.com)
Оба были выбранны из-за низкой цены и приемлемого уровня сервиса, качественного REST API.
Hetzer не был замечен в проблемах с приватностью и сбором данных.
Кандидаты:
- Свой личный железный сервер. **Сейчас наш основной приоритет**;
- Сервис-провайдер, который предоставит API для разворачивания железного сервера. Вне [FVEY](https://en.wikipedia.org/wiki/Five_Eyes);
- Свой личный железный сервер. Сейчас наш основной приоритет;
- Сервис-провайдер, который предоставит API для разворачивания железного сервера. Вне [FVEY](https://en.wikipedia.org/wiki/Five_Eyes)
- OVH
- Scaleway

View File

@ -89,4 +89,4 @@ __*Ручные операции*__
## Система очень сложная, почему она приватная?
В отличие от Cloudron, наших коммерческих единомышленников, все операции происходят между вашим приложением, вашим сервером и вашими сервис-провадерами без участия SelfPrivacy. Ваша копия SelfPrivacy App полностью автономна и независима в управлении вашей инфраструктурой. Никакая информация о вашем взаимодействии с вашей инфраструктурой не попадает к SelfPrivacy. Все резервные копии ваших сервисов покидают ваш сервер в полностью зашифрованном виде.
Подробнее об этом, вы можете прочитать в [политике приватности]({{< ref "policy.md" >}}).
Подробнее об этом, вы можете прочитать в [политике приватности](https://selfprivacy.org/ru/docs/about-us/policy/).

View File

@ -75,7 +75,7 @@ description: >
### Рекомендации:
* **Обязательно смотреть на цену ежегодного продления,** она может в разы превышать стоимость покупки.
* **Нормальная цена домена $8-10 в год.**
* **Нормальная цена домена $8-10 в год.** Самые дешёвые — китайские .icu и .cyou — $4-6.
* **При регистрации домена обязательно указывать реальные почту и телефон, иначе регистрацию могут аннулировать.** И если вы не сможете продлить домен, система не будет работать так, как задумано.
* Выбирайте хорошее имя, которое удобно и по телефону диктовать, и на деловой визитке указать.
* **Я уже говорил про второй фактор?**
@ -100,10 +100,38 @@ description: >
**_API ключи_ — это почти то же самое, что и логин с паролем, только для программы, а не человека.**
Мобильное приложение SelfPrivacy с их помощью управляет сервисами во всех учётных записях вместо вас. Удобно!
Нам не нужен токен для регистратора домена.
Но нам понадобится токен от CloudFlare, чтобы использовать его для управления доменом.
Нам не нужен токен для регистратора домена. Но нам понадобится токен DNS провайдера, чтобы управлять доменомом.
### Как получить API токен Cloudflare
SelfPrivacy поддерживает двух провайдеров на выбор: популярный [Cloudflare](https://www.cloudflare.com/) и нацеленный на приватность [deSEC](https://desec.io/).
### Если вы выбрали deSEC: Как получить токен
1. Авторизуемся в deSEC: https://desec.io/login
2. Переходим на страницу **Domains** по ссылке: https://desec.io/domains
3. Переходим на вкладку **Token management**.
4. Нажимаем на большую кнопку с "плюсом" в правом верхнем углу страницы.
{{< imgproc desec-tokenmanagment Fill "626x287">}}
{{< /imgproc >}}
5. Должен был появиться "**Generate New Token**" диалог. Вводим любое имя токена в **Token name**.
*Advanced settings* необязательны, так что ничего там не трогаем.
6. Кликаем **Save**.
7. Обязательно сохраняем "**secret value**" ключ токена, потому что он отображается исключительно один раз.
{{< imgproc dncsec-copy Fill "626x287">}}
{{< /imgproc >}}
8. Теперь спокойно закрываем диалог, нажав **close**.
### Если вы выбрали Cloudflare: Как получить токен
{{< video src="Cloudflare" muted="true" autoplay="true" autoplay="true" loop="true" >}}

Binary file not shown.

After

Width:  |  Height:  |  Size: 66 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

View File

@ -7,7 +7,7 @@ description: >
Мессенджеры вроде Telegram, Signal, Whatsapp не могут быть приватными из-за особенностей архитектуры — централизации. А одноранговые (p2p) сервисы такие как [Tox](https://tox.chat/) потребляют слишком много ресурсов и неудобны в использовании на мобильном устройстве.
Лучший выход — использовать **свой** почтовый сервер для [Delta.Chat](https://delta.chat). Delta.Chat — это мессенджер построенный на протоколе электронной почты.
Лучший выход — использовать **свой** почтовый сервер для [Delta Chat](https://delta.chat). Delta.Chat — это мессенджер построенный на протоколе электронной почты.
Если ваш собеседник не использует Delta.Chat, для него это будет обыкновенной почтовой перепиской.

View File

@ -1,8 +0,0 @@
---
title: "Теория"
linkTitle: "Теория"
weight: 5
date: 2023-05-09
description: >
Обсуждение различных аспектов проекта
---

View File

@ -1,32 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- Generator: Adobe Illustrator 13.0.2, SVG Export Plug-In . SVG Version: 6.00 Build 14948) -->
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80px" height="15px" viewBox="0 0 80 15" enable-background="new 0 0 80 15" xml:space="preserve">
<g>
<g>
<rect fill="#FFFFFF" width="80" height="15"/>
</g>
<path d="M22.797,2C23.8,3.595,24.39,5.477,24.39,7.501c0,2.023-0.589,3.904-1.592,5.499H80V2H22.797z"/>
<g>
<path id="text2809_5_" d="M12.42,2.031c-3.137,0-3.926,2.959-3.926,5.469s0.787,5.469,3.926,5.469 c3.137,0,3.924-2.959,3.924-5.469S15.557,2.031,12.42,2.031z M12.42,4.094c0.127,0,0.242,0.02,0.352,0.047 c0.227,0.193,0.336,0.463,0.121,0.838l-2.09,3.838C10.738,8.33,10.729,7.855,10.729,7.5C10.729,6.395,10.807,4.094,12.42,4.094z M13.982,5.863c0.111,0.588,0.127,1.203,0.127,1.637c0,1.105-0.076,3.406-1.689,3.406c-0.127,0-0.244-0.012-0.354-0.039 c-0.02-0.006-0.039-0.014-0.061-0.021c-0.031-0.01-0.066-0.02-0.098-0.031c-0.359-0.154-0.586-0.43-0.26-0.92L13.982,5.863z"/>
<path d="M21.229,3.848c-0.465-1.152-1.143-2.172-2.035-3.066C18.907,0.496,18.607,0.241,18.302,0h-3.708 c1.248,0.348,2.367,1.009,3.354,1.998c0.736,0.736,1.299,1.576,1.684,2.516s0.578,1.936,0.578,2.986 c0,2.184-0.746,3.994-2.227,5.441c-0.771,0.746-1.635,1.32-2.596,1.717c-0.344,0.143-0.694,0.251-1.046,0.342h3.892 c0.336-0.257,0.664-0.529,0.972-0.834c0.895-0.871,1.57-1.871,2.021-3c0.465-1.143,0.693-2.363,0.693-3.666 C21.92,6.211,21.691,4.99,21.229,3.848z M6.957,12.975c-0.746-0.746-1.322-1.59-1.729-2.527c-0.396-0.951-0.6-1.93-0.6-2.947 c0-1.029,0.203-2.016,0.6-2.955c0.406-0.949,0.982-1.803,1.729-2.561C7.916,1.004,9.021,0.346,10.268,0H6.58 C6.289,0.235,6.004,0.484,5.732,0.762C4.816,1.676,4.117,2.721,3.631,3.887C3.156,5.041,2.92,6.244,2.92,7.5 c0,1.268,0.236,2.471,0.711,3.613s1.164,2.17,2.068,3.086C5.994,14.49,6.305,14.752,6.623,15h3.88 c-0.345-0.088-0.686-0.191-1.019-0.328C8.547,14.277,7.705,13.711,6.957,12.975z"/>
</g>
<g>
<path d="M80,0v15H0V0H80 M79.25,0.75H0.75v13.5h78.5V0.75L79.25,0.75z"/>
</g>
<g>
<path fill="#FFFFFF" d="M30.514,8.106c-0.279,0.233-0.678,0.35-1.197,0.35h-0.993v1.717h-0.991V5.398h2.05 c0.473,0,0.849,0.123,1.13,0.369s0.422,0.628,0.422,1.144C30.934,7.475,30.794,7.873,30.514,8.106z M29.753,6.387 c-0.127-0.106-0.304-0.159-0.531-0.159h-0.898v1.406h0.898c0.228,0,0.404-0.058,0.531-0.172c0.126-0.114,0.189-0.296,0.189-0.544 C29.942,6.669,29.879,6.492,29.753,6.387z"/>
<path fill="#FFFFFF" d="M31.733,5.398h1.015v2.933c0,0.328,0.038,0.567,0.116,0.718c0.12,0.268,0.383,0.401,0.787,0.401 c0.402,0,0.664-0.134,0.784-0.401c0.077-0.15,0.116-0.39,0.116-0.718V5.398h1.014v2.935c0,0.508-0.079,0.902-0.236,1.186 c-0.293,0.519-0.853,0.777-1.678,0.777c-0.826,0-1.387-0.259-1.682-0.777c-0.157-0.283-0.236-0.678-0.236-1.186V5.398z"/>
<path fill="#FFFFFF" d="M40.085,5.907c0.146,0.203,0.219,0.446,0.219,0.729c0,0.292-0.074,0.526-0.221,0.703 c-0.083,0.1-0.204,0.19-0.364,0.272c0.243,0.088,0.427,0.229,0.551,0.421s0.187,0.425,0.187,0.699 c0,0.283-0.071,0.537-0.213,0.761c-0.09,0.149-0.203,0.274-0.338,0.376c-0.152,0.117-0.332,0.196-0.539,0.24 c-0.208,0.043-0.433,0.064-0.675,0.064H36.54V5.398h2.308C39.43,5.407,39.842,5.577,40.085,5.907z M37.492,6.228V7.28h1.16 c0.208,0,0.376-0.039,0.505-0.118c0.13-0.079,0.194-0.219,0.194-0.419c0-0.223-0.086-0.369-0.257-0.44 c-0.147-0.05-0.335-0.075-0.563-0.075H37.492z M37.492,8.07v1.273h1.159c0.207,0,0.368-0.028,0.483-0.084 c0.209-0.104,0.313-0.303,0.313-0.597c0-0.248-0.101-0.419-0.304-0.512C39.031,8.1,38.872,8.073,38.667,8.07H37.492z"/>
<path fill="#FFFFFF" d="M41.313,5.398h0.998v3.916h2.384v0.858h-3.382V5.398z"/>
<path fill="#FFFFFF" d="M46.275,10.173h-0.991V5.398h0.991V10.173z"/>
<path fill="#FFFFFF" d="M47.665,5.897c0.385-0.393,0.874-0.59,1.468-0.59c0.795,0,1.376,0.264,1.743,0.791 c0.203,0.296,0.312,0.593,0.327,0.891h-0.998c-0.063-0.229-0.145-0.402-0.244-0.519c-0.178-0.207-0.441-0.311-0.79-0.311 c-0.355,0-0.636,0.146-0.841,0.438s-0.308,0.707-0.308,1.242s0.108,0.937,0.324,1.203c0.217,0.267,0.492,0.4,0.826,0.4 c0.342,0,0.603-0.114,0.782-0.344c0.1-0.123,0.182-0.308,0.247-0.554h0.991c-0.086,0.521-0.304,0.943-0.655,1.27 s-0.802,0.489-1.351,0.489c-0.68,0-1.214-0.221-1.603-0.661c-0.389-0.442-0.583-1.049-0.583-1.82 C47.002,6.991,47.224,6.349,47.665,5.897z"/>
<path fill="#FFFFFF" d="M54.797,5.502c0.335,0.11,0.606,0.312,0.813,0.606c0.167,0.237,0.28,0.494,0.341,0.771 s0.091,0.54,0.091,0.79c0,0.635-0.128,1.173-0.383,1.613c-0.346,0.594-0.88,0.891-1.602,0.891h-2.059V5.398h2.059 C54.354,5.403,54.601,5.438,54.797,5.502z M52.968,6.228v3.116h0.922c0.471,0,0.8-0.232,0.985-0.696 c0.102-0.255,0.152-0.559,0.152-0.91c0-0.486-0.076-0.859-0.229-1.119s-0.455-0.391-0.909-0.391H52.968z"/>
<path fill="#FFFFFF" d="M60.466,9.749c-0.36,0.371-0.882,0.557-1.564,0.557s-1.204-0.186-1.564-0.557 c-0.483-0.456-0.726-1.112-0.726-1.97c0-0.875,0.242-1.531,0.726-1.97c0.36-0.371,0.882-0.557,1.564-0.557 s1.204,0.186,1.564,0.557c0.481,0.438,0.722,1.095,0.722,1.97C61.188,8.637,60.947,9.293,60.466,9.749z M59.842,9.023 c0.232-0.292,0.349-0.706,0.349-1.244c0-0.535-0.116-0.949-0.349-1.242c-0.231-0.293-0.545-0.438-0.94-0.438 s-0.711,0.146-0.946,0.437c-0.235,0.292-0.353,0.706-0.353,1.244s0.117,0.952,0.353,1.244c0.235,0.291,0.551,0.437,0.946,0.437 S59.61,9.314,59.842,9.023z"/>
<path fill="#FFFFFF" d="M65.116,5.398h1.436v4.774h-0.929V6.943c0-0.093,0.001-0.223,0.003-0.39 c0.002-0.168,0.003-0.297,0.003-0.388l-0.904,4.007h-0.97l-0.898-4.007c0,0.091,0.001,0.22,0.003,0.388 c0.003,0.167,0.004,0.297,0.004,0.39v3.229h-0.93V5.398h1.451l0.869,3.754L65.116,5.398z"/>
<path fill="#FFFFFF" d="M68.84,5.398h1.129l1.689,4.774h-1.082l-0.314-0.981h-1.759l-0.323,0.981h-1.044L68.84,5.398z M68.774,8.369h1.223L69.395,6.49L68.774,8.369z"/>
<path fill="#FFFFFF" d="M73.175,10.173h-0.991V5.398h0.991V10.173z"/>
<path fill="#FFFFFF" d="M74.093,5.398h1.046l1.895,3.329V5.398h0.93v4.774h-0.997l-1.943-3.388v3.388h-0.93V5.398z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 6.1 KiB