updated taxonomy

This commit is contained in:
dr. M.S. (Matthijs) Berends 2022-12-12 00:14:56 +01:00
parent eed1c14b96
commit 8da2467209
46 changed files with 132944 additions and 57370 deletions

View File

@ -1,6 +1,6 @@
Package: AMR
Version: 1.8.2.9061
Date: 2022-12-11
Version: 1.8.2.9062
Date: 2022-12-12
Title: Antimicrobial Resistance Data Analysis
Description: Functions to simplify and standardise antimicrobial resistance (AMR)
data analysis and to work with microbial and antimicrobial properties by
@ -52,5 +52,5 @@ BugReports: https://github.com/msberends/AMR/issues
License: GPL-2 | file LICENSE
Encoding: UTF-8
LazyData: true
RoxygenNote: 7.2.2
RoxygenNote: 7.2.3
Roxygen: list(markdown = TRUE)

View File

@ -1,4 +1,4 @@
# AMR 1.8.2.9061
# AMR 1.8.2.9062
This version will eventually become v2.0! We're happy to reach a new major milestone soon!
@ -45,6 +45,7 @@ This version will eventually become v2.0! We're happy to reach a new major miles
* Support for using antibiotic selectors in scoped `dplyr` verbs (with or without `vars()`), such as in: `... %>% summarise_at(aminoglycosides(), resistance)`, see `resistance()`
### Changes
* Updated the microbiological taxonomy using the latest GBIF backbone (November 2022) and latest LPSN records (11 December 2022)
* For `as.rsi()`:
* Fixed certain EUCAST breakpoints for MIC values
* Allow `NA` values (e.g. `as.rsi(as.disk(NA), ...)`)

View File

