beta #4
5
.gitignore
vendored
@ -1,3 +1,8 @@
|
|||||||
*.un~
|
*.un~
|
||||||
*.swp
|
*.swp
|
||||||
*.sh
|
*.sh
|
||||||
|
thsf.log
|
||||||
|
thsf_venv
|
||||||
|
build/
|
||||||
|
src/thsf.egg-info/
|
||||||
|
thsf.pid
|
||||||
|
6
.prettierrc
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
{
|
||||||
|
"arrowParens": "always",
|
||||||
|
"singleQuote": true,
|
||||||
|
"trailingComma": "es5",
|
||||||
|
"bracketSpacing": false
|
||||||
|
}
|
2
.vscode/settings.json
vendored
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
{
|
||||||
|
}
|
6
MANIFEST.in
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
global-exclude *.pyc
|
||||||
|
global-exclude build
|
||||||
|
global-exclude __pycache__
|
||||||
|
|
||||||
|
include src/thsf/templates/*.*
|
||||||
|
include src/thsf/static/**/*.*
|
45
Makefile
@ -1,4 +1,45 @@
|
|||||||
.PHONY: install
|
.PHONY: clean distclean install run stop
|
||||||
|
|
||||||
install:
|
install:
|
||||||
echo "We Make P0RN"
|
set -e ;\
|
||||||
|
THSF_DIR=$$(pwd); \
|
||||||
|
echo [+] Déploiement dans $$THSF_DIR; \
|
||||||
|
python3 -m venv thsf_venv; \
|
||||||
|
. thsf_venv/bin/activate; \
|
||||||
|
pip3 install -r requirements.txt ;\
|
||||||
|
pip3 install . ;\
|
||||||
|
pip3 install gunicorn; \
|
||||||
|
|
||||||
|
run:
|
||||||
|
set -e ;\
|
||||||
|
THSF_DIR=$$(pwd); \
|
||||||
|
echo [+] Démarrage dans $$THSF_DIR; \
|
||||||
|
. thsf_venv/bin/activate; \
|
||||||
|
thsf_venv/bin/gunicorn -D -p thsf.pid -w 4 -b 127.0.0.1:8042 'thsf:app'
|
||||||
|
|
||||||
|
debug:
|
||||||
|
set -e ;\
|
||||||
|
THSF_DIR=$$(pwd); \
|
||||||
|
echo [+] Démarrage dans $$THSF_DIR; \
|
||||||
|
. thsf_venv/bin/activate; \
|
||||||
|
thsf_venv/bin/gunicorn -p thsf.pid -w 4 -b 127.0.0.1:8042 'thsf:app'
|
||||||
|
|
||||||
|
stop:
|
||||||
|
-set -e;\
|
||||||
|
THSF_DIR=$$(pwd); \
|
||||||
|
echo [+] Arrêt dans $$THSF_DIR; \
|
||||||
|
kill -15 $$(cat $$THSF_DIR/thsf.pid); \
|
||||||
|
rm thsf.pid
|
||||||
|
|
||||||
|
clean:
|
||||||
|
-set -e ;\
|
||||||
|
THSF_DIR=$$(pwd); \
|
||||||
|
echo [+] Nettoyage dans $$THSF_DIR; \
|
||||||
|
rm -Rf ./build ./src/thsf.egg-info ./thsf.pid ./thsf.log; \
|
||||||
|
. thsf_venv/bin/activate; \
|
||||||
|
pip3 uninstall thsf -y
|
||||||
|
|
||||||
|
distclean: clean
|
||||||
|
rm -Rf thsf_venv/
|
||||||
|
|
||||||
|
all: stop clean install run
|
||||||
|
84
NOTE.md
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
# API
|
||||||
|
|
||||||
|
## Récupérer l'évènement
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s -X GET -H "Authorization: Token <TOKEN>" https://23.thsf.net/api/events/
|
||||||
|
```
|
||||||
|
|
||||||
|
Réponse:
|
||||||
|
|
||||||
|
```json
|
||||||
|
[{"name":{"en":"Toulouse HackerSpace Factory","fr":"Toulouse HackerSpace Factory"},"slug":"thsf-2023","is_public":true,"date_from":"2023-05-26","date_to":"2023-05-28","timezone":"Europe/Paris","urls":{"base":"https://23.thsf.net/thsf-2023/","schedule":"https://23.thsf.net/thsf-2023/schedule/","login":"https://23.thsf.net/thsf-2023/login/","feed":"https://23.thsf.net/thsf-2023/schedule/feed.xml"}}]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Récupérer la liste des intervenants
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s -X GET -H "Authorization: Token <TOKEN>" https://23.thsf.net/api/speakes/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Récupérer la liste des salles
|
||||||
|
|
||||||
|
curl -s -X GET -H "Authorization: Token <TOKEN>" https://23.thsf.net/api/events/thsf-2023/rooms/
|
||||||
|
|
||||||
|
## Récupérer les versions des plannings de l'évènement
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s -X GET -H "Authorization: Token <TOKEN>" https://23.thsf.net/api/events/<EVENT>/schedules/
|
||||||
|
```
|
||||||
|
|
||||||
|
Réponse:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{"count":6,"next":null,"previous":null,"results":[{"version":"wip","published":null},{"version":"0.5","published":"2023-04-03T12:14:39.675671+02:00"},{"version":"0.4","published":"2023-04-03T10:07:41.632059+02:00"},{"version":"0.3","published":"2023-03-25T12:34:17.704819+01:00"},{"version":"0.2","published":"2023-03-25T12:21:23.464899+01:00"},{"version":"0.1","published":"2023-03-25T12:14:10.460100+01:00"}]}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Récupérer un planning spécifique
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -s -X GET -H "Authorization: Token <TOKEN>" https://23.thsf.net/api/events/thsf-2023/schedules/<version>/
|
||||||
|
```
|
||||||
|
|
||||||
|
Reponse:
|
||||||
|
|
||||||
|
```json
|
||||||
|
{
|
||||||
|
"slots": [
|
||||||
|
{
|
||||||
|
"code": "JHCFVE",
|
||||||
|
"speakers": [
|
||||||
|
{
|
||||||
|
"code": "BT9CDU",
|
||||||
|
"name": "Youssr Youssef",
|
||||||
|
"biography": "",
|
||||||
|
"avatar": "https://23.thsf.net/media/avatars/YoussrYoussef_408QSEG.jpeg"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"title": "René Carmille, un hacker sous l'Occupation",
|
||||||
|
"submission_type": {
|
||||||
|
"en": "Screening",
|
||||||
|
"fr": "Projection"
|
||||||
|
},
|
||||||
|
"track": null,
|
||||||
|
"state": "confirmed",
|
||||||
|
"abstract": "Entre collaboration et résistance, confronté aux premiers enjeux modernes de la collecte de données en masse, la trajectoire étonnante de René Carmille n'a encore jamais été racontée... Son héritage est pourtant majeur, les questions qu'il soulève le sont tout autant. \r\nSous l’Occupation, le polytechnicien René Carmille est le précurseur de l'usage massif des données en France : c'est lui qui a mis en place et dirigé le Service national de statistiques (SNS) qui deviendra plus tard l'INSEE, c'est aussi lui qui a inventé notre numéro de sécurité sociale.\r\n\r\nLa projection du documentaire sera suivie d'une rencontre en visioconférence avec la réalisatrice.",
|
||||||
|
"description": "",
|
||||||
|
"duration": 80,
|
||||||
|
"slot_count": 1,
|
||||||
|
"do_not_record": false,
|
||||||
|
"is_featured": true,
|
||||||
|
"content_locale": "fr",
|
||||||
|
"slot": {
|
||||||
|
"room": {
|
||||||
|
"en": "Salle 1 Cinema",
|
||||||
|
"fr": "Salle 1 Cinema"
|
||||||
|
},
|
||||||
|
"start": "2023-05-27T11:30:00+02:00",
|
||||||
|
"end": "2023-05-27T12:50:00+02:00"
|
||||||
|
},
|
||||||
|
"image": "https://23.thsf.net/media/thsf-2023/submissions/JHCFVE/Carmille-1-scaled_p0gxA6D.jpeg",
|
||||||
|
"resources": []
|
||||||
|
},
|
||||||
|
...
|
||||||
|
```
|
@ -4,7 +4,7 @@ Le site du THSF
|
|||||||
|
|
||||||
## Modifier le site
|
## Modifier le site
|
||||||
|
|
||||||
Il n'est **pas possible** de pousser directement des modifcations sur la branche `master`.
|
Il n'est **pas possible** de pousser directement des modifications sur la branche `master`.
|
||||||
|
|
||||||
Pour modifier le site, il est nécessaire de créer une branche spécifique et d'y pousser vos modifications.
|
Pour modifier le site, il est nécessaire de créer une branche spécifique et d'y pousser vos modifications.
|
||||||
|
|
||||||
@ -16,9 +16,9 @@ Lorsque la demande de fusion sera acceptée (vous pouvez auto-accepter vos deman
|
|||||||
|
|
||||||
### Personnalisation de la publication
|
### Personnalisation de la publication
|
||||||
|
|
||||||
Afin de rendre le processus plus souple, il est possible de personnaliser la livraison en plaçant **à la racine du dépôt** un fichier `Makefile` contenant une cible `install` qui sera systématiquement executée.
|
Afin de rendre le processus plus souple, il est possible de personnaliser la livraison en plaçant **à la racine du dépôt** un fichier `Makefile` contenant une cible `all` qui sera systématiquement exécutée.
|
||||||
|
|
||||||
C'est dans cette cible `install` que vous pourrez mettre toutes vos commandes personnalisées, typiquement l'installation de modules `npm`.
|
C'est dans cette cible `all` que vous pourrez mettre toutes vos commandes personnalisées, typiquement l'installation de modules `python`, etc.
|
||||||
|
|
||||||
Le processus de publication est le suivant:
|
Le processus de publication est le suivant:
|
||||||
|
|
||||||
@ -26,7 +26,7 @@ Le processus de publication est le suivant:
|
|||||||
|
|
||||||
2. La branche `master` du présent dépôt est cloné sur le serveur hébergeant le site du **THSF**
|
2. La branche `master` du présent dépôt est cloné sur le serveur hébergeant le site du **THSF**
|
||||||
|
|
||||||
3. Si un fichier `Makefile` se trouve **à la racine du dépôt**, la cible `install` (i.e: `make install`) est automatiquement exécutée.
|
3. Si un fichier `Makefile` se trouve **à la racine du dépôt**, la cible `all` (i.e: `make all`) est automatiquement exécutée.
|
||||||
|
|
||||||
|
|
||||||
## Contrôle de qualité et tests
|
## Contrôle de qualité et tests
|
||||||
|
65
config.yml
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
---
|
||||||
|
log:
|
||||||
|
version: 1
|
||||||
|
formatters:
|
||||||
|
default:
|
||||||
|
format: '[%(asctime)-20s][%(levelname)-8s][%(funcName)-20s]: %(message)s'
|
||||||
|
handlers:
|
||||||
|
wsgi:
|
||||||
|
class: logging.FileHandler
|
||||||
|
filename: thsf.log
|
||||||
|
formatter: default
|
||||||
|
loggers:
|
||||||
|
thsf:
|
||||||
|
handlers: [wsgi]
|
||||||
|
propagate: no
|
||||||
|
root:
|
||||||
|
level: DEBUG
|
||||||
|
handlers: [wsgi]
|
||||||
|
app:
|
||||||
|
secret_key: xxx
|
||||||
|
languages:
|
||||||
|
- fr
|
||||||
|
name: THSF
|
||||||
|
real_url: https://www.thsf.net
|
||||||
|
pretalx:
|
||||||
|
url: https://23.thsf.net
|
||||||
|
apiprefix: api
|
||||||
|
apikey: bb770a53b15467dfb67c03d178004aca9e4819d6
|
||||||
|
event: thsf-2023
|
||||||
|
schedule: wip
|
||||||
|
navbar:
|
||||||
|
items:
|
||||||
|
- name: Home
|
||||||
|
classes: fa-solid fa-house
|
||||||
|
url: /
|
||||||
|
- name: Programme
|
||||||
|
classes: fa-regular fa-calendar
|
||||||
|
url: /planning
|
||||||
|
- name: Lieu
|
||||||
|
classes: fa-solid fa-map-location-dot
|
||||||
|
url: /place
|
||||||
|
- name: Restauration
|
||||||
|
classes: fa-solid fa-burger
|
||||||
|
url: /food
|
||||||
|
- name: Goodies
|
||||||
|
classes: fa-solid fa-shirt
|
||||||
|
url: /goodies
|
||||||
|
- name: Concerts & DJ Sets
|
||||||
|
classes: fa-solid fa-guitar
|
||||||
|
url: /concerts
|
||||||
|
- name: Ateliers
|
||||||
|
classes: fa-solid fa-screwdriver-wrench
|
||||||
|
url: /workshops
|
||||||
|
- name: Projections
|
||||||
|
classes: fa-solid fa-film
|
||||||
|
url: /screenings
|
||||||
|
- name: Tables rondes
|
||||||
|
classes: fa-solid fa-users-line
|
||||||
|
url: /discussions
|
||||||
|
- name: Installations artistiques
|
||||||
|
classes: fa-solid fa-palette
|
||||||
|
url: /exhibitions
|
||||||
|
- name: Présentations
|
||||||
|
classes: fa-solid fa-person-chalkboard
|
||||||
|
url: /talks
|
Before Width: | Height: | Size: 81 KiB |
34
index.html
@ -1,34 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html lang='zxx'>
|
|
||||||
<head>
|
|
||||||
<title>THSF 2023: Extractivisme</title>
|
|
||||||
<meta name="viewport" content="initial-scale=1.0" />
|
|
||||||
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
|
|
||||||
<link rel="stylesheet" type="text/css" href="./styles/main.css" />
|
|
||||||
<link rel="icon" type="image/png" href="/images/favicon.png" />
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<ul>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li>Extraction in progress...</li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li>Extraction in progress...</li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li>Extraction in progress...</li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li>Extraction in progress...</li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
<li></li>
|
|
||||||
</ul>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
10
pyproject.toml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
[build-system]
|
||||||
|
requires = ["setuptools>=62",
|
||||||
|
"build",
|
||||||
|
"wheel"]
|
||||||
|
build-backend = "setuptools.build_meta"
|
||||||
|
|
||||||
|
[tool.pytest.ini_options]
|
||||||
|
pythonpath = [
|
||||||
|
"src"
|
||||||
|
]
|
7
requirements.txt
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
build
|
||||||
|
wheel
|
||||||
|
flask
|
||||||
|
Flask-Minify
|
||||||
|
gunicorn
|
||||||
|
pyYAML
|
||||||
|
requests
|
611
resources/THSF23_WEBSITE_BANNER.svg
Normal file
@ -0,0 +1,611 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 27.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Calque_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 756 611.76" style="enable-background:new 0 0 756 611.76;" xml:space="preserve">
|
||||||
|
<style type="text/css">
|
||||||
|
.st0{fill:#E5006D;}
|
||||||
|
.st1{fill:#FFFFFF;}
|
||||||
|
.st2{fill:url(#SVGID_1_);}
|
||||||
|
.st3{fill:url(#SVGID_00000080208031039852088860000012736015428469503665_);}
|
||||||
|
</style>
|
||||||
|
<g id="Calque_2_00000062903287396250667820000015008425281140850568_">
|
||||||
|
<rect x="-10.25" y="-9.84" class="st0" width="776.35" height="632.15"/>
|
||||||
|
</g>
|
||||||
|
<g id="Calque_1_00000168107049754406420960000008902215559746130366_">
|
||||||
|
<g>
|
||||||
|
<path d="M366.84,248.03c0,0-1.98-15.18-13.55-29.89l-19.59,33.94c6.6,3.81,12.93,8.09,18.92,12.76
|
||||||
|
C356.17,261.41,363.92,253.08,366.84,248.03z"/>
|
||||||
|
<path d="M315.4,219.95c0,0-9.31-12.16-26.68-19.11v39.19c7.62,0,15.25,0.54,22.77,1.59C312.84,236.87,315.4,225.78,315.4,219.95z"
|
||||||
|
/>
|
||||||
|
<path d="M256.81,221.35c0,0-14.14-5.88-32.66-3.21l19.59,33.94c6.6-3.81,13.47-7.16,20.51-10.01
|
||||||
|
C263.06,237.28,259.73,226.4,256.81,221.35z"/>
|
||||||
|
<path d="M206.77,251.86c0,0-15.18,1.98-29.89,13.55L210.82,285c3.81-6.6,8.09-12.93,12.76-18.92
|
||||||
|
C220.15,262.53,211.82,254.78,206.77,251.86z"/>
|
||||||
|
<path d="M178.69,303.3c0,0-12.16,9.31-19.11,26.68h39.19c0-7.62,0.54-15.25,1.59-22.77C195.61,305.86,184.52,303.3,178.69,303.3z"
|
||||||
|
/>
|
||||||
|
<path d="M180.09,361.89c0,0-5.88,14.14-3.21,32.66l33.94-19.59c-3.81-6.6-7.16-13.47-10.01-20.51
|
||||||
|
C196.03,355.64,185.14,358.97,180.09,361.89z"/>
|
||||||
|
<path d="M210.6,411.93c0,0,1.98,15.18,13.55,29.89l19.59-33.94c-6.6-3.81-12.93-8.09-18.92-12.76
|
||||||
|
C221.28,398.55,213.52,406.88,210.6,411.93z"/>
|
||||||
|
<path d="M262.04,440.01c0,0,9.31,12.16,26.68,19.11v-39.19c-7.62,0-15.25-0.54-22.77-1.59
|
||||||
|
C264.6,423.09,262.04,434.18,262.04,440.01z"/>
|
||||||
|
<path d="M320.63,438.61c0,0,14.14,5.88,32.66,3.21l-19.59-33.94c-6.6,3.81-13.47,7.16-20.51,10.01
|
||||||
|
C314.38,422.67,317.72,433.56,320.63,438.61z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path d="M554.34,395.12c-5.99,4.67-12.32,8.95-18.92,12.76l19.59,33.94c11.57-14.7,13.55-29.89,13.55-29.89
|
||||||
|
C565.65,406.88,557.89,398.55,554.34,395.12z"/>
|
||||||
|
<path d="M513.21,418.34c-7.52,1.05-15.14,1.59-22.77,1.59v39.19c17.37-6.95,26.68-19.11,26.68-19.11
|
||||||
|
C517.12,434.18,514.57,423.09,513.21,418.34z"/>
|
||||||
|
<path d="M465.98,417.88c-7.04-2.85-13.91-6.19-20.51-10.01l-19.59,33.94c18.52,2.67,32.66-3.21,32.66-3.21
|
||||||
|
C461.45,433.56,464.78,422.67,465.98,417.88z"/>
|
||||||
|
<path d="M426.55,264.84c5.99-4.67,12.32-8.95,18.92-12.76l-19.59-33.94c-11.57,14.7-13.55,29.89-13.55,29.89
|
||||||
|
C415.24,253.08,423,261.41,426.55,264.84z"/>
|
||||||
|
<path d="M467.68,241.62c7.52-1.05,15.14-1.59,22.77-1.59v-39.19c-17.37,6.95-26.68,19.11-26.68,19.11
|
||||||
|
C463.77,225.78,466.32,236.87,467.68,241.62z"/>
|
||||||
|
<path d="M514.91,242.07c7.04,2.85,13.91,6.19,20.51,10.01l19.59-33.94c-18.52-2.67-32.66,3.21-32.66,3.21
|
||||||
|
C519.44,226.4,516.11,237.28,514.91,242.07z"/>
|
||||||
|
<path d="M555.58,266.08c4.67,5.99,8.95,12.32,12.76,18.92l33.94-19.59c-14.7-11.57-29.89-13.55-29.89-13.55
|
||||||
|
C567.34,254.78,559.02,262.53,555.58,266.08z"/>
|
||||||
|
<path d="M578.8,307.21c1.05,7.52,1.59,15.14,1.59,22.77h39.19c-6.95-17.37-19.11-26.68-19.11-26.68
|
||||||
|
C594.64,303.3,583.55,305.86,578.8,307.21z"/>
|
||||||
|
<path d="M578.35,354.44c-2.85,7.04-6.19,13.91-10.01,20.51l33.94,19.59c2.67-18.52-3.21-32.66-3.21-32.66
|
||||||
|
C594.02,358.97,583.14,355.64,578.35,354.44z"/>
|
||||||
|
</g>
|
||||||
|
<path class="st0" d="M490.45,424.51c-6.39,0-12.79-0.65-19.03-1.92c-6.08-1.24-12.06-3.1-17.78-5.52
|
||||||
|
c-5.6-2.37-11.01-5.3-16.07-8.72c-5-3.38-9.7-7.26-13.97-11.53l-34.02-34.02l-34.02,34.02c-4.27,4.27-8.97,8.15-13.97,11.53
|
||||||
|
c-5.06,3.42-10.46,6.35-16.07,8.72c-5.72,2.42-11.7,4.27-17.78,5.52c-6.23,1.27-12.63,1.92-19.03,1.92s-12.79-0.65-19.03-1.92
|
||||||
|
c-6.08-1.24-12.06-3.1-17.78-5.52c-5.6-2.37-11.01-5.3-16.07-8.72c-5-3.38-9.7-7.26-13.97-11.53s-8.15-8.97-11.53-13.98
|
||||||
|
c-3.41-5.05-6.35-10.46-8.72-16.07c-2.42-5.71-4.27-11.69-5.52-17.78c-1.27-6.23-1.92-12.63-1.92-19.03c0-0.03,0-0.05,0-0.08
|
||||||
|
c0.01-6.38,0.65-12.75,1.92-18.95c1.25-6.08,3.1-12.06,5.52-17.78c2.37-5.6,5.3-11.01,8.72-16.07c3.38-5,7.26-9.7,11.53-13.97
|
||||||
|
s8.97-8.15,13.97-11.53c5.06-3.42,10.46-6.35,16.07-8.72c5.72-2.42,11.7-4.27,17.78-5.52c6.2-1.27,12.6-1.91,19.03-1.91
|
||||||
|
s12.83,0.64,19.03,1.91c6.08,1.24,12.06,3.1,17.78,5.52c5.61,2.37,11.01,5.31,16.07,8.72c5,3.38,9.7,7.26,13.97,11.53
|
||||||
|
c0,0,24.25,24.25,34.02,34.02l34.02-34.02c4.27-4.27,8.97-8.15,13.97-11.53c5.06-3.42,10.46-6.35,16.07-8.72
|
||||||
|
c5.72-2.42,11.7-4.27,17.78-5.52c6.23-1.27,12.63-1.92,19.03-1.92s12.8,0.65,19.03,1.92c6.08,1.24,12.06,3.1,17.78,5.52
|
||||||
|
c5.61,2.37,11.01,5.3,16.07,8.72c5,3.38,9.7,7.26,13.97,11.53c4.27,4.27,8.15,8.98,11.53,13.97c3.41,5.05,6.35,10.46,8.72,16.07
|
||||||
|
c2.42,5.71,4.27,11.69,5.52,17.78c1.27,6.23,1.92,12.63,1.92,19.02c0,6.4-0.65,12.8-1.92,19.03c-1.25,6.09-3.1,12.07-5.52,17.78
|
||||||
|
c-2.38,5.61-5.31,11.02-8.72,16.07c-3.38,5-7.26,9.7-11.53,13.97s-8.97,8.15-13.97,11.53c-5.06,3.42-10.46,6.35-16.07,8.72
|
||||||
|
c-5.72,2.42-11.7,4.27-17.78,5.52C503.24,423.86,496.84,424.51,490.45,424.51z M288.72,281.87c-3.28,0-6.55,0.33-9.72,0.98
|
||||||
|
c-3.08,0.63-6.11,1.57-9,2.79c-2.84,1.2-5.59,2.69-8.16,4.43c-2.55,1.72-4.95,3.71-7.14,5.89c-2.18,2.18-4.16,4.58-5.89,7.14
|
||||||
|
c-1.74,2.57-3.23,5.31-4.43,8.16c-1.22,2.89-2.16,5.92-2.79,9c-0.65,3.17-0.98,6.44-0.98,9.72s0.33,6.55,0.98,9.72
|
||||||
|
c0.63,3.08,1.57,6.11,2.79,9c1.2,2.85,2.69,5.59,4.43,8.16c1.72,2.55,3.71,4.95,5.89,7.14c2.18,2.18,4.58,4.16,7.14,5.89
|
||||||
|
c2.57,1.74,5.32,3.23,8.16,4.43c2.89,1.22,5.92,2.16,9,2.79c3.15,0.65,6.42,0.97,9.72,0.97s6.57-0.33,9.72-0.97
|
||||||
|
c3.08-0.63,6.11-1.57,9-2.79c2.85-1.2,5.59-2.7,8.16-4.43c1.69-1.14,4.97-3.91,7.22-5.98l33.93-33.93l-34.02-34.02
|
||||||
|
c-2.18-2.18-4.58-4.16-7.14-5.89c-2.57-1.74-5.32-3.23-8.16-4.43c-2.89-1.22-5.92-2.16-9-2.79
|
||||||
|
C295.27,282.2,292,281.87,288.72,281.87z M456.43,364c2.18,2.18,4.58,4.16,7.14,5.89c2.57,1.74,5.32,3.23,8.16,4.43
|
||||||
|
c2.89,1.22,5.92,2.16,9,2.79c3.16,0.65,6.43,0.97,9.72,0.97s6.57-0.33,9.72-0.97c3.08-0.63,6.1-1.57,9-2.79
|
||||||
|
c2.84-1.2,5.59-2.69,8.17-4.43c2.55-1.73,4.95-3.71,7.13-5.89c2.18-2.18,4.17-4.58,5.89-7.14c1.74-2.57,3.23-5.32,4.43-8.16
|
||||||
|
c1.22-2.9,2.16-5.92,2.79-9c0.65-3.17,0.98-6.44,0.98-9.72s-0.33-6.55-0.98-9.72c-0.63-3.07-1.57-6.1-2.79-9
|
||||||
|
c-1.2-2.85-2.7-5.59-4.43-8.16c-1.73-2.56-3.71-4.96-5.89-7.14c-2.18-2.18-4.58-4.17-7.14-5.89c-2.57-1.74-5.32-3.23-8.16-4.43
|
||||||
|
c-2.89-1.22-5.92-2.16-9-2.79c-3.16-0.65-6.43-0.97-9.72-0.97s-6.57,0.33-9.72,0.97c-3.08,0.63-6.1,1.57-9,2.79
|
||||||
|
c-2.85,1.2-5.59,2.69-8.16,4.43c-2.54,1.72-4.94,3.7-7.13,5.88l-34.03,34.03L456.43,364z"/>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<path class="st1" d="M410.96,43.04c-2.16,0-3.88,0.88-5.14,2.63c-1.27,1.75-1.9,4.57-1.9,8.46l-5.69-1.05
|
||||||
|
c0-4.97,1.06-8.79,3.17-11.47c2.11-2.68,5.35-4.04,9.7-4.11c4.54,0,7.79,1.32,9.75,3.97s2.94,6.14,2.94,10.48
|
||||||
|
c0,2.81-0.27,5.41-0.79,7.8c-0.53,2.39-1.42,4.8-2.66,7.23l-15.67,32.25h18.66v5.35h-25v-5.26l17.35-35.64
|
||||||
|
c0.87-1.85,1.45-3.74,1.73-5.69c0.28-1.94,0.42-3.97,0.42-6.07c0-1.08-0.08-2.16-0.23-3.25c-0.15-1.08-0.48-2.04-0.97-2.87
|
||||||
|
c-0.49-0.83-1.19-1.5-2.08-2.01C413.63,43.3,412.44,43.04,410.96,43.04z"/>
|
||||||
|
<path class="st1" d="M457.56,93.02c0,2.04-0.34,3.82-1.02,5.35s-1.6,2.8-2.74,3.82c-1.15,1.02-2.48,1.78-4,2.29
|
||||||
|
s-3.11,0.76-4.79,0.76s-3.27-0.26-4.79-0.76c-1.52-0.51-2.85-1.27-4-2.29c-1.15-1.02-2.06-2.29-2.74-3.82s-1.02-3.31-1.02-5.35
|
||||||
|
V49.83c0-1.97,0.34-3.74,1.02-5.3c0.68-1.56,1.6-2.85,2.74-3.87c1.15-1.02,2.48-1.8,4-2.34s3.11-0.81,4.79-0.81
|
||||||
|
c3.53,0,6.51,1.05,8.92,3.15c2.42,2.1,3.63,5.16,3.63,9.17L457.56,93.02L457.56,93.02z M451.87,49.65c0-2.04-0.63-3.65-1.9-4.83
|
||||||
|
s-2.89-1.77-4.86-1.77c-2.04,0-3.71,0.59-5,1.77c-1.3,1.18-1.95,2.79-1.95,4.83V93.3c0,2.04,0.65,3.65,1.95,4.83
|
||||||
|
c1.3,1.18,2.96,1.77,5,1.77c1.98,0,3.6-0.59,4.86-1.77c1.27-1.18,1.9-2.79,1.9-4.83V49.65z"/>
|
||||||
|
<path class="st1" d="M479.44,43.04c-2.16,0-3.88,0.88-5.14,2.63c-1.27,1.75-1.9,4.57-1.9,8.46l-5.69-1.05
|
||||||
|
c0-4.97,1.06-8.79,3.17-11.47c2.11-2.68,5.35-4.04,9.7-4.11c4.54,0,7.79,1.32,9.75,3.97s2.94,6.14,2.94,10.48
|
||||||
|
c0,2.81-0.27,5.41-0.79,7.8c-0.53,2.39-1.42,4.8-2.66,7.23l-15.67,32.25h18.66v5.35h-25v-5.26l17.35-35.64
|
||||||
|
c0.87-1.85,1.45-3.74,1.73-5.69c0.28-1.94,0.42-3.97,0.42-6.07c0-1.08-0.08-2.16-0.23-3.25c-0.15-1.08-0.48-2.04-0.97-2.87
|
||||||
|
c-0.49-0.83-1.19-1.5-2.08-2.01C482.11,43.3,480.92,43.04,479.44,43.04z"/>
|
||||||
|
<path class="st1" d="M525.95,91.66c0,4.59-1.17,8.01-3.5,10.24c-2.33,2.23-5.43,3.35-9.28,3.35c-4.29,0-7.46-1.21-9.52-3.63
|
||||||
|
c-2.05-2.42-3.02-5.92-2.89-10.51l5.69-1.15c-0.13,3.06,0.33,5.48,1.35,7.26c1.03,1.78,2.88,2.68,5.55,2.68
|
||||||
|
c1.99,0,3.65-0.61,4.99-1.82c1.34-1.22,2.01-3.26,2.01-6.14V81.3c0-3.07-0.61-5.26-1.82-6.57s-3-1.97-5.36-1.97h-2.71v-5.35
|
||||||
|
h2.89c2.24,0,3.97-0.6,5.18-1.81s1.82-3.27,1.82-6.19v-8.95c0-1.02-0.11-1.97-0.33-2.85c-0.22-0.89-0.59-1.67-1.12-2.33
|
||||||
|
c-0.53-0.67-1.21-1.2-2.05-1.62c-0.84-0.41-1.88-0.62-3.13-0.62c-2.55,0-4.4,0.91-5.55,2.72c-1.15,1.82-1.73,4.16-1.73,7.02
|
||||||
|
c-0.19-0.06-0.55-0.13-1.07-0.19c-0.53-0.06-1.12-0.14-1.77-0.24c-0.65-0.1-1.25-0.19-1.77-0.29c-0.53-0.1-0.89-0.14-1.07-0.14
|
||||||
|
c0.06-2.1,0.37-4.03,0.93-5.78s1.4-3.26,2.52-4.54c1.12-1.27,2.5-2.28,4.15-3.01s3.56-1.1,5.74-1.1c2.24,0,4.12,0.33,5.64,1
|
||||||
|
s2.75,1.59,3.69,2.77c0.93,1.18,1.6,2.56,2.01,4.15c0.4,1.59,0.61,3.31,0.61,5.15v7.73c0,1.21-0.06,2.39-0.19,3.53
|
||||||
|
c-0.13,1.15-0.39,2.21-0.79,3.2c-0.41,0.99-0.98,1.89-1.73,2.72s-1.74,1.53-2.99,2.1v0.19c1.31,0.51,2.33,1.16,3.08,1.96
|
||||||
|
c0.75,0.8,1.32,1.72,1.73,2.78c0.4,1.05,0.65,2.22,0.75,3.49c0.09,1.28,0.14,2.65,0.14,4.11L525.95,91.66z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st1" d="M250.72,114.74v21.1h-1.35v-21.1h-4.14v-1.25h9.62v1.25H250.72z"/>
|
||||||
|
<path class="st1" d="M259.74,119.91c1.15,0,2.03,0.22,2.64,0.67c0.61,0.45,1.03,1.02,1.26,1.7c0.1,0.28,0.18,0.65,0.24,1.11
|
||||||
|
c0.05,0.46,0.09,0.96,0.13,1.51c0.03,0.55,0.05,1.1,0.05,1.67s0,1.1,0,1.59v0.48c0,0.56-0.01,1.12-0.02,1.7
|
||||||
|
c-0.01,0.58-0.05,1.21-0.11,1.89c-0.06,0.75-0.24,1.37-0.52,1.86s-0.63,0.88-1.04,1.17s-0.85,0.49-1.34,0.61
|
||||||
|
c-0.48,0.12-0.95,0.18-1.42,0.18c-1.26,0-2.2-0.26-2.82-0.79s-1.04-1.19-1.27-2.01c-0.06-0.26-0.12-0.58-0.16-0.98
|
||||||
|
c-0.04-0.4-0.07-0.83-0.09-1.3c-0.02-0.47-0.03-0.95-0.03-1.45c0-0.49,0-0.95,0-1.38c0-0.58,0-1.15,0.02-1.72
|
||||||
|
c0.01-0.57,0.03-1.11,0.06-1.62s0.08-0.98,0.14-1.4s0.14-0.75,0.22-1.01c0.27-0.75,0.73-1.35,1.38-1.81
|
||||||
|
C257.71,120.14,258.61,119.91,259.74,119.91z M259.68,121.16c-0.55,0-1.07,0.11-1.58,0.34c-0.5,0.22-0.88,0.66-1.13,1.3
|
||||||
|
c-0.17,0.43-0.27,1.1-0.32,2.01c-0.04,0.91-0.06,1.96-0.06,3.16v0.8c0,1.03,0.02,1.89,0.05,2.6s0.11,1.25,0.24,1.64
|
||||||
|
c0.19,0.58,0.51,1.02,0.96,1.33c0.45,0.31,1.07,0.47,1.84,0.47c0.69,0,1.29-0.19,1.8-0.58c0.5-0.39,0.84-0.92,1.01-1.61
|
||||||
|
c0.08-0.36,0.14-0.94,0.17-1.73s0.05-1.64,0.05-2.54c0-0.47-0.01-0.97-0.02-1.51c-0.01-0.53-0.02-1.05-0.03-1.54
|
||||||
|
s-0.04-0.94-0.08-1.33s-0.09-0.7-0.16-0.92c-0.19-0.64-0.53-1.12-1.02-1.43C260.9,121.32,260.33,121.16,259.68,121.16z"/>
|
||||||
|
<path class="st1" d="M273.77,134.07h-0.09c-0.36,0.62-0.83,1.11-1.41,1.46c-0.59,0.35-1.24,0.53-1.98,0.53
|
||||||
|
c-0.71,0-1.31-0.11-1.79-0.34c-0.48-0.22-0.86-0.53-1.14-0.92c-0.28-0.39-0.49-0.83-0.61-1.35s-0.19-1.06-0.19-1.64V120.1h1.35
|
||||||
|
v11.27c0,0.49,0.04,0.94,0.13,1.35c0.08,0.41,0.23,0.75,0.43,1.04c0.2,0.29,0.48,0.52,0.83,0.69c0.36,0.17,0.81,0.26,1.36,0.26
|
||||||
|
c0.48,0,0.92-0.1,1.31-0.3s0.71-0.47,0.98-0.8c0.26-0.33,0.47-0.71,0.61-1.14c0.15-0.43,0.22-0.87,0.22-1.32V120.1h1.35v15.73
|
||||||
|
h-1.35L273.77,134.07L273.77,134.07z"/>
|
||||||
|
<path class="st1" d="M278.03,112.52h1.35v19.62c0,0.81,0.13,1.46,0.39,1.94s0.79,0.72,1.58,0.72h0.38v1.25h-0.47
|
||||||
|
c-1.05,0-1.84-0.26-2.4-0.77c-0.55-0.51-0.83-1.46-0.83-2.83L278.03,112.52L278.03,112.52z"/>
|
||||||
|
<path class="st1" d="M287.36,119.91c1.15,0,2.03,0.22,2.64,0.67c0.61,0.45,1.03,1.02,1.26,1.7c0.1,0.28,0.18,0.65,0.24,1.11
|
||||||
|
c0.05,0.46,0.09,0.96,0.13,1.51c0.03,0.55,0.05,1.1,0.05,1.67s0,1.1,0,1.59v0.48c0,0.56-0.01,1.12-0.02,1.7
|
||||||
|
c-0.01,0.58-0.05,1.21-0.11,1.89c-0.06,0.75-0.24,1.37-0.52,1.86s-0.63,0.88-1.04,1.17s-0.85,0.49-1.34,0.61
|
||||||
|
c-0.48,0.12-0.95,0.18-1.42,0.18c-1.26,0-2.2-0.26-2.82-0.79s-1.04-1.19-1.27-2.01c-0.06-0.26-0.12-0.58-0.16-0.98
|
||||||
|
s-0.07-0.83-0.09-1.3s-0.03-0.95-0.03-1.45c0-0.49,0-0.95,0-1.38c0-0.58,0-1.15,0.02-1.72c0.01-0.57,0.03-1.11,0.06-1.62
|
||||||
|
s0.08-0.98,0.14-1.4c0.06-0.42,0.14-0.75,0.22-1.01c0.27-0.75,0.73-1.35,1.38-1.81C285.33,120.14,286.23,119.91,287.36,119.91z
|
||||||
|
M287.3,121.16c-0.55,0-1.07,0.11-1.58,0.34c-0.5,0.22-0.88,0.66-1.13,1.3c-0.17,0.43-0.27,1.1-0.32,2.01
|
||||||
|
c-0.04,0.91-0.06,1.96-0.06,3.16v0.8c0,1.03,0.02,1.89,0.05,2.6s0.11,1.25,0.24,1.64c0.19,0.58,0.51,1.02,0.96,1.33
|
||||||
|
c0.45,0.31,1.07,0.47,1.84,0.47c0.69,0,1.29-0.19,1.8-0.58c0.5-0.39,0.84-0.92,1.01-1.61c0.08-0.36,0.14-0.94,0.17-1.73
|
||||||
|
s0.05-1.64,0.05-2.54c0-0.47-0.01-0.97-0.02-1.51c-0.01-0.53-0.02-1.05-0.03-1.54s-0.04-0.94-0.08-1.33s-0.09-0.7-0.16-0.92
|
||||||
|
c-0.19-0.64-0.53-1.12-1.02-1.43C288.52,121.32,287.95,121.16,287.3,121.16z"/>
|
||||||
|
<path class="st1" d="M301.39,134.07h-0.09c-0.36,0.62-0.83,1.11-1.41,1.46c-0.59,0.35-1.24,0.53-1.98,0.53
|
||||||
|
c-0.71,0-1.31-0.11-1.79-0.34c-0.48-0.22-0.86-0.53-1.14-0.92c-0.28-0.39-0.49-0.83-0.61-1.35s-0.19-1.06-0.19-1.64V120.1h1.35
|
||||||
|
v11.27c0,0.49,0.04,0.94,0.13,1.35c0.08,0.41,0.23,0.75,0.43,1.04c0.2,0.29,0.48,0.52,0.83,0.69c0.36,0.17,0.81,0.26,1.36,0.26
|
||||||
|
c0.48,0,0.92-0.1,1.31-0.3s0.71-0.47,0.98-0.8c0.26-0.33,0.47-0.71,0.61-1.14c0.15-0.43,0.22-0.87,0.22-1.32V120.1h1.35v15.73
|
||||||
|
h-1.35L301.39,134.07L301.39,134.07z"/>
|
||||||
|
<path class="st1" d="M306.25,131.85c0,0.9,0.25,1.62,0.74,2.15c0.49,0.54,1.18,0.8,2.06,0.8c1.11,0,1.88-0.27,2.3-0.8
|
||||||
|
c0.42-0.54,0.63-1.29,0.63-2.25c0-0.47-0.04-0.87-0.11-1.21c-0.07-0.33-0.21-0.63-0.42-0.9c-0.21-0.27-0.5-0.51-0.88-0.74
|
||||||
|
c-0.38-0.22-0.88-0.46-1.5-0.69c-0.81-0.32-1.48-0.64-2.01-0.97c-0.52-0.32-0.92-0.66-1.21-1.01c-0.28-0.35-0.48-0.72-0.58-1.11
|
||||||
|
c-0.1-0.39-0.16-0.79-0.16-1.22c0-1.18,0.33-2.14,1-2.9s1.72-1.13,3.17-1.13c1.32,0,2.34,0.34,3.06,1.03
|
||||||
|
c0.72,0.68,1.08,1.68,1.08,2.99l-1.41,0.23c0-0.96-0.25-1.7-0.74-2.22s-1.18-0.77-2.06-0.77c-0.55,0-1,0.08-1.36,0.24
|
||||||
|
c-0.36,0.16-0.64,0.37-0.84,0.63c-0.2,0.26-0.34,0.55-0.43,0.87c-0.08,0.32-0.13,0.65-0.13,1c0,0.34,0.04,0.65,0.13,0.93
|
||||||
|
c0.08,0.28,0.25,0.54,0.49,0.79s0.59,0.49,1.03,0.72c0.44,0.24,1.01,0.48,1.71,0.74c0.8,0.3,1.43,0.61,1.9,0.93
|
||||||
|
c0.46,0.32,0.82,0.67,1.06,1.05c0.24,0.38,0.4,0.78,0.47,1.22s0.11,0.92,0.11,1.43c0,0.64-0.07,1.23-0.22,1.77
|
||||||
|
s-0.39,1-0.72,1.38c-0.34,0.39-0.77,0.69-1.31,0.9c-0.54,0.21-1.19,0.32-1.97,0.32c-1.34,0-2.38-0.33-3.1-0.98
|
||||||
|
s-1.11-1.65-1.15-3L306.25,131.85z"/>
|
||||||
|
<path class="st1" d="M319.71,119.91c1.25,0,2.22,0.33,2.92,0.98s1.08,1.59,1.14,2.81c0.02,0.24,0.03,0.47,0.03,0.69
|
||||||
|
s0,0.46,0,0.69v3.11h-7.15v1.03c0,0.68,0.02,1.4,0.05,2.13s0.11,1.29,0.24,1.65c0.19,0.56,0.49,1,0.91,1.32s0.98,0.48,1.69,0.48
|
||||||
|
c0.94,0,1.64-0.28,2.08-0.83c0.45-0.56,0.71-1.24,0.77-2.05l1.35,0.26c-0.1,1.26-0.53,2.23-1.28,2.89s-1.72,1-2.9,1
|
||||||
|
c-0.62,0-1.17-0.08-1.64-0.24s-0.86-0.37-1.17-0.63c-0.31-0.26-0.56-0.55-0.75-0.88s-0.32-0.68-0.41-1.04
|
||||||
|
c-0.06-0.26-0.11-0.59-0.16-1c-0.04-0.41-0.07-0.84-0.08-1.3c-0.01-0.46-0.02-0.94-0.03-1.43c-0.01-0.49-0.02-0.95-0.02-1.38
|
||||||
|
c0-0.58,0-1.16,0.02-1.73c0.01-0.58,0.03-1.12,0.06-1.64c0.03-0.51,0.08-0.98,0.14-1.41c0.06-0.43,0.14-0.77,0.22-1.03
|
||||||
|
c0.27-0.75,0.72-1.34,1.34-1.78C317.71,120.13,318.59,119.91,319.71,119.91z M317,122.84c-0.15,0.37-0.24,0.91-0.27,1.63
|
||||||
|
c-0.03,0.72-0.06,1.58-0.08,2.57h5.83v-1.97c0-0.5-0.03-0.98-0.08-1.45s-0.18-0.89-0.38-1.26s-0.49-0.66-0.87-0.87
|
||||||
|
s-0.88-0.32-1.51-0.32c-0.53,0-1.03,0.12-1.51,0.35C317.65,121.75,317.28,122.2,317,122.84z"/>
|
||||||
|
<path class="st1" d="M340.45,135.84v-10.82h-6.96v10.82h-1.35v-22.35h1.35v10.28h6.96v-10.28h1.35v22.35H340.45z"/>
|
||||||
|
<path class="st1" d="M344.69,122.51c0.29-0.81,0.78-1.45,1.47-1.91c0.69-0.46,1.58-0.69,2.67-0.69c1.32,0,2.33,0.31,3.04,0.92
|
||||||
|
c0.71,0.61,1.07,1.7,1.07,3.26v11.75h-1.35v-1.41h-0.03c-0.5,0.71-1.07,1.15-1.71,1.33s-1.26,0.27-1.87,0.27
|
||||||
|
c-0.69,0-1.27-0.12-1.74-0.37s-0.85-0.57-1.14-0.98c-0.29-0.41-0.51-0.87-0.64-1.4c-0.14-0.52-0.2-1.08-0.2-1.65
|
||||||
|
c0-0.6,0.07-1.19,0.2-1.78c0.14-0.59,0.37-1.12,0.71-1.61c0.33-0.48,0.78-0.87,1.33-1.17c0.55-0.3,1.25-0.45,2.08-0.45h3.01
|
||||||
|
v-2.52c0-0.43-0.04-0.82-0.13-1.18c-0.08-0.35-0.23-0.66-0.44-0.92c-0.21-0.26-0.5-0.46-0.86-0.61
|
||||||
|
c-0.37-0.15-0.83-0.23-1.4-0.23c-0.61,0-1.18,0.15-1.72,0.45c-0.54,0.3-0.9,0.75-1.07,1.35L344.69,122.51z M348.86,127.87
|
||||||
|
c-0.46,0-0.89,0.06-1.29,0.19s-0.74,0.34-1.03,0.65c-0.29,0.3-0.52,0.69-0.69,1.18c-0.17,0.48-0.25,1.07-0.25,1.76
|
||||||
|
c0,0.86,0.21,1.6,0.64,2.21c0.43,0.61,1.18,0.92,2.24,0.92c0.9,0,1.64-0.25,2.23-0.76c0.58-0.51,0.88-1.25,0.88-2.24v-3.9
|
||||||
|
L348.86,127.87L348.86,127.87z"/>
|
||||||
|
<path class="st1" d="M359.78,119.91c1.31,0,2.31,0.35,3,1.06s1.03,1.73,1.03,3.08c-0.23,0.04-0.45,0.08-0.67,0.11
|
||||||
|
c-0.23,0.03-0.45,0.07-0.67,0.11c0.02-0.98-0.21-1.75-0.69-2.3s-1.17-0.82-2.07-0.82c-0.56,0-1.07,0.13-1.52,0.38
|
||||||
|
c-0.45,0.26-0.81,0.7-1.08,1.32c-0.17,0.41-0.27,1.1-0.31,2.09c-0.04,0.98-0.06,2.12-0.06,3.4v0.42c0,0.39,0,0.78,0.02,1.19
|
||||||
|
c0.01,0.41,0.03,0.8,0.05,1.19s0.05,0.74,0.08,1.06c0.03,0.32,0.08,0.58,0.14,0.77c0.19,0.58,0.5,1.03,0.94,1.35
|
||||||
|
s1,0.48,1.69,0.48c0.86,0,1.54-0.24,2.05-0.72s0.77-1.26,0.77-2.33l1.35,0.26c-0.04,1.35-0.43,2.36-1.16,3.03
|
||||||
|
s-1.74,1.01-3.03,1.01c-0.63,0-1.17-0.08-1.64-0.24s-0.86-0.37-1.17-0.63s-0.56-0.55-0.75-0.88s-0.32-0.68-0.41-1.04
|
||||||
|
c-0.06-0.26-0.11-0.59-0.16-1c-0.04-0.41-0.07-0.84-0.08-1.32c-0.01-0.47-0.02-0.95-0.03-1.43s-0.02-0.94-0.02-1.36
|
||||||
|
c0-0.58,0-1.16,0.02-1.73c0.01-0.58,0.03-1.12,0.06-1.64c0.03-0.51,0.08-0.98,0.14-1.4c0.06-0.42,0.14-0.75,0.22-1.01
|
||||||
|
c0.27-0.75,0.72-1.35,1.34-1.8C357.78,120.13,358.66,119.91,359.78,119.91z"/>
|
||||||
|
<path class="st1" d="M367.35,129.41h0.03l5.67-9.25h1.5l-3.57,5.78l4.42,9.89h-1.5l-3.76-8.61l-2.79,4.53v4.08H366v-23.31h1.35
|
||||||
|
V129.41z"/>
|
||||||
|
<path class="st1" d="M381.04,119.91c1.25,0,2.22,0.33,2.92,0.98s1.08,1.59,1.14,2.81c0.02,0.24,0.03,0.47,0.03,0.69
|
||||||
|
s0,0.46,0,0.69v3.11h-7.15v1.03c0,0.68,0.02,1.4,0.05,2.13s0.11,1.29,0.24,1.65c0.19,0.56,0.49,1,0.91,1.32s0.98,0.48,1.69,0.48
|
||||||
|
c0.94,0,1.63-0.28,2.09-0.83c0.45-0.56,0.71-1.24,0.77-2.05l1.35,0.26c-0.1,1.26-0.53,2.23-1.28,2.89s-1.72,1-2.9,1
|
||||||
|
c-0.62,0-1.17-0.08-1.64-0.24s-0.86-0.37-1.17-0.63s-0.56-0.55-0.75-0.88s-0.32-0.68-0.41-1.04c-0.06-0.26-0.11-0.59-0.16-1
|
||||||
|
c-0.04-0.41-0.07-0.84-0.08-1.3c-0.01-0.46-0.02-0.94-0.03-1.43c-0.01-0.49-0.02-0.95-0.02-1.38c0-0.58,0-1.16,0.02-1.73
|
||||||
|
c0.01-0.58,0.03-1.12,0.06-1.64c0.03-0.51,0.08-0.98,0.14-1.41c0.06-0.43,0.14-0.77,0.22-1.03c0.27-0.75,0.72-1.34,1.34-1.78
|
||||||
|
C379.04,120.13,379.91,119.91,381.04,119.91z M378.33,122.84c-0.15,0.37-0.24,0.91-0.27,1.63c-0.03,0.72-0.06,1.58-0.08,2.57
|
||||||
|
h5.83v-1.97c0-0.5-0.03-0.98-0.08-1.45c-0.05-0.47-0.18-0.89-0.38-1.26s-0.49-0.66-0.87-0.87s-0.88-0.32-1.51-0.32
|
||||||
|
c-0.53,0-1.03,0.12-1.51,0.35C378.98,121.75,378.6,122.2,378.33,122.84z"/>
|
||||||
|
<path class="st1" d="M393.53,121.51c-0.13-0.02-0.26-0.04-0.39-0.05c-0.14-0.01-0.27-0.02-0.39-0.02
|
||||||
|
c-1.04,0-1.85,0.36-2.43,1.09c-0.58,0.73-0.86,1.77-0.86,3.12v10.18h-1.35v-15.7h1.35v2.15h0.06c0.33-0.83,0.78-1.44,1.35-1.81
|
||||||
|
c0.56-0.38,1.24-0.56,2.04-0.56c0.1,0,0.21,0,0.31,0s0.21,0.01,0.31,0.03V121.51z"/>
|
||||||
|
<path class="st1" d="M410.08,129.99c0,0.92-0.08,1.75-0.25,2.5s-0.44,1.39-0.81,1.91s-0.88,0.93-1.5,1.22s-1.41,0.43-2.34,0.43
|
||||||
|
c-0.88,0-1.62-0.12-2.23-0.37c-0.62-0.25-1.12-0.58-1.52-1.01s-0.68-0.93-0.86-1.51s-0.28-1.21-0.3-1.89l1.35-0.29
|
||||||
|
c0,0.49,0.06,0.97,0.19,1.43c0.13,0.46,0.33,0.86,0.61,1.2s0.65,0.62,1.1,0.82c0.45,0.2,1,0.3,1.65,0.3
|
||||||
|
c0.78,0,1.4-0.13,1.87-0.39s0.83-0.6,1.09-1.03c0.25-0.43,0.42-0.93,0.49-1.51s0.11-1.18,0.11-1.8c0-0.75-0.04-1.38-0.11-1.88
|
||||||
|
c-0.07-0.5-0.23-0.94-0.47-1.32c-0.24-0.37-0.6-0.72-1.07-1.03s-1.11-0.65-1.93-1.01c-1.05-0.47-1.88-0.93-2.51-1.38
|
||||||
|
s-1.1-0.9-1.43-1.36c-0.32-0.46-0.53-0.95-0.63-1.46c-0.09-0.51-0.14-1.08-0.14-1.7c0-0.81,0.09-1.56,0.28-2.25
|
||||||
|
c0.19-0.68,0.48-1.27,0.88-1.77c0.4-0.49,0.9-0.88,1.5-1.16c0.6-0.28,1.33-0.42,2.19-0.42c0.94,0,1.71,0.14,2.33,0.42
|
||||||
|
c0.61,0.28,1.1,0.64,1.47,1.09c0.36,0.45,0.62,0.95,0.77,1.49c0.15,0.55,0.22,1.09,0.22,1.62l-1.35,0.35
|
||||||
|
c0-0.51-0.06-0.99-0.17-1.43c-0.12-0.44-0.31-0.82-0.58-1.16c-0.27-0.33-0.64-0.59-1.09-0.79s-1-0.29-1.65-0.29
|
||||||
|
c-0.71,0-1.3,0.13-1.75,0.4c-0.45,0.27-0.8,0.61-1.06,1.03c-0.25,0.42-0.42,0.87-0.5,1.37c-0.08,0.49-0.13,0.97-0.13,1.44
|
||||||
|
c0,0.56,0.05,1.04,0.16,1.46c0.1,0.42,0.3,0.81,0.6,1.17c0.29,0.36,0.71,0.72,1.25,1.06s1.28,0.72,2.2,1.12
|
||||||
|
c0.94,0.41,1.68,0.82,2.23,1.24c0.54,0.42,0.95,0.87,1.22,1.35s0.44,1.03,0.52,1.64C410.05,128.5,410.08,129.2,410.08,129.99z"
|
||||||
|
/>
|
||||||
|
<path class="st1" d="M417.06,119.94c0.37,0,0.77,0.05,1.19,0.16s0.8,0.3,1.16,0.58c0.35,0.28,0.66,0.66,0.92,1.14
|
||||||
|
c0.26,0.48,0.42,1.1,0.48,1.85c0.06,0.69,0.1,1.34,0.11,1.97c0.01,0.63,0.02,1.25,0.02,1.85v0.45c0,1.22-0.02,2.31-0.06,3.28
|
||||||
|
c-0.04,0.96-0.18,1.79-0.41,2.47c-0.23,0.66-0.62,1.23-1.17,1.69c-0.55,0.46-1.37,0.69-2.45,0.69c-0.83,0-1.52-0.2-2.06-0.59
|
||||||
|
s-0.89-0.79-1.06-1.17h-0.06v7.77h-1.35v-21.9h1.35v1.48h0.06c0.35-0.54,0.79-0.95,1.29-1.25S416.21,119.94,417.06,119.94z
|
||||||
|
M416.75,121.26c-0.94,0-1.68,0.31-2.25,0.93s-0.84,1.43-0.84,2.44v6.49c0,0.47,0.06,0.93,0.19,1.36
|
||||||
|
c0.12,0.44,0.31,0.82,0.56,1.16c0.25,0.33,0.56,0.6,0.94,0.8c0.37,0.2,0.81,0.3,1.31,0.3c0.62,0,1.17-0.17,1.65-0.51
|
||||||
|
c0.48-0.34,0.8-0.85,0.97-1.51c0.06-0.21,0.11-0.51,0.14-0.88c0.03-0.37,0.06-0.79,0.08-1.25s0.03-0.94,0.03-1.45
|
||||||
|
c0-0.5,0-1,0-1.49c0-1.01-0.02-1.9-0.05-2.68s-0.1-1.35-0.2-1.72c-0.21-0.75-0.52-1.27-0.94-1.56
|
||||||
|
C417.92,121.4,417.39,121.26,416.75,121.26z"/>
|
||||||
|
<path class="st1" d="M423.35,122.51c0.29-0.81,0.78-1.45,1.47-1.91c0.69-0.46,1.58-0.69,2.67-0.69c1.32,0,2.33,0.31,3.04,0.92
|
||||||
|
c0.71,0.61,1.07,1.7,1.07,3.26v11.75h-1.35v-1.41h-0.03c-0.5,0.71-1.07,1.15-1.71,1.33s-1.26,0.27-1.87,0.27
|
||||||
|
c-0.69,0-1.27-0.12-1.74-0.37s-0.85-0.57-1.14-0.98c-0.29-0.41-0.51-0.87-0.64-1.4s-0.2-1.08-0.2-1.65c0-0.6,0.07-1.19,0.2-1.78
|
||||||
|
s0.37-1.12,0.71-1.61c0.33-0.48,0.78-0.87,1.33-1.17s1.25-0.45,2.08-0.45h3.01v-2.52c0-0.43-0.04-0.82-0.12-1.18
|
||||||
|
c-0.08-0.35-0.23-0.66-0.44-0.92c-0.21-0.26-0.5-0.46-0.86-0.61s-0.83-0.23-1.39-0.23c-0.61,0-1.18,0.15-1.72,0.45
|
||||||
|
c-0.54,0.3-0.9,0.75-1.07,1.35L423.35,122.51z M427.52,127.87c-0.46,0-0.89,0.06-1.29,0.19s-0.74,0.34-1.04,0.65
|
||||||
|
c-0.29,0.3-0.52,0.69-0.69,1.18c-0.17,0.48-0.25,1.07-0.25,1.76c0,0.86,0.21,1.6,0.64,2.21s1.18,0.92,2.24,0.92
|
||||||
|
c0.9,0,1.64-0.25,2.23-0.76s0.88-1.25,0.88-2.24v-3.9L427.52,127.87L427.52,127.87z"/>
|
||||||
|
<path class="st1" d="M438.44,119.91c1.31,0,2.31,0.35,3,1.06s1.03,1.73,1.03,3.08c-0.22,0.04-0.45,0.08-0.67,0.11
|
||||||
|
s-0.45,0.07-0.67,0.11c0.02-0.98-0.21-1.75-0.69-2.3s-1.17-0.82-2.07-0.82c-0.56,0-1.07,0.13-1.52,0.38
|
||||||
|
c-0.45,0.26-0.81,0.7-1.08,1.32c-0.17,0.41-0.27,1.1-0.31,2.09s-0.06,2.12-0.06,3.4v0.42c0,0.39,0,0.78,0.02,1.19
|
||||||
|
c0.01,0.41,0.03,0.8,0.05,1.19s0.05,0.74,0.08,1.06c0.03,0.32,0.08,0.58,0.14,0.77c0.19,0.58,0.5,1.03,0.94,1.35
|
||||||
|
s1,0.48,1.69,0.48c0.86,0,1.54-0.24,2.05-0.72c0.51-0.48,0.77-1.26,0.77-2.33l1.35,0.26c-0.04,1.35-0.43,2.36-1.16,3.03
|
||||||
|
s-1.74,1.01-3.03,1.01c-0.62,0-1.17-0.08-1.64-0.24s-0.86-0.37-1.17-0.63s-0.56-0.55-0.75-0.88s-0.32-0.68-0.41-1.04
|
||||||
|
c-0.06-0.26-0.12-0.59-0.16-1s-0.07-0.84-0.08-1.32c-0.01-0.47-0.02-0.95-0.03-1.43s-0.02-0.94-0.02-1.36
|
||||||
|
c0-0.58,0-1.16,0.02-1.73c0.01-0.58,0.03-1.12,0.06-1.64s0.08-0.98,0.14-1.4c0.06-0.42,0.14-0.75,0.22-1.01
|
||||||
|
c0.27-0.75,0.72-1.35,1.34-1.8C436.44,120.13,437.32,119.91,438.44,119.91z"/>
|
||||||
|
<path class="st1" d="M448.79,119.91c1.25,0,2.22,0.33,2.92,0.98s1.08,1.59,1.14,2.81c0.02,0.24,0.03,0.47,0.03,0.69
|
||||||
|
s0,0.46,0,0.69v3.11h-7.15v1.03c0,0.68,0.02,1.4,0.05,2.13s0.11,1.29,0.24,1.65c0.19,0.56,0.49,1,0.91,1.32s0.98,0.48,1.69,0.48
|
||||||
|
c0.94,0,1.63-0.28,2.08-0.83c0.45-0.56,0.71-1.24,0.77-2.05l1.35,0.26c-0.1,1.26-0.53,2.23-1.28,2.89s-1.72,1-2.9,1
|
||||||
|
c-0.62,0-1.17-0.08-1.64-0.24s-0.86-0.37-1.17-0.63s-0.56-0.55-0.75-0.88s-0.32-0.68-0.41-1.04c-0.06-0.26-0.11-0.59-0.16-1
|
||||||
|
c-0.04-0.41-0.07-0.84-0.08-1.3c-0.01-0.46-0.02-0.94-0.03-1.43c-0.01-0.49-0.02-0.95-0.02-1.38c0-0.58,0-1.16,0.02-1.73
|
||||||
|
c0.01-0.58,0.03-1.12,0.06-1.64s0.08-0.98,0.14-1.41c0.06-0.43,0.14-0.77,0.22-1.03c0.27-0.75,0.72-1.34,1.34-1.78
|
||||||
|
C446.79,120.13,447.66,119.91,448.79,119.91z M446.08,122.84c-0.15,0.37-0.24,0.91-0.27,1.63c-0.03,0.72-0.06,1.58-0.08,2.57
|
||||||
|
h5.83v-1.97c0-0.5-0.03-0.98-0.08-1.45c-0.05-0.47-0.18-0.89-0.38-1.26s-0.49-0.66-0.87-0.87s-0.88-0.32-1.51-0.32
|
||||||
|
c-0.53,0-1.03,0.12-1.51,0.35C446.73,121.75,446.35,122.2,446.08,122.84z"/>
|
||||||
|
<path class="st1" d="M461.25,135.84v-22.35h8.87v1.25h-7.52v8.99h6.65v1.25h-6.65v10.85L461.25,135.84L461.25,135.84z"/>
|
||||||
|
<path class="st1" d="M470.97,122.51c0.29-0.81,0.78-1.45,1.47-1.91c0.69-0.46,1.58-0.69,2.67-0.69c1.32,0,2.33,0.31,3.04,0.92
|
||||||
|
c0.71,0.61,1.07,1.7,1.07,3.26v11.75h-1.35v-1.41h-0.03c-0.5,0.71-1.07,1.15-1.71,1.33s-1.26,0.27-1.87,0.27
|
||||||
|
c-0.69,0-1.27-0.12-1.74-0.37s-0.85-0.57-1.14-0.98c-0.29-0.41-0.51-0.87-0.64-1.4s-0.2-1.08-0.2-1.65c0-0.6,0.07-1.19,0.2-1.78
|
||||||
|
s0.37-1.12,0.71-1.61c0.33-0.48,0.78-0.87,1.33-1.17s1.25-0.45,2.08-0.45h3.01v-2.52c0-0.43-0.04-0.82-0.12-1.18
|
||||||
|
c-0.08-0.35-0.23-0.66-0.44-0.92c-0.21-0.26-0.5-0.46-0.86-0.61s-0.83-0.23-1.39-0.23c-0.61,0-1.18,0.15-1.72,0.45
|
||||||
|
c-0.54,0.3-0.9,0.75-1.07,1.35L470.97,122.51z M475.14,127.87c-0.46,0-0.89,0.06-1.29,0.19s-0.74,0.34-1.04,0.65
|
||||||
|
c-0.29,0.3-0.52,0.69-0.69,1.18c-0.17,0.48-0.25,1.07-0.25,1.76c0,0.86,0.21,1.6,0.64,2.21s1.18,0.92,2.24,0.92
|
||||||
|
c0.9,0,1.64-0.25,2.23-0.76s0.88-1.25,0.88-2.24v-3.9L475.14,127.87L475.14,127.87z"/>
|
||||||
|
<path class="st1" d="M486.07,119.91c1.31,0,2.31,0.35,3,1.06s1.03,1.73,1.03,3.08c-0.22,0.04-0.45,0.08-0.67,0.11
|
||||||
|
s-0.45,0.07-0.67,0.11c0.02-0.98-0.21-1.75-0.69-2.3s-1.17-0.82-2.07-0.82c-0.56,0-1.07,0.13-1.52,0.38
|
||||||
|
c-0.45,0.26-0.81,0.7-1.08,1.32c-0.17,0.41-0.27,1.1-0.31,2.09s-0.06,2.12-0.06,3.4v0.42c0,0.39,0,0.78,0.02,1.19
|
||||||
|
c0.01,0.41,0.03,0.8,0.05,1.19s0.05,0.74,0.08,1.06c0.03,0.32,0.08,0.58,0.14,0.77c0.19,0.58,0.5,1.03,0.94,1.35
|
||||||
|
s1,0.48,1.69,0.48c0.86,0,1.54-0.24,2.05-0.72c0.51-0.48,0.77-1.26,0.77-2.33l1.35,0.26c-0.04,1.35-0.43,2.36-1.16,3.03
|
||||||
|
s-1.74,1.01-3.03,1.01c-0.62,0-1.17-0.08-1.64-0.24s-0.86-0.37-1.17-0.63s-0.56-0.55-0.75-0.88s-0.32-0.68-0.41-1.04
|
||||||
|
c-0.06-0.26-0.12-0.59-0.16-1s-0.07-0.84-0.08-1.32c-0.01-0.47-0.02-0.95-0.03-1.43s-0.02-0.94-0.02-1.36
|
||||||
|
c0-0.58,0-1.16,0.02-1.73c0.01-0.58,0.03-1.12,0.06-1.64s0.08-0.98,0.14-1.4c0.06-0.42,0.14-0.75,0.22-1.01
|
||||||
|
c0.27-0.75,0.72-1.35,1.34-1.8C484.07,120.13,484.94,119.91,486.07,119.91z"/>
|
||||||
|
<path class="st1" d="M491.54,120.13h1.76v-4.3h1.35v4.3h2.32v1.16h-2.32v10.86c0,0.79,0.16,1.39,0.49,1.81
|
||||||
|
c0.32,0.42,0.87,0.62,1.65,0.62h0.35v1.25h-0.6c-2.15,0-3.23-1.17-3.23-3.52v-11.02h-1.76L491.54,120.13L491.54,120.13z"/>
|
||||||
|
<path class="st1" d="M503.44,119.91c1.15,0,2.03,0.22,2.64,0.67c0.61,0.45,1.03,1.02,1.26,1.7c0.1,0.28,0.18,0.65,0.24,1.11
|
||||||
|
c0.05,0.46,0.09,0.96,0.13,1.51s0.05,1.1,0.05,1.67s0,1.1,0,1.59v0.48c0,0.56-0.01,1.12-0.02,1.7
|
||||||
|
c-0.01,0.58-0.05,1.21-0.11,1.89c-0.06,0.75-0.24,1.37-0.52,1.86s-0.63,0.88-1.04,1.17s-0.85,0.49-1.34,0.61
|
||||||
|
c-0.48,0.12-0.95,0.18-1.42,0.18c-1.26,0-2.2-0.26-2.82-0.79c-0.62-0.52-1.04-1.19-1.27-2.01c-0.06-0.26-0.12-0.58-0.16-0.98
|
||||||
|
s-0.07-0.83-0.09-1.3s-0.03-0.95-0.03-1.45c0-0.49,0-0.95,0-1.38c0-0.58,0-1.15,0.02-1.72c0.01-0.57,0.03-1.11,0.06-1.62
|
||||||
|
s0.08-0.98,0.14-1.4c0.06-0.42,0.14-0.75,0.22-1.01c0.27-0.75,0.73-1.35,1.38-1.81C501.41,120.14,502.3,119.91,503.44,119.91z
|
||||||
|
M503.37,121.16c-0.55,0-1.07,0.11-1.58,0.34c-0.5,0.22-0.88,0.66-1.13,1.3c-0.17,0.43-0.27,1.1-0.32,2.01s-0.06,1.96-0.06,3.16
|
||||||
|
v0.8c0,1.03,0.02,1.89,0.05,2.6s0.11,1.25,0.24,1.64c0.19,0.58,0.51,1.02,0.96,1.33c0.45,0.31,1.07,0.47,1.84,0.47
|
||||||
|
c0.69,0,1.29-0.19,1.8-0.58c0.5-0.39,0.84-0.92,1.01-1.61c0.08-0.36,0.14-0.94,0.17-1.73s0.05-1.64,0.05-2.54
|
||||||
|
c0-0.47,0-0.97-0.02-1.51c-0.01-0.53-0.02-1.05-0.03-1.54s-0.04-0.94-0.08-1.33s-0.09-0.7-0.16-0.92
|
||||||
|
c-0.19-0.64-0.53-1.12-1.02-1.43C504.6,121.32,504.02,121.16,503.37,121.16z"/>
|
||||||
|
<path class="st1" d="M516.06,121.51c-0.13-0.02-0.26-0.04-0.39-0.05c-0.14-0.01-0.27-0.02-0.39-0.02
|
||||||
|
c-1.04,0-1.85,0.36-2.43,1.09c-0.58,0.73-0.86,1.77-0.86,3.12v10.18h-1.35v-15.7h1.35v2.15h0.06c0.33-0.83,0.78-1.44,1.35-1.81
|
||||||
|
c0.56-0.38,1.24-0.56,2.04-0.56c0.1,0,0.21,0,0.31,0s0.21,0.01,0.31,0.03L516.06,121.51L516.06,121.51z"/>
|
||||||
|
<path class="st1" d="M521.26,133.65c0.29-1.09,0.57-2.22,0.85-3.39c0.27-1.17,0.54-2.31,0.82-3.42l1.72-6.71h1.38l-4.61,17.63
|
||||||
|
c-0.17,0.68-0.36,1.32-0.56,1.89c-0.23,0.73-0.6,1.33-1.11,1.81s-1.2,0.72-2.05,0.72h-0.47v-1.25h0.38
|
||||||
|
c0.67,0,1.18-0.25,1.54-0.74s0.64-1.18,0.85-2.05c0.1-0.41,0.2-0.81,0.3-1.2c0.09-0.4,0.19-0.8,0.3-1.2
|
||||||
|
c-0.69-2.61-1.37-5.21-2.05-7.79c-0.68-2.59-1.35-5.19-2.02-7.82h1.44l1.63,6.74l1.63,6.78H521.26z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path d="M250.36,148.01c-0.38,0-0.72,0.15-1,0.44c-0.29,0.29-0.43,0.79-0.43,1.48l-0.71-0.12c0.02-0.83,0.22-1.45,0.6-1.85
|
||||||
|
c0.38-0.4,0.9-0.61,1.57-0.61c0.77,0,1.32,0.23,1.65,0.68s0.5,1.05,0.5,1.79c0,0.54-0.05,1-0.15,1.4s-0.25,0.8-0.46,1.21
|
||||||
|
L249,158.5h3.43v0.66h-4.22v-0.67l3.15-6.5c0.17-0.36,0.29-0.71,0.34-1.06c0.05-0.35,0.08-0.72,0.08-1.11
|
||||||
|
c0-0.22-0.02-0.45-0.06-0.67s-0.11-0.41-0.21-0.58s-0.25-0.3-0.43-0.41C250.91,148.06,250.67,148.01,250.36,148.01z"/>
|
||||||
|
<path d="M256.22,153.01c0.12-0.12,0.28-0.23,0.48-0.31s0.4-0.13,0.6-0.13c0.59,0,1.06,0.18,1.41,0.53s0.53,0.85,0.53,1.49v2.65
|
||||||
|
c0,0.35-0.06,0.65-0.17,0.9c-0.11,0.25-0.27,0.46-0.46,0.63s-0.42,0.29-0.67,0.38c-0.26,0.08-0.53,0.13-0.81,0.13
|
||||||
|
c-0.29,0-0.56-0.04-0.81-0.13s-0.48-0.21-0.67-0.38s-0.35-0.38-0.46-0.63s-0.17-0.55-0.17-0.9v-2.17c0-0.37,0.02-0.69,0.07-0.95
|
||||||
|
s0.12-0.51,0.21-0.73l2.22-5.92h0.71c-0.08,0.19-0.18,0.46-0.3,0.8c-0.13,0.34-0.26,0.72-0.41,1.12s-0.3,0.82-0.45,1.23
|
||||||
|
c-0.15,0.42-0.29,0.8-0.42,1.14s-0.23,0.63-0.31,0.86s-0.13,0.36-0.14,0.38L256.22,153.01z M258.54,154.56
|
||||||
|
c0-0.42-0.13-0.74-0.39-0.98c-0.26-0.24-0.6-0.35-1.01-0.35c-0.23,0-0.43,0.05-0.61,0.14c-0.18,0.1-0.33,0.22-0.45,0.37
|
||||||
|
c-0.12,0.15-0.21,0.33-0.27,0.52s-0.09,0.4-0.09,0.6v2.42c0,0.42,0.13,0.74,0.4,0.98c0.27,0.24,0.61,0.35,1.02,0.35
|
||||||
|
s0.75-0.12,1.01-0.35c0.26-0.24,0.39-0.56,0.39-0.98V154.56z"/>
|
||||||
|
<path d="M267.74,148.01c-0.38,0-0.72,0.15-1,0.44c-0.29,0.29-0.43,0.79-0.43,1.48l-0.71-0.12c0.02-0.83,0.22-1.45,0.6-1.85
|
||||||
|
c0.38-0.4,0.9-0.61,1.57-0.61c0.77,0,1.32,0.23,1.65,0.68s0.5,1.05,0.5,1.79c0,0.54-0.05,1-0.15,1.4s-0.25,0.8-0.46,1.21
|
||||||
|
l-2.93,6.07h3.43v0.66h-4.22v-0.67l3.15-6.5c0.17-0.36,0.29-0.71,0.34-1.06c0.05-0.35,0.08-0.72,0.08-1.11
|
||||||
|
c0-0.22-0.02-0.45-0.06-0.67s-0.11-0.41-0.21-0.58s-0.25-0.3-0.43-0.41C268.29,148.06,268.05,148.01,267.74,148.01z"/>
|
||||||
|
<path d="M276.63,151.31c0,0.45-0.09,0.82-0.28,1.11s-0.42,0.52-0.71,0.67c0.28,0.16,0.52,0.38,0.71,0.67s0.28,0.66,0.28,1.09
|
||||||
|
v2.39c0,0.35-0.06,0.65-0.17,0.9c-0.11,0.25-0.27,0.46-0.46,0.63s-0.42,0.29-0.67,0.38s-0.53,0.13-0.81,0.13
|
||||||
|
c-0.29,0-0.56-0.04-0.81-0.13s-0.48-0.21-0.67-0.38s-0.35-0.38-0.46-0.63s-0.17-0.55-0.17-0.9v-2.39c0-0.44,0.09-0.8,0.27-1.09
|
||||||
|
s0.42-0.52,0.71-0.67c-0.3-0.16-0.53-0.38-0.71-0.67s-0.27-0.66-0.27-1.11v-1.92c0-0.34,0.06-0.63,0.17-0.88
|
||||||
|
c0.12-0.25,0.27-0.46,0.46-0.64c0.19-0.17,0.42-0.3,0.67-0.39s0.53-0.13,0.81-0.13s0.56,0.04,0.81,0.13s0.48,0.21,0.67,0.39
|
||||||
|
c0.19,0.17,0.35,0.39,0.46,0.64c0.12,0.25,0.17,0.55,0.17,0.88V151.31z M275.92,149.34c0-0.42-0.13-0.74-0.39-0.98
|
||||||
|
s-0.6-0.35-1.01-0.35s-0.75,0.12-1.02,0.35c-0.27,0.24-0.4,0.56-0.4,0.98v2.05c0,0.42,0.13,0.74,0.4,0.98
|
||||||
|
c0.27,0.24,0.61,0.36,1.02,0.36s0.75-0.12,1.01-0.36s0.39-0.57,0.39-0.98V149.34z M275.92,154.76c0-0.41-0.13-0.73-0.39-0.98
|
||||||
|
s-0.6-0.38-1.01-0.39c-0.41,0-0.75,0.12-1.02,0.37s-0.4,0.58-0.4,1v2.53c0,0.42,0.13,0.74,0.4,0.98
|
||||||
|
c0.27,0.24,0.61,0.35,1.02,0.35s0.75-0.12,1.01-0.35s0.39-0.56,0.39-0.98V154.76z"/>
|
||||||
|
<path d="M289.34,149.49c-0.2,0.57-0.4,1.14-0.61,1.69s-0.42,1.12-0.62,1.69l-1.33,3.57h-0.49c-0.22-0.59-0.44-1.18-0.65-1.77
|
||||||
|
c-0.21-0.58-0.43-1.17-0.65-1.75l-1.2-3.35h-0.07v9.59h-0.71v-11.71h0.72c0.25,0.67,0.5,1.34,0.73,1.99
|
||||||
|
c0.24,0.66,0.47,1.32,0.72,1.99l1.33,3.75h0.05l1.36-3.77c0.03-0.08,0.09-0.22,0.16-0.43c0.08-0.21,0.16-0.44,0.25-0.71
|
||||||
|
c0.09-0.26,0.19-0.55,0.3-0.85s0.21-0.59,0.31-0.85c0.1-0.26,0.18-0.5,0.25-0.71s0.12-0.35,0.16-0.43h0.72v11.71h-0.71v-9.68
|
||||||
|
h-0.02L289.34,149.49L289.34,149.49z"/>
|
||||||
|
<path d="M297.26,159.17l-0.66-3.06h-3.19l-0.66,3.06h-0.67l2.51-11.71h0.81l2.56,11.71H297.26z M294.99,148.52l-0.61,2.93
|
||||||
|
l-0.85,4h2.94l-0.85-4.04l-0.59-2.89H294.99z"/>
|
||||||
|
<path d="M300.15,159.17v-11.71h0.71v11.71H300.15z"/>
|
||||||
|
<path d="M309.67,148.01c-0.38,0-0.72,0.15-1,0.44c-0.29,0.29-0.43,0.79-0.43,1.48l-0.71-0.12c0.02-0.83,0.22-1.45,0.6-1.85
|
||||||
|
c0.38-0.4,0.9-0.61,1.57-0.61c0.77,0,1.32,0.23,1.65,0.68s0.5,1.05,0.5,1.79c0,0.54-0.05,1-0.15,1.4s-0.25,0.8-0.46,1.21
|
||||||
|
l-2.93,6.07h3.43v0.66h-4.22v-0.67l3.15-6.5c0.17-0.36,0.29-0.71,0.34-1.06c0.05-0.35,0.08-0.72,0.08-1.11
|
||||||
|
c0-0.22-0.02-0.45-0.06-0.67s-0.11-0.41-0.21-0.58s-0.25-0.3-0.43-0.41C310.22,148.06,309.98,148.01,309.67,148.01z"/>
|
||||||
|
<path d="M318.55,157.25c0,0.35-0.06,0.65-0.17,0.9c-0.11,0.25-0.27,0.46-0.46,0.63s-0.42,0.29-0.67,0.38
|
||||||
|
c-0.26,0.08-0.53,0.13-0.81,0.13c-0.29,0-0.56-0.04-0.81-0.13c-0.26-0.08-0.48-0.21-0.67-0.38s-0.35-0.38-0.46-0.63
|
||||||
|
s-0.17-0.55-0.17-0.9v-7.86c0-0.34,0.06-0.63,0.17-0.88c0.12-0.25,0.27-0.46,0.46-0.64c0.19-0.17,0.42-0.3,0.67-0.39
|
||||||
|
s0.53-0.13,0.81-0.13c0.3,0,0.57,0.04,0.83,0.13s0.48,0.21,0.67,0.39c0.19,0.17,0.34,0.39,0.45,0.64
|
||||||
|
c0.11,0.25,0.16,0.55,0.16,0.88V157.25z M317.85,149.36c0-0.42-0.13-0.75-0.39-0.99s-0.6-0.36-1.01-0.36s-0.75,0.12-1.02,0.36
|
||||||
|
s-0.4,0.57-0.4,0.99v7.92c0,0.42,0.13,0.75,0.4,0.99s0.61,0.36,1.02,0.36s0.75-0.12,1.01-0.36s0.39-0.57,0.39-0.99V149.36z"/>
|
||||||
|
<path d="M323.24,148.01c-0.38,0-0.72,0.15-1,0.44c-0.29,0.29-0.43,0.79-0.43,1.48l-0.71-0.12c0.02-0.83,0.22-1.45,0.6-1.85
|
||||||
|
c0.38-0.4,0.9-0.61,1.57-0.61c0.77,0,1.32,0.23,1.65,0.68s0.5,1.05,0.5,1.79c0,0.54-0.05,1-0.15,1.4s-0.25,0.8-0.46,1.21
|
||||||
|
l-2.93,6.07h3.43v0.66h-4.22v-0.67l3.15-6.5c0.17-0.36,0.29-0.71,0.34-1.06c0.05-0.35,0.08-0.72,0.08-1.11
|
||||||
|
c0-0.22-0.02-0.45-0.06-0.67s-0.11-0.41-0.21-0.58s-0.25-0.3-0.43-0.41C323.79,148.06,323.55,148.01,323.24,148.01z"/>
|
||||||
|
<path d="M330.06,147.36c0.4,0,0.73,0.05,0.99,0.16c0.26,0.11,0.48,0.26,0.63,0.45c0.16,0.2,0.27,0.43,0.34,0.71
|
||||||
|
c0.07,0.27,0.1,0.57,0.1,0.9v1.55c-0.01,0.2-0.03,0.4-0.06,0.59s-0.08,0.37-0.16,0.55c-0.08,0.17-0.18,0.33-0.31,0.46
|
||||||
|
s-0.31,0.24-0.53,0.32v0.02c0.24,0.09,0.43,0.21,0.58,0.35c0.14,0.15,0.25,0.32,0.32,0.51s0.12,0.41,0.13,0.65
|
||||||
|
c0.02,0.24,0.02,0.48,0.02,0.72v1.73c0,0.71-0.18,1.26-0.54,1.66c-0.36,0.4-0.9,0.6-1.62,0.6c-0.62,0-1.12-0.18-1.51-0.55
|
||||||
|
c-0.39-0.37-0.59-0.95-0.59-1.76l0.71-0.2c0,0.57,0.1,1.02,0.3,1.35s0.57,0.5,1.09,0.5c0.42,0,0.76-0.12,1.03-0.35
|
||||||
|
s0.41-0.64,0.41-1.22v-1.96c0-0.63-0.13-1.07-0.39-1.32s-0.58-0.37-0.98-0.37h-0.44v-0.69h0.48c0.38,0,0.7-0.12,0.95-0.35
|
||||||
|
c0.25-0.23,0.38-0.64,0.38-1.24v-1.67c0-0.42-0.11-0.76-0.33-1.03s-0.58-0.4-1.08-0.4s-0.87,0.17-1.09,0.5
|
||||||
|
c-0.22,0.34-0.34,0.76-0.34,1.28c-0.12-0.02-0.24-0.04-0.35-0.06c-0.12-0.02-0.23-0.04-0.35-0.06c0.01-0.71,0.2-1.28,0.56-1.71
|
||||||
|
C328.79,147.57,329.34,147.36,330.06,147.36z"/>
|
||||||
|
<path d="M338.5,154.69V154h3.84v0.69H338.5z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path class="st1" d="M354.1,147.36c0.47,0,0.88,0.07,1.22,0.2c0.34,0.13,0.62,0.32,0.85,0.56c0.22,0.24,0.39,0.52,0.49,0.85
|
||||||
|
c0.1,0.33,0.16,0.69,0.16,1.08l-1.73,0.45c0-0.43-0.08-0.77-0.24-1.04c-0.16-0.27-0.41-0.4-0.76-0.4
|
||||||
|
c-0.21,0-0.38,0.04-0.51,0.13s-0.23,0.21-0.3,0.35c-0.07,0.14-0.12,0.29-0.15,0.46c-0.03,0.16-0.04,0.32-0.04,0.46v5.95
|
||||||
|
c0,0.11,0.01,0.24,0.03,0.37c0.02,0.13,0.07,0.26,0.14,0.38s0.17,0.22,0.29,0.29c0.12,0.08,0.29,0.12,0.48,0.12
|
||||||
|
c0.65,0,0.98-0.48,0.99-1.45c0.3,0.06,0.59,0.1,0.89,0.14c0.3,0.04,0.59,0.08,0.89,0.13c-0.02,0.89-0.26,1.59-0.71,2.1
|
||||||
|
c-0.45,0.52-1.13,0.77-2.01,0.77c-0.94,0-1.64-0.24-2.09-0.73s-0.67-1.2-0.67-2.15v-5.84c0-0.44,0.05-0.85,0.14-1.24
|
||||||
|
c0.09-0.39,0.25-0.73,0.47-1.02c0.22-0.29,0.51-0.52,0.86-0.69C353.15,147.44,353.58,147.36,354.1,147.36z"/>
|
||||||
|
<path class="st1" d="M359.11,159.17v-11.71h1.77v11.71H359.11z"/>
|
||||||
|
<path class="st1" d="M365.35,152.35v6.81h-1.77v-11.71h1.59l1.38,3.48c0.11,0.29,0.22,0.58,0.33,0.86s0.22,0.57,0.35,0.86
|
||||||
|
l0.58,1.62c0.02,0,0.04,0,0.04-0.01c0.01,0,0.02-0.01,0.04-0.01v-6.8h1.74v11.71h-1.55l-1.38-3.47
|
||||||
|
c-0.22-0.57-0.43-1.13-0.65-1.68c-0.21-0.55-0.42-1.1-0.63-1.67L365.35,152.35L365.35,152.35z"/>
|
||||||
|
<path class="st1" d="M372.27,159.17v-11.71h5.08v1.7h-3.3v3.2h2.88v1.73h-2.88v3.38h3.3v1.7L372.27,159.17L372.27,159.17z
|
||||||
|
M373.5,146.21l2.53-2.04l1.05,1.26l-2.94,1.65L373.5,146.21z"/>
|
||||||
|
<path class="st1" d="M382.83,156.61l-0.82-2.17l-0.7-2.05h-0.08v6.78h-1.77v-11.71h1.73l1.24,3.33l0.9,2.54h0.08l0.92-2.61
|
||||||
|
l1.23-3.26h1.71v11.71h-1.77v-6.75h-0.07l-0.72,2.09l-0.8,2.1H382.83z"/>
|
||||||
|
<path class="st1" d="M394,159.17l-0.44-2.44h-2.1c-0.08,0.4-0.15,0.81-0.22,1.22s-0.14,0.82-0.21,1.22h-1.81
|
||||||
|
c0.38-1.96,0.77-3.92,1.15-5.86s0.77-3.89,1.15-5.86h1.97l2.32,11.71L394,159.17L394,159.17z M392.46,150.17
|
||||||
|
c-0.11,0.81-0.22,1.61-0.34,2.42c-0.12,0.8-0.25,1.62-0.39,2.45h1.56l-0.74-4.86L392.46,150.17L392.46,150.17z"/>
|
||||||
|
<path class="st1" d="M407.64,147.47v8.7c0,1.02-0.22,1.79-0.66,2.31s-1.14,0.78-2.11,0.78s-1.66-0.25-2.1-0.75
|
||||||
|
s-0.66-1.22-0.66-2.16v-8.88h1.77v8.92c0,0.3,0.07,0.58,0.22,0.82s0.4,0.36,0.76,0.36s0.62-0.13,0.77-0.38s0.23-0.56,0.23-0.92
|
||||||
|
v-8.8L407.64,147.47L407.64,147.47z"/>
|
||||||
|
<path class="st1" d="M413.08,149.16v10.01h-1.77v-10.01h-1.84v-1.7h5.46v1.7H413.08z"/>
|
||||||
|
<path class="st1" d="M422.28,156.17c0,1.02-0.22,1.79-0.67,2.31s-1.15,0.78-2.11,0.78s-1.66-0.25-2.1-0.75s-0.66-1.22-0.66-2.16
|
||||||
|
v-5.89c0-0.46,0.05-0.88,0.16-1.26c0.1-0.38,0.26-0.71,0.48-0.98c0.22-0.27,0.5-0.49,0.86-0.64c0.35-0.15,0.78-0.23,1.27-0.23
|
||||||
|
c0.52,0,0.96,0.07,1.32,0.21c0.36,0.14,0.64,0.35,0.85,0.61c0.21,0.27,0.37,0.59,0.46,0.98c0.09,0.38,0.14,0.81,0.14,1.29
|
||||||
|
V156.17z M420.51,150.32c0-0.33-0.07-0.62-0.21-0.88c-0.14-0.26-0.4-0.39-0.78-0.39c-0.21,0-0.38,0.05-0.51,0.14
|
||||||
|
s-0.23,0.21-0.3,0.35c-0.07,0.14-0.12,0.3-0.15,0.47s-0.04,0.33-0.04,0.48v5.89c0,0.3,0.07,0.58,0.22,0.82s0.4,0.36,0.76,0.36
|
||||||
|
c0.36,0,0.62-0.13,0.77-0.38s0.23-0.56,0.23-0.92L420.51,150.32L420.51,150.32z"/>
|
||||||
|
<path class="st1" d="M427.42,147.46c1.05,0,1.82,0.28,2.31,0.84s0.73,1.46,0.73,2.71c0,0.55-0.05,1.05-0.15,1.5
|
||||||
|
s-0.27,0.83-0.51,1.15c-0.24,0.32-0.56,0.57-0.94,0.75s-0.88,0.27-1.47,0.27h-0.72v4.49h-1.77v-11.71H427.42z M426.67,149.16
|
||||||
|
v3.79h0.62c0.55,0,0.93-0.16,1.14-0.48c0.21-0.32,0.32-0.8,0.32-1.45c0-0.57-0.1-1.03-0.3-1.36c-0.2-0.33-0.58-0.5-1.12-0.5
|
||||||
|
H426.67z"/>
|
||||||
|
<path class="st1" d="M432.68,159.17v-11.71h1.77v11.71H432.68z"/>
|
||||||
|
<path class="st1" d="M441.31,159.17l-0.44-2.44h-2.1c-0.08,0.4-0.15,0.81-0.22,1.22s-0.14,0.82-0.21,1.22h-1.81
|
||||||
|
c0.38-1.96,0.77-3.92,1.15-5.86s0.77-3.89,1.15-5.86h1.97l2.32,11.71L441.31,159.17L441.31,159.17z M439.76,150.17
|
||||||
|
c-0.11,0.81-0.22,1.61-0.34,2.42c-0.12,0.8-0.25,1.62-0.39,2.45h1.56l-0.74-4.86L439.76,150.17L439.76,150.17z"/>
|
||||||
|
<path class="st1" d="M453.63,153.04c0.5,0.17,0.85,0.49,1.04,0.96s0.28,1.01,0.28,1.62c0,1.22-0.25,2.12-0.76,2.69
|
||||||
|
s-1.29,0.86-2.34,0.86h-2.37v-11.71h2.5c1.01,0,1.74,0.27,2.19,0.82c0.46,0.54,0.68,1.33,0.68,2.36c0,0.54-0.09,1.01-0.27,1.41
|
||||||
|
c-0.18,0.4-0.5,0.71-0.95,0.91V153.04z M453.15,150.67c0-0.54-0.1-0.92-0.31-1.16s-0.55-0.35-1.04-0.35h-0.56v3.03h0.58
|
||||||
|
c0.46,0,0.8-0.13,1.01-0.39S453.15,151.17,453.15,150.67z M453.25,155.47c0-0.55-0.1-0.96-0.29-1.23
|
||||||
|
c-0.2-0.27-0.54-0.4-1.04-0.4h-0.67v3.63h0.71c0.29,0,0.51-0.05,0.68-0.16c0.17-0.11,0.3-0.25,0.39-0.43
|
||||||
|
c0.09-0.18,0.15-0.39,0.18-0.64S453.25,155.74,453.25,155.47z"/>
|
||||||
|
<path class="st1" d="M462.96,156.17c0,1.02-0.22,1.79-0.67,2.31s-1.15,0.78-2.11,0.78s-1.66-0.25-2.1-0.75s-0.66-1.22-0.66-2.16
|
||||||
|
v-5.89c0-0.46,0.05-0.88,0.16-1.26c0.1-0.38,0.26-0.71,0.48-0.98c0.22-0.27,0.5-0.49,0.86-0.64c0.35-0.15,0.78-0.23,1.27-0.23
|
||||||
|
c0.52,0,0.96,0.07,1.32,0.21c0.36,0.14,0.64,0.35,0.85,0.61c0.21,0.27,0.37,0.59,0.46,0.98c0.09,0.38,0.14,0.81,0.14,1.29
|
||||||
|
V156.17z M461.19,150.32c0-0.33-0.07-0.62-0.21-0.88c-0.14-0.26-0.4-0.39-0.78-0.39c-0.21,0-0.38,0.05-0.51,0.14
|
||||||
|
s-0.23,0.21-0.3,0.35c-0.07,0.14-0.12,0.3-0.15,0.47s-0.04,0.33-0.04,0.48v5.89c0,0.3,0.07,0.58,0.22,0.82s0.4,0.36,0.76,0.36
|
||||||
|
c0.36,0,0.62-0.13,0.77-0.38s0.23-0.56,0.23-0.92L461.19,150.32L461.19,150.32z"/>
|
||||||
|
<path class="st1" d="M468.18,147.46c0.93,0,1.66,0.27,2.19,0.8s0.79,1.4,0.79,2.6c0,0.74-0.1,1.37-0.3,1.88
|
||||||
|
c-0.2,0.51-0.56,0.91-1.08,1.2l1.69,5.23h-1.81l-1.48-4.85h-0.84v4.85h-1.77v-11.71H468.18z M467.35,149.16v3.43h0.72
|
||||||
|
c0.46,0,0.8-0.14,1.02-0.41c0.22-0.28,0.33-0.72,0.33-1.32c0-0.54-0.11-0.96-0.32-1.25c-0.21-0.3-0.57-0.45-1.06-0.45
|
||||||
|
L467.35,149.16L467.35,149.16z"/>
|
||||||
|
<path class="st1" d="M476.46,147.46c0.68,0,1.21,0.12,1.61,0.36c0.39,0.24,0.67,0.65,0.82,1.22c0.12,0.42,0.18,0.98,0.19,1.71
|
||||||
|
s0.01,1.57,0.01,2.55c0,0.97-0.01,1.79-0.02,2.49c-0.01,0.7-0.08,1.25-0.21,1.65c-0.21,0.66-0.54,1.12-0.99,1.36
|
||||||
|
s-0.97,0.37-1.55,0.37h-2.69v-11.71H476.46z M477.3,150.53c0-0.43-0.08-0.76-0.24-1s-0.46-0.36-0.91-0.36h-0.76v8.31h0.76
|
||||||
|
c0.44,0,0.74-0.12,0.9-0.36s0.25-0.58,0.25-1.03V150.53z"/>
|
||||||
|
<path class="st1" d="M481.75,159.17v-11.71h5.08v1.7h-3.3v3.2h2.88v1.73h-2.88v3.38h3.3v1.7L481.75,159.17L481.75,159.17z"/>
|
||||||
|
<path class="st1" d="M491.6,147.46c0.93,0,1.66,0.27,2.19,0.8s0.79,1.4,0.79,2.6c0,0.74-0.1,1.37-0.3,1.88
|
||||||
|
c-0.2,0.51-0.56,0.91-1.08,1.2l1.69,5.23h-1.81l-1.48-4.85h-0.84v4.85h-1.77v-11.71H491.6z M490.76,149.16v3.43h0.72
|
||||||
|
c0.46,0,0.8-0.14,1.02-0.41c0.22-0.28,0.33-0.72,0.33-1.32c0-0.54-0.11-0.96-0.32-1.25c-0.21-0.3-0.57-0.45-1.06-0.45
|
||||||
|
L490.76,149.16L490.76,149.16z"/>
|
||||||
|
<path class="st1" d="M502.47,156.17c0,1.02-0.22,1.79-0.67,2.31s-1.15,0.78-2.11,0.78s-1.66-0.25-2.1-0.75s-0.66-1.22-0.66-2.16
|
||||||
|
v-5.89c0-0.46,0.05-0.88,0.16-1.26c0.1-0.38,0.26-0.71,0.48-0.98c0.22-0.27,0.5-0.49,0.86-0.64c0.35-0.15,0.78-0.23,1.27-0.23
|
||||||
|
c0.52,0,0.96,0.07,1.32,0.21c0.36,0.14,0.64,0.35,0.85,0.61c0.21,0.27,0.37,0.59,0.46,0.98c0.09,0.38,0.14,0.81,0.14,1.29
|
||||||
|
V156.17z M500.7,150.32c0-0.33-0.07-0.62-0.21-0.88c-0.14-0.26-0.4-0.39-0.78-0.39c-0.21,0-0.38,0.05-0.51,0.14
|
||||||
|
s-0.23,0.21-0.3,0.35c-0.07,0.14-0.12,0.3-0.15,0.47s-0.04,0.33-0.04,0.48v5.89c0,0.3,0.07,0.58,0.22,0.82s0.4,0.36,0.76,0.36
|
||||||
|
c0.36,0,0.62-0.13,0.77-0.38s0.23-0.56,0.23-0.92L500.7,150.32L500.7,150.32z"/>
|
||||||
|
<path class="st1" d="M510.56,147.47v8.7c0,1.02-0.22,1.79-0.66,2.31s-1.14,0.78-2.11,0.78s-1.66-0.25-2.1-0.75
|
||||||
|
s-0.66-1.22-0.66-2.16v-8.88h1.77v8.92c0,0.3,0.07,0.58,0.22,0.82s0.4,0.36,0.76,0.36s0.62-0.13,0.77-0.38s0.23-0.56,0.23-0.92
|
||||||
|
v-8.8L510.56,147.47L510.56,147.47z"/>
|
||||||
|
<path class="st1" d="M515.93,159.27c-0.94,0-1.64-0.24-2.09-0.73s-0.67-1.2-0.67-2.15v-5.84c0-0.44,0.05-0.85,0.15-1.24
|
||||||
|
c0.1-0.39,0.26-0.73,0.49-1.02s0.51-0.52,0.86-0.69s0.78-0.25,1.28-0.25c0.93,0,1.62,0.24,2.05,0.73
|
||||||
|
c0.44,0.49,0.66,1.13,0.66,1.92v0.13l-1.74,0.35c0-0.43-0.08-0.77-0.23-1.04c-0.16-0.27-0.41-0.4-0.75-0.4
|
||||||
|
c-0.21,0-0.37,0.04-0.5,0.13c-0.13,0.09-0.23,0.21-0.3,0.35s-0.12,0.29-0.15,0.46c-0.03,0.16-0.04,0.32-0.04,0.46v5.95
|
||||||
|
c0,0.12,0.02,0.24,0.05,0.35c0.03,0.2,0.11,0.39,0.23,0.56s0.34,0.25,0.65,0.25s0.56-0.08,0.75-0.25s0.28-0.4,0.28-0.69v-2.3
|
||||||
|
h-1.04v-1.58h2.81v3.74c0,0.92-0.25,1.62-0.76,2.09C517.41,159.03,516.75,159.27,515.93,159.27z"/>
|
||||||
|
<path class="st1" d="M521.19,159.17v-11.71h5.08v1.7h-3.3v3.2h2.88v1.73h-2.88v3.38h3.3v1.7L521.19,159.17L521.19,159.17z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path d="M263.69,50.5v54.08H251V50.5h-9.98V38.08h32.65V50.5H263.69z"/>
|
||||||
|
<path d="M299.8,104.58V77.06h-8.12v27.52h-12.69v-66.5h12.69v26.37h8.12V38.08h12.69v66.5H299.8z"/>
|
||||||
|
<path d="M354.1,84.99c0,3.06-0.27,5.83-0.79,8.31c-0.53,2.48-1.43,4.6-2.71,6.35s-3,3.11-5.18,4.06
|
||||||
|
c-2.18,0.96-4.91,1.43-8.21,1.43c-2.99,0-5.55-0.45-7.7-1.35c-2.15-0.9-3.89-2.13-5.22-3.71c-1.34-1.57-2.32-3.4-2.94-5.48
|
||||||
|
s-0.93-4.3-0.93-6.66l12.78-2.48c0.12,2.42,0.48,4.24,1.06,5.45s1.67,1.82,3.28,1.82c0.92,0,1.64-0.22,2.17-0.67
|
||||||
|
c0.52-0.44,0.92-1.02,1.2-1.72c0.28-0.7,0.46-1.53,0.55-2.48c0.09-0.95,0.14-1.91,0.14-2.86c0-1.33-0.09-2.45-0.28-3.34
|
||||||
|
s-0.51-1.65-0.98-2.29s-1.1-1.19-1.91-1.67c-0.81-0.48-1.8-0.97-2.99-1.48c-3.17-1.33-5.72-2.72-7.65-4.15s-3.41-2.96-4.43-4.58
|
||||||
|
c-1.03-1.62-1.7-3.34-2.01-5.15c-0.31-1.81-0.47-3.8-0.47-5.96c0-2.73,0.31-5.26,0.93-7.58s1.6-4.31,2.94-5.96
|
||||||
|
c1.34-1.65,3.08-2.96,5.22-3.91c2.15-0.95,4.74-1.43,7.79-1.43c3.23,0,5.91,0.53,8.02,1.58c2.11,1.05,3.78,2.39,4.99,4.01
|
||||||
|
s2.07,3.43,2.57,5.4c0.5,1.98,0.75,3.89,0.75,5.73L341.6,57c0-0.96-0.05-1.85-0.14-2.68c-0.09-0.83-0.29-1.58-0.6-2.25
|
||||||
|
s-0.72-1.19-1.24-1.58c-0.52-0.38-1.25-0.57-2.17-0.57c-0.86,0-1.54,0.21-2.03,0.62s-0.88,0.92-1.15,1.53
|
||||||
|
c-0.28,0.61-0.46,1.29-0.55,2.05s-0.14,1.5-0.14,2.2c0,0.89,0.06,1.69,0.18,2.39s0.43,1.37,0.93,2.01s1.22,1.26,2.18,1.86
|
||||||
|
c0.96,0.61,2.31,1.26,4.04,1.96c2.97,1.21,5.32,2.48,7.06,3.82c1.73,1.34,3.05,2.8,3.95,4.4c0.9,1.59,1.49,3.39,1.76,5.4
|
||||||
|
S354.1,82.45,354.1,84.99z"/>
|
||||||
|
<path d="M374.34,50.5v14.14h14.93v12.42h-14.93v27.52h-12.69v-66.5h29.76V50.5H374.34z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path d="M364.78,329.98l24.81-24.81l-38.03-38.03c-4.02-4.02-8.44-7.66-13.14-10.84c-4.75-3.21-9.83-5.97-15.1-8.2
|
||||||
|
c-5.37-2.27-10.99-4.02-16.7-5.19c-11.71-2.4-24.07-2.4-35.78,0c-5.71,1.17-11.33,2.91-16.7,5.19c-5.27,2.23-10.35,4.99-15.1,8.2
|
||||||
|
c-4.7,3.18-9.12,6.82-13.14,10.84s-7.66,8.44-10.84,13.14c-3.21,4.75-5.97,9.83-8.2,15.1c-2.27,5.37-4.02,10.99-5.19,16.7
|
||||||
|
c-1.2,5.85-1.81,11.87-1.81,17.89c0,0.01,0,0.01,0,0.02c0,4.92,0.55,9.72,1.6,14.35c1.05,4.64,2.59,9.12,4.58,13.39
|
||||||
|
c1.99,4.27,4.42,8.32,7.25,12.11c2.82,3.79,6.04,7.33,9.6,10.56c3.56,3.23,7.45,6.15,11.63,8.71c4.18,2.56,8.65,4.77,13.35,6.58
|
||||||
|
s9.64,3.21,14.75,4.16c5.12,0.95,10.41,1.45,15.84,1.45c5.92,0,11.7-0.48,17.29-1.38s10.97-2.24,16.1-3.96s10.01-3.82,14.57-6.26
|
||||||
|
s8.81-5.22,12.69-8.29l113.32-89.46c-0.56,0.51,0.53-0.54,0,0c2.44-2.44,5.12-4.65,7.97-6.58c2.88-1.94,5.95-3.61,9.13-4.96
|
||||||
|
c3.24-1.37,6.63-2.42,10.07-3.13c7.09-1.45,14.63-1.45,21.71,0c3.44,0.7,6.83,1.76,10.07,3.13c3.18,1.35,6.25,3.01,9.13,4.96
|
||||||
|
c2.85,1.93,5.53,4.14,7.97,6.58c2.44,2.44,4.65,5.12,6.58,7.97c1.94,2.87,3.61,5.95,4.96,9.13c1.37,3.24,2.42,6.63,3.13,10.07
|
||||||
|
c0.72,3.54,1.09,7.2,1.09,10.86c0,3.66-0.37,7.31-1.09,10.86c-0.71,3.45-1.76,6.83-3.13,10.07c-1.35,3.18-3.01,6.26-4.96,9.13
|
||||||
|
c-1.93,2.85-4.14,5.53-6.58,7.97s-5.12,4.65-7.97,6.58c-2.87,1.94-5.95,3.61-9.13,4.96c-3.24,1.37-6.63,2.42-10.07,3.13
|
||||||
|
c-7.09,1.45-14.62,1.45-21.71,0c-3.44-0.7-6.83-1.76-10.07-3.13c-3.18-1.35-6.25-3.01-9.13-4.95c-2.85-1.93-5.53-4.14-7.97-6.58
|
||||||
|
l-38.03-38.03l0,0l-24.81,24.81l0,0l38.03,38.03c4.02,4.02,8.44,7.66,13.14,10.84c4.75,3.21,9.83,5.97,15.1,8.2
|
||||||
|
c5.37,2.27,10.99,4.02,16.7,5.19c5.85,1.2,11.87,1.81,17.89,1.81s12.04-0.61,17.89-1.81c5.71-1.17,11.33-2.91,16.7-5.19
|
||||||
|
c5.27-2.23,10.35-4.99,15.1-8.2c4.7-3.18,9.12-6.82,13.14-10.84s7.66-8.44,10.84-13.14c3.21-4.75,5.97-9.83,8.2-15.1
|
||||||
|
c2.27-5.37,4.02-10.99,5.19-16.7c1.2-5.85,1.8-11.87,1.8-17.89l0,0c0-4.92-0.55-9.73-1.6-14.37c-1.05-4.64-2.59-9.12-4.58-13.39
|
||||||
|
c-1.99-4.27-4.42-8.32-7.25-12.11c-2.82-3.79-6.04-7.33-9.6-10.56s-7.45-6.15-11.63-8.71s-8.65-4.77-13.35-6.58
|
||||||
|
c-4.7-1.8-9.64-3.21-14.75-4.16c-5.12-0.95-10.41-1.45-15.84-1.45c-5.92,0-11.7,0.47-17.29,1.38c-5.58,0.9-10.97,2.24-16.1,3.96
|
||||||
|
s-10.01,3.82-14.57,6.26s-8.81,5.22-12.69,8.29l-113.32,89.46c-1.98,1.82-5.75,5.07-7.97,6.58c-2.87,1.94-5.95,3.61-9.13,4.96
|
||||||
|
c-3.24,1.37-6.63,2.42-10.07,3.13c-7.09,1.45-14.62,1.45-21.71,0c-3.44-0.71-6.83-1.76-10.07-3.13c-3.18-1.35-6.25-3.01-9.13-4.96
|
||||||
|
c-2.85-1.93-5.53-4.14-7.97-6.58c-2.44-2.44-4.65-5.12-6.58-7.97c-1.94-2.87-3.61-5.95-4.96-9.13c-1.37-3.24-2.42-6.63-3.13-10.07
|
||||||
|
c-0.73-3.54-1.09-7.2-1.09-10.86c0-3.66,0.37-7.31,1.09-10.86c0.7-3.44,1.76-6.83,3.13-10.07c1.35-3.18,3.01-6.25,4.95-9.13
|
||||||
|
c1.93-2.85,4.14-5.53,6.58-7.97s5.12-4.65,7.97-6.58c2.88-1.94,5.95-3.61,9.13-4.96c3.24-1.37,6.63-2.42,10.07-3.13
|
||||||
|
c3.54-0.73,7.2-1.09,10.86-1.09c3.66,0,7.31,0.37,10.86,1.09c3.44,0.7,6.83,1.76,10.07,3.13c3.18,1.35,6.25,3.01,9.13,4.96
|
||||||
|
c2.85,1.93,5.53,4.14,7.97,6.58L364.78,329.98L364.78,329.98z"/>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
|
||||||
|
<linearGradient id="SVGID_1_" gradientUnits="userSpaceOnUse" x1="604.435" y1="427.5899" x2="392.7685" y2="639.2565" gradientTransform="matrix(1 0 0 1 0 -230)">
|
||||||
|
<stop offset="0.1074" style="stop-color:#E5006D"/>
|
||||||
|
<stop offset="1" style="stop-color:#000000"/>
|
||||||
|
</linearGradient>
|
||||||
|
<path class="st2" d="M452.77,270.26c4.56-2.44,9.44-4.54,14.57-6.26s10.52-3.05,16.1-3.96c5.58-0.9,11.36-1.38,17.29-1.38
|
||||||
|
c5.43,0,10.72,0.5,15.84,1.45s10.05,2.35,14.75,4.16c4.7,1.8,9.17,4.01,13.35,6.58c4.18,2.56,8.08,5.48,11.63,8.71
|
||||||
|
c3.56,3.23,6.77,6.76,9.6,10.56c2.82,3.79,5.26,7.85,7.25,12.11c1.99,4.27,3.53,8.74,4.58,13.39c1.05,4.64,1.6,9.45,1.6,14.37
|
||||||
|
c0-6.02-0.61-12.04-1.8-17.89c-1.17-5.71-2.91-11.33-5.19-16.7c-2.23-5.27-4.99-10.35-8.2-15.1
|
||||||
|
c-3.18-4.7-6.82-9.12-10.84-13.14c-4.02-4.02-8.44-7.66-13.14-10.84c-4.75-3.21-9.83-5.97-15.1-8.2
|
||||||
|
c-5.37-2.27-10.99-4.02-16.7-5.19c-5.85-1.2-11.87-1.81-17.89-1.81c-6.02,0-12.04,0.61-17.89,1.81
|
||||||
|
c-5.71,1.17-11.33,2.91-16.7,5.19c-5.27,2.23-10.35,4.98-15.1,8.2c-4.7,3.18-9.12,6.82-13.14,10.84l-38.03,38.03L364.8,330
|
||||||
|
l-38.03,38.03c-0.54,0.54-1.09,1.05-1.64,1.57l114.97-91.03C443.95,275.48,448.2,272.7,452.77,270.26z"/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
|
||||||
|
<linearGradient id="SVGID_00000049196946087679940990000002865169276270721946_" gradientUnits="userSpaceOnUse" x1="631.6329" y1="-164.8441" x2="419.9663" y2="46.8224" gradientTransform="matrix(-1 0 0 -1 806.3674 297.5265)">
|
||||||
|
<stop offset="0.1074" style="stop-color:#E5006D"/>
|
||||||
|
<stop offset="1" style="stop-color:#000000"/>
|
||||||
|
</linearGradient>
|
||||||
|
<path style="fill:url(#SVGID_00000049196946087679940990000002865169276270721946_);" d="M326.4,389.7
|
||||||
|
c-4.56,2.44-9.44,4.54-14.57,6.26s-10.52,3.05-16.1,3.96c-5.58,0.9-11.36,1.38-17.29,1.38c-5.43,0-10.72-0.5-15.84-1.45
|
||||||
|
s-10.05-2.35-14.75-4.16c-4.7-1.8-9.17-4.01-13.35-6.58c-4.18-2.56-8.08-5.48-11.63-8.71c-3.56-3.23-6.77-6.76-9.6-10.56
|
||||||
|
c-2.82-3.79-5.26-7.85-7.25-12.11c-1.99-4.27-3.53-8.74-4.58-13.39c-1.05-4.64-1.6-9.45-1.6-14.37c0,6.02,0.61,12.04,1.8,17.89
|
||||||
|
c1.17,5.71,2.91,11.33,5.19,16.7c2.23,5.27,4.99,10.35,8.2,15.1c3.18,4.7,6.82,9.12,10.84,13.14
|
||||||
|
c4.02,4.02,8.44,7.66,13.14,10.84c4.75,3.21,9.83,5.97,15.1,8.2c5.37,2.27,10.99,4.02,16.7,5.19c5.85,1.2,11.87,1.81,17.89,1.81
|
||||||
|
s12.04-0.61,17.89-1.81c5.71-1.17,11.33-2.91,16.7-5.19c5.27-2.23,10.35-4.98,15.1-8.2c4.7-3.18,9.12-6.82,13.14-10.84
|
||||||
|
l38.03-38.03l24.81-24.81l38.03-38.03c0.54-0.54,1.09-1.05,1.64-1.57l-114.97,91.03C335.21,384.48,330.96,387.26,326.4,389.7z"
|
||||||
|
/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path d="M411.61,538.22c1.81-2.21,4.52-3.65,7.6-3.65c3.08,0,5.79,1.44,7.6,3.65c-2.33,1-4.9,1.56-7.6,1.56
|
||||||
|
C416.51,539.77,413.94,539.22,411.61,538.22z M409.47,537.12l3.07-4.86c1.73-2.73,1.17-6.32-1.29-8.4l-4.02-3.39h5.66
|
||||||
|
c3.24,0,6.14-2.42,6.31-5.66c0.18-3.45-2.56-6.3-5.97-6.3h-9.16l0,0c-0.91,1.16-1.67,2.43-2.32,3.76
|
||||||
|
c-0.06,0.13-0.12,0.25-0.18,0.38c-0.14,0.31-0.26,0.63-0.39,0.96c-0.09,0.24-0.18,0.47-0.26,0.71c-0.1,0.29-0.19,0.58-0.27,0.87
|
||||||
|
c-0.08,0.3-0.16,0.59-0.23,0.9c-0.06,0.26-0.12,0.53-0.17,0.79c-0.07,0.37-0.12,0.74-0.17,1.12c-0.03,0.22-0.06,0.43-0.08,0.65
|
||||||
|
c-0.06,0.6-0.09,1.21-0.09,1.83C399.9,527.57,403.75,533.77,409.47,537.12z M423.85,522.68c0,2.49,2.02,4.52,4.52,4.52h1.61v6.74
|
||||||
|
c0,0.78,0.21,1.5,0.56,2.14c4.83-3.51,7.98-9.19,7.98-15.61c0-0.78-0.06-1.54-0.15-2.3h-10
|
||||||
|
C425.87,518.17,423.85,520.19,423.85,522.68z M427.58,516.43h2.78h7.73c-0.73-3.44-2.39-6.54-4.69-9.03h-5.82
|
||||||
|
c-2.49,0-4.52,2.02-4.52,4.52S425.08,516.43,427.58,516.43z M430.48,504.81c-3.17-2.29-7.06-3.66-11.28-3.66s-8.1,1.37-11.28,3.66
|
||||||
|
H430.48z"/>
|
||||||
|
<g>
|
||||||
|
<path d="M480.41,519.99l-1.17-2.83l-1.17-2.83l-1.17-2.83l-1.17-2.83l0,0c-0.14-0.33-0.34-0.63-0.59-0.88s-0.55-0.45-0.88-0.59
|
||||||
|
c-0.33-0.14-0.69-0.22-1.07-0.22h-1.6h-1.6h-1.6h-1.6c-0.38,0-0.74,0.08-1.07,0.22c-0.33,0.14-0.63,0.34-0.88,0.59
|
||||||
|
s-0.45,0.55-0.59,0.88l0,0l-1.17,2.83l-1.17,2.83l-1.17,2.83l-1.17,2.83c-0.05,0.12-0.07,0.24-0.07,0.36s0.03,0.24,0.07,0.35
|
||||||
|
c0.05,0.11,0.11,0.21,0.19,0.3c0.08,0.08,0.19,0.15,0.3,0.2l0.2,0.08l0.2,0.08l0.2,0.08l0.2,0.08c0.12,0.05,0.24,0.07,0.36,0.07
|
||||||
|
s0.24-0.03,0.35-0.07c0.11-0.05,0.21-0.11,0.3-0.2c0.09-0.08,0.16-0.19,0.2-0.3l1.17-2.83l1.17-2.83l1.07-2.59
|
||||||
|
c0.22,0.12,0.43,0.26,0.61,0.43c0.22,0.22,0.4,0.48,0.52,0.78c0.11,0.26,0.17,0.54,0.18,0.84v3.43l-4.11,22.88h2.93l4.38-17.47
|
||||||
|
l4.38,17.47h2.93l-4.11-22.88v-3.43c0.01-0.3,0.07-0.58,0.18-0.84c0.12-0.29,0.3-0.55,0.52-0.78c0.18-0.18,0.39-0.32,0.61-0.43
|
||||||
|
l1.07,2.59l1.17,2.83l1.17,2.83c0.05,0.12,0.12,0.22,0.2,0.3c0.09,0.08,0.19,0.15,0.3,0.2s0.23,0.07,0.35,0.07
|
||||||
|
s0.24-0.02,0.36-0.07l0.2-0.08l0.2-0.08l0.2-0.08l0.2-0.08c0.12-0.05,0.22-0.12,0.3-0.2c0.08-0.09,0.15-0.19,0.2-0.3
|
||||||
|
c0.04-0.11,0.07-0.23,0.07-0.35C480.48,520.23,480.46,520.11,480.41,519.99z"/>
|
||||||
|
<path d="M470.06,505.61c2.29,0,4.15-1.86,4.15-4.15s-1.86-4.15-4.15-4.15s-4.15,1.86-4.15,4.15
|
||||||
|
C465.9,503.75,467.76,505.61,470.06,505.61z"/>
|
||||||
|
</g>
|
||||||
|
<path d="M261.64,503.71v-0.75c0-1.65-1.35-2.99-2.99-2.99h-3.99c-1.65,0-2.99,1.35-2.99,2.99v0.75c-1.65,0-2.99,1.35-2.99,2.99
|
||||||
|
v31.4c0,1.65,1.35,2.99,2.99,2.99h9.98c1.65,0,2.99-1.35,2.99-2.99v-31.4C264.63,505.05,263.29,503.71,261.64,503.71z
|
||||||
|
M261.99,536.57c0,1.1-0.9,2-2,2h-6.67c-1.1,0-2-0.9-2-2v-7.25h10.67V536.57z M261.21,510.99c-0.25,0.25-0.6,0.41-0.99,0.41h-2.17
|
||||||
|
v2.18c0,0.39-0.16,0.74-0.41,0.99s-0.6,0.41-0.99,0.41c-0.39,0-0.74-0.16-0.99-0.41s-0.41-0.61-0.41-0.99v-2.18h-2.18
|
||||||
|
c-0.39,0-0.74-0.16-0.99-0.41s-0.41-0.6-0.41-0.99c0-0.39,0.16-0.74,0.41-0.99s0.6-0.41,0.99-0.41h2.18v-2.17
|
||||||
|
c0-0.39,0.16-0.74,0.41-0.99s0.6-0.41,0.99-0.41s0.74,0.16,0.99,0.41s0.41,0.61,0.41,0.99v2.17h2.17c0.39,0,0.74,0.16,0.99,0.41
|
||||||
|
s0.41,0.6,0.41,0.99S261.47,510.74,261.21,510.99z M259.91,532.52c0.25,0.25,0.41,0.61,0.41,0.99s-0.16,0.74-0.41,0.99
|
||||||
|
s-0.6,0.41-0.99,0.41h-2.27h-2.27c-0.39,0-0.74-0.16-0.99-0.41s-0.41-0.6-0.41-0.99s0.16-0.74,0.41-0.99s0.6-0.41,0.99-0.41h2.27
|
||||||
|
h2.27C259.31,532.11,259.66,532.27,259.91,532.52z"/>
|
||||||
|
<g>
|
||||||
|
<path d="M298.48,505.8c2.29,0,4.15-1.86,4.15-4.15s-1.86-4.15-4.15-4.15s-4.15,1.86-4.15,4.15
|
||||||
|
C294.32,503.94,296.18,505.8,298.48,505.8z"/>
|
||||||
|
<path d="M308.91,519.83c0,0-0.44-1.06-0.78-1.89l0,0c-0.21-0.52-0.39-0.94-0.39-0.94l-1.17-2.83l-1.17-2.83l-1.17-2.83l0,0
|
||||||
|
c-0.14-0.33-0.34-0.63-0.59-0.88s-0.55-0.45-0.88-0.59c-0.33-0.14-0.69-0.22-1.07-0.22h-1.6h-1.6h-1.6h-1.6
|
||||||
|
c-0.38,0-0.74,0.08-1.07,0.22c-0.33,0.14-0.63,0.34-0.88,0.59s-0.45,0.55-0.59,0.88l0,0l-1.17,2.83l-1.17,2.83l-1.17,2.83
|
||||||
|
l-1.17,2.83c-0.05,0.12-0.07,0.24-0.07,0.36s0.03,0.24,0.07,0.35s0.11,0.21,0.2,0.3c0.08,0.08,0.19,0.15,0.3,0.2l0.2,0.08
|
||||||
|
l0.2,0.08l0.2,0.08l0.2,0.08c0.12,0.05,0.24,0.07,0.36,0.07s0.24-0.03,0.35-0.07c0.11-0.05,0.21-0.11,0.3-0.2
|
||||||
|
c0.09-0.08,0.16-0.19,0.2-0.3l1.17-2.83l1.17-2.83l1.17-2.83l0.04-0.1c0.28,0.14,0.54,0.31,0.75,0.52
|
||||||
|
c0.25,0.25,0.46,0.55,0.6,0.88s0.22,0.69,0.22,1.08v1.84l-2.83,10.13c-0.28,0.89,0.11,1.62,0.89,1.62h1.88l1.41,12.62h2.93
|
||||||
|
l1.41-12.62h1.91c0.77,0,1.17-0.73,0.89-1.62l-2.86-10.13v-1.84c0-0.38,0.08-0.74,0.22-1.08c0.14-0.33,0.34-0.63,0.6-0.88
|
||||||
|
c0.22-0.22,0.47-0.39,0.75-0.52l0.04,0.1l1.17,2.83l1.17,2.83l1.17,2.83c0.05,0.12,0.12,0.22,0.2,0.3
|
||||||
|
c0.09,0.08,0.19,0.15,0.3,0.2s0.23,0.07,0.35,0.07s0.24-0.02,0.36-0.07l0.2-0.08l0.2-0.08l0.2-0.08l0.2-0.08
|
||||||
|
c0.12-0.05,0.22-0.12,0.3-0.2c0.08-0.09,0.15-0.19,0.2-0.3c0.05-0.11,0.07-0.23,0.07-0.35
|
||||||
|
C308.98,520.06,308.96,519.94,308.91,519.83z"/>
|
||||||
|
</g>
|
||||||
|
<path d="M501.08,524.93c0.38-0.38,0.92-0.62,1.5-0.62h23.71c0.15,0,0.29,0.01,0.43,0.04c0.97,0.2,1.7,1.05,1.7,2.08l0,0
|
||||||
|
c0,1.03-0.73,1.88-1.7,2.08c-0.14,0.03-0.28,0.04-0.43,0.04v5.17l-23.71,2.75v-7.92c-0.59,0-1.12-0.24-1.5-0.62
|
||||||
|
c-0.19-0.19-0.35-0.42-0.46-0.68c-0.05-0.13-0.1-0.26-0.12-0.4c-0.03-0.14-0.04-0.28-0.04-0.43l0,0
|
||||||
|
C500.46,525.85,500.7,525.31,501.08,524.93z M528.42,514.26c0-1.03-0.73-1.88-1.7-2.08c-0.14-0.03-0.28-0.04-0.43-0.04h-23.71
|
||||||
|
c-0.88,0-1.64,0.54-1.96,1.3c-0.11,0.25-0.17,0.53-0.17,0.83c0,1.17,0.95,2.12,2.12,2.12v7.92l23.71-2.75v-5.17
|
||||||
|
c0.15,0,0.29-0.01,0.43-0.04C527.69,516.14,528.42,515.29,528.42,514.26z M500.62,537.78c-0.11,0.25-0.17,0.53-0.17,0.83
|
||||||
|
c0,0.29,0.06,0.57,0.17,0.83c0.32,0.76,1.08,1.3,1.96,1.3h23.71c0.15,0,0.29-0.01,0.43-0.04c0.97-0.2,1.7-1.05,1.7-2.08
|
||||||
|
s-0.73-1.88-1.7-2.08c-0.14-0.03-0.28-0.04-0.43-0.04h-23.71C501.7,536.48,500.95,537.01,500.62,537.78z M526.29,504.21
|
||||||
|
c0.15,0,0.29-0.01,0.43-0.04c0.97-0.2,1.7-1.05,1.7-2.08s-0.73-1.88-1.7-2.08c-0.14-0.03-0.28-0.04-0.43-0.04h-23.71
|
||||||
|
c-0.88,0-1.64,0.54-1.96,1.3c-0.11,0.25-0.17,0.53-0.17,0.83s0.06,0.57,0.17,0.83c0.32,0.76,1.08,1.3,1.96,1.3v7.92l23.71-2.75
|
||||||
|
V504.21z"/>
|
||||||
|
<path d="M359.68,535.12h4.63v2.27H343.9v-2.27h4.63v-3.96h11.15V535.12z M354.26,515.8c-0.82,0-1.49,0.67-1.49,1.49
|
||||||
|
s0.67,1.49,1.49,1.49c0.82,0,1.49-0.67,1.49-1.49C355.76,516.47,355.09,515.8,354.26,515.8z M374.51,505.68v23.22h-40.5v-23.22
|
||||||
|
L374.51,505.68L374.51,505.68z M361.1,517.29c0-3.77-3.07-6.83-6.83-6.83c-3.77,0-6.83,3.06-6.83,6.83c0,3.77,3.07,6.83,6.83,6.83
|
||||||
|
c1.35,0,2.65-0.39,3.78-1.14l-0.84-1.26c-0.87,0.58-1.89,0.89-2.94,0.89c-2.93,0-5.32-2.39-5.32-5.32s2.39-5.32,5.32-5.32
|
||||||
|
s5.32,2.39,5.32,5.32c0,0.51-0.07,1.01-0.22,1.49h-2.51c0.26-0.44,0.41-0.95,0.41-1.49c0-1.66-1.35-3.01-3.01-3.01
|
||||||
|
s-3.01,1.35-3.01,3.01c0,1.66,1.35,3.01,3.01,3.01h6.15l0.19-0.48C360.93,519.01,361.1,518.16,361.1,517.29z"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path d="M257.18,326.38c-0.64-0.33-1.28-0.57-1.94-0.73s-1.35-0.24-2.08-0.24c-2.1,0-3.15,0.38-3.15,1.12
|
||||||
|
c0,0.26,0.1,0.45,0.31,0.58c0.21,0.13,0.5,0.22,0.88,0.29s0.84,0.11,1.38,0.14c0.54,0.03,1.16,0.08,1.85,0.15
|
||||||
|
c0.74,0.07,1.38,0.17,1.94,0.3c0.55,0.13,1.01,0.3,1.38,0.52c0.36,0.22,0.64,0.5,0.82,0.82c0.18,0.33,0.27,0.73,0.27,1.2
|
||||||
|
c0,1.02-0.45,1.8-1.35,2.35s-2.22,0.83-3.96,0.83c-2.43,0-4.38-0.55-5.83-1.66l1-1.31c0.65,0.45,1.37,0.79,2.17,1.02
|
||||||
|
c0.8,0.23,1.68,0.35,2.63,0.35c1.1,0,1.93-0.14,2.5-0.41c0.57-0.27,0.85-0.63,0.85-1.08c0-0.51-0.36-0.87-1.08-1.06
|
||||||
|
c-0.52-0.14-1.14-0.22-1.85-0.23s-1.52-0.06-2.42-0.14c-1.17-0.11-2.03-0.36-2.58-0.75s-0.83-0.96-0.83-1.72
|
||||||
|
c0-0.9,0.44-1.62,1.31-2.15s2.12-0.79,3.75-0.79c2.13,0,3.86,0.46,5.18,1.38L257.18,326.38z"/>
|
||||||
|
<path d="M279.64,333.66h-2.11l7.14-11.29h2.09L279.64,333.66z"/>
|
||||||
|
<path class="st1" d="M306.39,333.5v-9.46h9.83v1.66h-7.98v2.06h5.55v1.66h-5.55v2.42h8.34v1.66L306.39,333.5L306.39,333.5z"/>
|
||||||
|
<path class="st1" d="M346.07,333.5l-3.77-3.71l-3.77,3.71h-2.32l4.92-4.8l-4.75-4.66h2.32l3.6,3.57l3.6-3.57h2.32l-4.75,4.66
|
||||||
|
l4.92,4.8H346.07z"/>
|
||||||
|
<path class="st1" d="M373.81,325.7v7.8h-1.85v-7.8h-4.52v-1.66h10.89v1.66H373.81z"/>
|
||||||
|
<path class="st1" d="M407.66,333.5l-2.48-3.48h-4.69v3.48h-1.85v-9.46h7.65c0.5,0,0.96,0.07,1.36,0.22s0.75,0.35,1.04,0.61
|
||||||
|
s0.51,0.58,0.66,0.95c0.15,0.37,0.23,0.78,0.23,1.23c0,0.77-0.2,1.4-0.6,1.88c-0.4,0.49-0.98,0.82-1.75,0.99l2.55,3.58H407.66z
|
||||||
|
M406.01,328.37c1.12,0,1.68-0.43,1.68-1.29c0-0.48-0.14-0.83-0.43-1.04c-0.29-0.22-0.74-0.33-1.35-0.33h-5.42v2.66H406.01z"/>
|
||||||
|
<path class="st1" d="M439.64,333.5l-1.09-2.03h-6.35l-1.09,2.03h-2.03l5.15-9.46h2.29l5.15,9.46H439.64z M435.38,325.63
|
||||||
|
l-2.26,4.18h4.51L435.38,325.63z"/>
|
||||||
|
<path class="st1" d="M461.83,333.5v-9.46h1.85v9.46H461.83z"/>
|
||||||
|
<path class="st1" d="M494.38,333.5l-2.48-3.48h-4.69v3.48h-1.85v-9.46h7.65c0.5,0,0.96,0.07,1.36,0.22s0.75,0.35,1.04,0.61
|
||||||
|
s0.51,0.58,0.66,0.95c0.15,0.37,0.23,0.78,0.23,1.23c0,0.77-0.2,1.4-0.6,1.88c-0.4,0.49-0.98,0.82-1.75,0.99l2.55,3.58H494.38z
|
||||||
|
M492.74,328.37c1.12,0,1.68-0.43,1.68-1.29c0-0.48-0.14-0.83-0.43-1.04c-0.29-0.22-0.74-0.33-1.35-0.33h-5.42v2.66H492.74z"/>
|
||||||
|
<path class="st1" d="M517.58,333.5v-9.46h9.83v1.66h-7.98v2.06h5.55v1.66h-5.55v2.42h8.34v1.66L517.58,333.5L517.58,333.5z"/>
|
||||||
|
</g>
|
||||||
|
<path d="M359.68,535.12h4.63v2.27H343.9v-2.27h4.63v-3.96h11.15V535.12z M354.26,515.8c-0.82,0-1.49,0.67-1.49,1.49
|
||||||
|
s0.67,1.49,1.49,1.49c0.82,0,1.49-0.67,1.49-1.49C355.76,516.47,355.09,515.8,354.26,515.8z M374.51,505.68v23.22h-40.5v-23.22
|
||||||
|
L374.51,505.68L374.51,505.68z M361.1,517.29c0-3.77-3.07-6.83-6.83-6.83c-3.77,0-6.83,3.06-6.83,6.83c0,3.77,3.07,6.83,6.83,6.83
|
||||||
|
c1.35,0,2.65-0.39,3.78-1.14l-0.84-1.26c-0.87,0.58-1.89,0.89-2.94,0.89c-2.93,0-5.32-2.39-5.32-5.32s2.39-5.32,5.32-5.32
|
||||||
|
s5.32,2.39,5.32,5.32c0,0.51-0.07,1.01-0.22,1.49h-2.51c0.26-0.44,0.41-0.95,0.41-1.49c0-1.66-1.35-3.01-3.01-3.01
|
||||||
|
s-3.01,1.35-3.01,3.01c0,1.66,1.35,3.01,3.01,3.01h6.15l0.19-0.48C360.93,519.01,361.1,518.16,361.1,517.29z"/>
|
||||||
|
<g>
|
||||||
|
<g>
|
||||||
|
<polygon points="361.86,564.75 346.67,564.75 354.26,557.07 354.26,557.07 "/>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
After Width: | Height: | Size: 59 KiB |
50
setup.cfg
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
[metadata]
|
||||||
|
version = 0.0.1
|
||||||
|
classifiers =
|
||||||
|
Programming Language :: Python :: 3
|
||||||
|
License :: OSI Approved :: MIT License
|
||||||
|
Operating System :: OS Independent
|
||||||
|
url = https://git.tetalab.org/tetalab/thsf.net
|
||||||
|
description = "THSF website"
|
||||||
|
name = thsf
|
||||||
|
long_description = file: README.md
|
||||||
|
long_description_content_type = text/markdown
|
||||||
|
author = Doug Le Tough
|
||||||
|
author_email = doug@redatomik.org
|
||||||
|
|
||||||
|
[options]
|
||||||
|
package_dir =
|
||||||
|
= src
|
||||||
|
packages = find:
|
||||||
|
include_package_data = True
|
||||||
|
python_requires = >=3.7
|
||||||
|
install_requires =
|
||||||
|
flask
|
||||||
|
Flask-Minify
|
||||||
|
gunicorn
|
||||||
|
pyYAML
|
||||||
|
requests
|
||||||
|
|
||||||
|
[options.packages.find]
|
||||||
|
where = src
|
||||||
|
|
||||||
|
[options.extras_require]
|
||||||
|
dev =
|
||||||
|
twine
|
||||||
|
build
|
||||||
|
wheel>=0.37.0
|
||||||
|
flake8>=4.0.1
|
||||||
|
flake8-breakpoint>=1.1.0
|
||||||
|
flake8-builtins>=1.5.3
|
||||||
|
flake8-print>=4.0.0
|
||||||
|
flake8-return>=1.1.3
|
||||||
|
pep8-naming>=0.8.2
|
||||||
|
setuptools>=60.9.2
|
||||||
|
pylint>=2.12.2
|
||||||
|
|
||||||
|
[flake8]
|
||||||
|
ignore = E111
|
||||||
|
exclude = .git,__pycache__,build,dist, thot-cli-venv
|
||||||
|
max-line-length = 160
|
||||||
|
use-flake8-tabs = true
|
||||||
|
tab-width = 2
|
202
src/thsf/__init__.py
Normal file
@ -0,0 +1,202 @@
|
|||||||
|
import re
|
||||||
|
import sys
|
||||||
|
import json
|
||||||
|
import logging
|
||||||
|
from logging import config
|
||||||
|
import yaml
|
||||||
|
from flask import Flask, render_template, redirect, request, url_for
|
||||||
|
from flask_minify import minify
|
||||||
|
from thsf.backend import Backend
|
||||||
|
from thsf.schedule import Schedule
|
||||||
|
from thsf.navbar import Navbar
|
||||||
|
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Configuration
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
class AppConfig:
|
||||||
|
""" Flask application config """
|
||||||
|
CONFIG_FILENAME = "config.yml"
|
||||||
|
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Application
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
logger = logging.getLogger('wsgi')
|
||||||
|
app = Flask(__name__)
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Local configuration
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
app.config.from_object(__name__ + '.AppConfig')
|
||||||
|
try:
|
||||||
|
with open(app.config["CONFIG_FILENAME"], mode="r", encoding="utf-8") as local_config_file:
|
||||||
|
app.local_config = yaml.load(local_config_file, Loader=yaml.SafeLoader)
|
||||||
|
app.config["SECRET_KEY"] = app.local_config["app"]["secret_key"]
|
||||||
|
app.config["LANGUAGES"] = app.local_config["app"]["languages"]
|
||||||
|
config.dictConfig(app.local_config["log"])
|
||||||
|
backend = Backend(url=app.local_config["pretalx"]["url"],
|
||||||
|
apiprefix=app.local_config["pretalx"]["apiprefix"],
|
||||||
|
apikey=app.local_config["pretalx"]["apikey"])
|
||||||
|
schedule = Schedule()
|
||||||
|
navbar = Navbar(config=app.local_config["navbar"])
|
||||||
|
except Exception as err:
|
||||||
|
logger.critical("[{}] {}".format(err.__class__, str(err)))
|
||||||
|
sys.exit(1)
|
||||||
|
|
||||||
|
if app.local_config["log"]["root"]["level"] != "DEBUG":
|
||||||
|
minify(app=app, html=True, js=True, cssless=True)
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Tools
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
@app.errorhandler(404)
|
||||||
|
def page_not_found(err):
|
||||||
|
return redirect(url_for('index'))
|
||||||
|
|
||||||
|
def get_slots():
|
||||||
|
return backend.get(endpoint=f"events/{app.local_config['pretalx']['event']}/schedules/{app.local_config['pretalx']['schedule']}/").json()
|
||||||
|
|
||||||
|
def get_speaker_biography(name):
|
||||||
|
try:
|
||||||
|
speaker_info = backend.get(endpoint=f"events/{app.local_config['pretalx']['event']}/speakers/", params={"q": name}).json()
|
||||||
|
logging.info(speaker_info)
|
||||||
|
return speaker_info["results"][0]["biography"].strip()
|
||||||
|
except Exception as err:
|
||||||
|
logging.error(f"UnknownSpeakerError: {name}")
|
||||||
|
return None
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Custom filters
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
@app.template_filter('date2dmyhm')
|
||||||
|
def date2dmyhm(date):
|
||||||
|
splitted_date = date.split("-")
|
||||||
|
splitted_time = splitted_date[2].split("T")[1].split(":")
|
||||||
|
year, month, day = (splitted_date[0],
|
||||||
|
splitted_date[1],
|
||||||
|
splitted_date[2].split("T")[0])
|
||||||
|
hour, minutes = (splitted_time[0], splitted_time[1].split("+")[0])
|
||||||
|
return f"{day}/{month} {hour}:{minutes}"
|
||||||
|
|
||||||
|
@app.template_filter('date2dayclass')
|
||||||
|
def date2dayclass(date):
|
||||||
|
classes = {"26/05": "bg1",
|
||||||
|
"27/05": "bg2",
|
||||||
|
"28/05": "bg3",}
|
||||||
|
splitted_date = date.split("-")
|
||||||
|
month, day = (splitted_date[1],
|
||||||
|
splitted_date[2].split("T")[0])
|
||||||
|
return classes[f"{day}/{month}"]
|
||||||
|
|
||||||
|
@app.template_filter('toicon')
|
||||||
|
def date2dmyhm(slot_type):
|
||||||
|
slot_types = {"Projection": "fa-solid fa-film",
|
||||||
|
"Presentation Courte": "fa-solid fa-person-chalkboard",
|
||||||
|
"DJ Set": "fa-solid fa-guitar",
|
||||||
|
"Concert": "fa-solid fa-guitar",
|
||||||
|
"Présentation": "fa-solid fa-person-chalkboard",
|
||||||
|
"Table Ronde": "fa-solid fa-users-line",
|
||||||
|
"Atelier": "fa-solid fa-screwdriver-wrench",
|
||||||
|
"Exposition": "fa-solid fa-palette"}
|
||||||
|
return slot_types[slot_type]
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Routes
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
@app.route('/favicon.ico', methods=['GET'])
|
||||||
|
def favicon():
|
||||||
|
return redirect(url_for('static', filename='images/favicon.png'))
|
||||||
|
|
||||||
|
|
||||||
|
@app.route('/', methods=['GET'])
|
||||||
|
def index():
|
||||||
|
return render_template("index.html",
|
||||||
|
navbar=navbar.get_from_page(page="/"))
|
||||||
|
|
||||||
|
@app.route('/planning', methods=['GET'])
|
||||||
|
def planning():
|
||||||
|
slots = get_slots()
|
||||||
|
for slot in slots.get("slots"):
|
||||||
|
for speaker in slot.get("speakers"):
|
||||||
|
speaker["biography"] = get_speaker_biography(speaker.get("name"))
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/planning"))
|
||||||
|
|
||||||
|
@app.route('/place', methods=['GET'])
|
||||||
|
def place():
|
||||||
|
return render_template("index.html",
|
||||||
|
navbar=navbar.get_from_page(page="/place"))
|
||||||
|
|
||||||
|
@app.route('/food', methods=['GET'])
|
||||||
|
def food():
|
||||||
|
return render_template("index.html",
|
||||||
|
navbar=navbar.get_from_page(page="/food"))
|
||||||
|
|
||||||
|
@app.route('/goodies', methods=['GET'])
|
||||||
|
def goodies():
|
||||||
|
return render_template("goodies.html",
|
||||||
|
navbar=navbar.get_from_page(page="/goodies"))
|
||||||
|
|
||||||
|
@app.route('/concerts', methods=['GET'])
|
||||||
|
def concerts():
|
||||||
|
slots = get_slots()
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/concerts"),
|
||||||
|
filter=["concert", "dj set"])
|
||||||
|
|
||||||
|
@app.route('/workshops', methods=['GET'])
|
||||||
|
def workshops():
|
||||||
|
slots = get_slots()
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/workshops"),
|
||||||
|
filter=["workshop"])
|
||||||
|
|
||||||
|
@app.route('/screenings', methods=['GET'])
|
||||||
|
def screenings():
|
||||||
|
slots = get_slots()
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/screenings"),
|
||||||
|
filter=["screening"])
|
||||||
|
|
||||||
|
@app.route('/discussions', methods=['GET'])
|
||||||
|
def discussions():
|
||||||
|
slots = get_slots()
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/discussions"),
|
||||||
|
filter=["panel discussion"])
|
||||||
|
|
||||||
|
@app.route('/exhibitions', methods=['GET'])
|
||||||
|
def exhibitions():
|
||||||
|
slots = get_slots()
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/exhibitions"),
|
||||||
|
filter=["exhibition"])
|
||||||
|
|
||||||
|
@app.route('/talks', methods=['GET'])
|
||||||
|
def talks():
|
||||||
|
slots = get_slots()
|
||||||
|
return render_template("planning.html",
|
||||||
|
slots=sorted(slots.get("slots"),
|
||||||
|
key=lambda slot: slot.get("slot").get("start")),
|
||||||
|
navbar=navbar.get_from_page(page="/talks"),
|
||||||
|
filter=["talk", "light talk"])
|
||||||
|
|
||||||
|
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
# -- Main
|
||||||
|
# ------------------------------------------------------------------------------
|
||||||
|
if __name__ == '__main__':
|
||||||
|
app.run(host='127.0.0.1', port=5000, debug=True)
|
15
src/thsf/backend/__init__.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
import requests
|
||||||
|
import logging
|
||||||
|
|
||||||
|
class Backend:
|
||||||
|
def __init__(self, url, apiprefix, apikey):
|
||||||
|
self.url = url
|
||||||
|
self.apiprefix = apiprefix
|
||||||
|
self.apikey = apikey
|
||||||
|
self.session = requests.Session()
|
||||||
|
|
||||||
|
def get(self, endpoint, params=None):
|
||||||
|
url = f"{self.url}/{self.apiprefix}/{endpoint}"
|
||||||
|
headers = {"Authorization": f"Token {self.apikey}",
|
||||||
|
"Accept": "application/json"}
|
||||||
|
return self.session.get(url, params=params, headers=headers)
|
6
src/thsf/navbar/__init__.py
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
class Navbar:
|
||||||
|
def __init__(self, config):
|
||||||
|
self.config = config
|
||||||
|
|
||||||
|
def get_from_page(self, page):
|
||||||
|
return [item for item in self.config["items"] if item["url"] != page]
|
6
src/thsf/schedule/__init__.py
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
class Schedule:
|
||||||
|
def __init__(self):
|
||||||
|
self.slots = list()
|
||||||
|
|
||||||
|
def set_slots(self, slots):
|
||||||
|
self.slots = slots
|
49
src/thsf/static/css/colors.css
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
@font-face {
|
||||||
|
font-family: pfdintextcomppromedium;
|
||||||
|
src: url(../fonts/PFDinTextCompPro-Medium.ttf);
|
||||||
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: pfdintextcompprothin;
|
||||||
|
src: url(../fonts/PFDinTextCompPro-Thin.ttf);
|
||||||
|
}
|
||||||
|
|
||||||
|
:root {
|
||||||
|
--main-bg-color: #e6007e;
|
||||||
|
--alt-bg-color: #E59730;
|
||||||
|
--alt2-bg-color: #9EBF43;
|
||||||
|
--alt3-bg-color: #3096E5;
|
||||||
|
--main-color: #ffffff;
|
||||||
|
--alt-main-color: #1A000D;
|
||||||
|
}
|
||||||
|
|
||||||
|
.white {
|
||||||
|
color: var(--main-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.black {
|
||||||
|
color: var(--alt-main-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.thin {
|
||||||
|
font-family: pfdintextcompprothin;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bold {
|
||||||
|
font-family: pfdintextcomppromedium;
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg1 {
|
||||||
|
background-color: var(--alt-bg-color);
|
||||||
|
border-color: var(--alt-bg-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg2 {
|
||||||
|
background-color: var(--alt2-bg-color);
|
||||||
|
border-color: var(--alt2-bg-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.bg3 {
|
||||||
|
background-color: var(--alt3-bg-color);
|
||||||
|
border-color: var(--alt3-bg-color);
|
||||||
|
}
|
109
src/thsf/static/css/custom.css
Normal file
@ -0,0 +1,109 @@
|
|||||||
|
@media screen and (min-width: 45em) {
|
||||||
|
.header {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 0;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 9.75em;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.logo {
|
||||||
|
width: inherit;
|
||||||
|
}
|
||||||
|
.header > span {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.subheader {
|
||||||
|
margin: -1em 0 0 0;
|
||||||
|
font-size: 3.47em;
|
||||||
|
}
|
||||||
|
.place {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 2.145em;
|
||||||
|
}
|
||||||
|
.important {
|
||||||
|
font-family: pfdintextcomppromedium;
|
||||||
|
}
|
||||||
|
.left {
|
||||||
|
float: left;
|
||||||
|
margin-right: 0.5em;
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
float: right;
|
||||||
|
margin-left: 0.5em;
|
||||||
|
}
|
||||||
|
.logo_partner {
|
||||||
|
max-width: 250px;
|
||||||
|
max-height: 250px;
|
||||||
|
margin: 1em;
|
||||||
|
}
|
||||||
|
.button {
|
||||||
|
font-size: 2.5em;
|
||||||
|
transition-property: color;
|
||||||
|
transition-duration: 1s;
|
||||||
|
}
|
||||||
|
.button:hover {
|
||||||
|
color: var(--main-color);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 44em) {
|
||||||
|
.header {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
gap: 0;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 6.75em;
|
||||||
|
font-weight: bold;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
.header > span {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.logo {
|
||||||
|
width: inherit;
|
||||||
|
}
|
||||||
|
.subheader {
|
||||||
|
margin: -1em 0 0 0;
|
||||||
|
font-size: 2.30em;
|
||||||
|
}
|
||||||
|
.place {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 1.2em;
|
||||||
|
}
|
||||||
|
.important {
|
||||||
|
font-family: pfdintextcomppromedium;
|
||||||
|
}
|
||||||
|
.left {
|
||||||
|
float: left;
|
||||||
|
margin-right: 0.25em;
|
||||||
|
}
|
||||||
|
.right {
|
||||||
|
float: right;
|
||||||
|
margin-left: 0.25em;
|
||||||
|
}
|
||||||
|
.logo_partner {
|
||||||
|
max-width: 125px;
|
||||||
|
max-height: 125px;
|
||||||
|
margin: 0.25em;
|
||||||
|
}
|
||||||
|
.button {
|
||||||
|
font-size: 1.2em;
|
||||||
|
transition-property: color;
|
||||||
|
transition-duration: 1s;
|
||||||
|
}
|
||||||
|
.button:hover {
|
||||||
|
color: var(--main-color);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
.goodies {
|
||||||
|
text-align: justify;
|
||||||
|
}
|
||||||
|
.goodies_pic {
|
||||||
|
max-width: 5em;
|
||||||
|
}
|
||||||
|
}
|
18
src/thsf/static/css/elements.css
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
a {
|
||||||
|
font-family: pfdintextcomppromedium;
|
||||||
|
font-weight: 250;
|
||||||
|
color: var(--alt-main-color);
|
||||||
|
transition-property: color;
|
||||||
|
transition-duration: 1s;
|
||||||
|
text-decoration: wavy;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: var(--main-color);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.content > p,
|
||||||
|
.content > h2 {
|
||||||
|
margin-top: 1.5em;
|
||||||
|
}
|
66
src/thsf/static/css/slot.css
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
.slot {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
margin-bottom: 1em;
|
||||||
|
width: 20em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.slot_header {
|
||||||
|
margin: 0;
|
||||||
|
width: 20em;
|
||||||
|
font-family: pfdintextcompprothin;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.slot_title {
|
||||||
|
border-radius: 1em 0 0 0;
|
||||||
|
color: var(--main-color);
|
||||||
|
padding: 0.5em;
|
||||||
|
text-align: center;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: flex-start;
|
||||||
|
align-content: flex-start;
|
||||||
|
align-items: flex-start;
|
||||||
|
width: 20em;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.slot_title .title{
|
||||||
|
margin-left: 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.slot_info {
|
||||||
|
background-color: var(--main-color);
|
||||||
|
color: var(--alt-main-color);
|
||||||
|
margin: 0;
|
||||||
|
padding: 0.5em;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: flex-start;
|
||||||
|
align-content: flex-start;
|
||||||
|
align-items: flex-start;
|
||||||
|
border-radius: 0 0 0 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.speaker {
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
.speakers > .speaker > .name > span {
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
.speaker_details,
|
||||||
|
.slot_details {
|
||||||
|
visibility: hidden;
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
.speaker_img,
|
||||||
|
.slot_img {
|
||||||
|
width: 18em;
|
||||||
|
}
|
15
src/thsf/static/css/style.css
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
* {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
background-color: var(--main-bg-color);
|
||||||
|
font-family: pfdintextcomppromedium;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
text-align: center;
|
||||||
|
/* background-color: yellow; */
|
||||||
|
}
|
57
src/thsf/static/css/tooltip.css
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
.tooltip,
|
||||||
|
.slot_tooltip {
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip .tooltiptext {
|
||||||
|
visibility: hidden;
|
||||||
|
background-color: var(--alt-main-color);
|
||||||
|
color: var(--main-color);
|
||||||
|
text-align: center;
|
||||||
|
border-radius: 6px;
|
||||||
|
padding: 5px 0;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 1;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(-25%) translateY(-2em);
|
||||||
|
transition: opacity 1s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.slot_tooltip .slot_tooltiptext {
|
||||||
|
visibility: hidden;
|
||||||
|
background-color: var(--main-color);
|
||||||
|
color: var(--alt-main-color);
|
||||||
|
text-align: center;
|
||||||
|
border-radius: 6px;
|
||||||
|
padding: 5px 0;
|
||||||
|
position: absolute;
|
||||||
|
z-index: 1;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
opacity: 0;
|
||||||
|
transform: translateX(2em);
|
||||||
|
transition: opacity 1s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip .tooltiptext::after,
|
||||||
|
.slot_tooltip .slot_tooltiptext::after {
|
||||||
|
content: "";
|
||||||
|
position: absolute;
|
||||||
|
top: 100%;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -5px;
|
||||||
|
border-width: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tooltip:hover .tooltiptext,
|
||||||
|
.slot_tooltip:hover .slot_tooltiptext {
|
||||||
|
visibility: visible;
|
||||||
|
opacity: 1;
|
||||||
|
font-size: 0.7em;
|
||||||
|
padding: 0.2em;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
72
src/thsf/static/css/wemakeporn.css
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
@media screen and (min-width: 45em) {
|
||||||
|
.wemakeporn {
|
||||||
|
background-color: #FFD036;
|
||||||
|
color: #000000;
|
||||||
|
font-family: Arial, Helvetica, sans-serif;
|
||||||
|
border-radius: 1em;
|
||||||
|
border-width: 1em;
|
||||||
|
border-style: solid;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
padding: 0.5em;
|
||||||
|
transform: rotate(-20deg) translate(2em, -6em);
|
||||||
|
visibility: hidden;
|
||||||
|
position: fixed;
|
||||||
|
}
|
||||||
|
.wemakeporn:hover{
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wemake {
|
||||||
|
font-size: 7em;
|
||||||
|
font-weight: bold;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.porn {
|
||||||
|
font-size: 12em;
|
||||||
|
font-weight: bold;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media screen and (max-width: 44em) {
|
||||||
|
.wemakeporn {
|
||||||
|
background-color: #FFD036;
|
||||||
|
color: #000000;
|
||||||
|
font-family: Arial, Helvetica, sans-serif;
|
||||||
|
border-radius: 0.5em;
|
||||||
|
border-width: 0.5em;
|
||||||
|
border-style: solid;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
padding: 0.5em;
|
||||||
|
transform: rotate(-20deg) translate(-1.5em, 8em);
|
||||||
|
visibility: hidden;
|
||||||
|
position: fixed;
|
||||||
|
}
|
||||||
|
.wemakeporn:hover{
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
.wemake {
|
||||||
|
font-size: 3.5em;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.porn {
|
||||||
|
font-size: 6em;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
}
|
125
src/thsf/static/css/wrappers.css
Normal file
@ -0,0 +1,125 @@
|
|||||||
|
@media screen and (min-width: 45em) {
|
||||||
|
.page_wrapper {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
text-align: center;
|
||||||
|
padding-bottom: 5em;
|
||||||
|
/* background-color: green; */
|
||||||
|
}
|
||||||
|
.center_wrapper,
|
||||||
|
.header_wrapper {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.logo_wrapper {
|
||||||
|
margin: 1em 0 1em 0;
|
||||||
|
width: 40em;
|
||||||
|
}
|
||||||
|
.navbar_wrapper {
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
padding: 1em 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
gap: 1.4em;
|
||||||
|
background-color: var(--main-bg-color);
|
||||||
|
width: 40em;
|
||||||
|
transform: translateZ(2);
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
font-size: 2em;
|
||||||
|
font-family: pfdintextcompprothin;
|
||||||
|
color: var(--main-color);
|
||||||
|
width: 20em;
|
||||||
|
text-align:justify;
|
||||||
|
text-justify: inter-word;
|
||||||
|
}
|
||||||
|
.partners {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 2em;
|
||||||
|
}
|
||||||
|
.subpartners {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@media screen and (max-width: 44em) {
|
||||||
|
.page_wrapper {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
align-content: center;
|
||||||
|
text-align: center;
|
||||||
|
padding-bottom: 2em;
|
||||||
|
width: 21em;
|
||||||
|
/* background-color: green; */
|
||||||
|
}
|
||||||
|
.center_wrapper ,
|
||||||
|
.header_wrapper {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
width: 21em;
|
||||||
|
/* background-color: orangered; */
|
||||||
|
}
|
||||||
|
.logo_wrapper {
|
||||||
|
margin-top: 0.5em;
|
||||||
|
width: 21em;
|
||||||
|
/* background-color: red; */
|
||||||
|
}
|
||||||
|
.navbar_wrapper {
|
||||||
|
position: fixed;
|
||||||
|
bottom: 0;
|
||||||
|
padding: 0.5em 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
gap: 1em;
|
||||||
|
background-color: var(--main-bg-color);
|
||||||
|
width: 21em;
|
||||||
|
transform: translateZ(2);
|
||||||
|
/* background-color: white; */
|
||||||
|
}
|
||||||
|
.content {
|
||||||
|
font-size: 1em;
|
||||||
|
font-family: pfdintextcompprothin;
|
||||||
|
color: var(--main-color);
|
||||||
|
width: 21em;
|
||||||
|
text-align:justify;
|
||||||
|
text-justify: inter-word;
|
||||||
|
}
|
||||||
|
.partners {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 2em;
|
||||||
|
}
|
||||||
|
.subpartners {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
}
|
BIN
src/thsf/static/images/antistatik.png
Normal file
After Width: | Height: | Size: 9.2 KiB |
BIN
src/thsf/static/images/bg.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
src/thsf/static/images/clutch.png
Normal file
After Width: | Height: | Size: 7.1 KiB |
Before Width: | Height: | Size: 31 KiB After Width: | Height: | Size: 31 KiB |
301
src/thsf/static/images/logo.svg
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
src/thsf/static/images/pretalx-header.png
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
src/thsf/static/images/stickers.webp
Normal file
After Width: | Height: | Size: 8.0 KiB |
BIN
src/thsf/static/images/sweatshirt.webp
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
src/thsf/static/images/terranova.jpg
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
src/thsf/static/images/tetalab.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
src/thsf/static/images/tetaneutral.png
Normal file
After Width: | Height: | Size: 9.7 KiB |
BIN
src/thsf/static/images/totebag.webp
Normal file
After Width: | Height: | Size: 2.6 KiB |
BIN
src/thsf/static/images/tshirt.webp
Normal file
After Width: | Height: | Size: 5.2 KiB |
14
src/thsf/static/scripts/thsf23.js
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
function switch_visibility(item){
|
||||||
|
console.log(item.style.visibility);
|
||||||
|
console.log(item.style.display);
|
||||||
|
if (item.style.visibility == "hidden" || item.style.display == "none") {
|
||||||
|
item.style.visibility = "visible";
|
||||||
|
item.style.display = "block";
|
||||||
|
} else if (item.style.visibility == "" && item.style.display == "") {
|
||||||
|
item.style.visibility = "visible";
|
||||||
|
item.style.display = "block";
|
||||||
|
} else {
|
||||||
|
item.style.visibility = "hidden";
|
||||||
|
item.style.display = "none";
|
||||||
|
}
|
||||||
|
}
|
95
src/thsf/templates/base.html
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang='zxx'>
|
||||||
|
<head>
|
||||||
|
<title>THSF 2023: S/Extraire</title>
|
||||||
|
<meta name="viewport" content="initial-scale=1.0">
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=utf-8">
|
||||||
|
<script src="{{ url_for('static', filename='scripts/thsf23.js') }}"></script>
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/colors.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/wemakeporn.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/wrappers.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/custom.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/elements.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/style.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/tooltip.css') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="{{ url_for('static', filename='css/slot.css') }}">
|
||||||
|
<link rel="icon"
|
||||||
|
type="image/svg+xml"
|
||||||
|
href="{{ url_for('static', filename='images/logo.svg') }}">
|
||||||
|
<link rel="stylesheet"
|
||||||
|
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
|
||||||
|
{% block headers %}
|
||||||
|
{% endblock %}
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="page_wrapper">
|
||||||
|
<div class="center_wrapper">
|
||||||
|
<div class="header_wrapper">
|
||||||
|
<div class="header">
|
||||||
|
<span class="black bold">THSF</span>
|
||||||
|
<span class="white thin">2023</span>
|
||||||
|
</div>
|
||||||
|
<div class="subheader">
|
||||||
|
<span class="white thin">Toulouse Hacker Space Factory</span>
|
||||||
|
</div>
|
||||||
|
<div class="place">
|
||||||
|
<span class="black thin">26 28 mai 2023 - </span>
|
||||||
|
<span class="white bold">CINÉMA UTOPIA BORDEROUGE</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% block content %}
|
||||||
|
{% endblock %}
|
||||||
|
<div class="partners">
|
||||||
|
<div class="subpartners">
|
||||||
|
<a href="https://www.tetalab.org/" target="_new">
|
||||||
|
<img src="{{ url_for('static', filename='images/tetalab.png')}}"
|
||||||
|
alt="Tetalab"
|
||||||
|
title="Tetalab"
|
||||||
|
class="logo_partner">
|
||||||
|
</a>
|
||||||
|
<a href="https://www.librairie-terranova.fr/" target="_new">
|
||||||
|
<img src="{{ url_for('static', filename='images/terranova.jpg')}}"
|
||||||
|
alt="Librairie Terra Nova"
|
||||||
|
title="Librairie Terra Nova"
|
||||||
|
class="logo_partner">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="subpartners">
|
||||||
|
<a href="https://www.tetaneutral.net/" target="_new">
|
||||||
|
<img src="{{ url_for('static', filename='images/tetaneutral.png')}}"
|
||||||
|
alt="Tetaneutral"
|
||||||
|
title="Tetaneutral"
|
||||||
|
class="logo_partner">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
<div class="subpartners">
|
||||||
|
<a href="https://clutchmag.fr/" target="_new">
|
||||||
|
<img src="{{ url_for('static', filename='images/clutch.png')}}"
|
||||||
|
alt="Clutch"
|
||||||
|
title="Clutch"
|
||||||
|
class="logo_partner">
|
||||||
|
</a>
|
||||||
|
<a href="https://www.antistatik.store/" target="_new">
|
||||||
|
<img src="{{ url_for('static', filename='images/antistatik.png')}}"
|
||||||
|
alt="Antistatik"
|
||||||
|
title="Antistatik"
|
||||||
|
class="logo_partner">
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% block navbar %}
|
||||||
|
{% include "navbar.html" %}
|
||||||
|
{% endblock %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
33
src/thsf/templates/goodies.html
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
{% block content %}
|
||||||
|
<div class="logo_wrapper">
|
||||||
|
<img class="logo"
|
||||||
|
src="{{ url_for('static', filename='images/logo.svg') }}"
|
||||||
|
alt="THSF 2023 - S/Extraire"
|
||||||
|
title="THSF 2023 - S/Extraire">
|
||||||
|
</div>
|
||||||
|
<div class="content" class="goodies">
|
||||||
|
<h2>Nous avons besoin de votre soutien</h2>
|
||||||
|
<p class="goodies">
|
||||||
|
<img class="left"
|
||||||
|
src="{{ url_for('static', filename='images/stickers.webp') }}"
|
||||||
|
alt="Stickers"
|
||||||
|
title="Stickers">
|
||||||
|
Pour faire du <strong>Toulouse Hacker Space Factory</strong> un événement toujours différent des autres festivals <strong>votre soutien financier</strong> est nécessaire.
|
||||||
|
</p>
|
||||||
|
<p class="goodies">
|
||||||
|
<img class="right"
|
||||||
|
src="{{ url_for('static', filename='images/tshirt.webp') }}"
|
||||||
|
alt="T-Shirt"
|
||||||
|
title="T-Shirt">
|
||||||
|
Pour faciliter la collecte des dons et vous remercier de votre participation, nous avons mis en place <a href="https://www.leetchi.com/c/thsf23" target="_new">une cagnote Leetchi</a> qui nous permettra de recenser les dons et vous permettra de suivre l'évolution du financement de notre festival.
|
||||||
|
</p>
|
||||||
|
<p class="goodies">
|
||||||
|
<img class="left"
|
||||||
|
src="{{ url_for('static', filename='images/sweatshirt.webp') }}"
|
||||||
|
alt="Sweat shirt"
|
||||||
|
title="Sweat shirt">
|
||||||
|
Nous sommes également conscients que la situation actuelle est particulièrement difficile. C'est pourquoi nous nous engageons à ce que <span class="important">toutes les sommes qui dépasseront notre objectif de financement de 2 000 € seront reversées aux caisses des grévistes de la réforme des retraites</span>. Ainsi, votre contribution permettra également de soutenir une cause importante et de <span class="important">faire une différence dans la vie de ceux qui se battent pour nos droits</span>.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
27
src/thsf/templates/index.html
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
{% block content %}
|
||||||
|
<div class="logo_wrapper">
|
||||||
|
<img class="logo"
|
||||||
|
src="{{ url_for('static', filename='images/logo.svg') }}"
|
||||||
|
alt="THSF 2023 - S/Extraire"
|
||||||
|
title="THSF 2023 - S/Extraire"
|
||||||
|
onclick="document.getElementById('wemakeporn').style.visibility='visible';">
|
||||||
|
<div id="wemakeporn" class="wemakeporn"
|
||||||
|
onclick="document.getElementById('wemakeporn').style.visibility='hidden';">
|
||||||
|
<div class="wemake">WE MAKE</div>
|
||||||
|
<div class="porn">PORN</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<h2>Le THSF est enfin de retour !</h2>
|
||||||
|
<p>Nous vous invitons à passer un week-end de 3 jours à <a href="https://www.cinemas-utopia.org/toulouse/" target="_new">Utopia Borderouge Toulouse</a> pour partager avec vous nos projets, nos réflexions, nos performances, nos poésies et nos doutes sur la technologie.</p>
|
||||||
|
|
||||||
|
<p>Après avoir été soutenu et accueilli pendant 10 ans par <a href="https://vive.mixart-myrys.org/" target="_new">Mix'Art Myrys</a>, le <strong>Toulouse HackerSpace Factory</strong> se tient désormais dans un autre lieu où l'utopie nécessaire est inscrite programme.</p>
|
||||||
|
|
||||||
|
<p>Cette année nous mettons en avant des réflexions sur <a href="https://fr.wikipedia.org/wiki/Extractivisme" target="_new">l'extractivisme des ressources</a> planétaires, des données, de la valeur travail.</p>
|
||||||
|
|
||||||
|
<p>Comme toujours, notre objectif est de créer un festival qui poétise les bifurcations de nos idées communes et qui réinvente le sens de certains schémas imposés par notre époque. Rejoignez-nous pour une expérience enrichissante et pleine de surprises !</p>
|
||||||
|
|
||||||
|
<p>Consulter <a href="/planning">le programme du THSF</a>.</p>
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
8
src/thsf/templates/navbar.html
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<div class="navbar_wrapper">
|
||||||
|
{% for item in navbar %}
|
||||||
|
<i class="button tooltip black {{ item.classes }}"
|
||||||
|
onclick="document.location='{{item.url}}'">
|
||||||
|
<span class="tooltiptext thin">{{item.name}}</span>
|
||||||
|
</i>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
15
src/thsf/templates/planning.html
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
{% extends "base.html" %}
|
||||||
|
{% block content %}
|
||||||
|
<div class="content">
|
||||||
|
{% for slot in slots %}
|
||||||
|
{% set loop_index = loop.index %}
|
||||||
|
{% if filter %}
|
||||||
|
{% if slot.submission_type.en | lower in filter %}
|
||||||
|
{% include "slot.html" %}
|
||||||
|
{% endif %}
|
||||||
|
{% else %}
|
||||||
|
{% include "slot.html" %}
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
{% endblock %}
|
64
src/thsf/templates/slot.html
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
<div class="slot">
|
||||||
|
<div class="slot_header">
|
||||||
|
<div class="slot_title {{ slot.slot.start | date2dayclass}}"
|
||||||
|
onclick="switch_visibility(document.getElementById('{{slot.code}}_{{loop_index}}'))">
|
||||||
|
<i class="black {{slot.submission_type.fr | toicon }}"></i>
|
||||||
|
<span class="title">{{slot.title}}</span>
|
||||||
|
</div>
|
||||||
|
<div class="slot_info">
|
||||||
|
<div class="start">
|
||||||
|
<i class="fa-solid fa-caret-right"></i>
|
||||||
|
{{slot.slot.start | date2dmyhm}} - {{slot.duration}} minutes ({{slot.content_locale | capitalize}})
|
||||||
|
</div>
|
||||||
|
<div class="room">
|
||||||
|
<i class="fa-solid fa-caret-right"></i>
|
||||||
|
{{slot.slot.room.fr}}
|
||||||
|
</div>
|
||||||
|
<div class="speakers">
|
||||||
|
{% for speaker in slot.speakers %}
|
||||||
|
<div class="speaker">
|
||||||
|
<div class="name" onclick="switch_visibility(document.getElementById('{{speaker.code}}_{{loop_index}}'))">
|
||||||
|
<i class="fa-solid fa-user"></i>
|
||||||
|
<span>{{speaker.name | title}}</span>
|
||||||
|
</div>
|
||||||
|
{% if speaker.avatar or speaker.biography %}
|
||||||
|
<div id="{{speaker.code}}_{{loop_index}}" class="speaker_details">
|
||||||
|
{% if speaker.avatar %}
|
||||||
|
<div class="speaker_avatar">
|
||||||
|
<img class="speaker_img"
|
||||||
|
src="{{speaker.avatar}}"
|
||||||
|
alt="{{speaker.name | title}}"
|
||||||
|
title="{{speaker.name | title}}">
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
{% if speaker.biography %}
|
||||||
|
<div class="speaker_biography">
|
||||||
|
<div class="speaker_biography">
|
||||||
|
{{ speaker.biography }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
<div id="{{slot.code}}_{{loop_index}}" class="slot_details">
|
||||||
|
<div class="abstract">
|
||||||
|
{% if slot.image %}
|
||||||
|
<img class="slot_img"
|
||||||
|
src="{{slot.image}}"
|
||||||
|
alt="{{slot.name}}"
|
||||||
|
title="{{slot.name}}">
|
||||||
|
{% endif %}
|
||||||
|
{% if slot.abstract %}
|
||||||
|
<p>{{slot.abstract}}</p>
|
||||||
|
{% endif %}
|
||||||
|
{% if slot.description %}
|
||||||
|
<p>{{slot.description}}</p>
|
||||||
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
5
src/thsf_wsgi.py
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
from thsf import app
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
application = app
|
||||||
|
application.run(host="127.0.0.1", port=8043)
|
139
styles/main.css
@ -1,139 +0,0 @@
|
|||||||
@font-face {
|
|
||||||
font-family: pfdintextcomppro;
|
|
||||||
src: url(../fonts/PFDinTextCompPro-Medium.ttf);
|
|
||||||
}
|
|
||||||
|
|
||||||
* {
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
box-sizing: border-box;
|
|
||||||
font-family: pfdintextcomppro;
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
background-color: #e6007e;
|
|
||||||
background-image: url('../images/affiche_v1.png');
|
|
||||||
background-repeat: no-repeat;
|
|
||||||
background-size: auto;
|
|
||||||
background-position-x: center;
|
|
||||||
overflow: hidden;
|
|
||||||
}
|
|
||||||
|
|
||||||
ul {
|
|
||||||
overflow: hidden;
|
|
||||||
perspective: 900px;
|
|
||||||
list-style: none;
|
|
||||||
height: 100vh;
|
|
||||||
max-height: 800px;
|
|
||||||
min-height: 400px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes width-sway {
|
|
||||||
0%, 100% {
|
|
||||||
width: 500px;
|
|
||||||
}
|
|
||||||
50% {
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
li {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
margin: auto;
|
|
||||||
width: 100%;
|
|
||||||
transform: translateY(100vh);
|
|
||||||
font-size: 6rem;
|
|
||||||
font-family: pfdintextcomppro;
|
|
||||||
font-weight: bold;
|
|
||||||
color: #ffffdd;
|
|
||||||
animation: 5.3333333333s spiral-staircase linear infinite;
|
|
||||||
white-space: nowrap;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(1) {
|
|
||||||
animation-delay: 0.3333333333s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(2) {
|
|
||||||
animation-delay: 0.6666666667s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(3) {
|
|
||||||
animation-delay: 1s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(4) {
|
|
||||||
animation-delay: 1.3333333333s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(5) {
|
|
||||||
animation-delay: 1.6666666667s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(6) {
|
|
||||||
animation-delay: 2s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(7) {
|
|
||||||
animation-delay: 2.3333333333s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(8) {
|
|
||||||
animation-delay: 2.6666666667s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(9) {
|
|
||||||
animation-delay: 3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(10) {
|
|
||||||
animation-delay: 3.3333333333s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(11) {
|
|
||||||
animation-delay: 3.6666666667s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(12) {
|
|
||||||
animation-delay: 4s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(13) {
|
|
||||||
animation-delay: 4.3333333333s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(14) {
|
|
||||||
animation-delay: 4.6666666667s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(15) {
|
|
||||||
animation-delay: 5s;
|
|
||||||
}
|
|
||||||
|
|
||||||
li:nth-child(16) {
|
|
||||||
animation-delay: 5.3333333333s;
|
|
||||||
}
|
|
||||||
|
|
||||||
@keyframes spiral-staircase {
|
|
||||||
0% {
|
|
||||||
transform: rotateY(90deg) translateY(105vh) rotate(0deg) scale(0);
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
40% {
|
|
||||||
transform: rotateY(90deg) translateY(61vh) rotate(0deg) scale(0);
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
50% {
|
|
||||||
transform: rotateY(0deg) translateY(55vh) rotate(0deg) scale(0.50);
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
75% {
|
|
||||||
transform: rotateY(-60deg) translateY(27.5vh) rotate(0deg) scale(1);
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
100% {
|
|
||||||
transform: rotateY(-90deg) translateY(-5vh) rotate(0deg) scale(1.2);
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
}
|
|