mirror of
https://forge.chapril.org/tykayn/libre-charge-map
synced 2025-06-20 01:34:43 +02:00
calque affichant des infos QA
This commit is contained in:
parent
0f63309248
commit
f19bff1953
8 changed files with 121 additions and 40 deletions
40
index.html
40
index.html
|
@ -130,51 +130,55 @@
|
|||
|
||||
<h3>Types de prises</h3>
|
||||
|
||||
|
||||
|
||||
<label>
|
||||
<input type="checkbox" id="filterCableAttached">
|
||||
<span class="checkbox-custom"></span>
|
||||
<span>Prise avec câble attaché</span>
|
||||
<img class="icon-img" src="img/vending_machine.png" alt="cable">
|
||||
<span>Avec câble attaché</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterCCS">
|
||||
<span class="checkbox-custom"></span>
|
||||
<!-- <span>Prise CCS</span> -->
|
||||
<img class="icon-img" src="img/type2_combo.svg" alt="prise">
|
||||
|
||||
<span>CCS</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterType1">
|
||||
<span class="checkbox-custom"></span>
|
||||
<span>Type 1</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterType2">
|
||||
<span class="checkbox-custom"></span>
|
||||
<img class="icon-img" src="img/Type2_socket.svg" alt="prise">
|
||||
<!-- <span>Prise Type 2</span> -->
|
||||
<span>Type 2</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterType3">
|
||||
<span class="checkbox-custom"></span>
|
||||
<span>Type 3</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterDomestic">
|
||||
<span class="checkbox-custom"></span>
|
||||
<img class="icon-img" src="img/socket_typee.svg" alt="prise">
|
||||
<!-- <span>Prise domestique</span> -->
|
||||
<span>E / Domestique</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterChademo">
|
||||
<span class="checkbox-custom"></span>
|
||||
<img class="icon-img" src="img/chademo.svg" alt="prise">
|
||||
<!-- <span>Prise CHAdeMO</span> -->
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterType1">
|
||||
<span class="checkbox-custom"></span>
|
||||
<span>Prise Type 1</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterType3">
|
||||
<span class="checkbox-custom"></span>
|
||||
<span>Prise Type 3</span>
|
||||
<span>CHAdeMO</span>
|
||||
</label>
|
||||
|
||||
</div>
|
||||
<hr>
|
||||
<h3>Qualité des données</h3>
|
||||
<label for="filterBadTags">
|
||||
<input type="checkbox" id="filterBadTags">
|
||||
<span class="checkbox-custom"></span>
|
||||
<span>Afficher les alertes de problèmes de qualité</span>
|
||||
</label>
|
||||
<label>
|
||||
<input type="checkbox" id="filterUnkown">
|
||||
<span class="checkbox-custom"></span>
|
||||
|
|
|
@ -11,7 +11,8 @@ const lcm_config = {
|
|||
filter_max_output_max: 499,
|
||||
filter_max_output_default_value: 1,
|
||||
filter_unknown_output: true,
|
||||
|
||||
display_alert_bad_tags: false,
|
||||
display_restaurants_and_cafes: false,
|
||||
max_possible_station_output: 499,
|
||||
// Filtres pour les prises
|
||||
filterCableAttached: false,
|
||||
|
|
|
@ -8,6 +8,7 @@ import lcm_config from './lcm_config.js'
|
|||
import lcm_utils from './lcm_utils.js'
|
||||
import lcm_color_utils from './lcm_color_utils.js'
|
||||
import { sendToJOSM, createJOSMEditLink } from './lcm_editor.js'
|
||||
import { valid_qa_message } from './lcm_utils.js'
|
||||
|
||||
let geojsondata;
|
||||
let lastLatLng;
|
||||
|
@ -246,6 +247,7 @@ function updateURLWithMapCoordinatesAndZoom() {
|
|||
|
||||
|
||||
let all_stations_markers = L.layerGroup().addTo(map) // layer group pour tous les marqueurs
|
||||
let bad_tags_markers = L.layerGroup()// layer group pour les marqueurs avec des problèmes de qualité
|
||||
// let stations_much_speed_wow = L.layerGroup().addTo(map) // layer group des stations rapides
|
||||
|
||||
var osm = L.tileLayer(lcm_config.tileServers.osm, {
|
||||
|
@ -680,6 +682,7 @@ function eachFeature(feature, layer, stats) {
|
|||
return;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* bornes sans informations, suggérer d'ajouter des tags dans OSM
|
||||
*/
|
||||
|
@ -692,7 +695,14 @@ function eachFeature(feature, layer, stats) {
|
|||
// contenu de la popup
|
||||
let html = `<span class="color-indication" style="background-color: ${lcm_color_utils.getColor(feature)};">${displayOutPowerGuessed}</span>
|
||||
|
||||
<span class="popup-content">${popupContent}</span>
|
||||
<div class="popup-content">
|
||||
<div class="socket-list">
|
||||
${displaySocketsList(feature)}
|
||||
</div>
|
||||
<div class="other-infos">
|
||||
${popupContent}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
`
|
||||
|
||||
|
@ -796,6 +806,23 @@ function eachFeature(feature, layer, stats) {
|
|||
}).addTo(all_stations_markers);
|
||||
}
|
||||
|
||||
|
||||
let badtags = lcm_utils.displayBadTagsFromFeature(feature);
|
||||
|
||||
if (badtags !== valid_qa_message) {
|
||||
let circle_alert = L.circle(layer._latlng, {
|
||||
color: 'red',
|
||||
fillColor: 'orange',
|
||||
fillOpacity: 0.5,
|
||||
radius: radius * 1.2
|
||||
});
|
||||
circle_alert.bindTooltip(badtags, {
|
||||
permanent: true,
|
||||
direction: 'top'
|
||||
}).addTo(bad_tags_markers);
|
||||
}
|
||||
|
||||
|
||||
circle.bindPopup(html, {
|
||||
autoPan: false,
|
||||
closeOnClick: false
|
||||
|
@ -819,6 +846,7 @@ function eachFeature(feature, layer, stats) {
|
|||
},
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1376,9 +1404,23 @@ function init() {
|
|||
refreshDisplay();
|
||||
});
|
||||
});
|
||||
$('#filterBadTags').on('click', function () {
|
||||
lcm_config.display_alert_bad_tags = !lcm_config.display_alert_bad_tags;
|
||||
showActiveFilter(lcm_config.display_alert_bad_tags, '#filterBadTags');
|
||||
if (lcm_config.display_alert_bad_tags) {
|
||||
bad_tags_markers.clearLayers();
|
||||
bad_tags_markers.addTo(map);
|
||||
|
||||
} else {
|
||||
bad_tags_markers.remove();
|
||||
}
|
||||
refreshDisplay();
|
||||
});
|
||||
|
||||
|
||||
// food_places_markers.addTo(map);
|
||||
if (lcm_config.display_restaurants_and_cafes) {
|
||||
food_places_markers.addTo(map);
|
||||
}
|
||||
|
||||
// Mettre à jour le contrôle des calques
|
||||
const overlayMaps = {
|
||||
|
@ -1386,7 +1428,8 @@ function init() {
|
|||
// "🗺️ Fond de carte": baseLayers,
|
||||
"⚡ Stations de recharge": all_stations_markers,
|
||||
"☕ Restaurants et cafés": food_places_markers,
|
||||
"💡 Bornes potentielles (Osmose)": osmose_markers
|
||||
"💡 Bornes potentielles (Osmose)": osmose_markers,
|
||||
"💡 Problèmes de qualité": bad_tags_markers
|
||||
};
|
||||
|
||||
const overlayControl = L.control.layers(baseLayers, overlayMaps, {
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
export const valid_qa_message = '<span class="quality-ok">✔ Aucun problème de qualité</span>'
|
||||
const lcm_utils = {
|
||||
|
||||
/**
|
||||
* fouiller dans les tags les valeurs explicites de puissance déclarée.
|
||||
* Deviner aussi les puissances non déclarées:
|
||||
|
@ -78,38 +80,49 @@ const lcm_utils = {
|
|||
if (tag.includes(':output')) {
|
||||
let value = feature.properties.tags[tag];
|
||||
if (value && value.includes(';')) {
|
||||
content += `<span class="quality-alert">Le tag "${tag}" ne devrait pas contenir de point-virgule dans sa valeur</span>`;
|
||||
content += `<div class="quality-alert">Le tag "${tag}" ne devrait pas contenir de point-virgule dans sa valeur</div>`;
|
||||
}
|
||||
// Vérifier si la valeur est zéro
|
||||
|
||||
if (value === '0' || value === 0 || value === '0 kW') {
|
||||
content += `<span class="quality-alert">Le tag "${tag}" ne devrait pas avoir une valeur de zéro</span>`;
|
||||
content += `<div class="quality-alert">Le tag "${tag}" ne devrait pas avoir une valeur de zéro</div>`;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Vérifier si aucun tag ne contient "socket"
|
||||
let hasSocketTag = false;
|
||||
for (let tag in feature.properties.tags) {
|
||||
if (tag.includes('socket')) {
|
||||
hasSocketTag = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (!hasSocketTag) {
|
||||
content += '<div class="quality-alert">Aucune tag détaillant le <b class="quality-emphasis">socket:*</b></div>';
|
||||
}
|
||||
|
||||
if (!feature.properties.tags['ref:EU:EVSE']) {
|
||||
content += '<span class="quality-alert">Pas de référence ref:EU:EVSE</span>'
|
||||
content += '<div class="quality-alert">Pas de référence <b class="quality-emphasis">ref:EU:EVSE</b></div>'
|
||||
}
|
||||
|
||||
if (!feature.properties.tags['capacity']) {
|
||||
content += '<span class="quality-alert">Pas de nombre de places donné avec capacity</span>'
|
||||
content += '<div class="quality-alert">Pas de nombre de places donné avec <b class="quality-emphasis">capacity</b></div>'
|
||||
}
|
||||
|
||||
if (!feature.properties.tags['network']) {
|
||||
content += '<span class="quality-alert">Pas de réseau de recharge déclaré</span>'
|
||||
content += '<div class="quality-alert">Pas de réseau de recharge déclaré</div>'
|
||||
}
|
||||
// Vérifier les valeurs true/false dans les tags
|
||||
for (let tag in feature.properties.tags) {
|
||||
let value = feature.properties.tags[tag];
|
||||
if (value === 'true' || value === 'false') {
|
||||
content += `<span class="quality-alert">Le tag "${tag}" utilise true/false au lieu de yes/no</span>`;
|
||||
content += `<div class="quality-alert">Le tag <b class="quality-emphasis">${tag}</b> utilise <b class="quality-emphasis">true/false</b> au lieu de <b class="quality-emphasis">yes/no</b></div>`;
|
||||
}
|
||||
}
|
||||
|
||||
if (!content) {
|
||||
content = '<span class="quality-ok">Aucun problème de qualité</span>'
|
||||
content = '' + valid_qa_message
|
||||
}
|
||||
|
||||
return content;
|
||||
|
|
|
@ -9,11 +9,17 @@ $hover-bg: #e9ecef;
|
|||
$disabled-color: #adb5bd;
|
||||
|
||||
.filter-sockets {
|
||||
height: 14rem;
|
||||
|
||||
label {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-right: 1rem;
|
||||
}
|
||||
|
||||
.icon-img {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
}
|
||||
|
||||
#filter_max_output_slider {
|
||||
|
|
|
@ -165,13 +165,9 @@ img.leaflet-marker-icon.tag-socket\:type2_yes {
|
|||
}
|
||||
|
||||
.navigation-link {
|
||||
background: white;
|
||||
background: white;
|
||||
border-radius: 0.25em;
|
||||
float: none;
|
||||
position: relative;
|
||||
top: -2.2em;
|
||||
left: 18.7rem;
|
||||
|
||||
|
||||
&:hover {
|
||||
border: black;
|
||||
|
@ -673,6 +669,14 @@ header {
|
|||
color: green;
|
||||
}
|
||||
|
||||
.quality-emphasis {
|
||||
font-weight: bold;
|
||||
padding: 0.25rem;
|
||||
background: #f0f0f0;
|
||||
border-radius: 0.25rem;
|
||||
border: solid 1px #aaa;
|
||||
}
|
||||
|
||||
.mapcomplete-link {
|
||||
img {
|
||||
width: 1rem;
|
||||
|
|
|
@ -149,13 +149,8 @@ img.leaflet-marker-icon.tag-socket\:type2_yes {
|
|||
}
|
||||
|
||||
.navigation-link {
|
||||
background: white;
|
||||
background: white;
|
||||
border-radius: 0.25em;
|
||||
float: none;
|
||||
position: relative;
|
||||
top: -2.2em;
|
||||
left: 18.7rem;
|
||||
}
|
||||
.navigation-link:hover {
|
||||
border: black;
|
||||
|
@ -619,6 +614,13 @@ header img {
|
|||
.irve-details .quality-ok {
|
||||
color: green;
|
||||
}
|
||||
.irve-details .quality-emphasis {
|
||||
font-weight: bold;
|
||||
padding: 0.25rem;
|
||||
background: #f0f0f0;
|
||||
border-radius: 0.25rem;
|
||||
border: solid 1px #aaa;
|
||||
}
|
||||
.irve-details .mapcomplete-link img {
|
||||
width: 1rem;
|
||||
height: 1rem;
|
||||
|
@ -762,12 +764,20 @@ header img {
|
|||
margin-top: -3.6rem;
|
||||
}
|
||||
|
||||
.filter-sockets {
|
||||
height: 14rem;
|
||||
}
|
||||
|
||||
.filter-sockets label {
|
||||
width: 45%;
|
||||
float: left;
|
||||
margin-right: 1rem;
|
||||
}
|
||||
|
||||
.filter-sockets .icon-img {
|
||||
margin-right: 0.5rem;
|
||||
}
|
||||
|
||||
#filter_max_output_slider {
|
||||
width: 100%;
|
||||
height: 10px;
|
||||
|
|
|
@ -1 +1 @@
|
|||
{"version":3,"sourceRoot":"","sources":["main.scss","_osmose.scss","_recherche.scss","_filters.scss","_mobile.scss","_overrides.scss","_animations.scss"],"names":[],"mappings":";AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAKA;EACE;;AAGE;EACE;EACA;;AAKJ;EACE;;;AAMN;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;EAIE;EACA;EACA;EACA;EACA;;;AAKA;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EAOE;;AANA;EACE;EACA;EACA;;;AAMJ;EACE;;;AAGF;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;;AAEA;EACE;;;AAIJ;AAAA;AAAA;AAIA;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAIF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAOF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAIA;EACE;EACA;;;AAKN;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAMA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAIA;EACE;;;AAIJ;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAIA;EACE;EACA;;;ACtqBN;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAEA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAKJ;EACE;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;EACA;;;AAEA;EACE;;;AAIJ;EACE;EACA;;;AC3DJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;;;AAEA;EACE;;;AAKN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;;;AASJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACnEA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAcF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAEA;AAAA;EACE;EACA,OA9CS;EA+CT;;;AAGF;AAAA;EAvBA;EACA;EAwBE;EACA;EArBF;EAuBE;EACA;;;AAEA;AAAA;EACE,YAzDK;;;AA6DT;AAAA;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA/CF;;;AAkDE;AAAA;EACE;;;AAIJ;AAAA;EACE,YAzFY;EA0FZ,cA1FY;EA2FZ;;;AAEA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;AAAA;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EACE;EACA,OAlHS;EAgCX;;;AAsFA;AAAA;EACE;;;AAIA;AAAA;EACE,YA1HK;EA2HL,cA1HW;EA2HX;;;AAGF;AAAA;EACE,OA/HW;EAgIX;;;AAMN;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;;ACxJJ;AACA;EACE;IACE;IACA;;EAGF;IACE;;EAGF;IAEE;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;;EAIF;IACE;IACA;IACA;;EAGF;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;EAGF;AACE;;EAGF;IACE;IACA;IACA;IACA;IACA;;EAGF;IACE;;EAGF;AAAA;IAEE;IACA;IACA;IACA;IACA;IACA;;EAIF;IACE;;EAGF;IACE;;EAGF;IACE;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;;EAIF;IAEE;;;AC/FJ;AAAA;AAAA;AAKA;EACE;;;AAIA;EACE;;;AAGF;EACE;;;AAKF;EACE;;;AAEA;EACE;EACA;;;AAKN;EACE;EACA;;;AAGF;AAEE;EACE;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAMN;EAyBE;EACA;EACA;EACA;;;AA1BE;EACE;EACA;EACA;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACnGN;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;;AAIJ;EAEE;IAEE;;EAGF;IACE","file":"style.css"}
|
||||
{"version":3,"sourceRoot":"","sources":["main.scss","_osmose.scss","_recherche.scss","_filters.scss","_mobile.scss","_overrides.scss","_animations.scss"],"names":[],"mappings":";AAIA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAKA;EACE;;AAGE;EACE;EACA;;AAKJ;EACE;;;AAMN;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;AAAA;AAAA;AAAA;EAIE;EACA;EACA;EACA;EACA;;;AAKA;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;;AAGA;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EAOE;;AANA;EACE;EACA;EACA;;;AAMJ;EACE;;;AAGF;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;;AAEA;EACE;;;AAIJ;AAAA;AAAA;AAIA;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;AAAA;EAEE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAIF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAOF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAIA;EACE;EACA;;;AAKN;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAMA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAIA;EACE;;;AAIJ;EACE;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAIA;EACE;EACA;;;AC1qBN;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAEA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAKJ;EACE;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;EACA;;;AAEA;EACE;;;AAIJ;EACE;EACA;;;AC3DJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;;;AAEA;EACE;;;AAKN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;;;AASJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACpEF;EACE;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAcF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAEA;AAAA;EACE;EACA,OApDS;EAqDT;;;AAGF;AAAA;EAvBA;EACA;EAwBE;EACA;EArBF;EAuBE;EACA;;;AAEA;AAAA;EACE,YA/DK;;;AAmET;AAAA;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA/CF;;;AAkDE;AAAA;EACE;;;AAIJ;AAAA;EACE,YA/FY;EAgGZ,cAhGY;EAiGZ;;;AAEA;AAAA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;AAAA;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EACE;EACA,OAxHS;EAsCX;;;AAsFA;AAAA;EACE;;;AAIA;AAAA;EACE,YAhIK;EAiIL,cAhIW;EAiIX;;;AAGF;AAAA;EACE,OArIW;EAsIX;;;AAMN;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;;AC9JJ;AACA;EACE;IACE;IACA;;EAGF;IACE;;EAGF;IAEE;IACA;IAEA;IACA;IACA;IACA;IACA;IACA;;EAIF;IACE;IACA;IACA;;EAGF;IACE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;EAGF;AACE;;EAGF;IACE;IACA;IACA;IACA;IACA;;EAGF;IACE;;EAGF;AAAA;IAEE;IACA;IACA;IACA;IACA;IACA;;EAIF;IACE;;EAGF;IACE;;EAGF;IACE;IACA;IACA;IACA;IAEA;IACA;IACA;IACA;IACA;;EAIF;IAEE;;;AC/FJ;AAAA;AAAA;AAKA;EACE;;;AAIA;EACE;;;AAGF;EACE;;;AAKF;EACE;;;AAEA;EACE;EACA;;;AAKN;EACE;EACA;;;AAGF;AAEE;EACE;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAMN;EAyBE;EACA;EACA;EACA;;;AA1BE;EACE;EACA;EACA;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACnGN;EACE;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;EAGF;IACE;;;AAIJ;EAEE;IAEE;;EAGF;IACE","file":"style.css"}
|
Loading…
Add table
Add a link
Reference in a new issue