@ -72,12 +72,12 @@ EUCAST_VERSION_EXPERT_RULES <- list(
TAXONOMY_VERSION <- list(
GBIF = list(
accessed_date = as.Date("2022-09-12"),
citation = "GBIF Secretariat (November 26, 2021). GBIF Backbone Taxonomy. Checklist dataset \\doi{10.15468/39omei}.",
accessed_date = as.Date("2022-12-11"),
citation = "GBIF Secretariat (2022). GBIF Backbone Taxonomy. Checklist dataset \\doi{10.15468/39omei}.",
url = "https://www.gbif.org"
),
LPSN = list(
accessed_date = as.Date("2022-09-12"),
accessed_date = as.Date("2022-12-11"),
citation = "Parte, AC *et al.* (2020). **List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.** International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \\doi{10.1099/ijsem.0.004332}.",
url = "https://lpsn.dsmz.de"
),

View File

@ -182,7 +182,7 @@ join_microorganisms <- function(type, x, by, suffix, ...) {
}
if (type %like% "full|left|right|inner" && NROW(joined) > NROW(x)) {
warning_("in `", type, "_join()`: the newly joined data set contains ", nrow(joined) - nrow(x), " rows more than the number of rows of `x`.")
warning_("in `", type, "_microorganisms()`: the newly joined data set contains ", nrow(joined) - nrow(x), " rows more than the number of rows of `x`.")
}
as_original_data_class(joined, class(x.bak))

Binary file not shown.

View File

@ -206,8 +206,13 @@ create_MO_lookup <- function() {
MO_lookup[which(MO_lookup$kingdom == "Archaea"), "kingdom_index"] <- 4
# all the rest
MO_lookup[which(is.na(MO_lookup$kingdom_index)), "kingdom_index"] <- 5
MO_lookup$fullname_lower <- MO_FULLNAME_LOWER
if (length(MO_FULLNAME_LOWER) != nrow(MO_lookup)) {
packageStartupMessage("fullname_lower not same size - applied tolower(), update sysdata.rda!")
MO_lookup$fullname_lower <- tolower(MO_lookup$fullname)
} else {
MO_lookup$fullname_lower <- MO_FULLNAME_LOWER
}
MO_lookup$full_first <- substr(MO_lookup$fullname_lower, 1, 1)
MO_lookup$species_first <- substr(MO_lookup$species, 1, 1)

View File

@ -8,7 +8,7 @@ This work was published in the Journal of Statistical Software (Volume 104(3); [
`AMR` is a free, open-source and independent R package to simplify the analysis and prediction of Antimicrobial Resistance (AMR) and to work with microbial and antimicrobial data and properties, by using evidence-based methods. Our aim is to provide a standard for clean and reproducible antimicrobial resistance data analysis, that can therefore empower epidemiological analyses to continuously enable surveillance and treatment evaluation in any setting. It is currently being used in over 175 countries.
After installing this package, R knows ~49,000 distinct microbial species and all ~570 antibiotic, antimycotic, and antiviral drugs by name and code (including ATC, WHONET/EARS-Net, PubChem, LOINC and SNOMED CT), and knows all about valid R/SI and MIC values. It supports any data format, including WHONET/EARS-Net data. Antimicrobial names and group names are available in English, Chinese, Danish, Dutch, French, German, Greek, Italian, Japanese, Polish, Portuguese, Russian, Spanish, Swedish, Turkish, and Ukrainian.
After installing this package, R knows ~48,000 distinct microbial species and all ~600 antibiotic, antimycotic, and antiviral drugs by name and code (including ATC, WHONET/EARS-Net, PubChem, LOINC and SNOMED CT), and knows all about valid R/SI and MIC values. It supports any data format, including WHONET/EARS-Net data. Antimicrobial names and group names are available in English, Chinese, Danish, Dutch, French, German, Greek, Italian, Japanese, Polish, Portuguese, Russian, Spanish, Swedish, Turkish, and Ukrainian.
This package is fully independent of any other R package and works on Windows, macOS and Linux with all versions of R since R-3.0.0 (April 2013). It was designed to work in any setting, including those with very limited resources. It was created for both routine data analysis and academic research at the Faculty of Medical Sciences of the University of Groningen, in collaboration with non-profit organisations Certe Medical Diagnostics and Advice Foundation and University Medical Center Groningen. This R package is actively maintained and free software; you can freely use and distribute it for both personal and commercial (but not patent) purposes under the terms of the GNU General Public License version 2.0 (GPL-2), as published by the Free Software Foundation.

View File

@ -1 +1 @@
aa07f3422b8bba417bc0331f4bb34449
33ff38f7d52ae39f951f60b73db29630

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1 +1 @@
0a4241916334341aa70923aac880997d
9d0367aa37e7f7d6923caae506ea434d

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -50,13 +50,17 @@ int_resis2 <- int_resis[, sapply(int_resis, function(x) any(!is.rsi(x) | x == "R
# remove lab drugs
untreatable <- antibiotics[which(antibiotics$name %like% "-high|EDTA|polysorbate|macromethod|screening|/nacubactam"), "ab", drop = TRUE]
int_resis2 <- int_resis2 %>%
filter(!ab %in% untreatable) %>%
arrange(mo, ab)
# takes ages with filter()..., weird
int_resis3 <- int_resis2[which(!int_resis2$ab %in% untreatable), ]
class(int_resis3$ab) <- c("ab", "character")
int_resis3
intrinsic_resistant <- as.data.frame(int_resis2, stringsAsFactors = FALSE)
all(int_resis3$mo %in% microorganisms$mo)
all(int_resis3$ab %in% antibiotics$ab)
intrinsic_resistant <- df_remove_nonASCII(int_resis3)
usethis::use_data(intrinsic_resistant, internal = FALSE, overwrite = TRUE, version = 2, compress = "xz")
rm(intrinsic_resistant)
# AFTER THIS:
# DO NOT FORGET TO UPDATE THE VERSION NUMBER IN mo_is_intrinsic_resistant()
# DO NOT FORGET TO UPDATE THE VERSION NUMBER IN mo_is_intrinsic_resistant() AND R/data.R

View File

@ -31,10 +31,10 @@
# (at least 10 GB will be used by the R session for the size of the files)
# 1. Go to https://doi.org/10.15468/39omei and find the download link for the
# latest GBIF backbone taxonony ZIP file - unpack Taxon.tsv from it (~2.2 GB)
# latest GBIF backbone taxonony under "Endpoints" and unpack Taxon.tsv from it (~2.2 GB)
# ALSO BE SURE to get the date of release and update R/aa_globals.R later!
# 2. Go to https://lpsn.dsmz.de/downloads (register first) and download the latest
# CSV file. It should be (re)named "taxonomy.csv". Their API unfortunately does
# CSV file (~12,5 MB) as "taxonomy.csv". Their API unfortunately does
# not include the full taxonomy and is currently (2022) pretty worthless.
# 3. Set this folder_location to the path where these two files are:
folder_location <- "~/Downloads/backbone/"
@ -47,7 +47,9 @@ if (!file.exists(file_gbif)) stop("GBIF file not found")
if (!file.exists(file_lpsn)) stop("LPSN file not found")
library(dplyr)
library(vroom)
library(vroom) # to import files
library(rvest) # to scape LPSN website
library(progress) # to show progress bars
library(AMR)
# also requires 'rvest' and 'progress' packages
@ -55,7 +57,7 @@ library(AMR)
get_author_year <- function(ref) {
# Only keep first author, e.g. transform 'Smith, Jones, 2011' to 'Smith et al., 2011'
authors2 <- iconv(ref, from = "UTF-8", to = "ASCII//TRANSLIT")
authors2 <- gsub(" ?\\(Approved Lists [0-9]+\\) ?", " () ", authors2)
authors2 <- gsub(" [)(]+ $", "", authors2)
@ -63,21 +65,21 @@ get_author_year <- function(ref) {
authors2 <- trimws(gsub("^[(](.*)[)]$", "\\1", authors2))
# only take part after brackets if there's a name
authors2 <- ifelse(grepl(".*[)] [a-zA-Z]+.*", authors2),
gsub(".*[)] (.*)", "\\1", authors2),
authors2
gsub(".*[)] (.*)", "\\1", authors2),
authors2
)
# replace parentheses with emend. to get the latest authors
authors2 <- gsub("(", " emend. ", authors2, fixed = TRUE)
authors2 <- gsub(")", "", authors2, fixed = TRUE)
authors2 <- gsub(" +", " ", authors2)
authors2 <- trimws(authors2)
# get year from last 4 digits
lastyear <- as.integer(gsub(".*([0-9]{4})$", "\\1", authors2))
# can never be later than now
lastyear <- ifelse(lastyear > as.integer(format(Sys.Date(), "%Y")),
NA,
lastyear
NA,
lastyear
)
# get authors without last year
authors <- gsub("(.*)[0-9]{4}$", "\\1", authors2)
@ -109,8 +111,8 @@ get_author_year <- function(ref) {
authors[nchar(authors) <= 3] <- ""
# combine author and year if year is available
ref <- ifelse(!is.na(lastyear),
paste0(authors, ", ", lastyear),
authors
paste0(authors, ", ", lastyear),
authors
)
# fix beginning and ending
ref <- gsub(", $", "", ref)
@ -118,7 +120,7 @@ get_author_year <- function(ref) {
ref <- gsub("^(emend|et al.,?)", "", ref)
ref <- trimws(ref)
ref <- gsub("'", "", ref)
# a lot start with a lowercase character - fix that
ref[!grepl("^d[A-Z]", ref)] <- gsub("^([a-z])", "\\U\\1", ref[!grepl("^d[A-Z]", ref)], perl = TRUE)
# specific one for the French that are named dOrbigny
@ -158,15 +160,15 @@ abbreviate_mo <- function(x, minlength = 5, prefix = "", hyphen_as_space = FALSE
# to retrieve LPSN and authors from LPSN website
get_lpsn_and_author <- function(rank, name) {
url <- paste0("https://lpsn.dsmz.de/", tolower(rank), "/", tolower(name))
page_txt <- tryCatch(rvest::read_html(url), error = function(e) NULL)
page_txt <- tryCatch(read_html(url), error = function(e) NULL)
if (is.null(page_txt)) {
warning("No LPSN found for ", tolower(rank), " '", name, "'")
lpsn <- NA_character_
ref <- NA_character_
} else {
page_txt <- page_txt %>%
rvest::html_element("#detail-page") %>%
rvest::html_text()
html_element("#detail-page") %>%
html_text()
lpsn <- gsub(".*Record number:[\r\n\t ]*([0-9]+).*", "\\1", page_txt, perl = FALSE)
ref <- page_txt %>%
gsub(".*?Name: (.*[0-9]{4}?).*", "\\1", ., perl = FALSE) %>%
@ -204,6 +206,23 @@ get_lpsn_and_author <- function(rank, name) {
# Read GBIF data ----------------------------------------------------------
taxonomy_gbif.bak <- vroom(file_gbif)
include_fungal_orders <- c(
"Eurotiales", "Microascales", "Mucorales", "Saccharomycetales",
"Schizosaccharomycetales", "Tremellales", "Onygenales", "Pneumocystales"
)
# get latest taxonomic names of these fungal orders
include_fungal_orders_ids <- taxonomy_gbif.bak %>%
filter(order %in% include_fungal_orders)
include_fungal_orders <- taxonomy_gbif.bak %>%
filter(taxonID %in% c(include_fungal_orders_ids$taxonID, include_fungal_orders_ids$acceptedNameUsageID)) %>%
distinct(order) %>%
pull(order)
# check some columns to validate below filters
sort(table(taxonomy_gbif.bak$taxonomicStatus))
sort(table(taxonomy_gbif.bak$taxonRank))
taxonomy_gbif <- taxonomy_gbif.bak %>%
# immediately filter rows we really never want
filter(
@ -273,10 +292,15 @@ taxonomy_gbif <- taxonomy_gbif.bak %>%
sort(table(taxonomy_gbif$rank))
sort(table(taxonomy_gbif$status))
taxonomy_gbif
# Read LPSN data ----------------------------------------------------------
taxonomy_lpsn.bak <- vroom(file_lpsn)
# check some columns to validate below filters
sort(table(is.na(taxonomy_lpsn.bak$record_lnk))) # accepted = TRUE
taxonomy_lpsn <- taxonomy_lpsn.bak %>%
transmute(
genus = genus_name,
@ -306,42 +330,44 @@ taxonomy_lpsn_missing <- tibble(
genus = character(0)
)
for (page in LETTERS) {
message("Downloading page ", page, appendLF = FALSE)
# this will not alter `taxonomy_lpsn` yet
message("Downloading page ", page, "...", appendLF = FALSE)
url <- paste0("https://lpsn.dsmz.de/genus?page=", page)
x <- xml2::read_html(url) %>%
x <- read_html(url) %>%
# class "main-list" is the main table
rvest::html_element(".main-list") %>%
html_element(".main-list") %>%
# get every list element with a set <id> attribute
rvest::html_elements("li[id]")
html_elements("li[id]")
for (i in seq_len(length(x))) {
if (i %% 25 == 0) {
message(".", appendLF = FALSE)
}
elements <- x[[i]] %>% rvest::html_elements("a")
hrefs <- elements %>% rvest::html_attr("href")
elements <- x[[i]] %>% html_elements("a")
hrefs <- elements %>% html_attr("href")
ranks <- hrefs %>% gsub(".*/(.*?)/.*", "\\1", .)
names <- elements %>%
rvest::html_text() %>%
html_text() %>%
gsub('"', "", ., fixed = TRUE)
# no species, this must be until genus level
hrefs <- hrefs[ranks != "species"]
names <- names[ranks != "species"]
ranks <- ranks[ranks != "species"]
ranks[ranks == "domain"] <- "kingdom"
df <- names %>%
tibble() %>%
t() %>%
as_tibble() %>%
as_tibble(.name_repair = "unique") %>%
setNames(ranks) %>%
# no candidates please
filter(genus %unlike% "^(Candidatus|\\[)")
taxonomy_lpsn_missing <- taxonomy_lpsn_missing %>%
bind_rows(df)
}
message(length(x), " entries incl. candidates (cleaned total: ", nrow(taxonomy_lpsn_missing), ")")
}
taxonomy_lpsn_missing
taxonomy_lpsn <- taxonomy_lpsn %>%
left_join(taxonomy_lpsn_missing, by = "genus") %>%
@ -350,8 +376,8 @@ taxonomy_lpsn <- taxonomy_lpsn %>%
mutate_all(function(x) ifelse(x %like_case% " no ", NA_character_, x))
taxonomy_lpsn.bak2 <- taxonomy_lpsn
# add family
pb <- progress::progress_bar$new(total = length(unique(taxonomy_lpsn$family)))
# download family directly from LPSN website using scraping
pb <- progress_bar$new(total = length(unique(taxonomy_lpsn$family)))
for (f in unique(taxonomy_lpsn$family)) {
pb$tick()
if (is.na(f)) next
@ -370,8 +396,8 @@ for (f in unique(taxonomy_lpsn$family)) {
ref = unname(tax_info["ref"])
))
}
# add order
pb <- progress::progress_bar$new(total = length(unique(taxonomy_lpsn$order)))
# download order directly from LPSN website using scraping
pb <- progress_bar$new(total = length(unique(taxonomy_lpsn$order)))
for (o in unique(taxonomy_lpsn$order)) {
pb$tick()
if (is.na(o)) next
@ -389,8 +415,8 @@ for (o in unique(taxonomy_lpsn$order)) {
ref = unname(tax_info["ref"])
))
}
# add class
pb <- progress::progress_bar$new(total = length(unique(taxonomy_lpsn$class)))
# download class directly from LPSN website using scraping
pb <- progress_bar$new(total = length(unique(taxonomy_lpsn$class)))
for (cc in unique(taxonomy_lpsn$class)) {
pb$tick()
if (is.na(cc)) next
@ -407,8 +433,8 @@ for (cc in unique(taxonomy_lpsn$class)) {
ref = unname(tax_info["ref"])
))
}
# add phylum
pb <- progress::progress_bar$new(total = length(unique(taxonomy_lpsn$phylum)))
# download phylum directly from LPSN website using scraping
pb <- progress_bar$new(total = length(unique(taxonomy_lpsn$phylum)))
for (p in unique(taxonomy_lpsn$phylum)) {
pb$tick()
if (is.na(p)) next
@ -424,8 +450,8 @@ for (p in unique(taxonomy_lpsn$phylum)) {
ref = unname(tax_info["ref"])
))
}
# add kingdom
pb <- progress::progress_bar$new(total = length(unique(taxonomy_lpsn$kingdom)))
# download kingdom directly from LPSN website using scraping
pb <- progress_bar$new(total = length(unique(taxonomy_lpsn$kingdom)))
for (k in unique(taxonomy_lpsn$kingdom)) {
pb$tick()
if (is.na(k)) next
@ -450,41 +476,41 @@ sort(table(taxonomy_lpsn$status))
saveRDS(taxonomy_gbif, "data-raw/taxonomy_gbif.rds", version = 2)
saveRDS(taxonomy_lpsn, "data-raw/taxonomy_lpsn.rds", version = 2)
# this allows to always get back to this point by simply loading the files from data-raw/.
# Add full names ----------------------------------------------------------
taxonomy_gbif <- taxonomy_gbif %>%
# clean NAs and add fullname
mutate(across(kingdom:subspecies, function(x) ifelse(is.na(x), "", x)),
fullname = trimws(case_when(
rank == "family" ~ family,
rank == "order" ~ order,
rank == "class" ~ class,
rank == "phylum" ~ phylum,
rank == "kingdom" ~ kingdom,
TRUE ~ paste(genus, species, subspecies)
)), .before = 1
fullname = trimws(case_when(
rank == "family" ~ family,
rank == "order" ~ order,
rank == "class" ~ class,
rank == "phylum" ~ phylum,
rank == "kingdom" ~ kingdom,
TRUE ~ paste(genus, species, subspecies)
)), .before = 1
) %>%
# keep only one GBIF taxon ID per full name
arrange(fullname, gbif) %>%
distinct(kingdom, fullname, .keep_all = TRUE)
distinct(kingdom, rank, fullname, .keep_all = TRUE)
taxonomy_lpsn <- taxonomy_lpsn %>%
# clean NAs and add fullname
mutate(across(kingdom:subspecies, function(x) ifelse(is.na(x), "", x)),
fullname = trimws(case_when(
rank == "family" ~ family,
rank == "order" ~ order,
rank == "class" ~ class,
rank == "phylum" ~ phylum,
rank == "kingdom" ~ kingdom,
TRUE ~ paste(genus, species, subspecies)
)), .before = 1
fullname = trimws(case_when(
rank == "family" ~ family,
rank == "order" ~ order,
rank == "class" ~ class,
rank == "phylum" ~ phylum,
rank == "kingdom" ~ kingdom,
TRUE ~ paste(genus, species, subspecies)
)), .before = 1
) %>%
# keep only one LPSN record ID per full name
arrange(fullname, lpsn) %>%
distinct(kingdom, fullname, .keep_all = TRUE)
distinct(kingdom, rank, fullname, .keep_all = TRUE)
# set parent LPSN IDs, requires full name
taxonomy_lpsn$lpsn_parent[taxonomy_lpsn$rank == "phylum"] <- taxonomy_lpsn$lpsn[match(taxonomy_lpsn$kingdom[taxonomy_lpsn$rank == "phylum"], taxonomy_lpsn$fullname)]
@ -502,17 +528,18 @@ taxonomy_lpsn$lpsn_parent[taxonomy_lpsn$rank == "subspecies"] <- taxonomy_lpsn$l
taxonomy <- taxonomy_lpsn %>%
# join GBIF identifiers to them
left_join(taxonomy_gbif %>% select(kingdom, fullname, starts_with("gbif")),
by = c("kingdom", "fullname")
by = c("kingdom", "fullname")
)
# for everything else, add the GBIF data
taxonomy <- taxonomy %>%
bind_rows(taxonomy_gbif %>%
filter(!paste(kingdom, fullname) %in% paste(taxonomy$kingdom, taxonomy$fullname))) %>%
filter(!paste(kingdom, fullname) %in% paste(taxonomy$kingdom, taxonomy$fullname))) %>%
arrange(fullname) %>%
filter(fullname != "")
# fix rank
table(taxonomy$rank, useNA = "always")
taxonomy <- taxonomy %>%
mutate(rank = case_when(
subspecies != "" ~ "subspecies",
@ -525,7 +552,6 @@ taxonomy <- taxonomy %>%
kingdom != "" ~ "kingdom",
TRUE ~ NA_character_
))
table(taxonomy$rank, useNA = "always")
# get the latest upper taxonomy from LPSN to update the GBIF data
@ -572,13 +598,14 @@ taxonomy <- taxonomy %>%
) %>%
filter(!paste(kingdom, rank) %in% paste(taxonomy$kingdom, taxonomy$rank)) %>%
left_join(current_gbif %>%
select(kingdom, rank = taxonRank, ref = scientificNameAuthorship, gbif = taxonID, gbif_parent = parentNameUsageID),
by = c("kingdom", "rank")
select(kingdom, rank = taxonRank, ref = scientificNameAuthorship, gbif = taxonID, gbif_parent = parentNameUsageID),
by = c("kingdom", "rank")
) %>%
mutate(source = ifelse(!is.na(gbif), "GBIF", source))
)
# 2 = phylum ... 6 = genus
taxonomy_all_missing <- NULL
for (i in 2:6) {
i_name <- colnames(taxonomy)[i + 1]
message("Adding missing: ", i_name, "... ", appendLF = FALSE)
@ -592,84 +619,77 @@ for (i in 2:6) {
status = "accepted",
source = "manually added"
) %>%
filter(!paste(kingdom, .[[ncol(.) - 4]], rank) %in% paste(taxonomy$kingdom, taxonomy[[i + 1]], taxonomy$rank)) # %>%
filter(!paste(kingdom, .[[ncol(.) - 4]], rank) %in% paste(taxonomy$kingdom, taxonomy[[i + 1]], taxonomy$rank)) %>%
# get GBIF identifier where available
# left_join(current_gbif %>%
# select(kingdom, all_of(i_name), rank = taxonRank, ref = scientificNameAuthorship, gbif = taxonID, gbif_parent = parentNameUsageID),
# by = c("kingdom", "rank", i_name)
# ) %>%
# mutate(source = ifelse(!is.na(gbif), "GBIF", source))
left_join(current_gbif %>%
select(kingdom, all_of(i_name), rank = taxonRank, ref = scientificNameAuthorship, gbif = taxonID, gbif_parent = parentNameUsageID),
by = c("kingdom", "rank", i_name)
) %>%
mutate(source = ifelse(!is.na(gbif), "GBIF", source))
message("n = ", nrow(to_add))
taxonomy <- taxonomy %>%
bind_rows(to_add)
}
# FIX LATER: added missings after finding out still some taxonomic levels were missing
# this should not be needed - it was the only part that was required after last update
# can now be removed? Check with next update!
new_df <- AMR::microorganisms[0, ]
for (tax in c("phylum", "class", "order", "family", "genus")) {
print(tax)
out <- AMR::microorganisms %>%
pull(tax) %>%
unique()
missing <- vapply(FUN.VALUE = logical(1), out, function(x) length(which(AMR::microorganisms[[tax]] == x & AMR::microorganisms$rank == tax)) == 0)
missing <- names(missing)[which(missing == TRUE & names(missing) != "" & names(missing) %unlike% "unknown")]
out <- microorganisms %>%
filter(.[[tax]] %in% missing) %>%
distinct(.[[tax]], .keep_all = TRUE) %>%
mutate_at(vars((which(colnames(.) == tax) + 1):subspecies), ~"") %>%
mutate_at(vars(lpsn:gbif_renamed_to), ~NA_character_) %>%
mutate(
rank = tax,
ref = NA_character_,
status = "accepted",
fullname = .[[tax]],
source = "manually added",
snomed = rep(list(character(0)), nrow(.))
)
new_df <- bind_rows(new_df, out)
if (".[[tax]]" %in% colnames(new_df)) {
new_df <- new_df %>% select(-`.[[tax]]`)
if (is.null(taxonomy_all_missing)) {
taxonomy_all_missing <- to_add
} else {
taxonomy_all_missing <- taxonomy_all_missing %>%
bind_rows(to_add)
}
}
new_df <- new_df %>%
mutate(mo = as.character(mo))
taxonomy_all_missing %>% View()
new_mo <- new_df %>%
filter(rank == "family") %>%
mutate(
mo_rank_new8 = abbreviate_mo(family, minlength = 8, prefix = "[FAM]_"),
mo_rank_new9 = abbreviate_mo(family, minlength = 9, prefix = "[FAM]_"),
mo_rank_new = mo_rank_new8,
mo_duplicated = duplicated(mo_rank_new),
mo_rank_new = ifelse(mo_duplicated, mo_rank_new9, mo_rank_new),
mo_duplicated = duplicated(mo_rank_new)
) %>%
transmute(fullname, mo_rank_new = paste0(gsub("_.*", "_", as.character(mo)), mo_rank_new))
any(new_mo$mo_rank_new %in% microorganisms$mo)
new_df[which(new_df$fullname %in% new_mo$fullname), "mo"] <- new_mo$mo_rank_new
# species (requires combination with genus)
taxonomy <- taxonomy %>%
bind_rows(taxonomy %>%
filter(species != "") %>%
distinct(kingdom, genus, species, .keep_all = TRUE) %>%
select(kingdom:species) %>%
mutate(
fullname = paste(genus, species),
rank = "species",
status = "accepted",
source = "manually added"
) %>%
filter(!paste(kingdom, genus, species, rank) %in% paste(taxonomy$kingdom, taxonomy$genus, taxonomy$species, taxonomy$rank)) %>%
# get GBIF identifier where available
left_join(current_gbif %>%
select(kingdom, genus, species = specificEpithet, rank = taxonRank, ref = scientificNameAuthorship, gbif = taxonID, gbif_parent = parentNameUsageID),
by = c("kingdom", "rank", "genus", "species")
) %>%
mutate(source = ifelse(!is.na(gbif), "GBIF", source)))
bind_rows(taxonomy_all_missing)
# we need to fix parent GBIF identifiers
taxonomy$gbif_parent[taxonomy$rank == "phylum" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(taxonomy$kingdom[taxonomy$rank == "phylum" & !is.na(taxonomy$gbif)], taxonomy$fullname)]
taxonomy$gbif_parent[taxonomy$rank == "class" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(taxonomy$phylum[taxonomy$rank == "class" & !is.na(taxonomy$gbif)], taxonomy$fullname)]
taxonomy$gbif_parent[taxonomy$rank == "order" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(taxonomy$class[taxonomy$rank == "order" & !is.na(taxonomy$gbif)], taxonomy$fullname)]
taxonomy$gbif_parent[taxonomy$rank == "family" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(taxonomy$order[taxonomy$rank == "family" & !is.na(taxonomy$gbif)], taxonomy$fullname)]
taxonomy$gbif_parent[taxonomy$rank == "genus" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(taxonomy$family[taxonomy$rank == "genus" & !is.na(taxonomy$gbif)], taxonomy$fullname)]
taxonomy$gbif_parent[taxonomy$rank == "species" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(taxonomy$genus[taxonomy$rank == "species" & !is.na(taxonomy$gbif)], taxonomy$fullname)]
taxonomy$gbif_parent[taxonomy$rank == "subspecies" & !is.na(taxonomy$gbif)] <- taxonomy$gbif[match(paste(taxonomy$genus[taxonomy$rank == "subspecies" & !is.na(taxonomy$gbif)], taxonomy$species[taxonomy$rank == "subspecies" & !is.na(taxonomy$gbif)]), taxonomy$fullname)]
# these still have no record in our data set:
all(taxonomy$lpsn_parent %in% taxonomy$lpsn)
all(taxonomy$gbif_parent %in% taxonomy$gbif)
# fix for duplicate fullnames within a kingdom (such as Nitrospira which is the name of the genus AND its class)
taxonomy <- taxonomy %>%
mutate(rank_index = case_when(rank == "subspecies" ~ 1,
rank == "species" ~ 2,
rank == "genus" ~ 3,
rank == "family" ~ 4,
rank == "order" ~ 5,
rank == "class" ~ 6,
TRUE ~ 7),
fullname_rank = paste0(fullname, " {", rank, "}")) %>%
arrange(kingdom, fullname, rank_index) %>%
group_by(kingdom, fullname) %>%
mutate(fullname = if_else(row_number() > 1, fullname_rank, fullname)) %>%
ungroup() %>%
select(-fullname_rank) %>%
arrange(fullname)
# now also add missing species (requires combination with genus)
taxonomy <- taxonomy %>%
bind_rows(
taxonomy %>%
filter(species != "") %>%
distinct(kingdom, genus, species, .keep_all = TRUE) %>%
select(kingdom:species) %>%
mutate(
fullname = paste(genus, species),
rank = "species",
status = "accepted",
source = "manually added"
) %>%
filter(!paste(kingdom, genus, species, rank) %in% paste(taxonomy$kingdom, taxonomy$genus, taxonomy$species, taxonomy$rank)) %>%
# get GBIF identifier where available
left_join(current_gbif %>%
select(kingdom, genus, species = specificEpithet, rank = taxonRank, ref = scientificNameAuthorship, gbif = taxonID, gbif_parent = parentNameUsageID),
by = c("kingdom", "rank", "genus", "species")
) %>%
mutate(source = ifelse(!is.na(gbif), "GBIF", source))
)
# remove NAs from taxonomy again, and keep unique full names
@ -678,15 +698,16 @@ taxonomy <- taxonomy %>%
distinct(kingdom, fullname, .keep_all = TRUE) %>%
filter(kingdom != "")
# Save intermediate results -----------------------------------------------
saveRDS(taxonomy, "data-raw/taxonomy.rds")
saveRDS(taxonomy, "data-raw/taxonomy1.rds")
# Get previously manually added entries -----------------------------------
manually_added <- AMR::microorganisms %>%
filter(source == "manually added", !fullname %in% taxonomy$fullname) %>%
filter(source == "manually added", !paste(kingdom, fullname) %in% paste(taxonomy$kingdom, taxonomy$fullname)) %>%
select(fullname:subspecies, ref, source, rank)
# get latest taxonomy for those entries
@ -703,15 +724,14 @@ for (cc in unique(manually_added$class[manually_added$class != "" & manually_add
manually_added$phylum[which(manually_added$class == cc)] <- taxonomy$phylum[which(taxonomy$class == cc & is.na(taxonomy$lpsn))][1]
}
# previously required:
taxonomy$ref[which(taxonomy$genus == "Streptococcus" & taxonomy$species %like% "group")] <- "Lancefield, 1933"
manually_added <- manually_added %>%
mutate(
status = "accepted",
rank = ifelse(fullname %like% "unknown", "(unknown rank)", rank)
)
taxonomy <- taxonomy %>%
bind_rows(manually_added %>%
mutate(
status = "accepted",
rank = ifelse(fullname %like% "unknown", "(unknown rank)", rank)
)) %>%
bind_rows(manually_added) %>%
arrange(fullname)
table(taxonomy$rank, useNA = "always")
@ -741,11 +761,63 @@ taxonomy <- taxonomy %>%
"Actinobacteria", # old, now Actinomycetota
"Actinomycetota"
) |
genus %in% MO_PREVALENT_GENERA)
genus %in% AMR:::MO_PREVALENT_GENERA)
~ 2,
TRUE ~ 3
))
table(taxonomy$prevalence, useNA = "always")
# (a lot will be removed further below)
# Add old entries that must be kept ---------------------------------------
# these are bacteria now removed, but have an renamed-to identifier to a current record, so add them
old_to_keep <- microorganisms %>%
filter(!paste(kingdom, fullname) %in% paste(taxonomy$kingdom, taxonomy$fullname),
kingdom == "Bacteria",
(gbif_renamed_to %in% taxonomy$gbif & !is.na(gbif_renamed_to)) | (lpsn_renamed_to %in% taxonomy$lpsn & !is.na(lpsn_renamed_to)),
rank %in% c("genus", "species", "subspecies")) %>%
select(-mo, -snomed)
taxonomy <- taxonomy %>%
bind_rows(old_to_keep) %>%
arrange(fullname)
# and these had prevalence = 1, why do they miss now?
old_to_keep2 <- microorganisms %>%
filter(!paste(kingdom, fullname) %in% paste(taxonomy$kingdom, taxonomy$fullname),
prevalence == 1,
!is.na(gbif_parent) & gbif_parent %in% taxonomy$gbif,
rank %in% c("genus", "species", "subspecies")) %>%
select(-mo, -snomed)
taxonomy <- taxonomy %>%
bind_rows(old_to_keep2) %>%
arrange(fullname)
# strangly, Trichomonas is no longer in GBIF?
old_to_keep3 <- microorganisms %>%
filter(fullname %like% "^trichomona") %>%
select(-mo, -snomed)
taxonomy <- taxonomy %>%
filter(!fullname %in% old_to_keep3$fullname) %>%
bind_rows(old_to_keep3) %>%
arrange(fullname)
# fix rank
taxonomy <- taxonomy %>%
mutate(rank = case_when(
subspecies != "" ~ "subspecies",
species != "" ~ "species",
genus != "" ~ "genus",
family != "" ~ "family",
order != "" ~ "order",
class != "" ~ "class",
phylum != "" ~ "phylum",
kingdom != "" ~ "kingdom",
TRUE ~ NA_character_
))
# Add microbial IDs -------------------------------------------------------
@ -773,12 +845,12 @@ mo_phylum <- taxonomy %>%
filter(rank == "phylum") %>%
distinct(kingdom, phylum) %>%
left_join(AMR::microorganisms %>%
filter(rank == "phylum") %>%
transmute(kingdom,
phylum = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "phylum")
filter(rank == "phylum") %>%
transmute(kingdom,
phylum = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "phylum")
) %>%
group_by(kingdom) %>%
mutate(
@ -799,12 +871,12 @@ mo_class <- taxonomy %>%
filter(rank == "class") %>%
distinct(kingdom, class) %>%
left_join(AMR::microorganisms %>%
filter(rank == "class") %>%
transmute(kingdom,
class = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "class")
filter(rank == "class") %>%
transmute(kingdom,
class = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "class")
) %>%
group_by(kingdom) %>%
mutate(
@ -825,12 +897,12 @@ mo_order <- taxonomy %>%
filter(rank == "order") %>%
distinct(kingdom, order) %>%
left_join(AMR::microorganisms %>%
filter(rank == "order") %>%
transmute(kingdom,
order = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "order")
filter(rank == "order") %>%
transmute(kingdom,
order = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "order")
) %>%
group_by(kingdom) %>%
mutate(
@ -851,12 +923,12 @@ mo_family <- taxonomy %>%
filter(rank == "family") %>%
distinct(kingdom, family) %>%
left_join(AMR::microorganisms %>%
filter(rank == "family") %>%
transmute(kingdom,
family = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "family")
filter(rank == "family") %>%
transmute(kingdom,
family = fullname,
mo_old = gsub("[A-Z]{1,2}_", "", as.character(mo))
),
by = c("kingdom", "family")
) %>%
group_by(kingdom) %>%
mutate(
@ -878,10 +950,10 @@ mo_genus <- taxonomy %>%
distinct(kingdom, genus) %>%
# get available old MO codes
left_join(AMR::microorganisms %>%
filter(rank == "genus") %>%
transmute(mo_genus_old = gsub("^[A-Z]+_", "", as.character(mo)), kingdom, genus) %>%
distinct(kingdom, genus, .keep_all = TRUE),
by = c("kingdom", "genus")
filter(rank == "genus") %>%
transmute(mo_genus_old = gsub("^[A-Z]+_", "", as.character(mo)), kingdom, genus) %>%
distinct(kingdom, genus, .keep_all = TRUE),
by = c("kingdom", "genus")
) %>%
distinct(kingdom, genus, .keep_all = TRUE) %>%
# since kingdom is part of the code, genus abbreviations may be duplicated between kingdoms
@ -924,11 +996,11 @@ mo_species <- taxonomy %>%
filter(rank == "species") %>%
distinct(kingdom, genus, species) %>%
left_join(microorganisms %>%
filter(rank == "species") %>%
transmute(mo_species_old = gsub("^[A-Z]+_[A-Z]+_", "", as.character(mo)), kingdom, genus, species) %>%
filter(mo_species_old %unlike% "-") %>%
distinct(kingdom, genus, species, .keep_all = TRUE),
by = c("kingdom", "genus", "species")
filter(rank == "species") %>%
transmute(mo_species_old = gsub("^[A-Z]+_[A-Z]+_", "", as.character(mo)), kingdom, genus, species) %>%
filter(mo_species_old %unlike% "-") %>%
distinct(kingdom, genus, species, .keep_all = TRUE),
by = c("kingdom", "genus", "species")
) %>%
distinct(kingdom, genus, species, .keep_all = TRUE) %>%
group_by(kingdom, genus) %>%
@ -972,11 +1044,11 @@ mo_subspecies <- taxonomy %>%
filter(rank == "subspecies") %>%
distinct(kingdom, genus, species, subspecies) %>%
left_join(microorganisms %>%
filter(rank %in% c("subspecies", "subsp.", "infraspecies")) %>%
transmute(mo_subspecies_old = gsub("^[A-Z]+_[A-Z]+_[A-Z]+_", "", as.character(mo)), kingdom, genus, species, subspecies) %>%
filter(mo_subspecies_old %unlike% "-") %>%
distinct(kingdom, genus, species, subspecies, .keep_all = TRUE),
by = c("kingdom", "genus", "species", "subspecies")
filter(rank %in% c("subspecies", "subsp.", "infraspecies")) %>%
transmute(mo_subspecies_old = gsub("^[A-Z]+_[A-Z]+_[A-Z]+_", "", as.character(mo)), kingdom, genus, species, subspecies) %>%
filter(mo_subspecies_old %unlike% "-") %>%
distinct(kingdom, genus, species, subspecies, .keep_all = TRUE),
by = c("kingdom", "genus", "species", "subspecies")
) %>%
distinct(kingdom, genus, species, subspecies, .keep_all = TRUE) %>%
group_by(kingdom, genus, species) %>%
@ -1050,12 +1122,29 @@ taxonomy <- taxonomy %>%
arrange(fullname)
# now check these - e.g. Nitrospira is the name of a genus AND its class
taxonomy %>% filter(fullname %in% .[duplicated(fullname), "fullname", drop = TRUE])
taxonomy %>% filter(fullname %in% .[duplicated(fullname), "fullname", drop = TRUE]) %>% View()
taxonomy <- taxonomy %>%
distinct(fullname, .keep_all = TRUE)
mutate(rank_index = case_when(kingdom == "Bacteria" ~ 1,
kingdom == "Fungi" ~ 2,
kingdom == "Protozoa" ~ 3,
kingdom == "Archaea" ~ 4,
TRUE ~ 5)) %>%
arrange(fullname, rank_index) %>%
distinct(fullname, .keep_all = TRUE) %>%
select(-rank_index) %>%
filter(mo != "")
# This must not exist:
taxonomy %>% filter(mo %like% "__")
# this must not exist:
taxonomy %>% filter(mo %like% "__") %>% View()
taxonomy <- taxonomy %>% filter(mo %unlike% "__")
# this must be empty of course
taxonomy %>% filter(mo %in% .[duplicated(mo), "mo", drop = TRUE]) %>% View()
taxonomy <- taxonomy %>% distinct(mo, .keep_all = TRUE)
# Save intermediate results -----------------------------------------------
saveRDS(taxonomy, "data-raw/taxonomy2.rds")
# Remove unwanted taxonomic entries from Protoza/Fungi --------------------
@ -1067,15 +1156,33 @@ taxonomy <- taxonomy %>%
!(phylum %in% c("Choanozoa", "Mycetozoa") & prevalence == 3),
# Fungi:
!(phylum %in% c("Ascomycota", "Zygomycota", "Basidiomycota") & prevalence == 3),
!(genus %in% c("Phoma", "Leptosphaeria") & rank %in% c("species", "subspecies")), # only genus of this rare fungus, with resp. 1300 and 800 species
!(genus %in% c("Phoma", "Leptosphaeria", "Physarum") & rank %in% c("species", "subspecies")), # only genus of this rare fungus, with resp. 1300 and 800 species
# (leave Alternaria in there, part of human mycobiome and opportunistic pathogen)
# Animalia:
!genus %in% c("Lucilia", "Lumbricus"),
!(class == "Insecta" & rank %in% c("species", "subspecies")), # keep only genus of insects
!(genus == "Amoeba" & kingdom == "Animalia"),
!(genus %in% c("Aedes", "Anopheles") & rank %in% c("species", "subspecies")), # only genus of the many hundreds of mosquitoes species
kingdom != "Plantae"
) # this kingdom only contained Curvularia and Hymenolepis, which have coincidental twin names with Fungi
message("\nCongratulations! The new taxonomic table will contain ", format(nrow(taxonomy), big.mark = ","), " rows.\n")
# no ghost families, orders classes, phyla
taxonomy <- taxonomy %>%
group_by(kingdom, family) %>% filter(n() > 1 | fullname %like% "unknown" | rank == "kingdom") %>%
group_by(kingdom, order) %>% filter(n() > 1 | fullname %like% "unknown" | rank == "kingdom") %>%
group_by(kingdom, class) %>% filter(n() > 1 | fullname %like% "unknown" | rank == "kingdom") %>%
group_by(kingdom, phylum) %>% filter(n() > 1 | fullname %like% "unknown" | rank == "kingdom") %>%
ungroup()
message("\nCongratulations! The new taxonomic table will contain ", format(nrow(taxonomy), big.mark = ","), " rows.\n",
"This was ", format(nrow(microorganisms), big.mark = ","), " rows.\n")
# these are the new ones:
taxonomy %>% filter(!paste(kingdom, fullname) %in% paste(microorganisms$kingdom, microorganisms$fullname)) %>% View()
# these were removed:
microorganisms %>% filter(!paste(kingdom, fullname) %in% paste(taxonomy$kingdom, taxonomy$fullname)) %>% View()
microorganisms %>% filter(!fullname %in% taxonomy$fullname) %>% View()
# Add SNOMED CT -----------------------------------------------------------
@ -1121,15 +1228,13 @@ taxonomy <- taxonomy %>%
# set class <mo>
class(taxonomy$mo) <- c("mo", "character")
# Moraxella catarrhalis was named Branhamella catarrhalis (Catlin, 1970), but this is unaccepted in clinical microbiology
# we keep them both
taxonomy$status[which(taxonomy$fullname == "Moraxella catarrhalis")]
taxonomy$lpsn_renamed_to[which(taxonomy$fullname == "Moraxella catarrhalis")]
taxonomy$status[which(taxonomy$fullname == "Moraxella catarrhalis")] <- "accepted"
taxonomy$lpsn_renamed_to[which(taxonomy$fullname == "Moraxella catarrhalis")] <- NA_character_
taxonomy <- taxonomy %>%
AMR:::dataset_UTF8_to_ASCII()
### this was previously needed?? Since 2022 M. catarrhalis seems to be "accepted" again
# # Moraxella catarrhalis was named Branhamella catarrhalis (Catlin, 1970), but this is unaccepted in clinical microbiology
# # we keep them both
# taxonomy$status[which(taxonomy$fullname == "Moraxella catarrhalis")]
# taxonomy$lpsn_renamed_to[which(taxonomy$fullname == "Moraxella catarrhalis")]
# taxonomy$status[which(taxonomy$fullname == "Moraxella catarrhalis")] <- "accepted"
# taxonomy$lpsn_renamed_to[which(taxonomy$fullname == "Moraxella catarrhalis")] <- NA_character_
# Save to package ---------------------------------------------------------
@ -1138,7 +1243,7 @@ microorganisms <- taxonomy
usethis::use_data(microorganisms, overwrite = TRUE, version = 2, compress = "xz")
rm(microorganisms)
# DON'T FORGET TO UPDATE R/globals.R!
# DON'T FORGET TO UPDATE R/_globals.R!
# Test updates ------------------------------------------------------------
@ -1154,29 +1259,34 @@ devtools::load_all(".")
# reset previously changed mo codes
rsi_translation$mo <- as.mo(rsi_translation$mo, language = NULL)
usethis::use_data(rsi_translation, overwrite = TRUE, version = 2, compress = "xz")
rm(rsi_translation)
if (!identical(rsi_translation$mo, as.mo(rsi_translation$mo, language = NULL))) {
rsi_translation$mo <- as.mo(rsi_translation$mo, language = NULL)
usethis::use_data(rsi_translation, overwrite = TRUE, version = 2, compress = "xz")
rm(rsi_translation)
}
microorganisms.codes$mo <- as.mo(microorganisms.codes$mo, language = NULL)
# new NAs introduced?
any(is.na(microorganisms.codes$mo))
usethis::use_data(microorganisms.codes, overwrite = TRUE, version = 2, compress = "xz")
rm(microorganisms.codes)
if (!identical(microorganisms.codes$mo, as.mo(microorganisms.codes$mo, language = NULL))) {
microorganisms.codes <- microorganisms.codes %>% filter(mo %in% microorganisms$mo)
microorganisms.codes$mo <- as.mo(microorganisms.codes$mo, language = NULL)
usethis::use_data(microorganisms.codes, overwrite = TRUE, version = 2, compress = "xz")
rm(microorganisms.codes)
}
example_isolates$mo <- as.mo(example_isolates$mo, language = NULL)
usethis::use_data(example_isolates, overwrite = TRUE, version = 2)
rm(example_isolates)
intrinsic_resistant$microorganism <- suppressMessages(mo_name(intrinsic_resistant$microorganism))
usethis::use_data(intrinsic_resistant, overwrite = TRUE, version = 2)
rm(intrinsic_resistant)
if (!identical(example_isolates$mo, as.mo(example_isolates$mo, language = NULL))) {
example_isolates$mo <- as.mo(example_isolates$mo, language = NULL)
usethis::use_data(example_isolates, overwrite = TRUE, version = 2)
rm(example_isolates)
}
# load new data sets again
devtools::load_all(".")
source("data-raw/_pre_commit_hook.R")
devtools::load_all(".")
if (!identical(intrinsic_resistant$mo, as.mo(intrinsic_resistant$mo, language = NULL))) {
stop("Run data-raw/reproduction_of_intrinsic_resistant.R again")
}
# run the unit tests
Sys.setenv(NOT_CRAN = "true")

Binary file not shown.

BIN
data-raw/taxonomy1.rds Normal file

Binary file not shown.

BIN
data-raw/taxonomy2.rds Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -20,7 +20,7 @@ The `AMR` package is a [free and open-source](#copyright) R package with [zero d
This work was published in the Journal of Statistical Software (Volume 104(3); [DOI 10.18637/jss.v104.i03](https://doi.org/10.18637/jss.v104.i03)) and formed the basis of two PhD theses ([DOI 10.33612/diss.177417131](https://doi.org/10.33612/diss.177417131) and [DOI 10.33612/diss.192486375](https://doi.org/10.33612/diss.192486375)).
After installing this package, R knows [**~49,000 distinct microbial species**](./reference/microorganisms.html) and all [**~600 antibiotic, antimycotic and antiviral drugs**](./reference/antibiotics.html) by name and code (including ATC, EARS-Net, ASIARS-Net, PubChem, LOINC and SNOMED CT), and knows all about valid R/SI and MIC values. The integral breakpoint guidelines from CLSI and EUCAST are included from the last 10 years. It supports and can read any data format, including WHONET data. This package works on Windows, macOS and Linux with all versions of R since R-3.0 (April 2013). **It was designed to work in any setting, including those with very limited resources**. It was created for both routine data analysis and academic research at the Faculty of Medical Sciences of the [University of Groningen](https://www.rug.nl), in collaboration with non-profit organisations [Certe Medical Diagnostics and Advice Foundation](https://www.certe.nl) and [University Medical Center Groningen](https://www.umcg.nl), and is being [actively and durably maintained](./news) by two public healthcare organisations in the Netherlands.
After installing this package, R knows [**~48,000 distinct microbial species**](./reference/microorganisms.html) (updated December 2022) and all [**~600 antibiotic, antimycotic and antiviral drugs**](./reference/antibiotics.html) by name and code (including ATC, EARS-Net, ASIARS-Net, PubChem, LOINC and SNOMED CT), and knows all about valid R/SI and MIC values. The integral breakpoint guidelines from CLSI and EUCAST are included from the last 10 years. It supports and can read any data format, including WHONET data. This package works on Windows, macOS and Linux with all versions of R since R-3.0 (April 2013). **It was designed to work in any setting, including those with very limited resources**. It was created for both routine data analysis and academic research at the Faculty of Medical Sciences of the [University of Groningen](https://www.rug.nl), in collaboration with non-profit organisations [Certe Medical Diagnostics and Advice Foundation](https://www.certe.nl) and [University Medical Center Groningen](https://www.umcg.nl), and is being [actively and durably maintained](./news) by two public healthcare organisations in the Netherlands.
##### Used in 175 countries, translated to 16 languages

View File

@ -32,7 +32,7 @@ Welcome to the \code{AMR} package.
This work was published in the Journal of Statistical Software (Volume 104(3); \doi{10.18637/jss.v104.i03}) and formed the basis of two PhD theses (\doi{10.33612/diss.177417131} and \doi{10.33612/diss.192486375}).
After installing this package, \R knows ~49,000 distinct microbial species and all ~600 antibiotic, antimycotic and antiviral drugs by name and code (including ATC, EARS-NET, LOINC and SNOMED CT), and knows all about valid R/SI and MIC values. It supports any data format, including WHONET/EARS-Net data.
After installing this package, \R knows ~48,000 distinct microbial species and all ~600 antibiotic, antimycotic and antiviral drugs by name and code (including ATC, EARS-NET, LOINC and SNOMED CT), and knows all about valid R/SI and MIC values. It supports any data format, including WHONET/EARS-Net data.
This package is fully independent of any other \R package and works on Windows, macOS and Linux with all versions of \R since R-3.0.0 (April 2013). It was designed to work in any setting, including those with very limited resources. It was created for both routine data analysis and academic research at the Faculty of Medical Sciences of the University of Groningen, in collaboration with non-profit organisations Certe Medical Diagnostics and Advice and University Medical Center Groningen. This \R package is actively maintained and free software; you can freely use and distribute it for both personal and commercial (but not patent) purposes under the terms of the GNU General Public License version 2.0 (GPL-2), as published by the Free Software Foundation.

View File

@ -120,8 +120,8 @@ The coercion rules consider the prevalence of microorganisms in humans grouped i
\item Becker K \emph{et al.} (2020). \strong{Emergence of coagulase-negative staphylococci} \emph{Expert Rev Anti Infect Ther.} 18(4):349-366; \doi{10.1080/14787210.2020.1730813}
\item Lancefield RC (1933). \strong{A serological differentiation of human and other groups of hemolytic streptococci}. \emph{J Exp Med.} 57(4): 571-95; \doi{10.1084/jem.57.4.571}
\item Berends MS \emph{et al.} (2022). \strong{Trends in Occurrence and Phenotypic Resistance of Coagulase-Negative Staphylococci (CoNS) Found in Human Blood in the Northern Netherlands between 2013 and 2019} \emph{Microorganisms} 10(9), 1801; \doi{10.3390/microorganisms10091801}
\item Parte, AC \emph{et al.} (2020). \strong{List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.} International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \doi{10.1099/ijsem.0.004332}. Accessed from \url{https://lpsn.dsmz.de} on 12 September, 2022.
\item GBIF Secretariat (November 26, 2021). GBIF Backbone Taxonomy. Checklist dataset \doi{10.15468/39omei}. Accessed from \url{https://www.gbif.org} on 12 September, 2022.
\item Parte, AC \emph{et al.} (2020). \strong{List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.} International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \doi{10.1099/ijsem.0.004332}. Accessed from \url{https://lpsn.dsmz.de} on 11 December, 2022.
\item GBIF Secretariat (2022). GBIF Backbone Taxonomy. Checklist dataset \doi{10.15468/39omei}. Accessed from \url{https://www.gbif.org} on 11 December, 2022.
\item Public Health Information Network Vocabulary Access and Distribution System (PHIN VADS). US Edition of SNOMED CT from 1 September 2020. Value Set Name 'Microoganism', OID 2.16.840.1.114222.4.11.1009 (v12). URL: \url{https://phinvads.cdc.gov}
}
}

View File

@ -74,7 +74,7 @@ To improve the interpretation of the antibiogram before EUCAST rules are applied
\strong{Note:} This function does not translate MIC values to RSI values. Use \code{\link[=as.rsi]{as.rsi()}} for that. \cr
\strong{Note:} When ampicillin (AMP, J01CA01) is not available but amoxicillin (AMX, J01CA04) is, the latter will be used for all rules where there is a dependency on ampicillin. These drugs are interchangeable when it comes to expression of antimicrobial resistance. \cr
The file containing all EUCAST rules is located here: \url{https://github.com/msberends/AMR/blob/main/data-raw/eucast_rules.tsv}. \strong{Note:} Old taxonomic names are replaced with the current taxonomy where applicable. For example, \emph{Ochrobactrum anthropi} was renamed to \emph{Brucella anthropi} in 2020; the original EUCAST rules v3.1 and v3.2 did not yet contain this new taxonomic name. The \code{AMR} package contains the full microbial taxonomy updated until 12 September, 2022, see \link{microorganisms}.
The file containing all EUCAST rules is located here: \url{https://github.com/msberends/AMR/blob/main/data-raw/eucast_rules.tsv}. \strong{Note:} Old taxonomic names are replaced with the current taxonomy where applicable. For example, \emph{Ochrobactrum anthropi} was renamed to \emph{Brucella anthropi} in 2020; the original EUCAST rules v3.1 and v3.2 did not yet contain this new taxonomic name. The \code{AMR} package contains the full microbial taxonomy updated until 11 December, 2022, see \link{microorganisms}.
\subsection{Custom Rules}{
Custom rules can be created using \code{\link[=custom_eucast_rules]{custom_eucast_rules()}}, e.g.:

View File

@ -5,7 +5,7 @@
\alias{intrinsic_resistant}
\title{Data Set with Bacterial Intrinsic Resistance}
\format{
A \link[tibble:tibble]{tibble} with 134,659 observations and 2 variables:
A \link[tibble:tibble]{tibble} with 206,832 observations and 2 variables:
\itemize{
\item \code{mo}\cr Microorganism ID
\item \code{ab}\cr Antibiotic ID

View File

@ -3,9 +3,9 @@
\docType{data}
\name{microorganisms}
\alias{microorganisms}
\title{Data Set with 48,883 Microorganisms}
\title{Data Set with 48,050 Microorganisms}
\format{
A \link[tibble:tibble]{tibble} with 48,883 observations and 22 variables:
A \link[tibble:tibble]{tibble} with 48,050 observations and 22 variables:
\itemize{
\item \code{mo}\cr ID of microorganism as used by this package
\item \code{fullname}\cr Full name, like \code{"Escherichia coli"}. For the taxonomic ranks genus, species and subspecies, this is the 'pasted' text of genus, species, and subspecies. For all taxonomic ranks higher than genus, this is the name of the taxon.
@ -26,8 +26,8 @@ A \link[tibble:tibble]{tibble} with 48,883 observations and 22 variables:
}
\source{
\itemize{
\item Parte, AC \emph{et al.} (2020). \strong{List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.} International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \doi{10.1099/ijsem.0.004332}. Accessed from \url{https://lpsn.dsmz.de} on 12 September, 2022.
\item GBIF Secretariat (November 26, 2021). GBIF Backbone Taxonomy. Checklist dataset \doi{10.15468/39omei}. Accessed from \url{https://www.gbif.org} on 12 September, 2022.
\item Parte, AC \emph{et al.} (2020). \strong{List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.} International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \doi{10.1099/ijsem.0.004332}. Accessed from \url{https://lpsn.dsmz.de} on 11 December, 2022.
\item GBIF Secretariat (2022). GBIF Backbone Taxonomy. Checklist dataset \doi{10.15468/39omei}. Accessed from \url{https://www.gbif.org} on 11 December, 2022.
\item Public Health Information Network Vocabulary Access and Distribution System (PHIN VADS). US Edition of SNOMED CT from 1 September 2020. Value Set Name 'Microoganism', OID 2.16.840.1.114222.4.11.1009 (v12). URL: \url{https://phinvads.cdc.gov}
}
}
@ -35,7 +35,7 @@ A \link[tibble:tibble]{tibble} with 48,883 observations and 22 variables:
microorganisms
}
\description{
A data set containing the full microbial taxonomy (\strong{last updated: 12 September, 2022}) of five kingdoms from the List of Prokaryotic names with Standing in Nomenclature (LPSN) and the Global Biodiversity Information Facility (GBIF). This data set is the backbone of this \code{AMR} package. MO codes can be looked up using \code{\link[=as.mo]{as.mo()}}.
A data set containing the full microbial taxonomy (\strong{last updated: 11 December, 2022}) of five kingdoms from the List of Prokaryotic names with Standing in Nomenclature (LPSN) and the Global Biodiversity Information Facility (GBIF). This data set is the backbone of this \code{AMR} package. MO codes can be looked up using \code{\link[=as.mo]{as.mo()}}.
}
\details{
Please note that entries are only based on the List of Prokaryotic names with Standing in Nomenclature (LPSN) and the Global Biodiversity Information Facility (GBIF) (see below). Since these sources incorporate entries based on (recent) publications in the International Journal of Systematic and Evolutionary Microbiology (IJSEM), it can happen that the year of publication is sometimes later than one might expect.
@ -47,10 +47,10 @@ For example, \emph{Staphylococcus pettenkoferi} was described for the first time
Included taxonomic data are:
\itemize{
\item All ~34,000 (sub)species from the kingdoms of Archaea and Bacteria
\item ~7,400 (sub)species from the kingdom of Fungi. The kingdom of Fungi is a very large taxon with almost 300,000 different (sub)species, of which most are not microbial (but rather macroscopic, like mushrooms). Because of this, not all fungi fit the scope of this package. Only relevant fungi are covered (such as all species of \emph{Aspergillus}, \emph{Candida}, \emph{Cryptococcus}, \emph{Histoplasma}, \emph{Pneumocystis}, \emph{Saccharomyces} and \emph{Trichophyton}).
\item ~5,000 (sub)species from the kingdom of Protozoa
\item ~1,500 (sub)species from ~50 other relevant genera from the kingdom of Animalia (such as \emph{Strongyloides} and \emph{Taenia})
\item All ~9,400 previously accepted names of all included (sub)species (these were taxonomically renamed)
\item ~6,900 (sub)species from the kingdom of Fungi. The kingdom of Fungi is a very large taxon with almost 300,000 different (sub)species, of which most are not microbial (but rather macroscopic, like mushrooms). Because of this, not all fungi fit the scope of this package. Only relevant fungi are covered (such as all species of \emph{Aspergillus}, \emph{Candida}, \emph{Cryptococcus}, \emph{Histoplasma}, \emph{Pneumocystis}, \emph{Saccharomyces} and \emph{Trichophyton}).
\item ~4,400 (sub)species from the kingdom of Protozoa
\item ~1,100 (sub)species from ~40 other relevant genera from the kingdom of Animalia (such as \emph{Strongyloides} and \emph{Taenia})
\item All ~9,100 previously accepted names of all included (sub)species (these were taxonomically renamed)
\item The complete taxonomic tree of all included (sub)species: from kingdom to subspecies
\item The identifier of the parent taxons
\item The year and first author of the related scientific publication

View File

@ -348,8 +348,8 @@ All matches are sorted descending on their matching score and for all user input
\item Becker K \emph{et al.} (2020). \strong{Emergence of coagulase-negative staphylococci} \emph{Expert Rev Anti Infect Ther.} 18(4):349-366; \doi{10.1080/14787210.2020.1730813}
\item Lancefield RC (1933). \strong{A serological differentiation of human and other groups of hemolytic streptococci}. \emph{J Exp Med.} 57(4): 571-95; \doi{10.1084/jem.57.4.571}
\item Berends MS \emph{et al.} (2022). \strong{Trends in Occurrence and Phenotypic Resistance of Coagulase-Negative Staphylococci (CoNS) Found in Human Blood in the Northern Netherlands between 2013 and 2019} \emph{Microorganisms} 10(9), 1801; \doi{10.3390/microorganisms10091801}
\item Parte, AC \emph{et al.} (2020). \strong{List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.} International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \doi{10.1099/ijsem.0.004332}. Accessed from \url{https://lpsn.dsmz.de} on 12 September, 2022.
\item GBIF Secretariat (November 26, 2021). GBIF Backbone Taxonomy. Checklist dataset \doi{10.15468/39omei}. Accessed from \url{https://www.gbif.org} on 12 September, 2022.
\item Parte, AC \emph{et al.} (2020). \strong{List of Prokaryotic names with Standing in Nomenclature (LPSN) moves to the DSMZ.} International Journal of Systematic and Evolutionary Microbiology, 70, 5607-5612; \doi{10.1099/ijsem.0.004332}. Accessed from \url{https://lpsn.dsmz.de} on 11 December, 2022.
\item GBIF Secretariat (2022). GBIF Backbone Taxonomy. Checklist dataset \doi{10.15468/39omei}. Accessed from \url{https://www.gbif.org} on 11 December, 2022.
\item Public Health Information Network Vocabulary Access and Distribution System (PHIN VADS). US Edition of SNOMED CT from 1 September 2020. Value Set Name 'Microoganism', OID 2.16.840.1.114222.4.11.1009 (v12). URL: \url{https://phinvads.cdc.gov}
}
}

View File

@ -29,6 +29,18 @@
# ==================================================================== #
*/
/* fix some footer issues with the logos */
@media (min-width: 576px) {
footer .pkgdown-footer-right {
width: 300px;
}
}
@media (max-width: 575.98px) {
footer .pkgdown-footer-right {
text-align: center;
}
}
/* replace 'Developers' with 'Maintainers' */
.developers h2 {
display: none;

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View File

@ -1,70 +1,69 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 25.2.3, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 400 120" style="enable-background:new 0 0 400 120;" xml:space="preserve">
viewBox="0 0 425.4 120" style="enable-background:new 0 0 425.4 120;" xml:space="preserve">
<style type="text/css">
.st0{fill:#E3032E;}
</style>
<g>
<path class="st0" d="M333.6,73.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.1v-1.8H343c-1.8,0-2-0.6-2-2.3
v-5.9c0-3.4,1.8-5.2,4.4-5.2c1.9,0,3.2,1.1,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3H346v1.8h9.9v-1.8H355c-1.8,0-2-0.6-2-2.3v-8.5
c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4V73.8z M330.8,80.9v-0.8c0-6-2.4-8.7-8.2-8.7
c-6,0-8.6,4-8.6,9.3c0,5.3,2.6,9.3,8.6,9.3c6,0,7.8-3.1,7.8-6.2h-3.7c0,2.7-1.1,4.1-3.7,4.1c-4.4,0-4.5-4.5-4.5-6.9H330.8z
M318.6,78.8c0-3,0.9-5.5,4-5.5c3.1,0,3.8,2.6,3.8,5.5H318.6z M304.8,77.6c0,3.1-0.9,4.6-2.8,4.6c-1.9,0-3.1-1.4-3.1-4.6
c0-3.1,1.1-4.3,3.1-4.3C303.7,73.3,304.8,74.3,304.8,77.6 M306.4,92.4c0,1.7-1.1,3.4-4.5,3.4c-3,0-4.2-1.4-4.2-3.2
c0-1.9,1.1-3.5,4.3-3.5C305.1,89.1,306.4,90.5,306.4,92.4 M311.6,71.7l-5.3,0.5c-1-0.3-2.7-0.8-4.2-0.8c-4.7,0-7.8,2.7-7.8,6.2
c0,3.3,2.1,4.9,4.7,5.8v0.1c-2.5,0.2-3.5,1.1-3.5,2.3c0,1.2,0.8,1.8,3.2,2.3V88c-2.5,0.3-5.5,1.6-5.5,4.5c0,2.9,2.5,5.2,8.2,5.2
c6,0,9.4-2,9.4-5.3c0-4.2-3.4-4.7-6.8-5c-4-0.3-4.6-0.6-4.6-1.7c0-1.2,1.6-1.4,2.8-1.5l0.9-0.1c5-0.8,6.6-3.5,6.6-6.4
c0-1.5-0.7-2.9-1.6-3.6V74h3.5V71.7z M269.1,73.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.1v-1.8h-0.5
<path class="st0" d="M347.4,73.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.1v-1.8h-0.4c-1.8,0-2-0.6-2-2.3
v-5.9c0-3.4,1.8-5.2,4.4-5.2c1.9,0,3.2,1.1,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3h-0.6v1.8h9.9v-1.8h-0.9c-1.8,0-2-0.6-2-2.3v-8.5
c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4V73.8z M344.6,80.9v-0.8c0-6-2.4-8.7-8.2-8.7
c-6,0-8.6,4-8.6,9.3s2.6,9.3,8.6,9.3s7.8-3.1,7.8-6.2h-3.7c0,2.7-1.1,4.1-3.7,4.1c-4.4,0-4.5-4.5-4.5-6.9h12.3V80.9z M332.4,78.8
c0-3,0.9-5.5,4-5.5s3.8,2.6,3.8,5.5H332.4z M318.6,77.6c0,3.1-0.9,4.6-2.8,4.6s-3.1-1.4-3.1-4.6c0-3.1,1.1-4.3,3.1-4.3
C317.5,73.3,318.6,74.3,318.6,77.6 M320.2,92.4c0,1.7-1.1,3.4-4.5,3.4c-3,0-4.2-1.4-4.2-3.2c0-1.9,1.1-3.5,4.3-3.5
C318.9,89.1,320.2,90.5,320.2,92.4 M325.4,71.7l-5.3,0.5c-1-0.3-2.7-0.8-4.2-0.8c-4.7,0-7.8,2.7-7.8,6.2c0,3.3,2.1,4.9,4.7,5.8v0.1
c-2.5,0.2-3.5,1.1-3.5,2.3c0,1.2,0.8,1.8,3.2,2.3V88c-2.5,0.3-5.5,1.6-5.5,4.5s2.5,5.2,8.2,5.2c6,0,9.4-2,9.4-5.3
c0-4.2-3.4-4.7-6.8-5c-4-0.3-4.6-0.6-4.6-1.7c0-1.2,1.6-1.4,2.8-1.5l0.9-0.1c5-0.8,6.6-3.5,6.6-6.4c0-1.5-0.7-2.9-1.6-3.6V74h3.5
L325.4,71.7L325.4,71.7z M282.9,73.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.1v-1.8h-0.5
c-1.8,0-2-0.6-2-2.3v-5.9c0-3.4,1.8-5.2,4.4-5.2c1.9,0,3.2,1.1,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3h-0.5v1.8h9.9v-1.8h-0.9
c-1.8,0-2-0.6-2-2.3v-8.5c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4V73.8z M259.3,65.8
c0,1.5,0.9,2.7,2.6,2.7c1.7,0,2.6-1.2,2.6-2.7c0-1.5-0.9-2.7-2.6-2.7C260.3,63.1,259.3,64.2,259.3,65.8 M256.9,73.8h1.3
c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.5v-1.8h-0.9c-1.8,0-2-0.6-2-2.3V71.5c-2.3,0.2-5.5,0.4-7.3,0.4V73.8z
M232.7,73.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.1v-1.8h-0.5c-1.8,0-2-0.6-2-2.3v-5.9
c0-3.4,1.8-5.2,4.4-5.2c1.9,0,3.2,1.1,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3h-0.5v1.8h9.9v-1.8H254c-1.8,0-2-0.6-2-2.3v-8.5
c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4V73.8z M213,80.6c0,5.3,2.6,9.3,8.6,9.3
c6,0,8.6-4,8.6-9.3c0-5.3-2.6-9.3-8.6-9.3C215.6,71.4,213,75.3,213,80.6 M217.6,80.6c0-4.9,1.1-7.2,4-7.2c2.9,0,4,2.3,4,7.2
c0,4.9-1.1,7.2-4,7.2C218.7,87.8,217.6,85.5,217.6,80.6 M195.2,73.8h1.5c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8
h11.5v-1.8h-1.9c-1.8,0-2-0.6-2-2.3v-5.9c0-3,1.7-5.2,3.3-5.2c1.4,0,1.8,1,1.8,2.8h3.5v-5.2c-0.8-0.3-1.8-0.4-2.9-0.4
c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-7,0.4V73.8z M186.8,77.6c0,3.1-0.9,4.6-2.8,4.6c-1.9,0-3.1-1.4-3.1-4.6
c0-3.1,1.1-4.3,3.1-4.3C185.7,73.3,186.8,74.3,186.8,77.6 M188.3,92.4c0,1.7-1.1,3.4-4.5,3.4c-3,0-4.2-1.4-4.2-3.2
c0-1.9,1.1-3.5,4.3-3.5C187,89.1,188.3,90.5,188.3,92.4 M193.6,71.7l-5.3,0.5c-1-0.3-2.7-0.8-4.2-0.8c-4.7,0-7.8,2.7-7.8,6.2
c0,3.3,2,4.9,4.8,5.8v0.1c-2.5,0.2-3.5,1.1-3.5,2.3c0,1.2,0.8,1.8,3.2,2.3V88c-2.5,0.3-5.5,1.6-5.5,4.5c0,2.9,2.5,5.2,8.2,5.2
c6,0,9.4-2,9.4-5.3c0-4.2-3.4-4.7-6.8-5c-4-0.3-4.6-0.6-4.6-1.7c0-1.2,1.6-1.4,2.8-1.5l0.9-0.1c5-0.8,6.6-3.5,6.6-6.4
c0-1.5-0.7-2.9-1.6-3.6V74h3.5V71.7z"/>
<path class="st0" d="M383.3,38h3.2v11.3c0,1.7-0.2,2.3-2,2.3h-1.1v1.8h11.5v-1.8h-1.9c-1.8,0-2-0.6-2-2.3V38h4.7V36h-4.7v-3.6
c0-2.2,0.9-3.2,2.3-3.2c1.3,0,1.8,0.8,1.8,3.2h3v-4.7c-1.4-0.3-3-0.5-4.8-0.5c-6.5,0-6.8,4-6.8,8.9h-3.2V38z M363.9,44.7
c0,5.3,2.6,9.3,8.6,9.3c6,0,8.6-4,8.6-9.3c0-5.3-2.6-9.3-8.6-9.3C366.4,35.4,363.9,39.3,363.9,44.7 M368.5,44.7
c0-4.9,1.1-7.2,4-7.2c2.9,0,4,2.3,4,7.2c0,4.9-1.1,7.2-4,7.2C369.5,51.9,368.5,49.6,368.5,44.7 M346.2,52.9l-1.7,4.4
c-0.5,1.3-0.9,2-2.3,2h-1.6v1.8h9.6v-1.8H349c-1.4,0-1.8-0.3-1.8-1.1c0-0.6,0.4-1.4,0.6-1.9l7.1-16.9c0.5-1.2,0.8-1.8,1.6-1.8h0.8
V36h-7.6v1.8h1.5c0.6,0,0.9,0.1,0.9,0.6c0,0.3-0.2,0.8-0.4,1.3l-3.3,8.4l-3-8c-0.2-0.6-0.5-1.1-0.5-1.6c0-0.5,0.4-0.6,1-0.6h1.3V36
h-8.9v1.8h0.5c0.9,0,1.3,0.5,2,2.3L346.2,52.9z M322.1,38h3.2v10.3c0,4.5,2,5.6,5.6,5.6c3.5,0,5.5-1.7,5.5-5.6v-0.8h-3v1.8
c0,1.5-0.6,2.2-1.9,2.2c-1.3,0-1.9-0.7-1.9-2.2V38h5.8V36h-5.8v-5.1h-3.1c-0.3,3.6-1.1,4.7-4.4,5.1V38z M312.6,29.8
c0,1.5,0.9,2.7,2.6,2.7c1.7,0,2.6-1.2,2.6-2.7c0-1.5-0.9-2.7-2.6-2.7C313.5,27.1,312.6,28.3,312.6,29.8 M310.1,37.8h1.3
c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.5v-1.8h-0.9c-1.8,0-2-0.6-2-2.3V35.5c-2.3,0.2-5.5,0.4-7.3,0.4V37.8z
M292.9,52.8c1,0.4,3.7,1.1,6.6,1.1c3.8,0,7.8-1.6,7.8-5.8c0-2.7-1.4-3.8-4.5-4.8l-2.9-1c-1.7-0.5-2.6-1.5-2.6-2.9
c0-1.4,1-2.1,2.7-2.1c2.6,0,3.3,1.2,3.3,3.9h3v-4.9c-1-0.5-3.5-1-6.2-1c-4.2,0-7.2,2-7.2,5.3c0,2.8,2,4.3,6.2,5.6
c3.3,1,3.8,1.8,3.8,3.1c0,1.7-1.5,2.6-3.8,2.6c-2.5,0-3.2-1.7-3.2-4.2h-3V52.8z M274.2,37.8h1.5c1.4,0,1.6,0.3,1.6,2.7v8.8
c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h11.5v-1.8h-1.9c-1.8,0-2-0.6-2-2.3v-5.9c0-3,1.7-5.3,3.3-5.3c1.4,0,1.8,1,1.8,2.8h3.5v-5.2
c-0.8-0.3-1.8-0.4-2.9-0.4c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-7,0.4V37.8z M271.6,45v-0.8c0-6-2.4-8.7-8.2-8.7
c-6,0-8.6,4-8.6,9.3c0,5.3,2.6,9.3,8.6,9.3c6,0,7.8-3.1,7.8-6.2h-3.7c0,2.7-1.1,4.1-3.7,4.1c-4.4,0-4.5-4.5-4.5-6.9H271.6z
M259.4,42.9c0-3,0.9-5.5,4-5.5c3.1,0,3.8,2.6,3.8,5.5H259.4z M246.1,37.7h1.5c0.8,0,1,0.2,1,0.5c0,0.3-0.1,0.6-0.2,0.9l-3.7,10.7
h-0.1l-3.5-10.1c-0.1-0.4-0.3-0.8-0.3-1.3c0-0.4,0.4-0.6,1.4-0.6h1.2V36h-9v1.8h0.4c0.8,0,1,0.2,1.5,1.4l5.6,14.5h4.2l5.6-14.6
c0.4-0.9,0.7-1.2,1.4-1.2h0.5V36h-7.6V37.7z M226,29.8c0,1.5,0.9,2.7,2.6,2.7c1.7,0,2.6-1.2,2.6-2.7c0-1.5-0.9-2.7-2.6-2.7
C227,27.1,226,28.3,226,29.8 M223.6,37.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.5v-1.8H233
c-1.8,0-2-0.6-2-2.3V35.5c-2.3,0.2-5.5,0.4-7.3,0.4V37.8z M199.4,37.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8
h10.1v-1.8h-0.5c-1.8,0-2-0.6-2-2.3v-5.9c0-3.4,1.8-5.3,4.4-5.3c1.9,0,3.2,1.2,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3h-0.5v1.8h9.9v-1.8
h-0.9c-1.8,0-2-0.6-2-2.3v-8.5c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4V37.8z M190.7,53.4h6.8
v-1.8h-0.9c-1.8,0-2-0.6-2-2.3V35.5c-2.3,0.2-5.5,0.4-7.3,0.4v1.9h1.3c1.4,0,1.6,0.3,1.6,2.7v4.9c0,3.7-1.3,5.6-4.4,5.6
c-2,0-3.2-1-3.2-3.2V35.5c-2.3,0.2-5.5,0.4-7.3,0.4v1.9h1.3c1.4,0,1.6,0.3,1.6,2.7V49c0,3.3,2.2,5,5.7,5c3.6,0,5.9-1.6,6.7-4h0.1
V53.4z"/>
c-1.8,0-2-0.6-2-2.3v-8.5c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4V73.8z M273.1,65.8
c0,1.5,0.9,2.7,2.6,2.7s2.6-1.2,2.6-2.7s-0.9-2.7-2.6-2.7C274.1,63.1,273.1,64.2,273.1,65.8 M270.7,73.8h1.3c1.4,0,1.6,0.3,1.6,2.7
v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.5v-1.8H280c-1.8,0-2-0.6-2-2.3V71.5c-2.3,0.2-5.5,0.4-7.3,0.4V73.8z M246.5,73.8h1.3
c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.1v-1.8h-0.5c-1.8,0-2-0.6-2-2.3v-5.9c0-3.4,1.8-5.2,4.4-5.2
c1.9,0,3.2,1.1,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3h-0.5v1.8h9.9v-1.8h-1c-1.8,0-2-0.6-2-2.3v-8.5c0-3.9-2.7-5.5-6.3-5.5
c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-6.8,0.4v2H246.5z M226.8,80.6c0,5.3,2.6,9.3,8.6,9.3s8.6-4,8.6-9.3s-2.6-9.3-8.6-9.3
C229.4,71.4,226.8,75.3,226.8,80.6 M231.4,80.6c0-4.9,1.1-7.2,4-7.2s4,2.3,4,7.2c0,4.9-1.1,7.2-4,7.2
C232.5,87.8,231.4,85.5,231.4,80.6 M209,73.8h1.5c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h11.5v-1.8h-1.9
c-1.8,0-2-0.6-2-2.3v-5.9c0-3,1.7-5.2,3.3-5.2c1.4,0,1.8,1,1.8,2.8h3.5v-5.2c-0.8-0.3-1.8-0.4-2.9-0.4c-2.9,0-5,1.2-6.2,4.1h-0.1
v-4c-1.8,0.2-5,0.4-7,0.4L209,73.8L209,73.8z M200.6,77.6c0,3.1-0.9,4.6-2.8,4.6c-1.9,0-3.1-1.4-3.1-4.6c0-3.1,1.1-4.3,3.1-4.3
C199.5,73.3,200.6,74.3,200.6,77.6 M202.1,92.4c0,1.7-1.1,3.4-4.5,3.4c-3,0-4.2-1.4-4.2-3.2c0-1.9,1.1-3.5,4.3-3.5
C200.8,89.1,202.1,90.5,202.1,92.4 M207.4,71.7l-5.3,0.5c-1-0.3-2.7-0.8-4.2-0.8c-4.7,0-7.8,2.7-7.8,6.2c0,3.3,2,4.9,4.8,5.8v0.1
c-2.5,0.2-3.5,1.1-3.5,2.3c0,1.2,0.8,1.8,3.2,2.3V88c-2.5,0.3-5.5,1.6-5.5,4.5s2.5,5.2,8.2,5.2c6,0,9.4-2,9.4-5.3
c0-4.2-3.4-4.7-6.8-5c-4-0.3-4.6-0.6-4.6-1.7c0-1.2,1.6-1.4,2.8-1.5l0.9-0.1c5-0.8,6.6-3.5,6.6-6.4c0-1.5-0.7-2.9-1.6-3.6V74h3.5
L207.4,71.7L207.4,71.7z"/>
<path class="st0" d="M397.1,38h3.2v11.3c0,1.7-0.2,2.3-2,2.3h-1.1v1.8h11.5v-1.8h-1.9c-1.8,0-2-0.6-2-2.3V38h4.7v-2h-4.7v-3.6
c0-2.2,0.9-3.2,2.3-3.2c1.3,0,1.8,0.8,1.8,3.2h3v-4.7c-1.4-0.3-3-0.5-4.8-0.5c-6.5,0-6.8,4-6.8,8.9h-3.2V38z M377.7,44.7
c0,5.3,2.6,9.3,8.6,9.3s8.6-4,8.6-9.3s-2.6-9.3-8.6-9.3C380.2,35.4,377.7,39.3,377.7,44.7 M382.3,44.7c0-4.9,1.1-7.2,4-7.2
s4,2.3,4,7.2s-1.1,7.2-4,7.2C383.3,51.9,382.3,49.6,382.3,44.7 M360,52.9l-1.7,4.4c-0.5,1.3-0.9,2-2.3,2h-1.6v1.8h9.6v-1.8h-1.2
c-1.4,0-1.8-0.3-1.8-1.1c0-0.6,0.4-1.4,0.6-1.9l7.1-16.9c0.5-1.2,0.8-1.8,1.6-1.8h0.8V36h-7.6v1.8h1.5c0.6,0,0.9,0.1,0.9,0.6
c0,0.3-0.2,0.8-0.4,1.3l-3.3,8.4l-3-8c-0.2-0.6-0.5-1.1-0.5-1.6s0.4-0.6,1-0.6h1.3V36h-8.9v1.8h0.5c0.9,0,1.3,0.5,2,2.3L360,52.9z
M335.9,38h3.2v10.3c0,4.5,2,5.6,5.6,5.6c3.5,0,5.5-1.7,5.5-5.6v-0.8h-3v1.8c0,1.5-0.6,2.2-1.9,2.2s-1.9-0.7-1.9-2.2V38h5.8v-2
h-5.8v-5.1h-3.1c-0.3,3.6-1.1,4.7-4.4,5.1L335.9,38L335.9,38z M326.4,29.8c0,1.5,0.9,2.7,2.6,2.7s2.6-1.2,2.6-2.7s-0.9-2.7-2.6-2.7
C327.3,27.1,326.4,28.3,326.4,29.8 M323.9,37.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.5v-1.8h-0.9
c-1.8,0-2-0.6-2-2.3V35.5c-2.3,0.2-5.5,0.4-7.3,0.4V37.8z M306.7,52.8c1,0.4,3.7,1.1,6.6,1.1c3.8,0,7.8-1.6,7.8-5.8
c0-2.7-1.4-3.8-4.5-4.8l-2.9-1c-1.7-0.5-2.6-1.5-2.6-2.9s1-2.1,2.7-2.1c2.6,0,3.3,1.2,3.3,3.9h3v-4.9c-1-0.5-3.5-1-6.2-1
c-4.2,0-7.2,2-7.2,5.3c0,2.8,2,4.3,6.2,5.6c3.3,1,3.8,1.8,3.8,3.1c0,1.7-1.5,2.6-3.8,2.6c-2.5,0-3.2-1.7-3.2-4.2h-3L306.7,52.8
L306.7,52.8z M288,37.8h1.5c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h11.5v-1.8h-1.9c-1.8,0-2-0.6-2-2.3v-5.9
c0-3,1.7-5.3,3.3-5.3c1.4,0,1.8,1,1.8,2.8h3.5v-5.2c-0.8-0.3-1.8-0.4-2.9-0.4c-2.9,0-5,1.2-6.2,4.1h-0.1v-4c-1.8,0.2-5,0.4-7,0.4v2
H288z M285.4,45v-0.8c0-6-2.4-8.7-8.2-8.7c-6,0-8.6,4-8.6,9.3s2.6,9.3,8.6,9.3s7.8-3.1,7.8-6.2h-3.7c0,2.7-1.1,4.1-3.7,4.1
c-4.4,0-4.5-4.5-4.5-6.9L285.4,45L285.4,45z M273.2,42.9c0-3,0.9-5.5,4-5.5s3.8,2.6,3.8,5.5H273.2z M259.9,37.7h1.5
c0.8,0,1,0.2,1,0.5s-0.1,0.6-0.2,0.9l-3.7,10.7h-0.1l-3.5-10.1c-0.1-0.4-0.3-0.8-0.3-1.3c0-0.4,0.4-0.6,1.4-0.6h1.2V36h-9v1.8h0.4
c0.8,0,1,0.2,1.5,1.4l5.6,14.5h4.2l5.6-14.6c0.4-0.9,0.7-1.2,1.4-1.2h0.5V36h-7.6v1.7H259.9z M239.8,29.8c0,1.5,0.9,2.7,2.6,2.7
c1.7,0,2.6-1.2,2.6-2.7s-0.9-2.7-2.6-2.7C240.8,27.1,239.8,28.3,239.8,29.8 M237.4,37.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8
c0,1.7-0.2,2.3-2,2.3h-1.2v1.8h10.5v-1.8h-0.8c-1.8,0-2-0.6-2-2.3V35.5c-2.3,0.2-5.5,0.4-7.3,0.4L237.4,37.8L237.4,37.8z
M213.2,37.8h1.3c1.4,0,1.6,0.3,1.6,2.7v8.8c0,1.7-0.2,2.3-2,2.3h-1.2v1.8H223v-1.8h-0.5c-1.8,0-2-0.6-2-2.3v-5.9
c0-3.4,1.8-5.3,4.4-5.3c1.9,0,3.2,1.2,3.2,3.7v7.4c0,1.7-0.2,2.3-2,2.3h-0.5v1.8h9.9v-1.8h-0.9c-1.8,0-2-0.6-2-2.3v-8.5
c0-3.9-2.7-5.5-6.3-5.5c-2.9,0-5,1.2-6.2,4.1H220v-4c-1.8,0.2-5,0.4-6.8,0.4V37.8z M204.5,53.4h6.8v-1.8h-0.9c-1.8,0-2-0.6-2-2.3
V35.5c-2.3,0.2-5.5,0.4-7.3,0.4v1.9h1.3c1.4,0,1.6,0.3,1.6,2.7v4.9c0,3.7-1.3,5.6-4.4,5.6c-2,0-3.2-1-3.2-3.2V35.5
c-2.3,0.2-5.5,0.4-7.3,0.4v1.9h1.3c1.4,0,1.6,0.3,1.6,2.7V49c0,3.3,2.2,5,5.7,5c3.6,0,5.9-1.6,6.7-4h0.1L204.5,53.4L204.5,53.4z"/>
</g>
<polygon class="st0" points="150.7,35.7 86.8,114.5 91.9,114.6 155.8,35.7 "/>
<polygon class="st0" points="164.5,35.7 100.6,114.5 105.7,114.6 169.6,35.7 "/>
<g>
<path class="st0" d="M32.5,20.3c-0.5,0.1-1.1,0.3-1.5-0.6c-0.3-0.8,1-2,1.4-2.4c0.6-0.5-0.2-1.1-0.6-0.5c-0.1,0.2-1.1,1.6-1.9,1.6
<path class="st0" d="M46.3,20.3c-0.5,0.1-1.1,0.3-1.5-0.6c-0.3-0.8,1-2,1.4-2.4c0.6-0.5-0.2-1.1-0.6-0.5c-0.1,0.2-1.1,1.6-1.9,1.6
c-1.2,0-1.2-1.5-1.2-1.5s-1.4-0.9-1.4-3.7c0-2.5,1.6-3.7,1.6-3.7s0-1.4,1.1-1.4c1.1,0,1.8,1.6,1.9,1.7c0.6,0.8,1.3,0.1,0.8-0.5
c-1.2-1.4-1.4-2.5-0.1-3.1c0.5-1.1,1.9-1.8,3.4-1.9l0.1,0l0,0c1.5,0.1,2.9,0.9,3.4,1.9c1.3,0.6,1,1.7-0.1,3.1
c-0.5,0.6,0.2,1.3,0.8,0.5c0.1-0.1,0.8-1.6,1.9-1.7c1.1,0,1.1,1.4,1.1,1.4s1.6,1.2,1.6,3.7c0,2.8-1.4,3.7-1.4,3.7s0.1,1.5-1.2,1.5
c-1.2-1.4-1.4-2.5-0.1-3.1c0.5-1.1,1.9-1.8,3.4-1.9h0.1l0,0c1.5,0.1,2.9,0.9,3.4,1.9c1.3,0.6,1,1.7-0.1,3.1
c-0.5,0.6,0.2,1.3,0.8,0.5c0.1-0.1,0.8-1.6,1.9-1.7C57,8.1,57,9.5,57,9.5s1.6,1.2,1.6,3.7c0,2.8-1.4,3.7-1.4,3.7s0.1,1.5-1.2,1.5
c-0.8,0-1.8-1.4-1.9-1.6c-0.4-0.6-1.1,0-0.6,0.5c0.4,0.4,1.7,1.6,1.4,2.4c-0.4,0.8-1,0.6-1.5,0.6c0,0-0.4,0.7-1.1,0.7
c3.2,2.4,8.3,1,8.9-0.7c0,0-0.9,0.2-0.8-0.7c0-0.5,0.6-0.8,1.3-0.9c-0.2-0.3-0.2-0.8-0.2-1.2c0.1-1.3,0.9-2.3,1.9-2.4
c1,0,1.8,0.9,1.7,2.2c0,0.6-0.3,1.2-0.6,1.6c0.7,0.3,1.2,0.6,1.2,1.1c-0.2,1.2-1.2,0.9-1.2,0.9c-0.1,2.6,3.9,3.2,4.9,2.5
@ -75,200 +74,192 @@
s1,0.6,0.8,1.6c-0.3,1.3-1.1,1-1.5,1.8c-13.7-3.5-27.8-3.5-42.5-0.1c-0.4-0.8-1.2-0.5-1.5-1.8c-0.2-1,0.8-1.6,0.8-1.6
s-2.5-6.4-2.7-6.8c-0.2-0.5-0.6-0.5-0.9-1.1c-0.2-0.5,0-1.2-0.2-1.5c-0.2-0.4-0.5-0.5-0.8-1c-0.4-0.7,0-0.8-0.3-1.4
c-0.1-0.2-1-1.7-1.5-2c-1.8-1.1-1.8,1-1.8,1.2c-0.5-0.7-1.3-0.8-1.3-0.8c0.3,1.3-3.2,2.5-3-0.9c0.1-1.5,1-2.6,2.9-2.6
C7.2,8.9,9,10.6,10.3,13l0.4-0.2c0,0-0.7-1.9,0.4-2.5c1.2-0.6,2.5,0.8,2.5,0.8c3.5,1.5,4.4,3.9,3.4,7.5c-0.2,0.6,0.2,1.6-0.7,1.8
c2.7,0.2,4.5,1.9,5.8,4.3l0.4-0.2c0,0-0.7-1.9,0.4-2.5c1.2-0.6,2.5,0.8,2.5,0.8c3.5,1.5,4.4,3.9,3.4,7.5c-0.2,0.6,0.2,1.6-0.7,1.8
c-0.8,0.2-1.2-0.5-1.5-0.8c-0.2-0.2-0.6-0.5-0.8-0.3c-0.2,0.2,0,0.6,0.3,0.8c0.1,0.1,1.1,0.7,1.5,1c0.5,0.4,1.1,0.9,0.7,2.4
c1,0.7,5.1,0.2,4.9-2.5c0,0-1.1,0.3-1.3-0.9c-0.1-0.4,0.4-0.8,1.2-1.1c-0.4-0.4-0.6-1-0.6-1.6c-0.1-1.3,0.7-2.2,1.7-2.2
c1,0,1.9,1.1,1.9,2.4c0,0.4-0.1,0.9-0.2,1.2c0.7,0.1,1.3,0.4,1.3,0.9c0,0.9-0.8,0.7-0.8,0.7c0.7,1.8,5.7,3.1,8.9,0.7
C32.9,21.1,32.5,20.3,32.5,20.3 M33.6,13.8c0,1.3,1.1,2.4,2.4,2.4c1.3,0,2.4-1.1,2.4-2.4c0-1.3-1.1-2.4-2.4-2.4
C34.7,11.4,33.6,12.5,33.6,13.8 M46.7,24c1,0,3,0.4,3,0.4s-0.8-0.9-1.2-1.6c0,0-0.5,0.4-0.7,0.6C47.5,23.6,46.7,24,46.7,24
M36,21.9c-0.4,0.4-1.2,1.2-2,1.5c0,0,1.4,0,2,0H36c0.6,0,2,0,2,0C37.2,23.1,36.4,22.4,36,21.9 M25.3,24c0,0-0.8-0.4-1-0.6
c-0.3-0.2-0.7-0.6-0.7-0.6c-0.4,0.6-1.2,1.6-1.2,1.6S24.3,24,25.3,24 M56.6,30.4c0.7,0.2,1.6,0.8,1.3,1.8c-0.3,0.9-1.4,1-2,0.9
c-0.7-0.2-1.6-0.8-1.3-1.8C54.8,30.3,56,30.2,56.6,30.4 M48,30.1l-2,1.7l-1.7-2l2-1.7L48,30.1z M16.3,33c-0.7,0.2-1.8,0.1-2-0.9
c-0.3-0.9,0.7-1.6,1.3-1.8c0.7-0.2,1.8-0.1,2,0.9C17.9,32.2,17,32.9,16.3,33 M34,29.5c0-0.8,0.9-1.4,2.1-1.4c1.1,0,2.1,0.6,2.1,1.4
c0,0.8-0.9,1.4-2.1,1.4C35,30.9,34,30.3,34,29.5 M24.2,30.1l1.7-2l2,1.7l-1.7,2L24.2,30.1z M7.1,90.3c0.2-0.9,1.2-0.7,1.2-0.7
S8.1,88.8,9,88.4C9.9,88,10.4,89,10.4,89l0.4,2.7l-2.9-0.1C7.9,91.6,6.9,91.4,7.1,90.3 M11.2,85.9c0.2-0.9,1.2-0.7,1.2-0.7
S12.2,84.4,13,84c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7L12,87.2C12,87.2,10.9,86.9,11.2,85.9 M15.3,81.5c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7L16,82.7C16,82.7,15,82.5,15.3,81.5 M36,40.3c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C36.8,41.6,35.8,41.3,36,40.3 M40,55.5c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C40.7,56.8,39.7,56.5,40,55.5 M44.7,50.4c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C45.5,51.7,44.5,51.4,44.7,50.4 M49.5,45.4c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C50.3,46.7,49.2,46.4,49.5,45.4 M54.3,40.4c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7L55,41.6C55,41.6,54,41.4,54.3,40.4 M4.5,74.3c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2C7.2,71.9,7.7,73,7.7,73l0.4,2.7l-2.9-0.1C5.2,75.5,4.2,75.3,4.5,74.3 M15.5,101.2c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C16.3,102.5,15.2,102.2,15.5,101.2 M20.2,96.1c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7L21,97.4C21,97.4,20,97.1,20.2,96.1 M24.9,91c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C25.7,92.3,24.7,92,24.9,91 M29.6,85.9c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C30.4,87.2,29.4,86.9,29.6,85.9 M50.3,64.1c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C51.1,65.4,50.1,65.1,50.3,64.1 M54.6,59.5c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C55.3,60.8,54.3,60.5,54.6,59.5 M58.8,54.9C59,54,60,54.2,60,54.2
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C59.6,56.2,58.6,55.9,58.8,54.9 M63.1,50.2c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C63.8,51.5,62.8,51.3,63.1,50.2 M30.1,105.8c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C30.9,107,29.9,106.8,30.1,105.8 M63.1,69.3c0.2-0.9,1.2-0.7,1.2-0.7
s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C63.8,70.6,62.8,70.3,63.1,69.3 M31.2,73c0-0.1,0.2-0.1,0.7-0.2
c0.4-0.1,0.8-0.2,0.8-0.1c0,0.2-0.3,0-0.3,0.4v3.3c0,0.2,0.2,0,0.2,0.2c0,0.2-0.4,0.1-0.7,0.1c-0.3,0-0.7,0.1-0.7-0.1
c0-0.2,0.3,0,0.3-0.2v-3.2C31.5,72.9,31.2,73.2,31.2,73 M27.6,74.4c0-0.1,0.1-0.1,0.3-0.2c0.2-0.1,0.3-0.2,0.5-0.1
c0.2,0.2,1.2,1.4,1.2,1.4v-1.7c0-0.2-0.3,0.1-0.3-0.1c0-0.1,0.1-0.1,0.4-0.2c0.2-0.1,0.6-0.4,0.6-0.2c0,0.2-0.2,0.1-0.2,0.4v3.3
s1.9,1.1,1.9,2.4c0,0.4-0.1,0.9-0.2,1.2c0.7,0.1,1.3,0.4,1.3,0.9c0,0.9-0.8,0.7-0.8,0.7c0.7,1.8,5.7,3.1,8.9,0.7
C46.7,21.1,46.3,20.3,46.3,20.3 M47.4,13.8c0,1.3,1.1,2.4,2.4,2.4c1.3,0,2.4-1.1,2.4-2.4s-1.1-2.4-2.4-2.4
C48.5,11.4,47.4,12.5,47.4,13.8 M60.5,24c1,0,3,0.4,3,0.4s-0.8-0.9-1.2-1.6c0,0-0.5,0.4-0.7,0.6C61.3,23.6,60.5,24,60.5,24
M49.8,21.9c-0.4,0.4-1.2,1.2-2,1.5c0,0,1.4,0,2,0l0,0c0.6,0,2,0,2,0C51,23.1,50.2,22.4,49.8,21.9 M39.1,24c0,0-0.8-0.4-1-0.6
c-0.3-0.2-0.7-0.6-0.7-0.6c-0.4,0.6-1.2,1.6-1.2,1.6S38.1,24,39.1,24 M70.4,30.4c0.7,0.2,1.6,0.8,1.3,1.8c-0.3,0.9-1.4,1-2,0.9
c-0.7-0.2-1.6-0.8-1.3-1.8C68.6,30.3,69.8,30.2,70.4,30.4 M61.8,30.1l-2,1.7l-1.7-2l2-1.7L61.8,30.1z M30.1,33
c-0.7,0.2-1.8,0.1-2-0.9c-0.3-0.9,0.7-1.6,1.3-1.8c0.7-0.2,1.8-0.1,2,0.9C31.7,32.2,30.8,32.9,30.1,33 M47.8,29.5
c0-0.8,0.9-1.4,2.1-1.4c1.1,0,2.1,0.6,2.1,1.4s-0.9,1.4-2.1,1.4C48.8,30.9,47.8,30.3,47.8,29.5 M38,30.1l1.7-2l2,1.7l-1.7,2
L38,30.1z M20.9,90.3c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.7-1.2s1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C21.7,91.6,20.7,91.4,20.9,90.3
M25,85.9c0.2-0.9,1.2-0.7,1.2-0.7S26,84.4,26.8,84c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.8-0.1C25.8,87.2,24.7,86.9,25,85.9
M29.1,81.5c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.2C29.8,82.7,28.8,82.5,29.1,81.5
M49.8,40.3c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2C52.5,38,53,39,53,39l0.4,2.7l-2.9-0.1C50.6,41.6,49.6,41.3,49.8,40.3
M53.8,55.5c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C54.5,56.8,53.5,56.5,53.8,55.5
M58.5,50.4c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C59.3,51.7,58.3,51.4,58.5,50.4
M63.3,45.4c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7L64,46.7C64.1,46.7,63,46.4,63.3,45.4
M68.1,40.4c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.2C68.8,41.6,67.8,41.4,68.1,40.4
M18.3,74.3c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.5,1.4,0.6,1.4,0.6l0.4,2.7L19,75.6C19,75.5,18,75.3,18.3,74.3
M29.3,101.2c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C30.1,102.5,29,102.2,29.3,101.2
M34,96.1c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.8-0.1C34.8,97.4,33.8,97.1,34,96.1
M38.7,91c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C39.5,92.3,38.5,92,38.7,91
M43.4,85.9c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C44.2,87.2,43.2,86.9,43.4,85.9
M64.1,64.1c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C64.9,65.4,63.9,65.1,64.1,64.1
M68.4,59.5c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C69.1,60.8,68.1,60.5,68.4,59.5
M72.6,54.9c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C73.4,56.2,72.4,55.9,72.6,54.9
M76.9,50.2c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C77.6,51.5,76.6,51.3,76.9,50.2
M43.9,105.8c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C44.7,107,43.7,106.8,43.9,105.8
M76.9,69.3c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2c0.9-0.4,1.4,0.6,1.4,0.6l0.4,2.7l-2.9-0.1C77.6,70.6,76.6,70.3,76.9,69.3
M45,73c0-0.1,0.2-0.1,0.7-0.2c0.4-0.1,0.8-0.2,0.8-0.1c0,0.2-0.3,0-0.3,0.4v3.3c0,0.2,0.2,0,0.2,0.2s-0.4,0.1-0.7,0.1
S45,76.8,45,76.6s0.3,0,0.3-0.2v-3.2C45.3,72.9,45,73.2,45,73 M41.4,74.4c0-0.1,0.1-0.1,0.3-0.2c0.2-0.1,0.3-0.2,0.5-0.1
c0.2,0.2,1.2,1.4,1.2,1.4v-1.7c0-0.2-0.3,0.1-0.3-0.1c0-0.1,0.1-0.1,0.4-0.2c0.2-0.1,0.6-0.4,0.6-0.2c0,0.2-0.2,0.1-0.2,0.4V77
c0,0.3,0,0.3-0.1,0.3c-0.1,0-1.7-2.1-1.7-2.1v2.2c0,0.2,0.4-0.1,0.4,0.1c0,0.1-0.2,0.2-0.5,0.3c-0.2,0.1-0.6,0.3-0.6,0.1
c0-0.2,0.3-0.1,0.3-0.3v-2.9C27.8,74.4,27.6,74.6,27.6,74.4 M26.3,76.4c0-1.4-0.9-0.9-0.9-0.9v2.8C25.4,78.4,26.3,78.4,26.3,76.4
M24.2,75.9c0-0.1,0.4-0.3,0.7-0.4c0.5-0.2,2.2-1.1,2.2,1c0,1.9-1.3,2.2-1.7,2.4c-0.4,0.2-1,0.5-1,0.4c-0.1-0.1,0.2-0.2,0.2-0.5
v-2.3C24.6,75.8,24.2,76.1,24.2,75.9 M30,67.4c0-0.1,0.3-0.1,0.5-0.2c0.3-0.1,0.5-0.1,0.6,0c0.1,0.1,0.7,1.1,0.7,1.1
s0.8-1.1,0.8-1.2c0.1-0.1,0.1-0.2,0.4-0.2c0.4,0,0.5,0,0.5,0c0,0.1-0.2,0.1-0.2,0.4c0,0.2,0,2.9,0,3c0,0.3,0.2,0.2,0.2,0.3
c0,0.1-0.2,0.1-0.7,0.1c-0.4,0-0.7,0.1-0.7,0c0-0.2,0.2,0,0.2-0.3v-2c0,0-0.8,1.1-0.8,1.1c0,0-1-1.4-1-1.4v2.4
c0,0.4,0.4,0.2,0.4,0.3c0,0.1-0.3,0.1-0.5,0.2c-0.2,0.1-0.5,0.2-0.5,0.1c-0.1-0.2,0.3-0.1,0.3-0.5c0-0.4,0-2.6,0-2.8
C30.3,67.4,30,67.6,30,67.4 M28.9,67.9c0.1-0.1,0.5-0.2,0.5-0.2c0.1,0.1-0.1,0.1-0.3,0.7c-0.1,0.2-0.7,3.6-0.9,3.7
c-0.1,0-1.2-2.7-1.3-2.9c-0.2-0.4-0.4-0.1-0.4-0.3c0-0.1,0.3-0.2,0.5-0.3c0.1-0.1,0.6-0.4,0.7-0.3c0.1,0.1-0.3,0.1-0.1,0.5
c0.1,0.3,0.7,1.6,0.7,1.6s0.4-1.5,0.5-2c0.1-0.5-0.3-0.3-0.3-0.4C28.5,68,28.7,67.9,28.9,67.9L28.9,67.9z M24.7,71.4v1.8
c0,0,1-0.2,1-1.4C25.7,70.9,24.7,71.4,24.7,71.4 M24.7,69.8V71c0,0,0.7-0.3,0.7-0.9C25.4,69.4,24.7,69.8,24.7,69.8 M24.8,69.5
c0.4-0.2,1.5-0.4,1.5,0.5c0,0.7-0.4,0.8-0.4,0.8s0.8,0.1,0.8,0.8c0,0.7-0.4,1.2-0.8,1.5c-0.2,0.1-1.5,0.7-1.6,0.8
c-0.1,0.1-0.4,0.2-0.4,0.2c-0.1-0.2,0.2-0.1,0.2-0.6v-3c0-0.6-0.3-0.4-0.3-0.5C23.7,69.8,24.4,69.6,24.8,69.5 M31.4,61.1v1.5
c0,0,0.7,0,0.7-0.9C32.1,60.8,31.4,61.1,31.4,61.1 M33.3,64.5c0.2,0,0.3-0.1,0.3-0.1s-0.1,0.5-0.6,0.5c-0.8,0-0.7-1.3-1-1.7
c-0.2-0.4-0.6-0.2-0.6-0.2v1.3c0,0.4,0.3,0.2,0.3,0.4c0,0.1-0.2,0.1-0.2,0.1s-0.6,0.2-0.8,0.2c-0.2,0-0.3,0.1-0.3,0
c0-0.2,0.2-0.1,0.2-0.5v-2.8c0-0.5-0.3-0.4-0.3-0.5c0-0.1,0.2-0.1,0.4-0.2c0.4-0.1,0.5-0.2,1-0.3c0.5-0.1,1.4,0.1,1.4,0.8
c0,0.8-0.4,0.9-0.7,1.1C33.3,63.2,32.9,64.4,33.3,64.5 M27.5,62.5c0.4-0.1,1-0.4,1.7-0.8c0.1-0.1,0.4-0.2,0.5,0
c0.1,0.3,0.2,0.6,0.2,0.6c-0.1,0.1-0.2,0-0.4-0.1c-0.1-0.1-0.3-0.2-0.5-0.1c-0.2,0-0.4,0.1-0.4,0.1l0,1.2c0,0,0.4,0,0.5-0.2
c0-0.2,0.1-0.4,0.2-0.5c0.1,0,0.1,0.2,0.1,0.6c0,0.1,0,0.2,0,0.2c0,0.4,0,0.6-0.1,0.6c-0.1,0-0.2-0.3-0.2-0.4c0-0.1-0.5,0-0.5,0.1
v1.7c0,0,0.3-0.2,0.5-0.3c0.2-0.1,0.5-0.5,0.6-0.7c0.1-0.2,0.2-0.4,0.3-0.4c0.1,0-0.1,0.7-0.1,0.7s0,0.3-0.2,0.4
c-0.2,0.1-1.6,0.7-1.7,0.8c-0.2,0.1-0.5,0.3-0.5,0.2c0-0.2,0.2-0.1,0.2-0.6l0-2.8c0,0,0-0.2-0.2-0.3C27.3,62.7,27.2,62.6,27.5,62.5
M24.4,63.8c0.2-0.1,0.7-0.3,0.8-0.2c0.1,0.2-0.3,0.1-0.2,0.5c0.1,0.3,0.7,1.8,0.7,1.8l0.5-2.1c0.1-0.5-0.3-0.3-0.3-0.4
c0-0.1,0.3-0.2,0.4-0.2c0.1-0.1,0.6-0.3,0.6-0.2c0.1,0.2-0.2,0.2-0.3,0.6c-0.1,0.5-1,3.8-1.2,4c-0.1,0.1-1.3-2.8-1.4-3
c-0.1-0.2-0.4-0.1-0.4-0.3C23.7,64,24.2,63.9,24.4,63.8 M39.4,73.1c0-0.1,0.1-0.1,0.3,0c0.2,0.1,0.4,0.1,0.6,0.4
c0.2,0.3,1.4,2.4,1.4,2.4l0-1.9c0-0.3-0.2-0.3-0.2-0.4c0-0.1,0.2,0,0.4,0.1c0.2,0.1,0.4,0.1,0.4,0.2c0,0.1-0.2,0-0.2,0.2v3.6
c0,0,0,0.2-0.1,0c-0.1-0.1-2-3.1-2-3.1s0,1.9,0,2.1c0,0.2,0.2,0.2,0.2,0.3c0,0.1-0.3,0.1-0.4,0c-0.2,0-0.4,0-0.4-0.2
c0-0.1,0.2,0.1,0.2-0.3v-3.1C39.7,73.2,39.4,73.2,39.4,73.1 M41.2,67.5c0-0.1,0.6,0.1,1.1,0.2c0.5,0.1,1.4,0.3,1.4,0.6
c0,0.4,0.1,0.7,0,0.7c-0.1,0-0.2-0.4-0.4-0.6c-0.2-0.2-0.7-0.3-0.8-0.3c-0.1,0-0.1,0-0.1,0.1v1.1c0,0,0.3,0.1,0.5,0.1
C43,69.3,43,69,43.1,69c0.1,0,0.1,0.2,0,0.6c0,0.4,0,0.7-0.1,0.7c-0.1,0-0.1-0.4-0.3-0.6c-0.2-0.2-0.4-0.2-0.4-0.2v1.8
c0-0.2,0.3-0.1,0.3-0.3v-2.9C41.6,74.4,41.4,74.6,41.4,74.4 M40.1,76.4c0-1.4-0.9-0.9-0.9-0.9v2.8C39.2,78.4,40.1,78.4,40.1,76.4
M38,75.9c0-0.1,0.4-0.3,0.7-0.4c0.5-0.2,2.2-1.1,2.2,1c0,1.9-1.3,2.2-1.7,2.4c-0.4,0.2-1,0.5-1,0.4c-0.1-0.1,0.2-0.2,0.2-0.5v-2.3
C38.4,75.8,38,76.1,38,75.9 M43.8,67.4c0-0.1,0.3-0.1,0.5-0.2c0.3-0.1,0.5-0.1,0.6,0c0.1,0.1,0.7,1.1,0.7,1.1s0.8-1.1,0.8-1.2
c0.1-0.1,0.1-0.2,0.4-0.2c0.4,0,0.5,0,0.5,0c0,0.1-0.2,0.1-0.2,0.4c0,0.2,0,2.9,0,3c0,0.3,0.2,0.2,0.2,0.3c0,0.1-0.2,0.1-0.7,0.1
c-0.4,0-0.7,0.1-0.7,0c0-0.2,0.2,0,0.2-0.3v-2l-0.8,1.1l-1-1.4v2.4c0,0.4,0.4,0.2,0.4,0.3c0,0.1-0.3,0.1-0.5,0.2s-0.5,0.2-0.5,0.1
C43.6,70.9,44,71,44,70.6s0-2.6,0-2.8C44.1,67.4,43.8,67.6,43.8,67.4 M42.7,67.9c0.1-0.1,0.5-0.2,0.5-0.2c0.1,0.1-0.1,0.1-0.3,0.7
c-0.1,0.2-0.7,3.6-0.9,3.7c-0.1,0-1.2-2.7-1.3-2.9c-0.2-0.4-0.4-0.1-0.4-0.3c0-0.1,0.3-0.2,0.5-0.3c0.1-0.1,0.6-0.4,0.7-0.3
c0.1,0.1-0.3,0.1-0.1,0.5c0.1,0.3,0.7,1.6,0.7,1.6s0.4-1.5,0.5-2c0.1-0.5-0.3-0.3-0.3-0.4C42.3,68,42.5,67.9,42.7,67.9L42.7,67.9z
M38.5,71.4v1.8c0,0,1-0.2,1-1.4C39.5,70.9,38.5,71.4,38.5,71.4 M38.5,69.8V71c0,0,0.7-0.3,0.7-0.9C39.2,69.4,38.5,69.8,38.5,69.8
M38.6,69.5c0.4-0.2,1.5-0.4,1.5,0.5c0,0.7-0.4,0.8-0.4,0.8s0.8,0.1,0.8,0.8c0,0.7-0.4,1.2-0.8,1.5c-0.2,0.1-1.5,0.7-1.6,0.8
c-0.1,0.1-0.4,0.2-0.4,0.2c-0.1-0.2,0.2-0.1,0.2-0.6v-3c0-0.6-0.3-0.4-0.3-0.5C37.5,69.8,38.2,69.6,38.6,69.5 M45.2,61.1v1.5
c0,0,0.7,0,0.7-0.9C45.9,60.8,45.2,61.1,45.2,61.1 M47.1,64.5c0.2,0,0.3-0.1,0.3-0.1s-0.1,0.5-0.6,0.5c-0.8,0-0.7-1.3-1-1.7
c-0.2-0.4-0.6-0.2-0.6-0.2v1.3c0,0.4,0.3,0.2,0.3,0.4c0,0.1-0.2,0.1-0.2,0.1S44.7,65,44.5,65s-0.3,0.1-0.3,0c0-0.2,0.2-0.1,0.2-0.5
v-2.8c0-0.5-0.3-0.4-0.3-0.5s0.2-0.1,0.4-0.2c0.4-0.1,0.5-0.2,1-0.3s1.4,0.1,1.4,0.8c0,0.8-0.4,0.9-0.7,1.1
C47.1,63.2,46.7,64.4,47.1,64.5 M41.3,62.5c0.4-0.1,1-0.4,1.7-0.8c0.1-0.1,0.4-0.2,0.5,0c0.1,0.3,0.2,0.6,0.2,0.6
c-0.1,0.1-0.2,0-0.4-0.1c-0.1-0.1-0.3-0.2-0.5-0.1c-0.2,0-0.4,0.1-0.4,0.1v1.2c0,0,0.4,0,0.5-0.2c0-0.2,0.1-0.4,0.2-0.5
c0.1,0,0.1,0.2,0.1,0.6c0,0.1,0,0.2,0,0.2c0,0.4,0,0.6-0.1,0.6c-0.1,0-0.2-0.3-0.2-0.4c0-0.1-0.5,0-0.5,0.1v1.7
c0,0,0.3-0.2,0.5-0.3c0.2-0.1,0.5-0.5,0.6-0.7c0.1-0.2,0.2-0.4,0.3-0.4c0.1,0-0.1,0.7-0.1,0.7s0,0.3-0.2,0.4s-1.6,0.7-1.7,0.8
c-0.2,0.1-0.5,0.3-0.5,0.2c0-0.2,0.2-0.1,0.2-0.6v-2.8C41.5,62.8,41.5,62.6,41.3,62.5C41.1,62.7,41,62.6,41.3,62.5 M38.2,63.8
c0.2-0.1,0.7-0.3,0.8-0.2c0.1,0.2-0.3,0.1-0.2,0.5c0.1,0.3,0.7,1.8,0.7,1.8l0.5-2.1c0.1-0.5-0.3-0.3-0.3-0.4c0-0.1,0.3-0.2,0.4-0.2
c0.1-0.1,0.6-0.3,0.6-0.2c0.1,0.2-0.2,0.2-0.3,0.6c-0.1,0.5-1,3.8-1.2,4c-0.1,0.1-1.3-2.8-1.4-3c-0.1-0.2-0.4-0.1-0.4-0.3
C37.5,64,38,63.9,38.2,63.8 M53.2,73.1c0-0.1,0.1-0.1,0.3,0s0.4,0.1,0.6,0.4c0.2,0.3,1.4,2.4,1.4,2.4V74c0-0.3-0.2-0.3-0.2-0.4
s0.2,0,0.4,0.1s0.4,0.1,0.4,0.2s-0.2,0-0.2,0.2v3.6c0,0,0,0.2-0.1,0c-0.1-0.1-2-3.1-2-3.1s0,1.9,0,2.1S54,76.9,54,77
c0,0.1-0.3,0.1-0.4,0c-0.2,0-0.4,0-0.4-0.2c0-0.1,0.2,0.1,0.2-0.3v-3.1C53.5,73.2,53.2,73.2,53.2,73.1 M55,67.5
c0-0.1,0.6,0.1,1.1,0.2s1.4,0.3,1.4,0.6c0,0.4,0.1,0.7,0,0.7s-0.2-0.4-0.4-0.6s-0.7-0.3-0.8-0.3s-0.1,0-0.1,0.1v1.1
c0,0,0.3,0.1,0.5,0.1c0.1-0.1,0.1-0.4,0.2-0.4s0.1,0.2,0,0.6c0,0.4,0,0.7-0.1,0.7s-0.1-0.4-0.3-0.6s-0.4-0.2-0.4-0.2v1.8
c0,0,0.2,0.2,0.7,0.1c0.5-0.2,0.8-0.5,0.9-0.4c0.1,0.1,0,0.2-0.2,0.5c-0.2,0.4-0.3,0.6-0.6,0.5c-0.2-0.1-0.7-0.3-1.1-0.4
c-0.3-0.1-1-0.3-1-0.4c0-0.1,0.3,0.1,0.3-0.3v-3.2C41.5,67.6,41.2,67.6,41.2,67.5 M40.4,66.9c0.2,0,0.1,0.6,0.2,0.8
c0,0.4,0.2,0.7,0,0.7c-0.2,0-0.4-0.6-0.7-0.9c-0.3-0.3-1.3-0.8-1.3,1.3c0,1.8,0.8,1.8,1.2,1.6c0.4-0.1,0.6-0.5,0.6-0.4
c0.1,0-0.4,0.9-1.2,1c-0.9,0.1-1.7-0.8-1.7-2.1c0-1.4,0.7-2.2,1.5-2.2c0.7,0,0.9,0.5,1.2,0.5C40.4,67.3,40.2,66.9,40.4,66.9
M42.7,62.1c0-0.2,0.3,0,0.8,0.2c0.5,0.2,0.9,0.3,0.8,0.4c0,0.1-0.4-0.1-0.3,0.2c0,0.2,0.6,2.1,0.6,2.1s0.6-1.5,0.7-1.6
c0-0.2-0.2-0.2-0.2-0.3c0-0.1,0.2,0,0.4,0.1c0.2,0.1,0.4,0.2,0.4,0.3c0,0.1-0.2-0.1-0.3,0c-0.1,0.2-1.4,3.1-1.4,3.1l-1.3-4.2
C42.8,62.2,42.7,62.2,42.7,62.1 M39.7,61c0-0.1,0.2,0,0.2,0l1.2,0.4c0,0,0.2,0.1,0.2,0.2c0,0.1-0.4-0.1-0.4,0.2V65
c0,0,0.1,0.2,0.5,0.1c0.4-0.2,1-0.5,1-0.5s0.3-0.1,0.2,0.1c-0.1,0.2-0.3,0.8-0.3,0.8s-0.1,0.2-0.4,0.2c-0.3-0.1-1.1-0.3-1.3-0.3
c-0.2-0.1-0.8-0.2-0.8-0.2s-0.1,0-0.1-0.1c0-0.1,0.4,0,0.4-0.3v-3.2C40,61.1,39.7,61.1,39.7,61 M44.2,72.5c0-0.2,0.3,0.1,0.3-0.3
v-3.1c0-0.4-0.2-0.4-0.2-0.5c0-0.2,0.3,0.1,0.4,0.1c0.1,0,1,0.5,1.1,0.5c0.1,0,1.1,0.4,1.1,1.5c0,0.7-0.6,0.6-0.6,0.6
s0.6,0.4,0.6,0.9c0,0.5,0.1,1,0.1,1.1c0,0.1,0.1,0.4,0.4,0.1c0,0,0,0.6-0.7,0.4c-0.5-0.2-0.6-0.6-0.6-0.9c0-0.3-0.2-1.7-0.8-1.7
v1.4c0,0.4,0.2,0.3,0.2,0.5c0,0.1-0.3-0.1-0.6-0.2C44.5,72.7,44.2,72.6,44.2,72.5 M45.3,69.3v1.5c0.1,0,0.8,0.5,0.8-0.4
C46.1,69.4,45.3,69.3,45.3,69.3 M43.7,74.8c0.1-0.2-0.1-0.3-0.1-0.4c0-0.1,0.3,0.1,0.5,0.2c0.2,0.1,0.5,0.2,0.5,0.4
c0.1,0.2,1,3.4,1.1,3.7c0.1,0.3,0.3,0.2,0.2,0.4c0,0.1-0.3-0.1-0.8-0.3c-0.5-0.2-0.7-0.2-0.7-0.3c0-0.1,0.5,0.1,0.3-0.2
c-0.1-0.2-0.2-0.8-0.2-0.8l-1.3-0.4l-0.2,0.6c-0.1,0.3,0.2,0.3,0.1,0.4c0,0.1-0.2,0-0.4-0.1c-0.2-0.1-0.3-0.1-0.3-0.2
c0-0.1,0.2,0,0.3-0.2C42.9,77.4,43.7,75,43.7,74.8 M43.9,75.2l-0.4,1.4l1,0.3L43.9,75.2z M69.1,35.8v41.7
c0.5,24.9-19.9,33.8-33.4,33.8c-13.5,0-33.8-8.8-33.4-33.8V35.8h12.4c-0.1-0.8,0.1-1.3,0.2-1.3c17-3.4,25.2-3.6,42.2,0
c0.4,0.4,0.4,0.9,0.4,1.3H69.1z M8.5,96.3l13-13.9v-4.1l-1.5,0c0,0-1-0.3-0.8-1.3c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2
c0.2-0.1,0.3-0.1,0.4-0.1l0-2.7L5.3,89.6C6.1,92.1,7.2,94.3,8.5,96.3 M24.7,60.8c0.2-0.1,0.4-0.2,0.5-0.3c0.6-0.3,1.8-0.9,3-1.4
c1.2-0.5,2.6-1,3.8-1c1.1,0,2.1,0.3,2.7,0.7c0.3,0.2,0.6,0.3,0.7,0.5l0.1,0.1c0,0,0-0.1,0.1-0.1c0.1-0.2,0.3-0.3,0.6-0.5
c0.6-0.4,1.4-0.6,2.7-0.6c1.4,0,2.9,0.5,4.1,1.1l0.3,0.1L64.2,37h-9.5L36.2,56.7v-9.5L45.8,37H3.5v40.5c0,1.5,0,3,0.1,4.4l9.1-9.7
h8.8v-7.7c-0.2,0.2-0.4,0.2-0.4,0.2s0.2-0.7-0.4-0.8c0,0-0.1,0-0.2,0c-0.3,0-0.5,0.2-0.7,0.3c-0.3,0.3-1.3,1.4-1.5,1.6
c-0.2-0.2-1.1-1.3-1.5-1.6c-0.2-0.2-0.4-0.3-0.7-0.3c-0.1,0-0.1,0-0.2,0c-0.6,0.1-0.4,0.8-0.4,0.8s-0.6,0.1-0.6-0.7
c0-0.6,0.5-0.9,0.9-1.1c0.6-0.1,1.3-0.2,1.4-1.2c0-0.2,0-0.3,0-0.3s-0.2,0.3-0.8,0.6c-0.7,0.3-2.4,0.3-2.4,1.3
c0,0.4,0.4,0.4,0.4,0.4s0,0.2-0.3,0.2c-0.1,0-0.1,0-0.2,0c-0.4-0.1-0.5-0.5-0.5-1c0-0.3-0.2-0.8-0.6-0.7c-0.1,0-0.2,0-0.3,0.1
c-0.3,0.2-0.2,0.5-0.2,0.5s-0.4-0.2-0.3-0.7c0.1-0.4,0.3-0.6,0.7-0.7c0,0,0.1,0,0.1,0c0.5-0.1,0.8,0.1,0.8,0.1s-0.1-0.3-0.1-0.7
c0-0.3,0.2-0.6,0.6-0.7c0.7-0.1,0.8,0.3,0.7,0.6c0,0-0.2-0.2-0.3-0.1c0,0-0.1,0-0.1,0c-0.1,0.1-0.2,0.1-0.2,0.2
c-0.1,0.3,0.1,0.6,0.1,0.7c0.1,0.2,0.5,0.3,1.1,0.2c0.6-0.1,1-0.5,1.2-0.9c0.1-0.2,0.2-0.3,0.1-0.5l0.3-3.6c0,0,0.1-0.9-0.5-1
c-0.1,0-0.1,0-0.2,0c-0.5,0.1-1.1,0.8-0.9,1.7c0.1,0.7-0.2,1.2-0.5,1.3c-0.4,0.1-0.7,0-0.8-0.3c0.7,0,0.7-0.6,0.5-0.9
c-0.1-0.1-0.2-0.1-0.4-0.1c-0.7,0.1-1.8,1.1-2,1.6c-0.2,0.5,0.2,0.4,0.4,0.8c0.1,0.3-0.2,0.6-0.2,0.6c0,0.1,0,0.2,0,0.3
c-0.1,0.3-0.2,0.4-0.4,0.4c-0.1,0-0.2,0-0.3,0c0.2-0.1,0.2-0.3,0.3-0.4c0-0.1,0-0.2,0-0.2s-0.2,0-0.4-0.3c-0.2-0.3,0-0.4-0.2-0.8
c-0.2-0.4-0.9-0.7-1.4-0.8c0,0-0.1,0-0.1,0c-0.1,0-0.2,0.1-0.3,0.1c0,0-0.1,0-0.1,0c-0.4,0-0.3-0.2-0.6-0.2c-0.2,0-0.3,0.2-0.2,0.4
c0,0,0,0.1,0,0.1c-0.2-0.1-0.3-0.3-0.3-0.5c0-0.5,0.3-0.9,0.6-0.9c0.4,0,0.5,0.2,0.6,0.2c0.2-0.9-0.5-0.6-0.8-1
c-0.3-0.1-1-0.3-1-0.4s0.3,0.1,0.3-0.3v-3.2C55.3,67.6,55,67.6,55,67.5 M54.2,66.9c0.2,0,0.1,0.6,0.2,0.8c0,0.4,0.2,0.7,0,0.7
s-0.4-0.6-0.7-0.9s-1.3-0.8-1.3,1.3c0,1.8,0.8,1.8,1.2,1.6c0.4-0.1,0.6-0.5,0.6-0.4c0.1,0-0.4,0.9-1.2,1c-0.9,0.1-1.7-0.8-1.7-2.1
c0-1.4,0.7-2.2,1.5-2.2c0.7,0,0.9,0.5,1.2,0.5C54.2,67.3,54,66.9,54.2,66.9 M56.5,62.1c0-0.2,0.3,0,0.8,0.2s0.9,0.3,0.8,0.4
c0,0.1-0.4-0.1-0.3,0.2c0,0.2,0.6,2.1,0.6,2.1s0.6-1.5,0.7-1.6c0-0.2-0.2-0.2-0.2-0.3s0.2,0,0.4,0.1s0.4,0.2,0.4,0.3
s-0.2-0.1-0.3,0c-0.1,0.2-1.4,3.1-1.4,3.1l-1.3-4.2C56.6,62.2,56.5,62.2,56.5,62.1 M53.5,61c0-0.1,0.2,0,0.2,0l1.2,0.4
c0,0,0.2,0.1,0.2,0.2c0,0.1-0.4-0.1-0.4,0.2V65c0,0,0.1,0.2,0.5,0.1c0.4-0.2,1-0.5,1-0.5s0.3-0.1,0.2,0.1s-0.3,0.8-0.3,0.8
s-0.1,0.2-0.4,0.2c-0.3-0.1-1.1-0.3-1.3-0.3c-0.2-0.1-0.8-0.2-0.8-0.2s-0.1,0-0.1-0.1s0.4,0,0.4-0.3v-3.2
C53.8,61.1,53.5,61.1,53.5,61 M58,72.5c0-0.2,0.3,0.1,0.3-0.3v-3.1c0-0.4-0.2-0.4-0.2-0.5c0-0.2,0.3,0.1,0.4,0.1
c0.1,0,1,0.5,1.1,0.5s1.1,0.4,1.1,1.5c0,0.7-0.6,0.6-0.6,0.6s0.6,0.4,0.6,0.9s0.1,1,0.1,1.1s0.1,0.4,0.4,0.1c0,0,0,0.6-0.7,0.4
c-0.5-0.2-0.6-0.6-0.6-0.9s-0.2-1.7-0.8-1.7v1.4c0,0.4,0.2,0.3,0.2,0.5c0,0.1-0.3-0.1-0.6-0.2C58.3,72.7,58,72.6,58,72.5
M59.1,69.3v1.5c0.1,0,0.8,0.5,0.8-0.4C59.9,69.4,59.1,69.3,59.1,69.3 M57.5,74.8c0.1-0.2-0.1-0.3-0.1-0.4s0.3,0.1,0.5,0.2
s0.5,0.2,0.5,0.4c0.1,0.2,1,3.4,1.1,3.7c0.1,0.3,0.3,0.2,0.2,0.4c0,0.1-0.3-0.1-0.8-0.3c-0.5-0.2-0.7-0.2-0.7-0.3
c0-0.1,0.5,0.1,0.3-0.2c-0.1-0.2-0.2-0.8-0.2-0.8L57,77.1l-0.2,0.6C56.7,78,57,78,56.9,78.1c0,0.1-0.2,0-0.4-0.1s-0.3-0.1-0.3-0.2
s0.2,0,0.3-0.2C56.7,77.4,57.5,75,57.5,74.8 M57.7,75.2l-0.4,1.4l1,0.3L57.7,75.2z M82.9,35.8v41.7c0.5,24.9-19.9,33.8-33.4,33.8
s-33.8-8.8-33.4-33.8V35.8h12.4c-0.1-0.8,0.1-1.3,0.2-1.3c17-3.4,25.2-3.6,42.2,0c0.4,0.4,0.4,0.9,0.4,1.3H82.9z M22.3,96.3
l13-13.9v-4.1h-1.5c0,0-1-0.3-0.8-1.3c0.2-0.9,1.2-0.7,1.2-0.7s-0.2-0.8,0.6-1.2C35,75,35.1,75,35.2,75v-2.7L19.1,89.6
C19.9,92.1,21,94.3,22.3,96.3 M38.5,60.8c0.2-0.1,0.4-0.2,0.5-0.3c0.6-0.3,1.8-0.9,3-1.4s2.6-1,3.8-1c1.1,0,2.1,0.3,2.7,0.7
c0.3,0.2,0.6,0.3,0.7,0.5l0.1,0.1c0,0,0-0.1,0.1-0.1c0.1-0.2,0.3-0.3,0.6-0.5c0.6-0.4,1.4-0.6,2.7-0.6c1.4,0,2.9,0.5,4.1,1.1
l0.3,0.1L78,37h-9.5L50,56.7v-9.5L59.6,37H17.3v40.5c0,1.5,0,3,0.1,4.4l9.1-9.7h8.8v-7.7c-0.2,0.2-0.4,0.2-0.4,0.2s0.2-0.7-0.4-0.8
c0,0-0.1,0-0.2,0c-0.3,0-0.5,0.2-0.7,0.3c-0.3,0.3-1.3,1.4-1.5,1.6c-0.2-0.2-1.1-1.3-1.5-1.6c-0.2-0.2-0.4-0.3-0.7-0.3
c-0.1,0-0.1,0-0.2,0c-0.6,0.1-0.4,0.8-0.4,0.8s-0.6,0.1-0.6-0.7c0-0.6,0.5-0.9,0.9-1.1c0.6-0.1,1.3-0.2,1.4-1.2c0-0.2,0-0.3,0-0.3
s-0.2,0.3-0.8,0.6c-0.7,0.3-2.4,0.3-2.4,1.3c0,0.4,0.4,0.4,0.4,0.4s0,0.2-0.3,0.2c-0.1,0-0.1,0-0.2,0c-0.4-0.1-0.5-0.5-0.5-1
c0-0.3-0.2-0.8-0.6-0.7c-0.1,0-0.2,0-0.3,0.1c-0.3,0.2-0.2,0.5-0.2,0.5s-0.4-0.2-0.3-0.7c0.1-0.4,0.3-0.6,0.7-0.7h0.1
c0.5-0.1,0.8,0.1,0.8,0.1s-0.1-0.3-0.1-0.7c0-0.3,0.2-0.6,0.6-0.7c0.7-0.1,0.8,0.3,0.7,0.6c0,0-0.2-0.2-0.3-0.1h-0.1
c-0.1,0.1-0.2,0.1-0.2,0.2c-0.1,0.3,0.1,0.6,0.1,0.7c0.1,0.2,0.5,0.3,1.1,0.2s1-0.5,1.2-0.9c0.1-0.2,0.2-0.3,0.1-0.5l0.3-3.6
c0,0,0.1-0.9-0.5-1c-0.1,0-0.1,0-0.2,0c-0.5,0.1-1.1,0.8-0.9,1.7c0.1,0.7-0.2,1.2-0.5,1.3c-0.4,0.1-0.7,0-0.8-0.3
c0.7,0,0.7-0.6,0.5-0.9c-0.1-0.1-0.2-0.1-0.4-0.1c-0.7,0.1-1.8,1.1-2,1.6c-0.2,0.5,0.2,0.4,0.4,0.8c0.1,0.3-0.2,0.6-0.2,0.6
c0,0.1,0,0.2,0,0.3c-0.1,0.3-0.2,0.4-0.4,0.4c-0.1,0-0.2,0-0.3,0c0.2-0.1,0.2-0.3,0.3-0.4c0-0.1,0-0.2,0-0.2s-0.2,0-0.4-0.3
c-0.2-0.3,0-0.4-0.2-0.8c-0.2-0.4-0.9-0.7-1.4-0.8h-0.1c-0.1,0-0.2,0.1-0.3,0.1h-0.1c-0.4,0-0.3-0.2-0.6-0.2
c-0.2,0-0.3,0.2-0.2,0.4V59c-0.2-0.1-0.3-0.3-0.3-0.5c0-0.5,0.3-0.9,0.6-0.9c0.4,0,0.5,0.2,0.6,0.2c0.2-0.9-0.5-0.6-0.8-1
c-0.2-0.3-0.1-0.4-0.1-0.5c0-0.2-0.2-0.2-0.4-0.1c-0.1,0-0.1,0-0.2,0c0,0,0.1-0.4,0.5-0.5c0.1,0,0.3,0,0.6,0.1
c0.2-0.1,0.4,0,0.5,0.2c0.1,0.2,0,0.4,0,0.6c0.1,0.6,0.4,0.6,0.5,0.5c-0.3-0.8,0.1-1.1,0.1-1.2c0-0.1,0-0.3-0.2-0.4
c0,0-0.1,0,0-0.1c0,0,0.8,0,0.9,0.5c0,0,0.3,0.2,0.3,0.6c0,0.5-0.3,0.6-0.4,0.7c0.1,0.6,0.4,0.6,0.7,0.6c0.3,0,0.6-0.2,0.6-0.2
c0.2-0.1,0.4,0,0.5,0.2s0,0.4,0,0.6c0.1,0.6,0.4,0.6,0.5,0.5c-0.3-0.8,0.1-1.1,0.1-1.2c0-0.1,0-0.3-0.2-0.4c0,0-0.1,0,0-0.1
c0,0,0.8,0,0.9,0.5c0,0,0.3,0.2,0.3,0.6c0,0.5-0.3,0.6-0.4,0.7c0.1,0.6,0.4,0.6,0.7,0.6c0.3,0,0.6-0.2,0.6-0.2
c0.5-0.2,1.6-0.9,1.3-1.4c-0.1-0.2-0.3-0.4-0.6-0.3c-0.1,0-0.2,0.1-0.3,0.1c-0.3,0.3-0.2,0.7-0.2,0.7c-0.5,0.1-0.7-0.7-0.4-1
c0.2-0.2,0.5-0.3,0.7-0.4c0.3-0.1,0.6,0,1-0.1c0.4-0.1,0.7-0.3,0.9-0.8c0.2-0.3,0.2-0.8,0-1.2c-0.2-0.4-0.6-0.9-1.1-1
c0.2-0.2,0.5-0.3,0.7-0.4c0.3-0.1,0.6,0,1-0.1s0.7-0.3,0.9-0.8c0.2-0.3,0.2-0.8,0-1.2c-0.2-0.4-0.6-0.9-1.1-1
c-0.1,0.9-0.6,1.6-1.2,2c-0.1,0.1-0.3,0.2-0.5,0.2c-0.1,0-0.2,0-0.1,0c0.8-0.9,0.6-1.9,0.6-2c-0.1,0.1-0.7,1.2-1.7,1.7
c-0.1,0-0.2,0.1-0.3,0.1c-0.6,0.1-1.2-0.2-0.9-0.2c0.4-0.1,1.9-1,1.5-2.9c-0.1,0.1-0.7,1.3-1.6,1.9c-0.4,0.2-0.7,0.4-1.1,0.4
c-0.7,0.1-1.2-0.1-1.1-0.2c0,0,1.8-0.9,1.9-1.7c-0.1,0-0.6,0.4-1.1,0.5c-0.1,0-0.2,0-0.2,0C6,52.2,6,51.1,6,51.1
c0.1,0,1.6,0.1,2.8-2.4c0,0-0.8,0.3-1.7,0.4c-0.5,0.1-0.8-0.3-0.7-0.3c0.1,0,0.2,0,0.3,0c0.3,0,0.7-0.2,1.2-0.6
c-0.1-0.1-2.1-0.9-1.3-2.2c0,0,0.5,0.5,1.2,0.5c0.5,0,1.3,0,1.5-0.5c0,0-1-0.1-2-0.7c-0.6-0.4-0.8-1.3-0.6-1
c0.2,0.3,0.5,0.3,0.8,0.4c0.3,0.1,0.5,0,0.5,0s-1.5-1.4-0.5-2.5c0,0,0.5,1.4,1.7,1.4c0,0-0.6-0.6-0.7-1.3c-0.1-0.5-0.1-1.1,0-0.9
c0.1,0.1,0.2,0.4,0.3,0.5c0.2,0.3,0.5,0.6,0.7,0.9c0,0-0.2-0.7,0.1-1.4c0-0.1,0.4-0.7,0.4-0.5c0,0,0,0.4,0,0.6
c0.1,0.5,0.3,1.1,1.1,2c1.1,1.2,2.4,1.1,2.4,1.9c0,0.9-1.1,0.7-1.8,0.7c-0.2,0-0.2,0.4,0,0.6c0.6,0.8,3,1,3.8-0.3
c0.3-0.4,0.3-1,0.2-1.5c-0.2-0.7-0.8-0.7-1.8-0.9c-0.7-0.2-0.5-0.5-0.4-0.5c0,0,0.2,0.1,0.4,0.1c0.5,0,0.2-0.7,0.2-0.7
c-0.1,0-0.7,0.2-1.2,0.3c-0.6,0.1-1.4-0.2-1.4-0.6c0-0.5,0.6-0.7,0.6-0.5c0,0-0.4,0.7,0.8,0.7c0.4,0,1.1-0.1,1.1-0.1
c0-0.2-0.4-0.5-0.6-0.5c-0.2,0-0.4,0.1-0.7,0c-0.1-0.3,0.2-0.6,0.4-0.7c0.2-0.1,0.4-0.1,0.5-0.1c0.1,0,0.2-0.5,1-0.5
c0.4,0,1,0.3,1.3,0.3c0.3,0,0.7-0.2,0.8-0.1c0,0.1-0.2,0.4-0.1,0.6c0,0.6,0.9,2.8,2,3c1-0.2,2-2.4,2-3c0-0.2-0.2-0.5-0.1-0.6
c0-0.1,0.5,0.1,0.8,0.1c0.3,0,0.8-0.3,1.3-0.3c0.8,0,0.8,0.4,1,0.5c0.1,0,0.3,0,0.5,0.1c0.2,0.1,0.6,0.4,0.4,0.7
c-0.3,0-0.5,0-0.7,0c-0.3,0-0.6,0.3-0.6,0.5c0,0,0.7,0.1,1.1,0.1c1.1,0,0.8-0.7,0.8-0.7c0-0.1,0.6,0,0.6,0.5c0,0.4-0.7,0.7-1.4,0.6
c-0.5,0-1.1-0.3-1.2-0.3c-0.1,0-0.4,0.7,0.1,0.7c0.2,0,0.4-0.1,0.4-0.1c0.1,0,0.3,0.3-0.4,0.5c-1,0.2-1.5,0.2-1.8,0.9
c-0.2,0.5-0.1,1,0.2,1.5c0.8,1.3,3.2,1.1,3.8,0.3c0.2-0.3,0.2-0.6,0-0.6c-0.7,0.1-1.7,0.2-1.8-0.7c0-0.7,1.2-0.7,2.4-1.9
c0.9-0.9,1.1-1.5,1.1-2c0-0.1,0-0.6,0-0.6c0-0.1,0.4,0.4,0.4,0.5c0.3,0.7,0.1,1.4,0.1,1.4c0.3-0.2,0.6-0.6,0.7-0.9
c0.1-0.2,0.2-0.4,0.3-0.5c0.1-0.2,0.1,0.5,0,0.9c-0.1,0.7-0.7,1.3-0.7,1.3c1.2,0,1.7-1.4,1.7-1.4c0.9,1.1-0.5,2.5-0.5,2.5
s0.2,0.1,0.5,0c0.3-0.1,0.6-0.2,0.8-0.4c0.2-0.3,0,0.6-0.6,1c-1,0.6-2,0.7-2,0.7c0.2,0.5,1,0.6,1.5,0.5c0.7-0.1,1.2-0.5,1.2-0.5
c0.7,1.3-1.2,2.2-1.3,2.2c0.5,0.4,1,0.6,1.2,0.6c0.1,0,0.2,0,0.3,0c0.1,0-0.2,0.3-0.7,0.3C28.8,49,28,48.7,28,48.7
c1.2,2.5,2.6,2.4,2.8,2.4c0,0,0,1.1-1.6,1.1c-0.1,0-0.2,0-0.2,0c-0.6-0.1-1.1-0.5-1.1-0.5c0,0.8,1.9,1.7,1.9,1.7
c0.1,0.1-0.4,0.3-1.1,0.2c-0.3-0.1-0.7-0.2-1.1-0.4c-0.8-0.6-1.5-1.8-1.6-1.9c-0.5,1.9,1.1,2.8,1.5,2.9c0.2,0-0.4,0.3-0.9,0.2
c-0.1,0-0.2,0-0.3-0.1c-1.1-0.5-1.7-1.6-1.7-1.7c0,0.1-0.2,1,0.6,2c0,0,0,0-0.1,0c-0.1,0-0.3-0.1-0.5-0.2c-0.6-0.4-1.1-1.1-1.2-2
c-0.5,0.1-0.9,0.6-1.1,1c-0.2,0.4-0.2,0.8,0,1.2c0.3,0.5,0.6,0.7,0.9,0.8c0.3,0.1,0.6,0.1,1,0.1c0.3,0,0.5,0.1,0.7,0.4
c0.3,0.3,0.1,1.2-0.4,1c0,0,0.2-0.4-0.2-0.7c-0.1-0.1-0.2-0.1-0.3-0.1c-0.2,0-0.5,0.1-0.6,0.3c-0.3,0.5,0.8,1.2,1.3,1.4
c0,0,0.3,0.2,0.6,0.2c0.3,0,0.6,0,0.7-0.6c-0.1-0.1-0.4-0.2-0.4-0.7c0-0.4,0.3-0.6,0.3-0.6c0.1-0.5,0.9-0.5,0.9-0.5
c0.1,0,0,0.1,0,0.1c-0.2,0.1-0.3,0.2-0.2,0.4c0,0.1,0.4,0.4,0.1,1.2c0.1,0,0.4,0,0.5-0.5c0-0.2-0.1-0.4,0-0.6
c0.1-0.1,0.3-0.3,0.5-0.2c0.2-0.1,0.4-0.1,0.6-0.1c0.4,0.1,0.5,0.5,0.5,0.5s0,0,0,0c0,0-0.1,0-0.1,0c-0.2,0-0.5,0-0.4,0.1
c0,0.1,0.1,0.2-0.1,0.5c-0.3,0.4-1,0.1-0.8,1c0,0,0.2-0.3,0.6-0.2c0.3,0,0.6,0.4,0.6,0.9c0,0.2-0.1,0.4-0.3,0.5c0,0,0,0,0-0.1
c0.1-0.2,0-0.4-0.2-0.4c-0.3,0-0.2,0.2-0.6,0.2c-0.1,0-0.1,0-0.1,0c-0.2,0-0.2-0.1-0.3-0.1c0,0-0.1,0-0.1,0
c-0.5,0.1-1.2,0.4-1.4,0.8c-0.2,0.4,0,0.5-0.2,0.8c-0.2,0.3-0.4,0.3-0.4,0.3s0,0.1,0,0.2C24.7,60.7,24.7,60.8,24.7,60.8 M23.4,61.3
c0.3-0.1,0.7-0.2,1-0.4c0-0.1-0.1-0.1-0.1-0.3c0-0.1,0-0.2,0-0.3c0,0-0.3-0.3-0.2-0.6c0.2-0.4,0.5-0.3,0.4-0.8
c-0.2-0.6-1.3-1.5-2-1.6c-0.2,0-0.3,0-0.4,0.1c-0.2,0.2-0.3,0.8,0.5,0.9c-0.2,0.3-0.4,0.4-0.8,0.3c-0.3-0.1-0.7-0.6-0.6-1.3
c0.2-0.9-0.4-1.6-0.9-1.7c-0.1,0-0.1,0-0.2,0c-0.6,0.1-0.5,1-0.5,1l0.3,3.6c0,0.1,0,0.3,0.1,0.5c0.2,0.3,0.6,0.7,1.2,0.9
c0.5,0.1,0.9,0,1.1-0.2c0-0.1,0.3-0.4,0.1-0.7c0-0.1-0.1-0.2-0.2-0.2c0,0-0.1,0-0.1,0c-0.2,0-0.3,0.1-0.3,0.1
c-0.1-0.2,0-0.7,0.7-0.6c0.4,0.1,0.6,0.4,0.6,0.7c0,0.3-0.1,0.7-0.1,0.7S23.2,61.3,23.4,61.3 M21.6,62.6c0-0.1,0-0.2,0-0.3
c-0.5-0.1-1-0.2-1.3-0.4c-0.6-0.3-0.8-0.6-0.8-0.6s0,0,0,0.3c0.1,1,0.7,1.1,1.4,1.2c0.3,0.1,0.6,0.3,0.8,0.5V62.6z M44.1,82.8
c-0.1,0.2-0.1,0.6,0,0.8c0.5,0.7,2.6,0.9,3.5,0C46.5,83.4,45.3,83.1,44.1,82.8 M49.9,80.9c0.3,0.4,0.7,0.7,1,0.8c1-0.2,2-2.4,2-3
c0-0.2-0.2-0.5-0.1-0.6c0-0.1,0.5,0.1,0.8,0.1c0.3,0,0.9-0.3,1.3-0.3c0.8,0,0.8,0.4,1,0.5c0.1,0,0.3,0,0.5,0.1
c0.2,0.1,0.6,0.4,0.4,0.7c-0.4,0-0.5,0-0.7,0c-0.3,0-0.6,0.3-0.6,0.5c0,0,0.7,0.1,1.1,0.1c1.1,0,0.8-0.7,0.8-0.7
c0-0.1,0.6,0,0.6,0.5c0,0.4-0.7,0.7-1.4,0.6c-0.5,0-1.1-0.3-1.2-0.3c-0.1,0-0.4,0.7,0.1,0.7c0.2,0,0.4-0.1,0.4-0.1
c0.1,0,0.3,0.3-0.4,0.5c-1,0.2-1.5,0.2-1.8,0.9c-0.2,0.5-0.1,1,0.2,1.5c0.8,1.3,3.2,1.1,3.8,0.3c0.2-0.3,0.2-0.6,0-0.6
c-0.7,0.1-1.7,0.2-1.8-0.7c0-0.7,1.2-0.7,2.4-1.9c0.9-0.9,1.1-1.5,1.1-2c0-0.1,0-0.6,0-0.6c0-0.1,0.4,0.4,0.4,0.5
c0.3,0.7,0.1,1.4,0.1,1.4c0.3-0.2,0.6-0.6,0.7-0.9c0.1-0.2,0.2-0.4,0.3-0.5c0.1-0.2,0.1,0.5,0,0.9c-0.1,0.7-0.7,1.3-0.7,1.3
c1.2,0,1.7-1.4,1.7-1.4c0.9,1.1-0.5,2.5-0.5,2.5s0.2,0.1,0.5,0c0.3-0.1,0.6-0.2,0.8-0.4c0.2-0.3,0,0.6-0.6,1c-1,0.6-2,0.7-2,0.7
c0.2,0.5,1,0.6,1.5,0.5c0.7-0.1,1.2-0.5,1.2-0.5c0.7,1.3-1.2,2.2-1.3,2.2c0.5,0.4,1,0.6,1.2,0.6c0.1,0,0.2,0,0.3,0
c0.1,0-0.2,0.3-0.7,0.3c-0.9-0.1-1.7-0.4-1.7-0.4c1.2,2.5,2.6,2.4,2.8,2.4c0,0,0,1.1-1.6,1.1c-0.1,0-0.2,0-0.2,0
c-0.7,0.1-1.2-0.1-1.1-0.2c0,0,1.8-0.9,1.9-1.7c-0.1,0-0.6,0.4-1.1,0.5c-0.1,0-0.2,0-0.2,0c-1.7,0.2-1.7-0.9-1.7-0.9
c0.1,0,1.6,0.1,2.8-2.4c0,0-0.8,0.3-1.7,0.4c-0.5,0.1-0.8-0.3-0.7-0.3s0.2,0,0.3,0c0.3,0,0.7-0.2,1.2-0.6c-0.1-0.1-2.1-0.9-1.3-2.2
c0,0,0.5,0.5,1.2,0.5c0.5,0,1.3,0,1.5-0.5c0,0-1-0.1-2-0.7c-0.6-0.4-0.8-1.3-0.6-1s0.5,0.3,0.8,0.4c0.3,0.1,0.5,0,0.5,0
s-1.5-1.4-0.5-2.5c0,0,0.5,1.4,1.7,1.4c0,0-0.6-0.6-0.7-1.3c-0.1-0.5-0.1-1.1,0-0.9c0.1,0.1,0.2,0.4,0.3,0.5
c0.2,0.3,0.5,0.6,0.7,0.9c0,0-0.2-0.7,0.1-1.4c0-0.1,0.4-0.7,0.4-0.5c0,0,0,0.4,0,0.6c0.1,0.5,0.3,1.1,1.1,2
c1.1,1.2,2.4,1.1,2.4,1.9c0,0.9-1.1,0.7-1.8,0.7c-0.2,0-0.2,0.4,0,0.6c0.6,0.8,3,1,3.8-0.3c0.3-0.4,0.3-1,0.2-1.5
c-0.2-0.7-0.8-0.7-1.8-0.9c-0.7-0.2-0.5-0.5-0.4-0.5c0,0,0.2,0.1,0.4,0.1c0.5,0,0.2-0.7,0.2-0.7c-0.1,0-0.7,0.2-1.2,0.3
c-0.6,0.1-1.4-0.2-1.4-0.6c0-0.5,0.6-0.7,0.6-0.5c0,0-0.4,0.7,0.8,0.7c0.4,0,1.1-0.1,1.1-0.1c0-0.2-0.4-0.5-0.6-0.5s-0.4,0.1-0.7,0
c-0.1-0.3,0.2-0.6,0.4-0.7c0.2-0.1,0.4-0.1,0.5-0.1s0.2-0.5,1-0.5c0.4,0,1,0.3,1.3,0.3c0.3,0,0.7-0.2,0.8-0.1
c0,0.1-0.2,0.4-0.1,0.6c0,0.6,0.9,2.8,2,3c1-0.2,2-2.4,2-3c0-0.2-0.2-0.5-0.1-0.6c0-0.1,0.5,0.1,0.8,0.1s0.8-0.3,1.3-0.3
c0.8,0,0.8,0.4,1,0.5c0.1,0,0.3,0,0.5,0.1s0.6,0.4,0.4,0.7c-0.3,0-0.5,0-0.7,0c-0.3,0-0.6,0.3-0.6,0.5c0,0,0.7,0.1,1.1,0.1
c1.1,0,0.8-0.7,0.8-0.7c0-0.1,0.6,0,0.6,0.5c0,0.4-0.7,0.7-1.4,0.6c-0.5,0-1.1-0.3-1.2-0.3c-0.1,0-0.4,0.7,0.1,0.7
c0.2,0,0.4-0.1,0.4-0.1c0.1,0,0.3,0.3-0.4,0.5c-1,0.2-1.5,0.2-1.8,0.9c-0.2,0.5-0.1,1,0.2,1.5c0.8,1.3,3.2,1.1,3.8,0.3
c0.2-0.3,0.2-0.6,0-0.6c-0.7,0.1-1.7,0.2-1.8-0.7c0-0.7,1.2-0.7,2.4-1.9c0.9-0.9,1.1-1.5,1.1-2c0-0.1,0-0.6,0-0.6
c0-0.1,0.4,0.4,0.4,0.5c0.3,0.7,0.1,1.4,0.1,1.4c0.3-0.2,0.6-0.6,0.7-0.9c0.1-0.2,0.2-0.4,0.3-0.5c0.1-0.2,0.1,0.5,0,0.9
c-0.1,0.7-0.7,1.3-0.7,1.3c1.2,0,1.7-1.4,1.7-1.4c0.9,1.1-0.5,2.5-0.5,2.5s0.2,0.1,0.5,0s0.6-0.2,0.8-0.4c0.2-0.3,0,0.6-0.6,1
c-1,0.6-2,0.7-2,0.7c0.2,0.5,1,0.6,1.5,0.5c0.7-0.1,1.2-0.5,1.2-0.5c0.7,1.3-1.2,2.2-1.3,2.2c0.5,0.4,1,0.6,1.2,0.6
c0.1,0,0.2,0,0.3,0c0.1,0-0.2,0.3-0.7,0.3c-1.2-0.1-2-0.4-2-0.4c1.2,2.5,2.6,2.4,2.8,2.4c0,0,0,1.1-1.6,1.1c-0.1,0-0.2,0-0.2,0
c-0.6-0.1-1.1-0.5-1.1-0.5c0,0.8,1.9,1.7,1.9,1.7c0.1,0.1-0.4,0.3-1.1,0.2c-0.3-0.1-0.7-0.2-1.1-0.4c-0.8-0.6-1.5-1.8-1.6-1.9
c-0.5,1.9,1.1,2.8,1.5,2.9c0.2,0-0.4,0.3-0.9,0.2c-0.1,0-0.2,0-0.3-0.1c-1.1-0.5-1.7-1.6-1.7-1.7c0,0.1-0.2,1,0.6,2c0,0,0,0-0.1,0
c-0.1,0-0.3-0.1-0.5-0.2c-0.6-0.4-1.1-1.1-1.2-2c-0.5,0.1-0.9,0.6-1.1,1c-0.2,0.4-0.2,0.8,0,1.2c0.3,0.5,0.6,0.7,0.9,0.8
c0.3,0.1,0.6,0,1,0.1c0.3,0,0.5,0.1,0.7,0.4c0.3,0.3,0.1,1.2-0.4,1c0,0,0.2-0.4-0.2-0.7c-0.1-0.1-0.2-0.1-0.3-0.2
c-0.2,0-0.5,0.1-0.6,0.3c-0.3,0.5,0.8,1.2,1.3,1.4c0,0,0.3,0.2,0.6,0.2c0.3,0,0.6,0,0.7-0.6c-0.1-0.1-0.4-0.2-0.4-0.7
c0-0.4,0.3-0.6,0.3-0.6c0.1-0.5,0.9-0.5,0.9-0.5c0.1,0,0,0.1,0,0.1C59,92.7,58.9,92.9,59,93c0,0.1,0.4,0.4,0.1,1.2
c0.1,0,0.4,0,0.5-0.5c0-0.2-0.1-0.4,0-0.6c0.1-0.2,0.3-0.3,0.5-0.2c0.2-0.1,0.4-0.1,0.6-0.1c0.4,0.1,0.5,0.5,0.5,0.5s0,0.1,0,0
c0,0-0.1,0-0.1,0c-0.2,0-0.5,0-0.4,0.1c0,0.1,0.1,0.2-0.1,0.5c-0.3,0.4-1,0.1-0.8,1c0,0,0.2-0.3,0.6-0.2c0.3,0,0.6,0.4,0.6,0.9
c0,0.2-0.1,0.4-0.3,0.5c0,0,0,0,0-0.1c0.1-0.2,0-0.4-0.2-0.4c-0.3,0-0.2,0.2-0.6,0.2c-0.1,0-0.1,0-0.1,0c-0.1,0-0.2-0.1-0.3-0.1
c0,0-0.1,0-0.1,0c-0.5,0.1-1.2,0.4-1.4,0.8c-0.2,0.4,0,0.5-0.2,0.8c-0.2,0.3-0.4,0.3-0.4,0.3s0,0.1,0,0.2c0,0.1,0.1,0.3,0.3,0.4
c0,0,0.1,0,0,0c-0.1,0-0.2,0.1-0.3,0c-0.1,0-0.3-0.1-0.4-0.4c0-0.1,0-0.2,0-0.3c0,0-0.3-0.3-0.2-0.6c0.2-0.4,0.5-0.3,0.4-0.8
c-0.2-0.6-1.3-1.5-2-1.6c-0.2,0-0.3,0-0.4,0.1c-0.2,0.2-0.3,0.8,0.5,0.9c-0.1,0.3-0.4,0.4-0.8,0.3c-0.3-0.1-0.7-0.6-0.6-1.3
c0.2-0.9-0.4-1.6-0.9-1.7c-0.1,0-0.2,0-0.2,0c-0.6,0.1-0.5,1-0.5,1l0.3,3.6c0,0.1,0,0.3,0.1,0.5c0.2,0.3,0.6,0.7,1.2,0.9
c0.5,0.1,0.9,0,1.1-0.2c0-0.1,0.3-0.4,0.1-0.7c0-0.1-0.1-0.2-0.2-0.2c0,0-0.1,0-0.1,0c-0.2,0-0.3,0.1-0.3,0.1
c-0.1-0.2,0-0.7,0.7-0.6c0.4,0.1,0.6,0.4,0.6,0.7c0,0.3-0.1,0.7-0.1,0.7s0.4-0.1,0.8-0.1c0,0,0.1,0,0.1,0c0.4,0.1,0.6,0.3,0.7,0.7
c0.1,0.4-0.3,0.7-0.3,0.7s0.1-0.3-0.2-0.5c-0.1,0-0.2-0.1-0.3-0.1c-0.4-0.1-0.7,0.4-0.6,0.7c0,0.5-0.1,1-0.5,1c-0.1,0-0.2,0-0.2,0
c-0.3,0-0.3-0.2-0.3-0.2s0.4,0,0.4-0.4c0-1-1.7-1-2.4-1.3c-0.6-0.3-0.8-0.6-0.8-0.6s0,0,0,0.3c0.1,1,0.7,1.1,1.4,1.2
c0.4,0.1,0.9,0.5,0.9,1.1c0,0.8-0.6,0.7-0.6,0.7s0.2-0.7-0.4-0.8c0,0-0.1,0-0.2,0c-0.3,0-0.5,0.2-0.7,0.3c-0.3,0.3-1.3,1.4-1.5,1.6
c-0.2-0.2-1.1-1.3-1.5-1.6c-0.2-0.2-0.4-0.3-0.7-0.3c-0.1,0-0.1,0-0.2,0c-0.6,0.1-0.4,0.8-0.4,0.8s-0.6,0.1-0.6-0.7
c0-0.6,0.5-0.9,0.9-1.1c0.6-0.1,1.3-0.2,1.4-1.2c0-0.2,0-0.3,0-0.3s-0.2,0.3-0.8,0.6c-0.7,0.3-2.4,0.3-2.4,1.3
c0,0.4,0.4,0.4,0.4,0.4s0,0.2-0.3,0.2c-0.1,0-0.1,0-0.2,0c-0.4-0.1-0.5-0.5-0.5-1c0-0.3-0.2-0.8-0.6-0.7c-0.1,0-0.2,0-0.3,0.1
c-0.3,0.2-0.2,0.5-0.2,0.5s-0.4-0.2-0.3-0.7c0.1-0.4,0.3-0.6,0.7-0.7c0,0,0.1,0,0.1,0c0.5-0.1,0.8,0.1,0.8,0.1s-0.1-0.3-0.1-0.7
c0-0.3,0.2-0.6,0.6-0.7c0.7-0.1,0.8,0.3,0.7,0.6c0,0-0.2-0.2-0.3-0.1c0,0-0.1,0-0.1,0c-0.1,0.1-0.2,0.1-0.2,0.2
C46.8,98,47,98.3,47,98.3c0.1,0.2,0.5,0.3,1.1,0.2c0.6-0.1,1-0.5,1.2-0.9c0.1-0.2,0.2-0.3,0.1-0.5l0.3-3.6c0,0,0.1-0.9-0.5-1
c-0.1,0-0.3-0.1-0.5-0.2c-0.6-0.4-1.1-1.1-1.2-2c-0.5,0.1-0.9,0.6-1.1,1s-0.2,0.8,0,1.2c0.3,0.5,0.6,0.7,0.9,0.8s0.6,0.1,1,0.1
c0.3,0,0.5,0.1,0.7,0.4c0.3,0.3,0.1,1.2-0.4,1c0,0,0.2-0.4-0.2-0.7c-0.1-0.1-0.2-0.1-0.3-0.1c-0.2,0-0.5,0.1-0.6,0.3
c-0.3,0.5,0.8,1.2,1.3,1.4c0,0,0.3,0.2,0.6,0.2c0.3,0,0.6,0,0.7-0.6c-0.1-0.1-0.4-0.2-0.4-0.7c0-0.4,0.3-0.6,0.3-0.6
c0.1-0.5,0.9-0.5,0.9-0.5c0.1,0,0,0.1,0,0.1c-0.2,0.1-0.3,0.2-0.2,0.4c0,0.1,0.4,0.4,0.1,1.2c0.1,0,0.4,0,0.5-0.5
c0-0.2-0.1-0.4,0-0.6c0.1-0.1,0.3-0.3,0.5-0.2c0.2-0.1,0.4-0.1,0.6-0.1c0.4,0.1,0.5,0.5,0.5,0.5l0,0h-0.1c-0.2,0-0.5,0-0.4,0.1
c0,0.1,0.1,0.2-0.1,0.5c-0.3,0.4-1,0.1-0.8,1c0,0,0.2-0.3,0.6-0.2c0.3,0,0.6,0.4,0.6,0.9c0,0.2-0.1,0.4-0.3,0.5c0,0,0,0,0-0.1
c0.1-0.2,0-0.4-0.2-0.4c-0.3,0-0.2,0.2-0.6,0.2c-0.1,0-0.1,0-0.1,0c-0.2,0-0.2-0.1-0.3-0.1h-0.1c-0.5,0.1-1.2,0.4-1.4,0.8
c-0.2,0.4,0,0.5-0.2,0.8s-0.4,0.3-0.4,0.3s0,0.1,0,0.2C38.5,60.7,38.5,60.8,38.5,60.8 M37.2,61.3c0.3-0.1,0.7-0.2,1-0.4
c0-0.1-0.1-0.1-0.1-0.3c0-0.1,0-0.2,0-0.3c0,0-0.3-0.3-0.2-0.6c0.2-0.4,0.5-0.3,0.4-0.8c-0.2-0.6-1.3-1.5-2-1.6
c-0.2,0-0.3,0-0.4,0.1c-0.2,0.2-0.3,0.8,0.5,0.9c-0.2,0.3-0.4,0.4-0.8,0.3c-0.3-0.1-0.7-0.6-0.6-1.3c0.2-0.9-0.4-1.6-0.9-1.7
c-0.1,0-0.1,0-0.2,0c-0.6,0.1-0.5,1-0.5,1l0.3,3.6c0,0.1,0,0.3,0.1,0.5c0.2,0.3,0.6,0.7,1.2,0.9c0.5,0.1,0.9,0,1.1-0.2
c0-0.1,0.3-0.4,0.1-0.7c0-0.1-0.1-0.2-0.2-0.2h-0.1c-0.2,0-0.3,0.1-0.3,0.1c-0.1-0.2,0-0.7,0.7-0.6c0.4,0.1,0.6,0.4,0.6,0.7
s-0.1,0.7-0.1,0.7S37,61.3,37.2,61.3 M35.4,62.6c0-0.1,0-0.2,0-0.3c-0.5-0.1-1-0.2-1.3-0.4c-0.6-0.3-0.8-0.6-0.8-0.6s0,0,0,0.3
c0.1,1,0.7,1.1,1.4,1.2c0.3,0.1,0.6,0.3,0.8,0.5v-0.7H35.4z M57.9,82.8c-0.1,0.2-0.1,0.6,0,0.8c0.5,0.7,2.6,0.9,3.5,0
C60.3,83.4,59.1,83.1,57.9,82.8 M63.7,80.9c0.3,0.4,0.7,0.7,1,0.8c1-0.2,2-2.4,2-3c0-0.2-0.2-0.5-0.1-0.6c0-0.1,0.5,0.1,0.8,0.1
c0.3,0,0.9-0.3,1.3-0.3c0.8,0,0.8,0.4,1,0.5c0.1,0,0.3,0,0.5,0.1c0.2,0.1,0.6,0.4,0.4,0.7c-0.4,0-0.5,0-0.7,0
c-0.3,0-0.6,0.3-0.6,0.5c0,0,0.7,0.1,1.1,0.1c1.1,0,0.8-0.7,0.8-0.7c0-0.1,0.6,0,0.6,0.5c0,0.4-0.7,0.7-1.4,0.6
c-0.5,0-1.1-0.3-1.2-0.3s-0.4,0.7,0.1,0.7c0.2,0,0.4-0.1,0.4-0.1c0.1,0,0.3,0.3-0.4,0.5c-1,0.2-1.5,0.2-1.8,0.9
c-0.2,0.5-0.1,1,0.2,1.5c0.8,1.3,3.2,1.1,3.8,0.3c0.2-0.3,0.2-0.6,0-0.6c-0.7,0.1-1.7,0.2-1.8-0.7c0-0.7,1.2-0.7,2.4-1.9
c0.9-0.9,1.1-1.5,1.1-2c0-0.1,0-0.6,0-0.6c0-0.1,0.4,0.4,0.4,0.5c0.3,0.7,0.1,1.4,0.1,1.4c0.3-0.2,0.6-0.6,0.7-0.9
c0.1-0.2,0.2-0.4,0.3-0.5c0.1-0.2,0.1,0.5,0,0.9C74.6,80,74,80.6,74,80.6c1.2,0,1.7-1.4,1.7-1.4c0.9,1.1-0.5,2.5-0.5,2.5
s0.2,0.1,0.5,0c0.3-0.1,0.6-0.2,0.8-0.4c0.2-0.3,0,0.6-0.6,1c-1,0.6-2,0.7-2,0.7c0.2,0.5,1,0.6,1.5,0.5c0.7-0.1,1.2-0.5,1.2-0.5
c0.7,1.3-1.2,2.2-1.3,2.2c0.5,0.4,1,0.6,1.2,0.6c0.1,0,0.2,0,0.3,0s-0.2,0.3-0.7,0.3c-0.9-0.1-1.7-0.4-1.7-0.4
c1.2,2.5,2.6,2.4,2.8,2.4c0,0,0,1.1-1.6,1.1c-0.1,0-0.2,0-0.2,0c-0.6-0.1-1.1-0.5-1.1-0.5c0,0.8,1.9,1.7,1.9,1.7
c0.1,0.1-0.4,0.3-1.1,0.2c-0.3-0.1-0.7-0.2-1.1-0.4c-0.8-0.6-1.5-1.8-1.6-1.9c-0.5,1.9,1.1,2.8,1.5,2.9c0.2,0-0.4,0.3-0.9,0.2
c-0.1,0-0.2,0-0.3-0.1c-1.1-0.5-1.7-1.6-1.7-1.7c0,0.1-0.2,1,0.6,2c0,0,0,0-0.1,0s-0.3-0.1-0.5-0.2c-0.6-0.4-1.1-1.1-1.2-2
c-0.5,0.1-0.9,0.6-1.1,1c-0.2,0.4-0.2,0.8,0,1.2c0.3,0.5,0.6,0.7,0.9,0.8c0.3,0.1,0.6,0,1,0.1c0.3,0,0.5,0.1,0.7,0.4
c0.3,0.3,0.1,1.2-0.4,1c0,0,0.2-0.4-0.2-0.7c-0.1-0.1-0.2-0.1-0.3-0.2c-0.2,0-0.5,0.1-0.6,0.3c-0.3,0.5,0.8,1.2,1.3,1.4
c0,0,0.3,0.2,0.6,0.2c0.3,0,0.6,0,0.7-0.6c-0.1-0.1-0.4-0.2-0.4-0.7c0-0.4,0.3-0.6,0.3-0.6c0.1-0.5,0.9-0.5,0.9-0.5
c0.1,0,0,0.1,0,0.1c-0.4,0.1-0.5,0.3-0.4,0.4c0,0.1,0.4,0.4,0.1,1.2c0.1,0,0.4,0,0.5-0.5c0-0.2-0.1-0.4,0-0.6s0.3-0.3,0.5-0.2
c0.2-0.1,0.4-0.1,0.6-0.1c0.4,0.1,0.5,0.5,0.5,0.5s0,0.1,0,0h-0.1c-0.2,0-0.5,0-0.4,0.1c0,0.1,0.1,0.2-0.1,0.5
c-0.3,0.4-1,0.1-0.8,1c0,0,0.2-0.3,0.6-0.2c0.3,0,0.6,0.4,0.6,0.9c0,0.2-0.1,0.4-0.3,0.5c0,0,0,0,0-0.1c0.1-0.2,0-0.4-0.2-0.4
c-0.3,0-0.2,0.2-0.6,0.2c-0.1,0-0.1,0-0.1,0c-0.1,0-0.2-0.1-0.3-0.1h-0.1c-0.5,0.1-1.2,0.4-1.4,0.8c-0.2,0.4,0,0.5-0.2,0.8
c-0.2,0.3-0.4,0.3-0.4,0.3s0,0.1,0,0.2s0.1,0.3,0.3,0.4c0,0,0.1,0,0,0s-0.2,0.1-0.3,0c-0.1,0-0.3-0.1-0.4-0.4c0-0.1,0-0.2,0-0.3
c0,0-0.3-0.3-0.2-0.6c0.2-0.4,0.5-0.3,0.4-0.8c-0.2-0.6-1.3-1.5-2-1.6c-0.2,0-0.3,0-0.4,0.1c-0.2,0.2-0.3,0.8,0.5,0.9
c-0.1,0.3-0.4,0.4-0.8,0.3c-0.3-0.1-0.7-0.6-0.6-1.3c0.2-0.9-0.4-1.6-0.9-1.7c-0.1,0-0.2,0-0.2,0c-0.6,0.1-0.5,1-0.5,1l0.3,3.6
c0,0.1,0,0.3,0.1,0.5c0.2,0.3,0.6,0.7,1.2,0.9c0.5,0.1,0.9,0,1.1-0.2c0-0.1,0.3-0.4,0.1-0.7c0-0.1-0.1-0.2-0.2-0.2h-0.1
c-0.2,0-0.3,0.1-0.3,0.1c-0.1-0.2,0-0.7,0.7-0.6c0.4,0.1,0.6,0.4,0.6,0.7c0,0.3-0.1,0.7-0.1,0.7s0.4-0.1,0.8-0.1h0.1
c0.4,0.1,0.6,0.3,0.7,0.7c0.1,0.4-0.3,0.7-0.3,0.7s0.1-0.3-0.2-0.5c-0.1,0-0.2-0.1-0.3-0.1c-0.4-0.1-0.7,0.4-0.6,0.7
c0,0.5-0.1,1-0.5,1c-0.1,0-0.2,0-0.2,0c-0.3,0-0.3-0.2-0.3-0.2s0.4,0,0.4-0.4c0-1-1.7-1-2.4-1.3c-0.6-0.3-0.8-0.6-0.8-0.6
s0,0,0,0.3c0.1,1,0.7,1.1,1.4,1.2c0.4,0.1,0.9,0.5,0.9,1.1c0,0.8-0.6,0.7-0.6,0.7s0.2-0.7-0.4-0.8c0,0-0.1,0-0.2,0
c-0.3,0-0.5,0.2-0.7,0.3c-0.3,0.3-1.3,1.4-1.5,1.6c-0.2-0.2-1.1-1.3-1.5-1.6c-0.2-0.2-0.4-0.3-0.7-0.3c-0.1,0-0.1,0-0.2,0
c-0.6,0.1-0.4,0.8-0.4,0.8s-0.6,0.1-0.6-0.7c0-0.6,0.5-0.9,0.9-1.1c0.6-0.1,1.3-0.2,1.4-1.2c0-0.2,0-0.3,0-0.3s-0.2,0.3-0.8,0.6
c-0.7,0.3-2.4,0.3-2.4,1.3c0,0.4,0.4,0.4,0.4,0.4s0,0.2-0.3,0.2c-0.1,0-0.1,0-0.2,0c-0.4-0.1-0.5-0.5-0.5-1c0-0.3-0.2-0.8-0.6-0.7
c-0.1,0-0.2,0-0.3,0.1c-0.3,0.2-0.2,0.5-0.2,0.5s-0.4-0.2-0.3-0.7c0.1-0.4,0.3-0.6,0.7-0.7h0.1c0.5-0.1,0.8,0.1,0.8,0.1
S60,98.3,60,97.9c0-0.3,0.2-0.6,0.6-0.7c0.7-0.1,0.8,0.3,0.7,0.6c0,0-0.2-0.2-0.3-0.1h-0.1c-0.1,0.1-0.2,0.1-0.2,0.2
c-0.1,0.1,0.1,0.4,0.1,0.4c0.1,0.2,0.5,0.3,1.1,0.2c0.6-0.1,1-0.5,1.2-0.9c0.1-0.2,0.2-0.3,0.1-0.5l0.3-3.6c0,0,0.1-0.9-0.5-1
c-0.1,0-0.1,0-0.2,0c-0.5,0.1-1.1,0.8-0.9,1.7c0.1,0.7-0.2,1.2-0.6,1.3c-0.4,0.1-0.7,0-0.8-0.3c0.7-0.1,0.7-0.6,0.5-0.9
c-0.1-0.1-0.2-0.1-0.4-0.1c-0.7,0.1-1.8,1.1-2,1.6c-0.2,0.5,0.2,0.4,0.4,0.8c0.1,0.3-0.2,0.6-0.2,0.6c0,0.1,0,0.2,0,0.3
c-0.1,0.3-0.2,0.4-0.4,0.4c-0.1,0-0.2,0-0.3,0c0.2-0.1,0.2-0.3,0.3-0.4c0-0.1,0-0.2,0-0.2s-0.2,0-0.4-0.3c-0.2-0.3,0-0.4-0.2-0.8
c-0.2-0.4-0.9-0.7-1.4-0.8c0,0-0.1,0-0.1,0c-0.1,0-0.2,0.1-0.3,0.1c0,0-0.1,0-0.1,0c-0.4,0-0.3-0.2-0.6-0.2c-0.2,0-0.3,0.2-0.2,0.4
c0,0,0,0.1,0,0.1c-0.2-0.1-0.3-0.3-0.3-0.5c0-0.5,0.3-0.9,0.6-0.9c0.4,0,0.5,0.2,0.6,0.2c0.2-0.9-0.5-0.6-0.8-1
c-0.2-0.3-0.1-0.4-0.1-0.5c0-0.2-0.2-0.2-0.4-0.1c-0.1,0-0.1,0-0.1,0c0,0,0.1-0.4,0.5-0.5c0.1,0,0.3,0,0.6,0.1
c0.2-0.1,0.4,0,0.5,0.2c0.1,0.2,0,0.4,0,0.6c0.1,0.6,0.4,0.6,0.5,0.5c-0.3-0.8,0.1-1.1,0.1-1.2c0-0.1,0-0.3-0.2-0.4
c0,0-0.1-0.1,0-0.1c0,0,0.8,0,0.9,0.5c0,0,0.3,0.2,0.3,0.6c0,0.5-0.3,0.6-0.4,0.7c0.1,0.6,0.4,0.6,0.7,0.6c0.3,0,0.6-0.2,0.6-0.2
c0.5-0.2,1.6-0.9,1.3-1.4c-0.1-0.2-0.3-0.4-0.6-0.3c-0.1,0-0.2,0.1-0.3,0.2c-0.3,0.3-0.2,0.7-0.2,0.7c-0.5,0.1-0.7-0.7-0.4-1
c0.2-0.2,0.5-0.3,0.7-0.4c0.3-0.1,0.6,0,1-0.1c0.4-0.1,0.7-0.3,0.9-0.8c0.2-0.3,0.2-0.8,0-1.2c-0.2-0.4-0.6-0.9-1.1-1
c-0.1,0.9-0.6,1.6-1.2,2c-0.1,0.1-0.3,0.2-0.5,0.2c-0.1,0-0.2,0-0.1,0c0.8-0.9,0.6-1.9,0.6-2c-0.1,0.1-0.7,1.2-1.7,1.7
c-0.1,0-0.2,0.1-0.3,0.1c-0.6,0.1-1.2-0.2-0.9-0.2c0.4-0.1,1.9-1,1.5-2.9c-0.1,0.1-0.7,1.3-1.6,1.9c-0.4,0.2-0.7,0.4-1.1,0.4
c-0.7,0.1-1.2-0.1-1.1-0.2c0,0,1.8-0.9,1.9-1.7c-0.1,0-0.6,0.4-1.1,0.5c-0.1,0-0.2,0-0.2,0c-1.6,0-1.6-1.1-1.6-1.1
c0.1,0,1.6,0.1,2.8-2.4c0,0-0.8,0.3-1.7,0.4c-0.5,0.1-0.8-0.3-0.7-0.3c0.1,0,0.2,0,0.3,0c0.3,0,0.7-0.2,1.2-0.6
c-0.1-0.1-2.1-0.9-1.3-2.2c0,0,0.5,0.5,1.2,0.5c0.5,0,1.3-0.1,1.5-0.5c0,0-1-0.1-2-0.7c0,0-0.1,0-0.1-0.1c-0.5,0-0.9,0-1.4,0.1
c-0.3,1.3-1.4,2.2-2.6,2.2c-1.3,0-2.3-0.9-2.6-2.2c-0.8-0.1-1.6-0.2-2.4-0.1l-17.9,19.1c1.7,1.6,3.6,3,5.6,4.1l16.8-17.9V97
l-10.5,11.2c3.8,1.3,7.7,1.9,11.1,1.9c13.1,0,32.6-8.6,32.2-32.5V62.1L59.5,71h-8.9l17.3-18.4V42.6L49.7,61.8
c0.1,0.1,0.1,0.1,0.1,0.2L49.9,80.9z M47.9,86.6h6v-2.4h-6L47.9,86.6z M50.9,91.3c2.7,0,2.9-2.5,2.9-2.5H48
C48,88.8,48.2,91.3,50.9,91.3 M15.4,49.6h6v-2.4h-6L15.4,49.6z M18.4,54.3c2.7,0,2.9-2.5,2.9-2.5h-5.8
C15.5,51.8,15.7,54.3,18.4,54.3 M34.4,81.8c0,0.7,0.6,1.3,1.3,1.3c0.7,0,1.3-0.6,1.3-1.3c0-0.7-0.6-1.3-1.3-1.3
C35,80.6,34.4,81.1,34.4,81.8 M22.4,62.5v19.6c0,0,0.2,0.3,1.5-0.1c1.5-0.4,3.4-2.3,6-2.9c2-0.4,4.6,0.2,5.2,0.6V60.1
c0,0-1.2-1.2-3.1-1.2c-1.9,0-5.1,1.7-6.4,2.3c-1.1,0.5-2.2,0.9-3,1C22.3,62.3,22.4,62.5,22.4,62.5 M39.6,79.1
c3.4,0,5.2,2.1,6.3,2.6c2.7,1.1,3.1,0.5,3.1,0.5V62.5c0-0.2-0.3-0.2-0.3-0.2s-2.6-0.4-3.5-1c-0.9-0.5-4.1-2.4-6.4-2.4
c-2.3,0-2.8,1-2.8,1v19.9C36.1,79.8,37.2,79.1,39.6,79.1"/>
c-0.1-0.1-0.2-0.1-0.4-0.1c-0.7,0.1-1.8,1.1-2,1.6s0.2,0.4,0.4,0.8c0.1,0.3-0.2,0.6-0.2,0.6c0,0.1,0,0.2,0,0.3
c-0.1,0.3-0.2,0.4-0.4,0.4c-0.1,0-0.2,0-0.3,0c0.2-0.1,0.2-0.3,0.3-0.4c0-0.1,0-0.2,0-0.2s-0.2,0-0.4-0.3s0-0.4-0.2-0.8
s-0.9-0.7-1.4-0.8h-0.1c-0.1,0-0.2,0.1-0.3,0.1h-0.1c-0.4,0-0.3-0.2-0.6-0.2c-0.2,0-0.3,0.2-0.2,0.4v0.1c-0.2-0.1-0.3-0.3-0.3-0.5
c0-0.5,0.3-0.9,0.6-0.9c0.4,0,0.5,0.2,0.6,0.2c0.2-0.9-0.5-0.6-0.8-1c-0.2-0.3-0.1-0.4-0.1-0.5c0-0.2-0.2-0.2-0.4-0.1
c-0.1,0-0.1,0-0.1,0s0.1-0.4,0.5-0.5c0.1,0,0.3,0,0.6,0.1c0.2-0.1,0.4,0,0.5,0.2s0,0.4,0,0.6c0.1,0.6,0.4,0.6,0.5,0.5
c-0.3-0.8,0.1-1.1,0.1-1.2s0-0.3-0.2-0.4c0,0-0.1-0.1,0-0.1c0,0,0.8,0,0.9,0.5c0,0,0.3,0.2,0.3,0.6c0,0.5-0.3,0.6-0.4,0.7
c0.1,0.6,0.4,0.6,0.7,0.6s0.6-0.2,0.6-0.2c0.5-0.2,1.6-0.9,1.3-1.4c-0.1-0.2-0.3-0.4-0.6-0.3c-0.1,0-0.2,0.1-0.3,0.2
c-0.3,0.3-0.2,0.7-0.2,0.7c-0.5,0.1-0.7-0.7-0.4-1c0.2-0.2,0.5-0.3,0.7-0.4c0.3-0.1,0.6,0,1-0.1s0.7-0.3,0.9-0.8
c0.2-0.3,0.2-0.8,0-1.2c-0.2-0.4-0.6-0.9-1.1-1c-0.1,0.9-0.6,1.6-1.2,2c-0.1,0.1-0.3,0.2-0.5,0.2c-0.1,0-0.2,0-0.1,0
c0.8-0.9,0.6-1.9,0.6-2c-0.1,0.1-0.7,1.2-1.7,1.7c-0.1,0-0.2,0.1-0.3,0.1c-0.6,0.1-1.2-0.2-0.9-0.2c0.4-0.1,1.9-1,1.5-2.9
c-0.1,0.1-0.7,1.3-1.6,1.9c-0.4,0.2-0.7,0.4-1.1,0.4c-0.7,0.1-1.2-0.1-1.1-0.2c0,0,1.8-0.9,1.9-1.7c-0.1,0-0.6,0.4-1.1,0.5
c-0.1,0-0.2,0-0.2,0c-1.6,0-1.6-1.1-1.6-1.1c0.1,0,1.6,0.1,2.8-2.4c0,0-0.8,0.3-1.7,0.4c-0.5,0.1-0.8-0.3-0.7-0.3s0.2,0,0.3,0
c0.3,0,0.7-0.2,1.2-0.6c-0.1-0.1-2.1-0.9-1.3-2.2c0,0,0.5,0.5,1.2,0.5c0.5,0,1.3-0.1,1.5-0.5c0,0-1-0.1-2-0.7c0,0-0.1,0-0.1-0.1
c-0.5,0-0.9,0-1.4,0.1c-0.3,1.3-1.4,2.2-2.6,2.2c-1.3,0-2.3-0.9-2.6-2.2c-0.8-0.1-1.6-0.2-2.4-0.1L26.9,101c1.7,1.6,3.6,3,5.6,4.1
l16.8-17.9V97l-10.5,11.2c3.8,1.3,7.7,1.9,11.1,1.9c13.1,0,32.6-8.6,32.2-32.5V62.1L73.3,71h-8.9l17.3-18.4v-10L63.5,61.8
c0.1,0.1,0.1,0.1,0.1,0.2L63.7,80.9z M61.7,86.6h6v-2.4h-6V86.6z M64.7,91.3c2.7,0,2.9-2.5,2.9-2.5h-5.8
C61.8,88.8,62,91.3,64.7,91.3 M29.2,49.6h6v-2.4h-6V49.6z M32.2,54.3c2.7,0,2.9-2.5,2.9-2.5h-5.8C29.3,51.8,29.5,54.3,32.2,54.3
M48.2,81.8c0,0.7,0.6,1.3,1.3,1.3s1.3-0.6,1.3-1.3c0-0.7-0.6-1.3-1.3-1.3C48.8,80.6,48.2,81.1,48.2,81.8 M36.2,62.5v19.6
c0,0,0.2,0.3,1.5-0.1c1.5-0.4,3.4-2.3,6-2.9c2-0.4,4.6,0.2,5.2,0.6V60.1c0,0-1.2-1.2-3.1-1.2c-1.9,0-5.1,1.7-6.4,2.3
c-1.1,0.5-2.2,0.9-3,1C36.1,62.3,36.2,62.5,36.2,62.5 M53.4,79.1c3.4,0,5.2,2.1,6.3,2.6c2.7,1.1,3.1,0.5,3.1,0.5V62.5
c0-0.2-0.3-0.2-0.3-0.2s-2.6-0.4-3.5-1c-0.9-0.5-4.1-2.4-6.4-2.4c-2.3,0-2.8,1-2.8,1v19.9C49.9,79.8,51,79.1,53.4,79.1"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 30 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 350 KiB

After

Width:  |  Height:  |  Size: 343 KiB