Version 1.1 release
diff --git a/.Rbuildignore b/.Rbuildignore
index 630c7af..7734fee 100644
--- a/.Rbuildignore
+++ b/.Rbuildignore
@@ -1,5 +1,4 @@
^.*\.Rproj$
^\.Rproj\.user$
-^tests$
^docs$
^.github$
diff --git a/DESCRIPTION b/DESCRIPTION
index 02bd014..be89ba4 100644
--- a/DESCRIPTION
+++ b/DESCRIPTION
@@ -1,7 +1,7 @@
Package: kableExtra
Type: Package
Title: Construct Complex Table with 'kable' and Pipe Syntax
-Version: 1.0.1.9000
+Version: 1.1.0
Authors@R: c(
person('Hao', 'Zhu', email = 'haozhu233@gmail.com', role = c('aut', 'cre'),
comment = c(ORCID = '0000-0002-3386-6076')),
diff --git a/NAMESPACE b/NAMESPACE
index b08ec71..1cf9581 100644
--- a/NAMESPACE
+++ b/NAMESPACE
@@ -26,6 +26,7 @@
export(landscape)
export(linebreak)
export(magic_mirror)
+export(pack_rows)
export(rmd_format)
export(row_spec)
export(save_kable)
diff --git a/R/add_header_above.R b/R/add_header_above.R
index 0d90117..1b73229 100644
--- a/R/add_header_above.R
+++ b/R/add_header_above.R
@@ -149,13 +149,13 @@
ifelse(strikeout, "text-decoration: line-through; ", "")
)
if (!is.null(color)) {
- row_style <- paste0(row_style, "color: ", html_color(color), ";")
+ row_style <- paste0(row_style, "color: ", html_color(color), " !important;")
}
if (!is.null(background)) {
row_style <- paste0(
row_style,
"padding-right: 4px; padding-left: 4px; ",
- "background-color: ", html_color(background), ";"
+ "background-color: ", html_color(background), " !important;"
)
}
if (!is.null(font_size)) {
diff --git a/R/cell_spec.R b/R/cell_spec.R
index 498cae7..faaf85b 100644
--- a/R/cell_spec.R
+++ b/R/cell_spec.R
@@ -93,14 +93,15 @@
cell_style <- paste(cell_style,
ifelse(strikeout, "text-decoration: line-through;", ""))
if (!is.null(color)) {
- cell_style <- paste0(cell_style, "color: ", html_color(color), ";")
+ cell_style <- paste0(cell_style, "color: ", html_color(color),
+ " !important;")
}
if (!is.null(background)) {
cell_style <- paste0(
cell_style,
ifelse(background_as_tile, "border-radius: 4px; ", ""),
"padding-right: 4px; padding-left: 4px; ",
- "background-color: ", html_color(background), ";"
+ "background-color: ", html_color(background), " !important;"
)
}
if (!is.null(extra_css)) {
diff --git a/R/column_spec.R b/R/column_spec.R
index 693bc80..7d0cefc 100644
--- a/R/column_spec.R
+++ b/R/column_spec.R
@@ -185,12 +185,14 @@
}
if (!is.null(color)) {
xml_attr(target_cell, "style") <- paste0(xml_attr(target_cell, "style"),
- "color: ", color, ";")
+ "color: ", html_color(color),
+ " !important;")
}
if (!is.null(background)) {
xml_attr(target_cell, "style") <- paste0(xml_attr(target_cell, "style"),
"background-color: ",
- background, ";")
+ html_color(background),
+ " !important;")
}
if (border_left) {
xml_attr(target_cell, "style") <- paste0(xml_attr(target_cell, "style"),
diff --git a/R/footnote.R b/R/footnote.R
index 1c9dcac..01f0c57 100644
--- a/R/footnote.R
+++ b/R/footnote.R
@@ -26,7 +26,7 @@
#' long paragraph of footnotes.
#' @param fixed_small_size T/F When you want to keep the footnote small after
#' specifying large font size with the kable_styling() (e.g. ideal font for headers
-#' and table content with small font in footnotes).
+#' and table content with small font in footnotes).
#' @param general_title Section header for general footnotes. Default is
#' "Note: ".
#' @param number_title Section header for number footnotes. Default is "".
@@ -111,7 +111,7 @@
}
if (kable_format == "latex") {
return(footnote_latex(kable_input, footnote_table, footnote_as_chunk,
- threeparttable))
+ threeparttable, fixed_small_size))
}
}
@@ -245,7 +245,7 @@
# LaTeX
footnote_latex <- function(kable_input, footnote_table, footnote_as_chunk,
- threeparttable) {
+ threeparttable, fixed_small_size) {
table_info <- magic_mirror(kable_input)
out <- solve_enc(kable_input)
diff --git a/R/group_rows.R b/R/group_rows.R
index 5017159..e913497 100644
--- a/R/group_rows.R
+++ b/R/group_rows.R
@@ -36,7 +36,7 @@
#'
#' @examples x <- knitr::kable(head(mtcars), "html")
#' # Put Row 2 to Row 5 into a Group and label it as "Group A"
-#' group_rows(x, "Group A", 2, 5)
+#' pack_rows(x, "Group A", 2, 5)
#'
#' @export
group_rows <- function(kable_input, group_label = NULL,
@@ -220,3 +220,7 @@
names(index) <- x_rle$values
return(index)
}
+
+#' @rdname group_rows
+#' @export
+pack_rows <- group_rows
diff --git a/R/kable_styling.R b/R/kable_styling.R
index 2045c15..a7546f1 100644
--- a/R/kable_styling.R
+++ b/R/kable_styling.R
@@ -58,6 +58,8 @@
#' a plain no-caption table in a `table` environment in order to center the
#' table. You can specify this option to things like `table*` or `float*` based
#' on your need.
+#' @param fixed_thead HTML table option so table header row is fixed at top.
+#' Values can be either T/F or `list(enabled = T/F, background = "anycolor")`.
#'
#' @details For LaTeX, if you use other than English environment
#' - all tables are converted to 'UTF-8'. If you use, for example, Hungarian
@@ -91,7 +93,8 @@
stripe_index = NULL,
latex_table_env = NULL,
protect_latex = TRUE,
- table.envir = "table") {
+ table.envir = "table",
+ fixed_thead = FALSE) {
if (length(bootstrap_options) == 1 && bootstrap_options == "basic") {
bootstrap_options <- getOption("kable_styling_bootstrap_options", "basic")
@@ -125,7 +128,8 @@
full_width = full_width,
position = position,
font_size = font_size,
- protect_latex = protect_latex))
+ protect_latex = protect_latex,
+ fixed_thead = fixed_thead))
}
if (kable_format == "latex") {
if (is.null(full_width)) {
@@ -182,7 +186,8 @@
position = c("center", "left", "right",
"float_left", "float_right"),
font_size = NULL,
- protect_latex = TRUE) {
+ protect_latex = TRUE,
+ fixed_thead = FALSE) {
if (protect_latex) {
kable_input <- extract_latex_from_kable(kable_input)
}
@@ -242,6 +247,19 @@
xml_attr(kable_xml, "style") <- paste(kable_xml_style, collapse = " ")
}
+ fixed_thead <- get_fixed_thead(fixed_thead)
+ if (fixed_thead$enabled) {
+ all_header_cells <- xml2::xml_find_all(kable_xml, "//thead//th")
+ if (is.null(fixed_thead$background)) fixed_thead$background <- "#FFFFFF"
+ for (i in seq(length(all_header_cells))) {
+ xml_attr(all_header_cells[i], "style") <- paste0(
+ xml_attr(all_header_cells[i], "style"),
+ "position: sticky; top:0; background-color: ",
+ fixed_thead$background, ";"
+ )
+ }
+ }
+
out <- as_kable_xml(kable_xml)
if (protect_latex) {
out <- replace_latex_in_kable(out, kable_attrs$extracted_latex)
@@ -347,9 +365,9 @@
styling_latex_striped <- function(x, table_info, color, stripe_index) {
if (is.null(stripe_index)) {
- striped_index <- seq(1, table_info$nrow - table_info$position_offset, 2)
+ stripe_index <- seq(1, table_info$nrow - table_info$position_offset, 2)
}
- row_spec(x, striped_index, background = color)
+ row_spec(x, stripe_index, background = color)
}
styling_latex_hold_position <- function(x) {
diff --git a/R/row_spec.R b/R/row_spec.R
index 7bfb68e..ff95c0e 100644
--- a/R/row_spec.R
+++ b/R/row_spec.R
@@ -147,12 +147,12 @@
}
if (!is.null(color)) {
xml_attr(x, "style") <- paste0(xml_attr(x, "style"),
- "color: ", color, ";")
+ "color: ", html_color(color), " !important;")
}
if (!is.null(background)) {
xml_attr(x, "style") <- paste0(xml_attr(x, "style"),
"background-color: ",
- background, ";")
+ html_color(background), " !important;")
}
if (!is.null(align)) {
xml_attr(x, "style") <- paste0(xml_attr(x, "style"),
diff --git a/R/scroll_box.R b/R/scroll_box.R
index b0660ed..39405cf 100644
--- a/R/scroll_box.R
+++ b/R/scroll_box.R
@@ -8,8 +8,8 @@
#' @param width A character string indicating the width of the box, e.g. "100px"
#' @param box_css CSS text for the box
#' @param extra_css Extra CSS styles
-#' @param fixed_thead A list of two named element. enabled and background.
-#' Default is F and white, e.g. "list(enabled = T, background = "#fff")"
+#' @param fixed_thead HTML table option so table header row is fixed at top.
+#' Values can be either T/F or `list(enabled = T/F, background = "anycolor")`.
#'
#' @export
#'
@@ -25,23 +25,27 @@
#' kable_styling() %>%
#' scroll_box(width = "100%", height = "200px")
#' }
-
scroll_box <- function(kable_input, height = NULL, width = NULL,
box_css = "border: 1px solid #ddd; padding: 5px; ",
- extra_css = NULL, fixed_thead = list(enabled = F, background = "#fff")) {
+ extra_css = NULL,
+ fixed_thead = TRUE
+ ) {
kable_attrs <- attributes(kable_input)
+ fixed_thead <- get_fixed_thead(fixed_thead)
+ if (is.null(height)) fixed_thead$enabled <- FALSE
if (fixed_thead$enabled) {
box_css = "border: 1px solid #ddd; padding: 0px; "
kable_xml <- read_kable_as_xml(kable_input)
- kable_thead <- xml_tpart(kable_xml, "thead")
- original_header_row <- xml_child(kable_thead, length(xml_children(kable_thead)))
- for (theader_i in 1:length(xml_children(original_header_row))) {
- target_header_cell <- xml_child(original_header_row, theader_i)
- xml_attr(target_header_cell, "style") <- paste0(xml_attr(target_header_cell, "style"),
- "position: sticky; top:0; background: ",
- fixed_thead$background,";")
+ all_header_cells <- xml2::xml_find_all(kable_xml, "//thead//th")
+ if (is.null(fixed_thead$background)) fixed_thead$background <- "#FFFFFF"
+ for (i in seq(length(all_header_cells))) {
+ xml_attr(all_header_cells[i], "style") <- paste0(
+ xml_attr(all_header_cells[i], "style"),
+ "position: sticky; top:0; background-color: ",
+ fixed_thead$background, ";"
+ )
}
out <- as.character(as_kable_xml(kable_xml))
} else {
@@ -70,3 +74,11 @@
return(out)
}
+
+get_fixed_thead <- function(x) {
+ if (is.logical(x)) {
+ if (x) return(list(enabled = TRUE, background = "#FFFFFF"))
+ return(list(enabled = FALSE))
+ }
+ return(x)
+}
diff --git a/R/spec_tools.R b/R/spec_tools.R
index 76fb7dd..0ae4032 100644
--- a/R/spec_tools.R
+++ b/R/spec_tools.R
@@ -29,7 +29,7 @@
}
html_color <- function(colors) {
- colors <- as.character(colors)
+ colors <- trimws(gsub("\\!important", "", as.character(colors)))
sapply(colors, html_color_)
}
diff --git a/R/zzz.R b/R/zzz.R
index 2014072..dfd67f8 100644
--- a/R/zzz.R
+++ b/R/zzz.R
@@ -1,26 +1,29 @@
.onLoad <- function(libname = find.package("kableExtra"), pkgname = "kableExtra") {
- load_packages <- getOption("kableExtra.latex.load_packages", default = TRUE)
- if (load_packages) {
- usepackage_latex("booktabs")
- usepackage_latex("longtable")
- usepackage_latex("array")
- usepackage_latex("multirow")
- usepackage_latex("wrapfig")
- usepackage_latex("float")
- usepackage_latex("colortbl")
- usepackage_latex("pdflscape")
- usepackage_latex("tabu")
- usepackage_latex("threeparttable")
- usepackage_latex("threeparttablex")
- usepackage_latex("ulem", "normalem")
- usepackage_latex("makecell")
- usepackage_latex("xcolor")
+ if (knitr::is_latex_output()) {
+ load_packages <- getOption("kableExtra.latex.load_packages", default = TRUE)
+ if (load_packages) {
+ usepackage_latex("booktabs")
+ usepackage_latex("longtable")
+ usepackage_latex("array")
+ usepackage_latex("multirow")
+ usepackage_latex("wrapfig")
+ usepackage_latex("float")
+ usepackage_latex("colortbl")
+ usepackage_latex("pdflscape")
+ usepackage_latex("tabu")
+ usepackage_latex("threeparttable")
+ usepackage_latex("threeparttablex")
+ usepackage_latex("ulem", "normalem")
+ usepackage_latex("makecell")
+ usepackage_latex("xcolor")
+ }
}
auto_format <- getOption("kableExtra.auto_format", default = TRUE)
if (auto_format) auto_set_format()
if (!is.null(rmarkdown::metadata$output) &&
rmarkdown::metadata$output %in% c(
- "ioslides_presentation", "slidy_presentation"
+ "ioslides_presentation", "slidy_presentation",
+ "gitbook", "radix_article"
)) {
options(kableExtra.html.bsTable = TRUE)
}
diff --git a/docs/awesome_table_in_html.Rmd b/docs/awesome_table_in_html.Rmd
index 48c336b..576bcf9 100644
--- a/docs/awesome_table_in_html.Rmd
+++ b/docs/awesome_table_in_html.Rmd
@@ -119,6 +119,14 @@
kable_styling(bootstrap_options = "striped", font_size = 7)
```
+## Fixed Table Header Row
+If you happened to have a very long table, you may consider to use this `fixed_header` option to fix the header row on top as your readers scroll. By default, the background is set to white. If you need a different color, you can set `fixed_header = list(enabled = T, background = "red")`.
+
+```{r}
+kable(mtcars[1:10, 1:5]) %>%
+ kable_styling(fixed_thead = T)
+```
+
# Column / Row Specification
## Column spec
When you have a table with lots of explanatory texts, you may want to specified the column width for different column, since the auto adjust in HTML may not work in its best way while basic LaTeX table is really bad at handling text wrapping. Also, sometimes, you may want to highlight a column (e.g. a "Total" column) by making it bold. In these scenario, you can use `column_spec()`. You can find an example below.
@@ -173,7 +181,6 @@
It is very easy to use `cell_spec` with conditional logic. Here is an example.
```{r, message=FALSE, warning=FALSE}
library(dplyr)
-options(knitr.table.format = "html")
mtcars[1:10, 1:2] %>%
mutate(
car = row.names(.),
@@ -323,31 +330,49 @@
```
## Group rows via labeling
-Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function `group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
+Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the function `group_rows()`/`pack_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
```{r}
kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)
```
-Another way to use `group_rows` is to provide an grouping index, similar with `add_header_above()`. This feature is only available in kableExtra > 0.5.2.
+Another way to use `pack_rows` is to provide an grouping index, similar with `add_header_above()`. This feature is only available in kableExtra > 0.5.2.
```{r, eval = F}
# Not evaluated. This example generates the same table as above.
kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))
+ pack_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))
```
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt) %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")
+ pack_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")
+```
+
+`r text_spec("Important Note!", bold = T, color = "#D7261E")`
+
+Note that `dplyr` 0.8.0+ introduced a `group_rows` function as well for a trivial feature. Therefore, I'm create this `pack_rows` function as an alias to the original `group_rows`. In the future, **I recommend all kableExtra users to use `pack_rows` instead of `group_rows` to get rid of the NAMESPACE conflict.**
+
+Alternatively, for pre-existing codes, you have two ways to solve this. You can either load `kableExtra` after `dplyr` or `tidyverse`, or to use the `conflicted` package. Here is an example.
+
+```{r, eval=F}
+# Method 1
+pack_rows() # instead of group_rows()
+
+# Method 2
+library(dplyr)
+library(kableExtra)
+
+# Method 3
+conflicted::conflict_prefer("group_rows", "kableExtra", "dplyr")
```
## Row indentation
-Unlike `group_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more apporiate.
+Unlike `pack_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more apporiate.
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt) %>%
@@ -356,7 +381,7 @@
```
## Group rows via multi-row cell
-Function `group_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider to use `collapse_rows` instead, which will put repeating cells in columns into multi-row cells. The vertical allignment of the cell is controlled by `valign` with default as "top".
+Function `pack_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider to use `collapse_rows` instead, which will put repeating cells in columns into multi-row cells. The vertical allignment of the cell is controlled by `valign` with default as "top".
```{r}
collapse_rows_dt <- data.frame(C1 = c(rep("a", 10), rep("b", 5)),
@@ -437,10 +462,13 @@
```{r}
kable(cbind(mtcars, mtcars)) %>%
+ add_header_above(c("a" = 5, "b" = 18)) %>%
kable_styling() %>%
scroll_box(width = "100%", height = "200px")
```
+Starting from version 1.1.0, if you have a fixed-height box, the header row is fixed
+
## Save HTML table directly
If you need to save those HTML tables but you don't want to generate them through rmarkdown, you can try to use the `save_kable()` function. You can choose whether to let those HTML files be self contained (default is yes). Self contained files packed CSS into the HTML file so they are quite large when there are many.
```{r, eval=FALSE}
diff --git a/docs/awesome_table_in_html.html b/docs/awesome_table_in_html.html
index 9aeb8da..ef6a1ed 100644
--- a/docs/awesome_table_in_html.html
+++ b/docs/awesome_table_in_html.html
@@ -11,7 +11,7 @@
<meta name="author" content="Hao Zhu" />
-<meta name="date" content="2019-01-15" />
+<meta name="date" content="2019-03-15" />
<title>Create Awesome HTML Table with knitr::kable and kableExtra</title>
@@ -1559,11 +1559,14 @@
<h1 class="title toc-ignore">Create Awesome HTML Table with knitr::kable and kableExtra</h1>
<h4 class="author"><em>Hao Zhu</em></h4>
-<h4 class="date"><em>2019-01-15</em></h4>
+<h4 class="date"><em>2019-03-15</em></h4>
</div>
+<style>
+thead th { position: sticky; top: 0; }
+</style>
<p><img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEnCAYAAABG253oAAAAAXNSR0IArs4c6QAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAACXBIWXMAAC4jAAAuIwF4pT92AAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4Aey9Cbh2WVXfee74DfXVyCAzXxWgDMaA4ICoQPk4AyrRior6dOxO96OJsTWJLcqMKMYhinab1k6MT2JUEI2KUxQpHEEo1CAoUkAxDwU11zffe/v/W+/+n7vOfvd5h3u/oqa7n+d997TWf6299nD22efsfVa6A3evscDOzs76ysrKOQp87bXX3n9zc/PlCu6cPn36ex/1qEddT3qmIX7gDixwYIG7uQXUqdf0W6UYdPD3ve99//r973//9TfddNMOP4U/9oEPfOD/fN3rXrdeaFbhuZsX+0D9Awvcuy1Ap3enxhLq6F+u31tuvvnmnQ9/+MM7GgjO8vvIRz6yQ9p73/veaxT/UlsNXg8cTjvw71kWWLlnFeegNFhAnXblmmuuWX/Sk550lrg69mM19f8BTfm/Zn19vTtx4sQ5xVd8lVdwS+Gdo0ePrp87d647e/bsq9fW1p73oAc96O/hf/Ob37zxxCc+EZ4d4gfunmOBgwHgnlOXURL14/4+X1f7yxT/Pv3+1SWXXLLBVb509pjq10VX3jnRrl188cUrujU4o/yf1O+HHv7wh98IbcYmfuDu/haI+8K7fzEOSkDH1W+VTow1NJX/Vnl/pc78r3U1p/PHbIBOPGYt50Ernk0NGv92dXX1r7Q+8L/AUwaI1Ve+8pUH6wNjRrybpR/MAO5mFVarS6dXWt/x1Vmv3N7e/qELL7zws8+cOdNphZ+OT4dddrDfFs/WoUOHNnTr0N12221v2Nra+r7jx4+/Tum+LdjSoADdgbubWuBgALibVpw6PnW35iu+7vOvUPgHdI//DYcPH6bDbpWi7fdqHTjHjh1bO3nyZKc1gl+U7OdrIHgP+GXWwEBwsD5QDH538g4GgLtTbRVd6XTu+Ndff/2FWtT7N5qqf9dFF110Iff5IqPTjk7191hkbi1ifUAybpEOP37kyJEfu//973+b0lf0xGDt6U9/etx+7BH/gO1OsMDBAHAnGH2vIn3vfdVVV8VV+brrrnuOOv5LLr300ituvfVWrs5M9+n4d1S9Mric0yxjQ7cY3Y033vguxZ//sIc97JfkMxtYe9WrXtVZP9IO3F3bAndUQ7lrl/pupp06FvXUT/d1n/+5SvtBXYGfrvvyvd/n75RZ+8rSzSDWB3SrsaEBqNOtwWs1+Hz/5Zdf/kZMK90YhA5uCzDGXdwtXfN38fLco9Sj4+fn+R/60Icepo72InW6f3bBBRfEfb5oKPNy9/nu+BsbE3udjQcELPMvaz9mIiuaDazefvvtnRYf/6OeHrz4wQ9+8PsBOhgIljXnJ59+6Rr/5Kt475SozsMVP6b6Cm/qqv+d8r9Xj/Uu0z04Rol7cvmL1yEdn59W9ensW+9+N4/2utXLL5+k66lBDALLDQSMQOi5Lt066XaDwj/40Ic+9BXCPiud0Y+nFFEWhQ/cXcgCizeeu5DS92RVuM+/3/3ut+IFNb3M82xdWV+mZ/KP5iq7p/t8d/w1TRT0JuDOJz7RnfuTP+m2dL++oin86td9Xbf+lKd0K/e5j4YVjSu6rdjjQBDrA3qjsLvlllverk7/PA0Ev059aSDgtmBbaQePDe9CDfhgALiLVEa5Uvb3+R/84AefoPt77vO/TJ0mXt+VqvHMfymVt9Xf1Mnjqn/iRHfummu67V/7te72v/mbbvv48e5C3QZsv/e93cpjHtOt/ZN/0q195md2K+rAHbMB8y4lcNLJpTf7CLpTp079jvT//oc85CF/DUwZCA7WB5az6R1GfTAA3GGmXRyYTqFOEo/QPvrRj36KXuDh9d1v1731ulb346pZOs4yoBNapvu6qm+/4x3d1u/8Trdz9dXd6gMf2N2kjr91+nR3n0OHum2Fd267rdv5yEe6lSuv7Na/4iu6tU/7NK0saMbAQIBb7raAWwteK15lfUBlYJHh/9YLRT/0gAc84GPA5TITP3B3jgUOBoA7x+4hVZ2AxTvez9+mQ+g+/9vkv0CP9e7Lfb6m/nu/z2eBT5126wMf6LZe+9puW9P9To/uzl12WbeiKf5t6tgSOpkByN+AnpnC9dd3O5oprHFb8EVf1K09+MH01k47hPZ6W7ClRctYH9D+Ajr/SzUb+BmVmQ1IzGgUPFgfiAZxJ/wdDAB3gtFp+FdfffWq7/PLFtwf1NXyMzVl1kX3zFl1mn4P/8IqMmXnqs0V/aabuq0///Pu9K/8Sreq8I6u+rib9TYfHV+X547VOz3Hi/SLxUNjWNEaAfkrH/5wt6PBYvOqq7qNz/u8buWSSyaDAOsDhScYF/grA9yWZgAberW404zgGj0teK6eFvwB7Gw7ftrTnnawPrCALc83ycEAcL4tOgNPHX/wWE8d/9NF/lJ1iq/2Nl3F+226M6CGWXR8puhM9zWAbP31X3dbv/7r3c7//J/dykMfGuk7ftQnTi3JdzdrBqBLcHcptwB0+IIoHSchZgTMEt7//m7l8Y/vNr76q7t1+Z1eM47bAuiWHwh4EhDbjrXlmG3Hv6ZZzgu02/BtCD3Ydjwx/Sfz3/X+yZR5r5TFVc5XfL23f6mu8N+jzvZdenR2SNP9mdt0Rw2WO6vC29de223/7u9227//+113v/t13UUXTa7ayivdOqC00tjdpM7NLCDWAIyj3KBznA7OU4Nbbul2Pvaxbu3Lv7xb12/tkY+cDDgeVBh8lnNxa6Oyr6jsp8T677XX4Icvu+yyeL6ZbbUc7AH1shZYuuaWFXBvp1cnH7weq9d3/1d1/hep8T+E13d1BWSBbLnXd+mg/NQ5mfKzeLf1utd1O7rqxy3Afe/b7TBV55Fe6Zx5AKDSz2jWwJX/ELcMletnASV9Bxp+Wh/gycDas5/daTTrVh/wgMkjQ8tZbiBApXOyRbxWrIHg/Yq/UK8V/zxieRz6dVqHOFgfwBp3nDsYAO4g26oTcXPNCzCxuq8FPrbpcp//OUx/da9PetAspUK+z2eh8A1v6LZf/erJCj4Ldly11SHrTowMDwJUOp2fOLcDtQs6Bpji+hC3BRpYdrSw2D3oQd3G135tt/7kJ3crnmnsYX1AIngvYFuvFa+zEKlB8Q0aFL5PC4WvQ7zKweB4sD6AMe4AN137d4CQexOkGiw27Z/n6z7/ERoEXqhG/c1s0+U4LtMsZRd3SN2z6+X/butv/7bb/q3f6nbe9KZuRZ2xI50rsekEXg8C7sjLDgDoqXuUCTa+OqqOEu66D36wW/3cz+3Wn/nMbv1xj5usQejWIlxjYJlkjP7HuwEcS8a2Yw2WvyD9X6L1gXfDoTADwcH7A6Pm21sGbeHAnScL5HvXd77znRepw3+XGu736C2+o3oEhhSu+jTkxR0dmh8LfPJ33vOe7tzv/V6385rXTO7z9frtCh2fmUHV6WYNACwA4haZAUAX1MaH1+sDlOvjH+/WnvWsbv1Lv7Rb47Vi6BgI8M0DyGIubCSb8Vrx7WL5d1ok/fGy7TieGHgtZTG4A6pZFjgYAGZZZ8G8epuu3uL7el3BfkD78x+hgzk0a97a330+C3G6/97WSzwx3Weq/SmfMun0Co9VYnTa0tFdlEm3jytqJGl24qyBX/OarzCFxwDDY0M6+c5HP9qtaGawxm3BU5/arbIIycDEb/mBAHHxWjGbnjQQXKv487Q+8CsILusD8f4E8QO3dwu0a3/vePcqzhe96EWrz3jGM9Z8+q46/ufR8dmmK5/7fDo+q2zc6y/uuJpzhdVVf0cLhVua5rPAp3O7u5Vyn79Dx0purCLHZgGsAeB4IjDo3AUz0tLgMaBJg0YMAsQZCKT3ufe9r+uuuKI7rNeK1z/rs7qVY8cmswGXqeAv6LE+sOVtx9oL8Ud6f+B5Wh/4C/h5bPia17xmS/UA3YHbgwXG2s0eoO5VLPGs3gt86vgPVYd/vuL/nCuWFrJokPQZOv/izh2O6b4WCrff/vZuS1P9HW3cWXnIQ7ruyJHJYz0hDjqk4mMVWQ8AKAOv07kFqLGgwZlmEisyU+cPGv2FbHQHS7OAbW1aWtFC4erTntZtsD7w2MdOBoh9rA8ghteK2RClGdXPaiDgjcIPhA7pVWriB25xC4y1m8UR7mWU6hR0alald972trdtqlH+K8W/T9P9S7UDDmvsfbqvzhOdSC/fbP/BH3Q7v/3b3ZYGlE73w6tM+/mVDlh32rGKbHViaL0GMDYDoCAtXtKtA0HrYfnMfLb1yHCNhcIbdZq4boHWNAhsfPEXd2u8lMRAwfsDlKMaTMCb4RDFtGdDtmaQ/YT0+8GPfexjP8UMTGFU4KmLjHTgFrWA621R+nstnRrY4PVdvczztVrZf6ka46O1ss9bbXvv+Dxj1xSabbrbutrv8FhPK+Eren2XDkXHV8OedJ5UA+58ThqrzFZHdtrMGQDAnpUQ7AXtSnKaU8Bl+hP3PNwWSO8dPS1Y0UC2ruf6G1/4hZNtx5jLA9oeBgI9Mtxg27HWB/5OtmHb8a+h3sFrxa6kxXzX22LU90IqNWhs1D/W04s8T9D08yVamX4GnVKPrLgq0d6jzS9sIt8TM93XALL9lrd0O7/xG93O3+tjPEz36TzqJFypUSA6auqMyHHns8yxynRnNx3+QjMACJPMXl7qsE6z7Ob7BcxsNP3XRwi71X/0j7p1Xit+whP2ve1Y2m2nbce/qQH5Bbot+JuJ2gePDbHDPOd6m0d3r8xXx+m36b7nPe95gN7Xf64M8S+5F9V0f3/bdOkUugLu/MM/dNua6u/oTT5ermEvfizwMUCoo3mx7nwPAO6oM28BqPUFBwBIaUzGRd/egUGcMrPtmPUBPTLc+Mqv7NY/9VM1vGoGFBMoQBJfDzAe0CAc2441E4s6EeUrdGjKy6+44oqPwpXrcBzl3puznLXvJXZSo+nv8ymyXub5F/JeqGfT9+M+X9NyrvrQLG4/OgE/OoFW+JkW7/zhH3Y7//2/szum6ziNh6m+Or6oendeBgDQUkcmusgMYMKWtRFM1UGda0M0B4AJEP9Rdjr8tt4dYOazrseGm1ofWOVlJgY9BgJkVHImzKP/qNG/Vsy2Yw0ML9Zjw/8HDtUn6mlMOlgfwB7Zud5y2r02rIYSU3muKhhBx3F9hcIv0b3mE/WFHd/n0/GXn+5zlaPza2FsW9t06fjdDTo+T/f50YnKYz0qxJ0KHaY6aurImQ5a3FiFqmwTgvI/hTvInUSCo+LrUUoH7eNiQXYMAOLRdHyIWONwiyO386EPdSt6Z2D9a76m29SxZKta8Iydi6wP1BhDxFZM4nfy14zerPp7vtYHfi9kHbxWPGWzsfYyRXhPTihXiP4+v2zTfbGePz9b9/udHj3xCipXEjr/4q5M4+M1XS3q7Wib7s5v/mb4Xdmm69d385U1DwKDGQCS645UaTNWofUA4Cs1twABW+E4WvNFh6+uzh4EQDLu4BYgBJhqgtzHGBQ1uO5cd1238qQndZsaCDb+8T+ePPLkdWPKu+RAoLrS+LbT8TUj3Q5wbPqvatb2Qr1W/PaJKgfrA5NaGL9gOP8e7+fXd9/1rnfpXIyN71Ghv1v3+Yf1qIl2ymOlyeVqUWu4k9K4Fd5517u6HW3TZcrP1U4tc3KV8wAh3L5DKJwHgHylRnyzQ5JR3KIDALjI1CLHQLZx7IdeLo8SIz5vABD93BmABeCDJ1vx0pO3HW+y9fgRj5jk7XF9QMhxq6a6XFFdsu34xzQY/LtHPepR8bw21z1q3BvdWHu5x9tCHWmwTVfT/X+utBdqm+6Dz8vru5o5sE13R8dxsbofC13q/Nzjx+IfFqZjlc4UHatYPQ8AeQYwYcmUw4GD/LEKrQcOX6nnzgAmQvkPN28AQA40zJgGLg0ipA9LQYJSeBTK+ojOHsBG63qb8BDHkmnbMdubWRwN3Bp7IGgqgqhzmsltaEbAacXv14tELzl+/Pj/ByXtAJ9ZA/69zVW1dM8v/ov0+u5Tn/rU/jguPdZ7Os/z1TiewqP8vX5Nd4eOrU7P+/AcoNG98Y2T/fla7Ov0+i4Nm+m+DR4dYM4AAO3tZW3gAnUOSZi41JnqjmR8k9r3AAA9d+cn1KEYBMCtMcyD3+tZEiNedUDTMO0/KVwOGjlW9O31STr3uAUze4ElXhYEeWzIrdIGA4F2HerDhN02jxMlg+PMl3SYb1uPb2PbsQb5P1GnZ33g9eAwG3j961+//aJ72WvFff0sacy7Hbk6wOA4Ll3xH6lCvEBXhm9Wo9j3Nt0VnudzL/u2t3U7ZZsuHd/bdN0Bs8GjsSdLOm4aOtQNwiTO0V2+HTCWWc1H3LzOy775uOq3TgTKOOaLtNx5xduigx7cWxhE1UHvq63PnmUEVsZQwhhGny6sWDTV2olWY7szn/M58f7AJXqPYIc9Evt7rbjTK9trLOxqjWCw7fjedizZrPYS9XZP+Mv3evq81lFNAf+tyvU9enZ8VG+SUUTuFZe/z6dR0/Hln9Q2XY7d3uSZPqval14aV/x4tIWE0nGywd0hyca58TPNPacrIP4tauj4x5hZSE7csyNXaTFtlt/zTWCG/4XWsox7mzoql8SLCu7ajCuqeQ2c5TnMVZ+yMbM4K905ZBR8BoW+zLXejhtYfshy2RSnYthxeLt2Q57Sl4zu+63f2h3SseWHjx+f2ICBAHp+y7moc93ycVtwu+T+sOz8o5oRaMSZzAjuDduOl7bacja+c6nrY6V01f9GVfSL1PEfVTaV7P31Xaap+m3rfvU2vcRzM6fv6oqyzss8atg69C86JldxroR0YjqLDe4weUxm6SzQEMdxhSbkq7470iVc/eAptPjQ4BsT/hYNA8bNdHz5eREQenBxoafxiesHlp1D+L3eCt/UwIXmYuFykw1OlLXo7bLiZ1fTcHgpgxbHkm3Lpqt6bMimqPt94zd2F3IsmQZb1gb2uz7Aa8VaKPwH6cKxZL+MTir3YJ0o63lPCQ+tfw8ple7j6m26T9FjoJdo2nelrv7n5/VdVqzZpsvru1rlv0n783Vz2V0sG9K56obtjoOJo1MRyB2r6gjuwAwE0NORetzMB07lcqUiN8ujgzGYeCCg48fgU2E4Gno35BkXOh5hWl9mFswAfMuCHUKfhBE8FlD52U5koS/8J9TJT6nuLtWegm3WRfTYcPXRj+42dT7hIW071hdIJrcFkr3sY0PE8OO14vLY97VqJy84fvz4nyv9Hr3tOLcVynq3d2qI/eu7ep6v18u6F6gR/h9s09XCj1d6Y+V34cK68aqz8Kbajr6y03Eiz5/9WbzIs6qrx/UaEDbU2OlQdNSWc6qN7rhpcxwaruqfSGsAdAYcnS27HDN2znfYfOAysKBnPhU44/Q8BGp54o80/OLgjTUA4XLg6H3KGoDzw084LVnQ1Ol5YGGB8b5aC9E72JP1AfZQ6PyBtSuv7A591Vd1mxoQuF3Yz/oAAxbrA8wQJftndOF46fHjxz8cuqW2FeW5B/zt1uDdvDDc5z/taU+LM+NUcZvq/N+lyvy/dI936b7v83Vl1yU9FqN2/sf/6Drd6/OVHbbp8riKH42TjnVY01QuJy3nxm2jR5xOAbac881LKlc93GGmwPJJc0cmHdfim+Ts/lsWPlP30+qkDCjg1vy7XAW71XHRuehufnTzacNN3BZOFqawsZzssjKrYJ3hiO0AlsJxG8YblXrysqFB4NCXfVm3vv9tx7Sjdd0qxteOFX65Nhn9hPyzzC7zUyTreXf1qbO7tVMDoT2rbibPcXWf/2zFX6zK+/Q9b9PFIkwlaWB0fm3T5VCOjuf5utLz+m40/tI5aaSeqvpeHIjauXHb6BGnIY8MAPD7qg+unTtFH3eg+LuUuxm9rJIELmnGhSdodlkiVPP1NFmfwgOG9VV9VEiKUtbidkNOmfh1usuKT16NG/TUk+SxyWhFi3ob2nZ8+Au+oFvT/op9vFYM9Lm07fit2gz2ggc96EF6h5uixPsDd/tjyRq1RPHu+k4VgO6adfbHbj+e+3zdxz0T7dmmq7w4uWep0tDxdRWP1X2mgeX13RW26fJYT1PMfudaAaZxxv254kyD60Zs+U630SNOpyidxfnQQ0PcuO6o5CEvu2FswpvzCQdN4vMAYH0tbx7fQFalNxiBKzk8VRjQhhLDlGFsIrlOc1mNW79hOKBnsGZBkKPT9LjwsNYHNvU1o1Xd/sVtgeu2LuSMuJqQqmBnx9uO9ejwN5T2wnvKtmO3xRkmuOtlqT76+/xrr732/nqO/zxpyTZdXvlUW4mWrsvCEs6dg0akK/vOO98Zz/O7178+DubQjeHksZ7pEjTittS41DDmDgDZ4NF4was6EtDukAwAODqq3aR4jpXOXaK7VLv5hHpZJXlfA0DSpcdWANljHTXEJttNShWpg7863WUdwx3Qg8/grTqMrxlpIFjTI8MjujXYeNSjuhXNFPpPpFVlGCjRjnAvtqqZ5YoeG0qtnZ/S7OClmhFoW2MMyn2bbLPfNVPH2stdUlsZnU4dx3GhYNmm+/2qlAeq43Nl3PtjPTo+jUePmWKbrt7dj+m/nufzNd3+eX5lmWiAang0UIw5dguQG6qNLn0naDMGAHBxd+QMAPysH3G7SLeeJbGnrfT2AAAZg+HAjWEMiKb1sI3wkVvj9rrUONQlHZ6vGWnhdkObjI5o2zGPaXlrk4EgsGo9K5wqirjYdlxeK/6QZiQ/oNnAz0DH+sALX/hCwd59Xiuuaqkq7l0kqspXbdIH+un+V2q6z33+E/01XeUzOEC3mKNB8vN9vhaSdv7iLybv7bNXnf3pOHX+WUZyA/VU3VPqCfPuvxtqxnKaqeo46fNmADVPxjcuvvV0Grjw8mKRXY1FeqRhp+L6EHykF37SQRq7UgetQeT3OCmNYJ1uvcdwa3rDBR/6MbDL52nBivYUHNL5A4f1teM1ffl4H+sDrMfG14752ItmBGw7foFeItJVA3Gx2zAOjLE+d1V/t/bvghrKkOinPjXp+DqV59FaiOE4rq/b1zZdN1we67FN961vnezP/5u/iXfP4/5fVwjcPAO5gdqXrsFX/7mhOjfi1kPEzocv09QzgJ6vCMh8mbdk9571c0LGBQOZNRa0o/JSOc0XGCpT4KV8cPY7AKB/E9c6hpDdv7q8nFbMq9rbeptwTfsKOLb8sNYJVvRSUawPpLrYRZkdUl1rHNV+Cj02LNuOX6kZwfM1I+CFIg8E8WRqNtKdl+u2dudpMCJZhu3vqdimq2/LP1dp31m26TIC89v767tMA9UYdnikx3Fc+qAm23RjgY/FIjXgRYzjhuYZQJ6q56LlTkJ6xFOjc7553CHrGYDlma7F57zs13x5BlBjDPiIoGdxEao6t3PReexKnTGAMk+B7b063XqP4db0BjLfIJ7XB/QGJ186PvqMZ3Sb+o5B7ELkpSvKVpXPGDN8XiteK2tQvEr8E1osfLm3HUuXvi3PwLhTshZp459UxWQspvL945WyTff5Oo7rodzn6w2tMLZoFtedBsyPFXzuC7VNt/ujP5os8lE69ujT6bnXX7Djw5YbmcOtGUBupFY60kYGAGjMk6/UtcyI85ec8VNSBK2f06dwnVH5vZ4lPeJVB7GuobfKRHzKDpQ1uWFsktFMK3zo38Jt8YBWl7enA0/tIDo827UV39Rjwwu07Xid05n291rxlmam6xoIOh1L9j7Z4CW6LfiP6FO/lk7aXcGNtZdPum4soOQXLNTxn6rKYZvuF+xnm+7geb5eFtn6y7/sOh3HFe+Uc59PY+bV0j243MjqDpXh+sanRBs8p0Gb49GRCsAdOQNAhJ8uZPlFdHiRXjohCRGfMQCMXaljAE7ALXnNtCJ7DLfFE3omnXu9a/m6LdjWoL+l14o3dPgItwVHtOtQS/2xPrCPbcdxLJmeEnCa1OvVTp6v/QV/UvRaf/GLX3yX2Xbs9phM88kNyjiDbbof/ehHrzhz5sxLZLznaNp/fl7f1b0f23R5kYfPbK3oTbFVLd7Uz/MXLXk0utTAMGI0UPn1LUBuoDZ2z186UqZBhzwA5IGl54OouMxrfOdlPw9WpFvfsUVL89Z8vbyG7qG37ALNXXYGUArmcuCzPrB66lS3rT0d63qB6AjnD+hrxyt67Xg/rxUjShew2HasNv1fZUv2F7yH9LvKtuNZbQY971CXt+lqge+wFvi+R6v7/0av716olVVkc2ne+32+mDlrrtPXdDt9aafTW2Jbmp7xWG81dWCRLeyi4VS8GNHbYfc7ALhC3EDzDKDujChtOsLmJVy7mneAWxOXeKuskTZvBiD+2g57mQFk+cvMADIfRYl4KZM9pxl3jdtDbg14rVg/Xis+oncINo8fn/BrfSBmi1XZjTfDjzbMtmPdFtyigfFHdFvwI/J14OGdv+14VpuZUab9ZdX3Q5ruP0eIL9BjvU89L8dxUZH6Wm33x3/cdTqcIz5Vff/7x33+Vnn+O9VAFyxS3ZFswHkDgOnc8KJDjF1Fky6DGUA18PRYhd4yEnsEa51J3MsA0MtLncBplu0OVb+xd2cOAJTXehLGOY5t0DnOQ8C+PBbWYiGnFbPtmMeGR/S143Xt9tzn+kD/tWNd3N4huRxb/kuhy5247dj1Fka5o/9UaOT1j/XU8T9H8ZfpMcoXnddtutdc0+38mr4UpSld97CHxci+Uu7zafgosewA0OpE4LghtXCdl40caTS0RucX3GD6T/zuMgBY9xgAFJmyL2VObhibZDTTCt8YbpMHuCRvlCbIqgFgosrkbUK1GW4L1h7zmO7IP/2n3WGdWrzKga7MBlg05qnCck5Mu9uOdbH7Q80Evl8zAi1MofIn/7Ti3DaXK8qS1BROhY3Vtuuvv/6BeoHnRUr733mj6rxu0+XY7Te8oev00kf/Nd3SGCQ/DpegcU410JHyRONJjclkNpwbl18FzrjOq2mjcTYGAOjMYzmDK3WlR01rOea13xq8BrgmrPzATzIH8kb0p6PymzphaAwnyRzgKz3rPYZb8wCX+SLOX3KZJwYW65t0pI7iHEetD+xo2zEbjdZ1AMlRfdbs0D63HdMPpKO+nH5sTW0fdf5fvVD04vvf//56PDUZCNxXktp3SHCszZw3YY1tut+twn2PHuvFNl0ZYu/3+aocrqQ7essrtunqOK7Yplte32UV11daF4gKZyDIHdV59qOB5MbgjOLbaHVDItu4zjMteT1u6Tx9GgE5aM0XCfpDX1zGIV7T1fnQ4HqZk2j/b1z0rbFM1OxISXfozGv58HCZsx0Cq7KleSIv/dXpWT5h8qm77Goe8jJfxDMD+Slu3NC3pSdp3BZwW6nXijm6nENIjmrb8aZml8G/t9eK0YINa+tlfeAGhX9Ytwc/8bjHPe6McFeuvvrqtTv6WLKhNZNh9htUAZgfqUyT96L13v5XKfwSPSP9DO3U0wJ8vGrHAt9yOjD18uu7bNPVoRzxlR0WDbnqU2F0/AKcKxtBt2lax+uvzf3qwTX+Z0UzJmEKyum9NCLvVzfKgMcNrDTijAM9tE4zLmfs4Y5ouknHGuBFzuTP6SkpgjTQ7IhBy/kF5B2lYWeCFG7xRnbqhMbDxw6cX8B6iHFDr4YOSUwfrPVAvnE5v4CzBnyKMbg1vYFG9S4E8BkXTLA5xTjajkEKTYp2O9CQzrZjvUp8WO8PHP38z++3He/xsSGqxLZj7TjkteK/kf7P10dMtHiFSsP3Ykg7n26s3exZhhQePNb7wAc+8HilvUyF+wr5+z+Oi6s+UzK26XKfz+k8fE2X9PL6blY+F5AO+jE97qHzcximp8GZvg5nfvJajY5HadcLd0OddOxEoOCjI1Sdx/JaDRpcTgXGXVqdNJT1qHU0Jj42rx12yCcCtezQ62tm8UwjOXPioy9HjeVTgSOn0mEMp0637uDeKlwGw/vp8S3p0Nb01sZ8fdyB4psPXAZujjEDlwHAeZDm8CBe2lq8VqyvGB3RQHBEXzvmZCj2F7DZaK/HlrPtGFm6RX6NrpHP00dO9X76HffYcFbbQe5STobv7/PV8e+j+Av0+xda3V9jm67ANPOMhY7Fcd14eG+fqxZf02VlnxV+rcz223Rl9Ny5BgKEQSOn4d+oBZxNdVRfSWgEVPSihqgbBff+xmVmEaf3Cg9cO5XZwV1/RK4pjcsx2zTMC9XoMKBxTbcrZRe6D4nPdE7DDvAwE+I2gIEw45qu7gykGwt+h01v+4IbpwKrvqDhtc7a1bzOH6QX3QNXBHR+ZhcMsD1usaH57df2HuAWItsBTM4b5AxD+Mq0NagCJ9fjrgBNd1bjGxDbmnlyC7qhR4YXaH3gcPnaMd8vwGnWa66FfNGzPrCmPsO2Y26Pf1ppL9VCoZ5P0hR2+9hCgHOIltNuBAyF0U2K0sFXtbr/bYp/n+5tHqRCoDQ7a5ab7qsyaIRxZWf6q2nXll7f7Th2W1fwFU57UeUxKGBkyYiOSKOmQ+I7nQZOx6ewTE+pZGjosHEoZuIhnQZjw4ALjnHd0EmHDlwcuPDATyflit3zckVIuPDhrF/GRw6ux2VgkwMTukvUYaFwGUNf8dgXUdBDw+nE1tu4Pr2XODQeULCD9XenQzK2go6fHXTk4Ycc+caFlzxsi+N48BgEFHcd2YboQJlwxjeN9eVU4MBMuNAycIXuCRce7OAF2Wg/JT/0LGFkMrAyUJEOPbM3+MHlbEdclF/hHrfgo2PYWT4LhZxDuKXHzjxpWtFLRJdo2/FRzUqZCWxLTpSxYAbw/D/UYn1gQwMBx5J9UPEf1CDwM0qT+OHt9Xy4cYpJScfzZ+agyNVXX73qhQp1/C9T2svU8T+T+3y9/cQIRv0vJ4dGTydXZWyzTVer+ju/+qvdjrbprjDdl9Fnvb6LsKjw4subVKL8G9SgDomfK7UrlvyWAwNX4zlOnjHosDT6uFKXhkI+jbDXZUYjsKzgCbZJ57iZWwDxxTn7worGZKIRv9cvyy601pcpNR3Ltyx0HNwsXpcDutAXHmGgn+o9Oh+43Ff7ijpBTbiF13Ls95gKRBq4cuhLmblKs25xWblSZztMKIO8t3eJ9d6AJuEyA+A24DINgJRlFLdHmpS911s8lJ22yqPBc9pgtqo9BUee85zuyJOf3G2Wbcd7WR+QLir+TnzNyNuOFX+e3h/4fdRRmIvqvrYdU46lnQTDpwG435//qUr7Ab2++3V6my++sqP8oFkKXIakMbEdd6ts013Re/ts113hvX0qSQ1sVkXNKhCN3GsAdCg6wPlw4H5cHZUBIN+rt9BzmnXNaVkfcG/Q2gI2oYGib01rjMznsOrEwd4nhSun1wDoUHSy7CJWp4mndtDlVPRlDeCMOpW/DERdZTeM7ebU6Vl3cLlP9xqA9a15QMt8Ed8V0YfMBy4Di9cAMq9peiYFmmkuHz42Uj2t6GJwQmtTJz/7s7uH6fsFRz7jM7oV1i6UHvaAbjkXW4pZH2DtXL9Xqu/x/sC1wEhvBoI9bTteWhOEueO/973v1edvuucq/h266h/WVIXbALXTPdznY0A6uEZRztk/oWO3V/U13U1W9tmmq4qKly8wXjF2Vr5VOXU+cSp8XTMAZgGexip5aZflgdufCqyZSzRQN4xU2ZkHgfDVaaTjSGcKDy6ufroQifrLZXQafm7MTrcseFioo/zGzThBZ/3BMgB+KU9OczkCV/XHlPpIWTGPukr8mc/JzbQinzxwmVUwZffTBfPWfl3uGttxfG5vwAT7qOotO9M5rY736clOpIV8ta0tlf+UnlId0aPDzWc9q7vgmc/sDj/ykWE/1gfUT3pbGmueT78Tvj6RePGK+tpJhV+hV+dffvnll99UZPd9cx6W87HtQq68vttv09VjvX8mBV546aWXPrxs0937fT6NRb+dD3+427n66m5bm3ZUsG5Fr+/6a7phsKwphpcR6wLkiqrzYKdzkj6Fl7FnhDM+ZJbhq1LgFt0yzBhfnW6eaEiKGJerVU1r2ebJvvmdlnnhA5c0cGvX5K3o4K05SYO3x8UOlZtOqQaYQl/rUOvbwoG15qvppuLWd46eNZ/JB/LAKnYKO2ggWFW73ua1YoUPf/3Xd8f0MtHG/rcdx9eOy7bj90jWi/XY8BdK+Vdf9apXrVx11VWTK4cVHfHrOpwiE3hZM5tM93Wf/1SlvUxvMT2F6chev6YbV3MZJa76+j7ftnbpbfNYT8Za0em7aB+LKqnhDZSlcY3kjVUW/F4gajX8qcKXhBbeQBdwS2MP3Eq3mt+8dbrlR3rBAxf6ZQaAzD/ALJGwg3Ch8yLggK7IHqRha9LdwBNWpnNHDdwKB7rQzQzFr9MiXvHG7Y/S/IZhzdNjV3w1XR0PfcFNbanHSnrWfM5SX3Aw/IgLCx/saA9lfWBbG9NWjx/vLtBAcFS3B3ztmNuCfTw27Lcd643CP5UC35e3HSs+d32AttB0KgB5ssuk41933XWX67CDl+r3HBYkzsvruyr89t/+bbfNff6b3zxZ4ON5rAYWOirGqxv+lMKuANHWecOqmRSThlRGtL4xwpdp63htoCwHPuLx0U359SaYjAuOeet08uxyoxoMLCaQb5yU1AczvxOzPHijQ8mfavi2Z2EMvpHOkXUw/qwBwDTWyX6d3tI/DwA1fY/T0t2Zxa95kYXO2Q41DazNtJY80uoBAABsqIGA14q3r72201dsumO8SPTpn97xZekYCIIsWxXGuS6u9LxWzPmYuij/V82en3/55ZdfB6fKN3N9oCktb9Pla7o67+y7BcQ23Yv1WA9bsOCwprQmP4KnnI3FaCi3ra/pbusrOzvaprvCV3Y0Gvb3+cpvddRgLH8DwcZODXWQLx6UJg1c/HpgUdJMV+NBnBsFtyxUcoz4BSnnk2SMOr2Qh0eDzM4dKuMaJ9M5HNwVxhBx1w7wZNyZvMm2xst6OA19e9w5ekBnvmAqf7UNoLEd6KgtHlhbfAUyvBYfPOdrAOh1QMeCm+0bSmjWyxuFPN3qbryxO6TTii/U0WSHLr88sve4PkDRGAjia0bqo6wJ/Kj66I9roZAjynTq3eu0leHpPJUbuFyHU8cW6T7/GwTyEvX7R+qKr/55bn/3+Vpo2dFZbNv6ys42j/V0pV/R/RCLXdH5UyPLMwA0blXeQPnc2ArOIL8UO78H0MKErMVX2MPr+SxT8vKtRZ+fmIzZyjNZ5BmzJDJg4dyQjFOyp7x5nQAGMOKKKn/qylfJ7/VNdeO0rIvTckdVL0BcuN2QU8bTW2UIXOE1PzhSIFt8WVpLhx63UT7ztvjIa8qjzMIiDxtn+wbPhHHyWrHoOK2405OYo9/8zd2F2na8oXUvHhnu52vHehK3wSY7LRS+U3q8QLcFv1z0nfracdShiPCl62S6r47/JKW9nG26XNk0tWDkiJkzQAs7rorlPn9HA8i2tuluv/rV3Y6u/tzns/AXj/UEKNkDWCqGNFKd06oI5/XMpQKi8VWY0Hrlf4qvB5gOtOQGlWWBS1iuLkek6W8UA4LiaDS1iwaqxEUGgBZ/RqTMjltf4yK35g/ayobmr+3ndDAI01iyc35OI1yn1zqYpseVPjWPaaLOiRRX09VxyAJXOg/sYIARHGfXugY+dYiOxQ6z7BQ43BboyVS8Vqxtx8e+4Ru6Y3ztuHzNaB/rA9u6VdcDr1Uey/+B9HmuFgqvQabC/W3BSp4a6PXdh2hf/gvViP83Vhi5zy+FHD4jsQXGfIyA47GervLbf/d33ZZe39358z+P7+qt6J3p6Phl2gxp3XHyFZV8nI3ZqkjnTSj1Xyoi/GCeUBi3OTIXGS38AW7Cczq4VHxuSEFWCGZiiqbY2XDhw8NVBM3Rl/hUOYNy8ldj1DLhdZoHFtsh0l1vBTPSJDc78+dUp0EXuMIxrnkzjdPw6/SxMvS4TKEzQAlHWtJ/lKbiBZeLHI+G7WreOt7TJXmk9TqUAWBsBjAoozD6bcd8io7zCb/kS7oLdWtwVANCvAzH+wNydR+JxNl/3KrHsWR6UscTvJ8TOQeV8mZh3BZEPUqhDa3uf6fSnqttupdp6kCD5KrPSLG4wyD8uM+novRppi09y9/WHv14lq+3omKnngyeG1AvQMo6nYpBecdNQ3ysQqCp6c3ngaCfAQi7d+iMc5rjk9Tdf+fvpvS6hL4BsYvr0Cx9gRo0iIJtHuPWA0sh671ZGBChizGJYwdsYtzIS+XuaVOZ+zSxumwBw19x6AHdbncayjUdfsZzel0O0/S40sdp5gmspHvEc2YJj/GBbTu0eFt82K5OD92LvQhTdxnX2EGX9Asc0Xrb8bZuk3fUB49oNnDRl35pd+jhD1eF7fm1YiTlbcefUJzXil+h/nVuRVf9p2sE/Gld8R/rbbrKoOPnOgZk3KG8C8CURi9AbGubbkz3NaqtcJwS3LzMk1xTgAxIuq/UtQHNbt7AdWLynZ+SIjjARWc3cMI4xyex0f9abn2lHmWsMurGQHbGphHh6itqJJa/oLD+Oa2EbYsal7hnFlF/hR6vp032cJrxBnSFF30pU9bXfIWk9+r0iKdy5Hzj1k9ZDFbbMfNCU8fNF7jqXHMfL5qh+LU8kvs02YxwPQOwDj2dsYpvL7YdC2P7/e/vVvUJ+gv0NuGF2na8Xr52HK8VUy+pbsw75qtPq5tvb+lt3Q22HWtG8LdK+5cruvL/9gMf+MCv0Gq/3jntNGcfDN5jeLvpMl7c53PV1+u7W295y6Tj62u6KxzHRbpuA3A2wC5ze5SRYjF60tAIjznntHAzj+lIo8Ln4WbeHJ4lx5XKgDWLboCXGrvTa96Ma5raN01Or3FyHuGYAcjnSh20SZcBb7K/07M9nQYmDl345YG7pgm6oB7+1eXIfIEr8lZ7CLqkfws/Y2Wptb41XR0375SuWT5tQHHa2pQdlJYxc7jHdoCLKY/KtQN2/YlP7C7S+wMXyI9tx/t7f+CMPmp6WH3+t9al6K3s2JPjPj/P3KxG23eBtYLJtD7u89mpx9d09aGNFV57pOOXzg8IDacuMPHcoKDLxqvzyLczlmkcd779nB4Vpwoyj2lafuZr5TsNLDrUIpjmCT0cKX4tz7gV2SA6D8c61dgy8qQu6OCuy4xcpZvfeJk0h9HHtKTncKZbNgwOHSrPLHqMlv595uxA6As/5d2Pa9hrL2Uf8KjvcK7AmvYSbGsj3I3f+73d7Xql+CK9WnxU2469PhCaL64/fXyNPq/B9FYGAL3bs8QaH8bix5VdQre0TXebr+z8+q/H44zu+PHJfX7ZxbaITSn0fsxvo2UMp9XynW6/zl80nmWZB8x5uJG/RINtycnyHN6LD3atbx9vdIpal562El7TVdnN6BhWJm5d/XO+w4tgmbZlA+eN+a1Bd0A7o36X0S0wwdILPiycr2hR8LQeoX9Ux9wf+5Zv6S7StuNDZdvxsl87ps/T95db5GO6z2DB1OSmm7otfU337C//creilxpW2abLKMTURP5YZY0ZHMMMGo4KHsYS1lTewNq7kaAvUWPltF3KvYWMae6MvYiOYw0n4xjb/kzcRkPLWNY3pxkXP7BrDOpwn25M3kzYSo8WRthvD/q1sEKXBWTO1HksEx0r7DHShdLBY1OYfqusp6kf3v4Lv9Cd1Et0F37TN3UXPeUp3brWCjh7YNltx8sNAEz3dWXnPn+L13f1Nd0dbdNd5V4/TfWj8DMqiibWqhTS6ubnThN5MzBrQ2b8jEnYv0xT82eenDeLJ9PlcPCMNIhF8Fo0tsuUnJygcIsXkl6nZNM+DYIqvbZHE7cqY5PGspFxHlwto47PEzGLflZexg26XPYcLoSLYmXcZrj0s7VHParbUV+8+WUv627X584v1vcLjj3+8d2q+mh89rzJPJ24+ACgBrH9znd2W7rP3+ZLO3xo4/LLuxUU4jllajCI8WhdNxyrQHrLKKSRxwyi5gVzbGZh3JZvOcY1TY3vdNMTz2Hnt/wWVvA2GoP5x7AzVg73fA3MGgu+Os38+DPzU13Owsh4Drf0dd6Yv6iMZt03bDEmp5Ue+qbytmj2mjZli0rXutx1vCmXfiEcOj+L76uPfWy3pRfrPv4d39Hdpm8XXKL1gcPql4vOQOYv+qE0z/TV0c/+/M93W3xO+9M+bfJcX2kn9WiP12txUwWoClwXaMpAhQAc9sH7mK2MyyAQvxpsThwM455N+jo9+0A5Pge2LzP769lbTpmCFxkzyg/NLEc+WOxV5zfAncU4J89yweQ0XDoVaZHujjBDb+CNkUXF4KwEnWcdZ/eN0mUmhyt5Gd9h2gKn94zhGqr2zT+VXmSCS1sboxvj69NbusuOPAKscReV0WM7ICzzshAauNQV6br4rujYsNXP/Mzu5C/+Yvfxn/3ZyQxAfXZW+zP0/AHAlBLGqSZxMo86/qqMBjMHbFBYHnfQSGtnxet0x+HJfISNS0dtzQSCl8IbZAE/cKUjxqOj5sczC7CPkhiXxhkdtVTMKIMyWnqD4x+8ERYWuO6opLdcxjNGTss85FN2BiywLUeGnpDhO1wYS06GmQpDAy62DVyFF+GbAqoSMi51N9bOKra5UeO6o+5ZV9uq+ODwc0eNuGnmajVOYBxw6XM4y+K+n1vwVd0WsFjIYLyoW/wWQIjA+v7CV+corNKJI3iqY1mZ0iDAgGdMRSrEhQWPOIWewhXG1AiXKqHGB8OGwUffUVywk7O+9lNWYAxw1QEybosn8zvc1LfPlB2E64HWyS3fOPZrGnTjZxf2VQQ9cfZ7Ctm0D09I+nhftoIJnW0xq96gy7w1PmJME/qWOOlsuyYv2oPkmrfHS7TQ40wziUl20tfvQ6Bvj1sIM98AX7SDeKEnLfDAV5g4uLRTwnbGte90/FZapBecwFWdYBdoA7e0e2YDU30C5hlu4QEgCiPjI+CsRpxbdA/ClZoRn4MgOVeNk1U5VZVGEFNLfISjYEqj8ijAgAYspXFaKzzgUtkcM80prRezZzrzlEIDjyMPXBsFQ7mRMHHkDDxw6fhgc74cz5TjmOkK1xgi73HRFzwqNOTIRwa4lM0DIlepGte8LjO48Lj84GUassFFD3BxXLHRH31xtS5g2cHhMmSbkc/hpeRFgxc2ZxkSB5f6BCUamXxjoGvUIWklbHtHmZTuMwaJw/9xzjKUo954yIx+tl1d1iAsf9Y3cMXj03uJow/fScCPU4HhEY11yfi2behdeJ1GOQOXdP3g47BYwhzqSntDBr+6brAPdBlXSRNa+beqvTJjw4Fre1+gp2ccRx+4SkeXbAfrZtwAcNkU4eBSZlbk0y+ifQiHI9IOTR7pxZ4Gvnq92xICZebfwgMAKDRsNi5sSuB9eCIgd6MqhDP2+dgGxcZgUQgyCScXsZLfv9CRaA5JeQ6phA7DgcmZdRgNA8UPvMRDNFxJs8RodGQonQoHFx/c/F2AWfrCbll+U4KDP3E86gSPQ0DxORabPL4w44ZjXusdsmDGFRz7tof9S4q+NFS1uKnvAgABbW9TEopDfu+SHBpudHSlMWjTAC+S/viWC55tGBjwG0MJlLtPV8B2AZccGiq3QsRpD8aFx+HeV9pAV+IF3zR0dBwDKx0gjltXfEpHpZnHPnoHvnUGqDg6OhhgcjFAXxx12fMRLrZxHYLXyzY+dMVR/8eUzsGoXLzQ1858LiOYOOvr9Gxv89LR+cUFV7gMrHDHDxz9eGkI/Qc6GmDEX3gAyKBhjCKUdArAbiqP0siaFK0tdTRPOFR3NgyzCkbSlhvFaRBT0MAVFkayvg3S3UZpuaWsQVvSLBscDzbgb2jAQt+4ShRwyzVPS2adxmDiASNwsQNERb7rI2O6AeW0wC36kA4u9RU6KT5lX9E6L3jTn2WmpD4IZo+rcNiX3ErfnoEs/bKug7gw4OXdf+x7qlxVjRv2LdhgDnhJkGulqXCBi67Yd1W40PUDe80HfXIRq9L67KIv7Uu7byIZOTj0RQ6OlFq3Oh6E6c+2jT4mrNC/4GTcibTEOCe48AAADoJCURdGPqe/Ysjc+U2L31IIY8xqZORz5aeQ4I4557Rk1Dxcjbj3Y7rExg+2gEZaTZjjoo0Go9G8d6VC+7gC4ICLHej8gVvTOS7ZgalRvOmgE1Z8VEI6MtuifGCG7ZXvcmf+VprzY7spcmnsKgtYzIKwrRtU2BAa1Sd07rg9hgPZp25KuZAPLh2Uuu31AZMfmPyKiw7sCD58+lHuXnbBNu5h6Ua4xy75GcbhoCG/lo3OcvyjA23Ms8zIWOKvLoMx0ZG2kHEnUifgObyouOCRvtjWJy6HvEUBRuiWGgB6DAxbHMcpu8KdmgtI2OnmwQ/jCaeVRz7Gcx5+xiQ/u5xnnpxP2OnGHdOr51PD2daRTbz4xNOPaEil8Zgmy90seds0OIVznmWT1j+/ZWs0zpj4dHwNDGwHjQ6haV6PK1sF/4Qr/sGlsTVdqaOwszr9Dq+T6pQYjl+jk/X3o2IO/ZDNbQFfuGEQKFNMsHNZBrKse6FhmNS75bGHXKdRTvgsW0e+reiQi3ijLYOAIXnot6U3SjkfL14zLzTIRj+dPxc/BjPK1Hc+ykk8YxJGvsqDvVdl6xXtgMu7UcGExwMALDMdetau2LivQ+WHLeUPcFu8CauBnHJ3g9B5YLGc3dy9hZYaAELRqjBcQdTk+0EANWxcqwRfU2HxRp4NaQb59QCR+UOPRJuDrbwBL/pLXk7L/ORFg+K8Np3cevhxj4vXLOMV6AHhMEJHBHMUF3J1vG2djHRKL1Sd4nAU7kO5x2WGQQfUbko63gVf9VXdpvaAr6nDuINT8cs62yLe4dBmkpP6oOoZHcK6qs+nMxPoOxGypdeKOulFV13Vbeq17lU6zCyZVTuwbr2+JYEz7s5oQLtdh76e1WGYIduzHzC4qmvv+5pecb3wK7+yO6Qj4lYZcIujDJQcnx9tDX+eg2Zbg8ppDWi3ytbntGeFrbV5EDCG2xrxMexm+ogNjIstvEbitKX8gp9lR7mUzkV3+RYxLX2pAcAVMRjxUKTRUHraIhPFxxSmAloY0+pOUoyTDTNGS/qALuna0ilodXLrMb1VdUxbL6ODUhHmK5UScYdbwqF3fhU+ohepTup38y/9UlyluOptS+aa9ntfIrmHHvrQCaL5iRmj1qMlu6Tlch8+ruOodQLtzdqteZve5uy4KmoQWFHnZ1BaV/5l+q7dIX2IpR8YZmBH2Vq6KK23K/orfvTyy7tjkn2DDoc58drXxncdoyPS+bWn5JC+sHtf7XLbvO99w2aWn/XvVRGe679PS4Gep8g+pl2pF+ptuev1AttJ7V1hNjA1C0n8iwZ7OTMYrOcitDNgprLc+Wtc4jmNsHWYAlGC1leW/IJPJWAM3ILJX1QhV/odORBgBOtT++RxFWbb5TFdgS/83M+dTIk1haQRu6wuG+TGiHKWzor+phnkw4Bzp9DOru1nP7u7+T/9p0lnFB/vcx/WlZ/PooVTmgeRjBswE4r2f9HF8oNIaQxml1x5ZbelK+4JXRX5xr3fJIvOr6vvVnl8NwAu5Q+8gj3ILxHXt8tPsnnWNKO4j063OafDYs68/e3x9hpHZK/rbMj76au6bGbpZVNu80ao/BXb5aSxcF928WwI+/4aYD6kr/Sc0yEbcSSdZmM9zRiI02eUuSdxoPYX4K1Z9hyvZE2sOI6mdbAVZlQLu4HBkrBBekFzWq0E6c5rCfZA0MobS0OGf2M0c9NpdOrsTEUv0GuVTNe5V2ZhKgYl8ukIxXc4x0lzun3n48cPPCnD1JiZwIY2cGzpU2iHtaHjsDZV0QlCZiXXePgO95jGLn6Thntn3RNzf3+hPlrp+2yOpz6q3WRc+Qeyke/fAjJdzqxbHxYOO9UYBNi5xn15zDx0m3XhF3xBt6Fbkm3SiryW/q20Vvmn6JAtbH1mt7v4C78wbjdiPac0iNwWczi3lzq9jmfaHKYt17Tz4pm/Dve8xNSzVgAAQABJREFUDdyadtH4UgNADWqFaNAtRz6/sfwWD2kxCNCYxwhmpMPT+sFSp2cYGh9XpI3jx+PeO7ZV0vCXcYvSQ6fBZVVXZO71d3SfusmOykX5Z+jkOmmRRBk17edquyF5LLyx5hB7ytOA3uKNtEVoRpjprNiUaf6adpBua5azqk65yWeyZIt5ZY+a2Kt9kC0ZhzS4xy2A1iBsJw8iI2rPTp6jTwyKsxHGc4utrWcm3BduBlJ4XwMA09MY5eY0DA8CuTuR5l+lU0SpMD8CbBmhxTMrrZdd6dqnU5lcIVkp161ATL3nVPCUvAp7Kj8lRJk06Kzy4VMGA05KXlZewiMYA+c8HZS/yko7x05z1dUgFAt+FdZUdB5uYhirV/Rju2o8DdAMqNOMoJY9VteRPkeHMd6oY2Szl4V35TUQ2dZuv2O8YdNUtj6ILkWfFi9pbr/madE5b56feWvcebyz8vc3AAi570CzpCjPBWjROy9DxMgMXzH0aEVkpgXCxoXUuthfgH0myZ5xKOP56PwztRtmZjv0svepgyWM2SHSR2SM8czDdP5CfkN22KGRPobXaqstWsozr0yjWDMGFmQ1nwgVnpYus9L2PQDwqIOC+DdLmGlaxnGe+WNkdqT4kaaCQrtX18LdK1bNtx+9aqxl4nsZHJt2GGtEY+kjSo7ZIafnMDDE67QMv5cyZv6xMLhjV9RRmQvYo2nfMSWWTG/pO8t2s+CXegwIUBZER2Y0ipGuGIXXURcZ+cZowCdv5sgsWb0eC8gTXO8GV74+9TwElriKZGl9OXLiEuHRRjoHY2E7LNDY54g6L9noO8tW8/LG2tvCdqAUDVvUcolblv1g5e88ueYMYI/YS88AcqGQyWg0MEIdH1FswFPRkBe4DYNXpFEpMdouKncOXV2+KXljCei6iL4V/17lYaO9dn5UaF6h6kFsD+WZVa97LWvoO1Ga/6VdLTfr6LazCKj3WsyjjboR0az6yTosgpdp6j43S07ma4WXngFkkLjaq5HUBqYjLDITMJb5MQrh8EtjtKFMY56mj9ycUTAGvHUjz/QKD/irvLtKNHTcQ+es9V/GLjVvHb8z7XZHyF6kU82Ty+xiaVfqdSb2XnBHFFl6BlDjoGgoWytVd8aaMcWNYXPh1xVgmsQ2P4gx0aP6mTEwSx50dwcXWp4nXQclrjHr+B1onKiHefifRH1mqlK38xnEtq/9GaTLZSVb7Bd7qRmAK8odda7WUjQUlNEW4XFhoDU9vtORl8OmIX1hV3TKOPASrwedhTH3QRhyZZ9anxbkvvSj4aaGY/ym3Aad6Vt+E6NFSNqS2GMwTl9KNuLNOMOfsjNtxh1/Ef3n0Cyig9WraSNuXUxU/Jq2ym5G9z0DcCdE+KhyGLApvp04ilORW+Yy2Est+lTy7szoVKPcpzJT01M3qjmNtxa7jO2D13IUcf3VmM144mvm7yHRuk/ZosKKzo9dkm3Mm0mdZr++eGXaZrjgm79Jo0Rw3e+yTmP0s9L3NABkBTmowQd2kE5Dzfm9cNLH8nqi3QBHYPk4rN3U8VDIVnb2M7V14rimOGy00Gaa/YTrhZmlsGjcpfJrPnD5Le1yh8nhAsSpPT7ENNCRsRc5lWLU8Zi+yFmmDWTowM0JYFXxudFUPnjpRLRd2tp+nXVBT3CxwX5xjYluDoPLKUaO71fvPQ0AMfqoUeFzBBRGBChGUhqbfqFgo+HRyMibVQBwblchfSqwC4m8/COd+JizHPzgEy4nqnKsEjIGvNKL9+PZGde/KUbago73IaicAeYM3qCTHjv6ejLvpsdW4CSPhoStsC2/eVepKVHw4+o6IK43Hk/demt3Sm888l0HXoHei6utQ5lshxYeZWDzUZRZbyPyKjJbduc5cLEHB6Pa1bKd3vKDVrLZE8AHbP2mJ/pwkaGtRX2IOezeAsFuxbVk7+Zi8snBMODicl6LN4hcXxV95JU0cGljPhXYefvx9zQAUAgUoWHiIo5PXD8b0X4Qlb/gMF3hnaDs4uSORJgfjv/8cxr+PFfjON7j0bj0mujZ667rtuiU6hwt/Ws5E812U423mzIdClxVJptzTr/3vfEx1dPapYbtbL+MEx1HebWsaeQqJTVacpBL4z+rLbjn3ve+eC12Sx3y1Ac/OBlgip0rlGa01iXra4ZMY9lntBtw68MfjgM6OAfgzEc+EpuAouxmTP483EQ6HqTcGmQ5G2BL8uMAEqW5XdFBc3vodRENekd9ycflMjluHYNWiWAFTwkzbJnGPPh2xjSNffKd54GVuNtDyEk0mZ7wIm7hRUAbiXf0ORX4Zo3cvJDA1fRmNaJbFOaUGQ5xRDFGFpSGzyNgYCjuPE4wDdrSUBmNb+Z9/IJ7TuHR04YLj+ACH4OjD3geKYmTThqHdiKfWUWcCqyZAKe2xOGVSgta6b6lznCLDs647KlPjYWfba4O4FhO8eVFGlgO43OVQg5HY2VHmjFI55Sh2/RptZP6zNraFVd0t/7pn3ZHdPgI+/bZDowtoHdD2pIOYHCGn3FqH1y7yCsYIZsyaifgadnhfZJ1q2Y67M47Iz1ufN3ruiPaM39Em2W8JddlNl7t17KxA2nWF5vjOGFXibH/4JzKdZNkn9MgtC67bmsz0M1//MfxpdsNHUYSsks5jW9csEg7rXrDxdFjEdr9M89uykSfNc02zuhruDdK1jZ7LyS7PhX4E8xMpCeHelpn41HDfdtSmHS7nka82JmDQLm1Ip22wCG02CJOGy51h5ywr3zjRp9I6V50hBaafCpwxo3ThmVPbMwxd3fYqcAUKDqJCkFH55RdHMcTx9HESsPxT+Fw9WkopDqt9wst9BzMyCmq8IObTwVGtjIg2/UnsZI06SDQQRX05CiOUYzLYEUn4iRjKga60BxsxTvtVjupwyNu1WaZY9oWHBtnSB9xk1JPKhsSzhvEFU0jPPgrck7qm++36IvKnPrD1WlVDeemV7+6u1TfgD/E9xaRqZ9nWQxWONt2gLlIRPxs/rlNHXBdZwEc06fdtiXzIh0RtqXOcZO+9bim8wkO6dPu0YlnlLllDZ99i03hH9hB5dvSbcYndBjI6Wuu6dYlg9uQdXXGLc18Pv5bv9Xd9xnP6DY5qUiNOLuMC3Y9sGbaVhjbntVM4/rf/d3urGy+rkNXOHbtmAZ7LMr9NCcOX6K4O5vrzuWs26rTszzz0K508FkMAgwGFwsXF+2SOiBS6tL+FL7pEi3nAHImoo/K92nJfX8DU78YWBAB7wJu4RmAsRDAzxVMOh2XwyupINws4ZFX6II4/ZEHrvlp9Aw27gSJdDRo3kyAvozqHhSmcJXXO4U5P+6W//bfutP65hpX5XVdneKwzJ5oGKASaETIOSx9h0040apxb+nKy5FgJ/WZZ24z4gw8NZRVDQRbmqJ+4ud+rjuqPfKHtF2XwcGn4XKWoe2bEOcHpVMcCaap7wnNbE5r1nFYg9wpzeCoLc4c3Fb5zkmn6yX7gs///G5Th3QwO6BB1a7V+E0DNYus6MngDS33/Gd0EMdtb3pTd+bv/75bpfPLVoGNzdTpT2kW9BHdChwr5xLkI8HAxq5cVZkV9QdtjrQh6O2452faf4sGvLOqS05c8jZvGj7tgA6Fi5mVMEfLhzxsKb+2Cjyk4YNJO3ObBRdHnukiYeRvjMa4UkBAGgglA7vEYF2wiGfdxrAsem8nAqFAclQ0BabSc05WJJEPFc4ZJUyBwDkkw2E6DDmvIA2YqSSqGWwGKowJLmlTeiqdil7RnvnTb3xjd1qNp+OMOqWNOXIY7cFlpM6VUvNwFeYqt8qgAmZpgHSK2KrKbY9mArcJh9sEpn7gM8vK9q1xW/GgR4awWehjYONcPG5raEAMttQbMwG2QbMAyjFlHVt22TJcuTH5rjPaAd+KxLZcCYMe2aypaKZBZ4/On3GVjy3OaZC44T//59AxjmETDfz8aAesqDMIcOVu6kG9VY6Bj6PWKLPPQTQJ1JQdnWPQVphy0IlwgVZh1vWaJeYwuKD4YkA454PfuyTDNPZNQ5xf4KJvGVylcI9rGZl3UhKjTPucCLT0DAABFoZPRVuQ0xFlOsJjzsqaP9P1pw1jIBV6EbzMX4ctI3CVORMPmYzcNDY1IlaOZznu147QkeVz0k/vUuWShkw6/Aq3T+C785MuF9Nf7MmVSnk0OK544YS9jAtZZgBTnZ/pMDLBpXFCwy+uJOii8q5wLh/hlu7GS747heuegTtwrS+YnHXQKK9h4qosm8TsoMi2/sblews0Vt8bm7f3K30jXbI5b8Hl7mkVMC4D4WqxsTt/0IFHGQqu9Wlh2AY5j8H1qPiRcz6ccRiwfLL1+cBdegAIoxTJGMWjqA1qHxIbzcoHG0bFpQpr0fVpdSWYXxAD3ACd/9fjjpEWfI7K2tRhlUd0mOU6B0mqE2WdMzt68MAHP+tkWT2tGjf326fe8Y7u9F/+ZTx1YFU+Oj5yafxya5omr+mqyIlBxqXip/B64OmAadEHfK6EXGW5ynOFpdGahk4VnVCNdkMLgWtcrUWTnWnnpdEewOaDHuF05eapylmdDMwpQIFb1T335KRzOhCyW7dbxs23nr0uCY806wruOZUX2fHdvEYdQhsduNQ7dRyDDPEKt5dXApbTTBev+8YYXeYzjX3n1XHSSeM3s61BuIBbfgCoQFHCitS+lbfv/ICwwY2H4UvYdPZNEn6qlKBPOE36AfMCEeHtqJNe+DVfEweDcoLNIs5XgbiaJh2neIXP6bwntOp+0y//8qTMDALqKJzXd1hfeF3TlNVlKd2oj0/hNRKwi/l7m2r6vaGB5bQe/53T/TadjA+lMKAjm/vuwzpBNzpg4TdvLSI6SOHt8xSPgQRfvxgAoJHb0IxmQ4uOp3Qffk6HruZBgE6KzMOPeES3rjWPXqbrFQx0zLi9UAWKjPALT2CUdI4g25LsEzp38Zwef2bZGaYPg2HMktjr1BPtBlzvTsm0gxmFCbJfyclZo+HC4/odpVswY/kBoFKaAvNrKeQ0G2WMLnRNFb4QvQuY9DFfnqVYB5PP9NUptnWVvEAr0hwgSceIl0esG8xJXsbqZZdE5Doth8mmYRzT7ILbhZt+4Re6VTVSjug+pA64zkq4OoV5+waWdDCe/SJy4Jk/EqUzcRr/4csv706xMMfzcGYCmh0wC2HgWVdHRDYO+gFGpLbTTB9+kRWzmsTDQHpE5Tsh2Vt6CYnBLgY90hn0dJvAWsSYi7kR2GWWNKBLdWKdo7wiwue4NWTc/ra3xYtHcUtggMRLkvmdPeafTzpj2bfMOu70lr8Mbeb3BSan7SmMAmNK0FD54WbRBQENXT/TZT/yF/mjUsvPV47wka90MHEZO65eWqCjMx570pOCjsWyuHedkE/+i34xyDTCdO4Y+Ytfh4mjA53/Aj1h2NRsgNuNNV2lOKyz74AVtnEz3pgOfbr1NlYpz4ZW+YMGG6jTrSPbnb/Q9tNg8y7hW0frEWWW7DgEVY84favD+kpM+935Z8iI9lPn1+VL+dYBn4FlTTMcZMX3CKCj7LSR/biKfwqtyh+ImpU3IBxGQoZ43XaHucvHlh8AasVt9CJ7lmKYfWL63c43pjIVZ1rTGDuM4MRlfOlu3Kh8yuIfDUX3qut6KWdNC0dxdaJsdXmXkTdCG41TVzLeMTikqS9f5VnTSzF0mCgjcuc422KUrKV3KY8Px4yOqDRk584wZt9l07NulIird7z3oKs+9uUxaNi6pWtmboUbPC39SAvZomeQ8y1Apo36QL+GnFlprbweAlsvUI89/QKBXl6F26cvgFGTLD8AgIDx61+FjFJjilEh/HBjdLlB+koSDMWw5rNvrKCZ8QduUy9wdVVepZFoenpHdPysVpRPC2U+FTgaZiYYCefyjpDM1l3lZ8ofU3Cm/yo3YepjFnbTZoWn1qNJ60Yr2X7NOvSoFhtrLMdn6Waa2h/oUcrNjC5sT/stbtDWcroJGv6AR/m7aD3oRE6DN7ct89k3eR2P9KJbLds8e/GXXwOopLgjV8l9lIKM0bjRQZwLTLpHZfJ650aUKsl55rfv9Fp2NHhn3gX8fkGt0sV62ye7LlvFIoK5FAMWsOGwP8hMkTHUsfSsc4LZV3CA2SjnmC4Dobn9OCwC2kTwN3Az/0IyzCDMgc5OT/4YXis9p+W+kdOXrX9UWWoGMBBWCuLHM6lcU0H4WrwQYqTaUNAGLgQtR+W1ftCSbqewZYevOLixoFTyIB3TzTDn3c86NsBTCQb6N0gnSTTcOY23xUu5kTWr/GN5s9Kxce24ao1duaapa+6JjkHXwp4mn1mmTA5mU99MVMKul7FyZBZoWriup1zmHM4Yg3Aq9yLyB7wzIvueAfB8OkYkKzijceeC2pjWrY6DawffbsypDT/x9LlOK/p5BmBdsk/Y8Z5/kQAyhD+qY8nvoWyrPmE3YIyF9ZiBtYvaDiHLcuxnylYa+WPp5IGZr1CkjTlwZmFlvkEbyxnLhGWrWl6v7wJ2rHktupmuOl/q6mqwhl/j574xRb5AOTLP0jqijH8AMcoNRiQUWECJulBZKePmNMu0n/OmwnQ4fg2HrgPZI3QN1vGkUt6FcCvdai3r8tXxXokF7dzTVwFwJ68dVRmKjsosedMcuykt3kH72CVdKhT11mhXyKtdK62nqTCgjSt1agez+OuytGgjTXKmZgCVbHRq8fe6OlDxGbfmjXgqh9ln+UsPABkMgb6i5vQIo3SleE0Dv391Xj3KuaPYN5/9mn8qXgwDvzFag0SfNwVQJWRDLxKGPdNVcGPRgb4QLWDXMayc3irnPFuSP8/VuHWHmcc/lj9lBxG29GmljWE6PXSe0VZ7u8ygMVaWPzYTyjTmsz8rzzRjuOQvwm8c/H0NAADEyExgzC3YYFE8K58bjhtV7SPSaeav/Vot59fpfXysk46l94wpkGkdtm+yErc+8R5CTSNa5wfbAg3Q8LP8AeYswpQHzyIu6IqeuQ4z717kM/BlHXLY2K005435NU8dz3x1Xh3PtIQH5W/UXc1fx6cwwCy4LVro4wIRgfl/7Abc9wBgMaMK9QSiaBjB2fajgI7M8On47vy1n9mM19Kvz3PHk9+iiyu3dTctQnJ4ILSJkimGYXCE73IMM0s5Lb/OXCLu8tYss7Qd46kxHI8yjNlFRLNkGWPKL2W3fVoYrbQpnCoBHmOSNRNjAfvX/LOu1JUqzWiNB9Es+7bom8AlcU+7AWvAXEgrkI1a0/eDwIxGEjwl35ikzcJ1nv1arnGyvqZ1Xs0ziGd9x8JmyPlOa/iWHzZp8XhQoPG18huYraSx8iHfefYzfyst54+Gpe+eeWvQBTpezdKMJ5xat74eGoymtW+SOu70pp9kO7/mr+NBl/ia+QaT7/xZZUnkfXCpGYCF9NwKcAAEO9Zwzsd3ODJafxQuFbAmCdwq37hzsWuwFGdPuQ9rMM6yRktwfXDurVBPuRuwfHfufsqYbMOBFdZ3l3PxUC+jYuFwDWyBa9G00iqIZhRdwa4dKXVqHa95cvtA0xYuPDNxki2n8JWAvtihheG0vl4KgNMzXp2GvrYvdOT7R3yeq/Ggp52yAFjra/3Ib/HBO+aWGgBaIJzZRyONx4EVwUIFdgXhF0dBOAiD8+DqxUDTGNu+08d8MI2LAVv6skOOwyviNVVfce2PAZd0BkGvzs4hjWx0oYHHibzI4NwB26IAQIOu/IK+pC/q7Vo0cUgWuwBP6q3HE3odN3YE4ieSJl/KHwuCQZ1xzNYYXthWNDHoyY+4+KZkVu2Bzu/TkcbkT6UnDOQhK28movGDy2EueWY4wMkYg4zxCFgMLLRhD2Jj9hhFacg1Ln1uzGU5YzQ5fekBwB3Ovg036wpo2iy4GVahjRMFodJIaxIPEy1jnm8DBW42ssIcXHFW22U5v65/ZXQo5vzEkEvZVJFsz+WwDnbIZecyW1/ynJbpWmHboM6LMtM4OQ6Mk3IY8NQJ2TMf+iwho4ld7InO1sE6I5tdeJwJEEeB65VgNiJxVoDbUI9ZcIibn3DGJY7L+ZOU6X9okHGOwZ3OU14HNi95bmdOq32jOt1x/JwW4Rl2yHwOZ/4WnvO5wBC2vkFrW5U80xp7nr/wi0AYn1GNBsOpwLdwKrDSGPFvVvqtMiznn/lUYCsZDVgGZiR0GldfCmOfdPIZjQenAgv7NuVxastF2jhDJQ14UulynmnwSUfvwEVfhbmiMjpzhNfFxlXajsLndEz3LW99a3eZzsbjirHIqcCUcTKZlo2EQzzOmJNPOCot+9KBM/due/vbuxNvfnOcVXdKe/Q5s469CHQM9IPPswrsDNYFvDsvftsyfKVbjoLhepmJloZ/u678t6iMJ1V/nEwUuBqEHijZ69IprpLiCdsZLPlNXNkRfaOBiheaWyQHn6PM4qRadfgt0Zz60Ieinknblj7E13TgCjsFY/eleKIs6K0wsxRmV9QjNuY0Xxyn4vjqhRzC5Pd2URgeHHsOzkqfk5LF6cqrsiXtlbJDQbv7BEe1KRynAksvHOVBh7qtBq5wqIeQoDBp2MynApMH7g3ChZ+jzDjfEh2htZ7w0D7xQ17BQj7OtHwLwDMgZtycNkwe9gUXeZwKvCZ/GbfwAAAsZtmRMARynDaOU3bzqcAUzKecqpRBk/1IUTpYhOmE4eRzcCe4pPhUYM4/w0WVFNrMQ8EzvmUHjejBQic6OmEGAvT34ZIY3i6mw9oOfNtv/3a3oR1yF2qrLp3G21dNl/3AVwKVEmUXnm2V6SKMruDJnbzuuu5mTuLVrCN0EP/pd797ciCIDsbw0WVx2Kjo4xw48ecTcdw4kIfbLckkzv+ARvyrGmiO6iyAHXV2GsyF2ia7LZuckew17ddfVXrYVLSBh33Q236BRib5ls3xV9CcocOKnrMRadDoGzhKP8Xsiq3PZRBbYwaimcgpyT7KLkwNSGFr5OGE5yPRGLTpsHE2IrhFXug2od5tdyUenugo3ynZe1uzLMsGB8dZg9iYCxdSwaU+sJvbRrQp0mGQH+WRjwtNS5g86g2d0ZVOy3HgOHBpH5PaV0Lh4fGv8d12+/0hygMfPk4E5gBXBpXbVZ4L0V/p4IWeChOHdhm38AAAKNAoxGkvnP2GQBxX6EMqNBUerqWE0yrfmPj8DimfQvDjCGgaPg2q6Uiv8Pq4GcAquBiKkZ/KGOAaAx4arCqNgzpO61CQo495TLfOVt3SYAybffC57wWfwYXG03RqFEx5T+p0mhNXXx2zqTgBF17hs/5wSrOC9Qc8IGTSWGm82ILOgn090zB+HXe6fTRh1sa0myPBdtT5D6ujcSgItqIetxXnIx0ndWDGBsdycY7ejPIaO2SXsmIDys/e+1gT4gKBvsjWtP8MH+XgRJ6SbgxsvaVTgm4XzSbl1uDHbsHswGVmwuyKmQL2jStpJsrholPwaIDh4yPn1PnhDSc8nxJN2+IwFg6LxYHt2qNM4ZCvQN+5FHf6JBCZEaTNhr5FB/cT6i4woKr5Uxz5gV7SkAkffYxbKHTFoS90fR0oH7m9zkE1/2+pAQBFonG7MPLp+CjpxpkVyOExVcDEZZ8rMR2J0W1guKCs/kTbdNKJBmhjR4NRnKk5A8AoLjwYWlPxE3/4h90JnWUfJ/jSQEZkUU4WZqgArixgT5W96LOjhsgnsTh8k8ZPIw0dwYZXHeiMjs46I3kcVskpu2AxQFAG446UujdF5Ftf+XHQCDoU/eLKrPS+3kjXdPX0tddOOmAuL3z8cGCCN4n1NuGqxYUBfblFdEelLpHNzDG2PMOfneKkc2bhKZ3bHwOPaHFQ8iPG9JdZQAyUio+5aJ/OFH2UW2UJ3CQbXNuTzpQ7/gDDWA2/KklQBC5lUiwGV1IVH6MNpvJX0+Q4YfSir/liG4NDkRUyFF7WLTUA9OAI4idluGeisIguTWSXrJHWZ84IgMVpw1R8C3cG626WjVF868aXVAaG2+XYDcGjRrimK1LcE6txduoc0QmMu0sdOh5WOjK4YuPQe8rJXiuaTdD5o1OoYwSmCcGg8WtazlSYK/cR8eAIhx//Q3yXrZcpnD5c6OPKK6yYDShtcCpwAEs2HUG/qFvKiWzi6tAcZ04cHDpzHO8NDWF+KgtXegbYDa7y8lcoH3maYYSO0LecyobsmGUhq1HWDfFyFSRvCiXh5s5LPbPOEfQFM4padIAWfcGd5abkibiVBobLyUzgghm4Tf5UjqxPppU1JydxF+zZmmeUdnhvA0DBwoBM8Rj5xxTJyo/RtFQLbBWSAtstw2+e2ncDoXE0HZVQGv2Wpsxc/TmlNxonefDZB8Bh2QFMZgF9mgUUmuh8mmpv8y0+Dv5U48xHVIEdMwJ1AvLydLnWt6k9coob5CudqzvYcRUWTQwn1l3x4Ez82IBFuS1Nn3d0S9CVD3rs6Lt+q0pfYwYjfTnaLG4ttIi4Ipp4wqDybUj/NX8HIONaQftFh1idVxrlZuaDPrkMMZMgTTJz+i7MpOw5j/LGmY6S4XK7/ns+BbCF21kr37T2d63slOSXskb7VZjZZk1fx+Gu0+p4khCzNvQdlBUMyZvFlzEc3tcAECAqIA7BWaFIrP6s3Dy6YGtUtPkz7EJYiaHuSClrEqTxcbWTu+iqq+Igy7gn5ko2w1m3WfpEo9BV8qQWw27V7cW27se51YhBQPh0Ak4I2tS5ecikE/a42JnGVeydVTFN5OcMwqKPgUdlOqt77bN8mNMDdsHq+aGnESmfjnxGPBt8LkzrIOgV+us+/rSeXJz9oz+Kaf6W9N/8lm/pNlhA1IImZTmncp15wxu6c3/2Z3HMOJ23aRfKg0gNInyyK84HZBGytjVlEG3uqMGY/wqWk0Cm3JTjtMrcn0ZsguKjF7+grzAq0ogObNUiKGljA9UoS5KdZeSwea2z4+En/kH6nMhSA0BLmWgwEmIjIm9eJ8s48DWdCsR95Wh+YcpYNU6Ll4Y0qh8NjUU3NcL7POc53VHO61Mj4jfLIccULZmZl0WuQzp7/8jx493HdSx4fKWXzqXOxhWT02tjml1koi9uTGdyZ8l0PivsfOKMgSXu8ymreCfoSJg4bM5HWU9r8Dn6bd/WHf7UTxWR6qLow6nFmw9/eHfrQx7S3a6PbV76Td/UbSrsWxZQDtGZL7+8u03lPK0nHYd06OhKbUPKVewN/xFhchvAjLLlot6UMWWHYp8WD3bhcSsfHj2pbxCe4kvMLAQmnpYNjFXbxumjfsZVGJ1jRT8xtDBbaYllKmidKV/wJrlTxHMSZl/WGswWnrPqBhgFX1CpFl5gq3Hs1xk7+zQ6u5xOmCvPtq5wF+tY8KO6onH1iC/9aCoZ97wjfqwTjOTVfNz7g0unuPSZz5x0AvEy9T2kTkPnj+Ox6QjYsPGzffFb+aSZps+XDPTcVKfc0AwjptzJFhQfG/Bs/qRW7De++qu7I49+dJQ/PqpRyhe3EtLtgs/6rO4+3/7tMVuJz53xVCHRYMsLnv70budzPqc7q0d/sbaAEBx6l87PB1CO6DuIxKPcVZmmykE+tvGvonfZXe7AlMgjGmTiw6Cs0eRyF/6wZSg3+cMWtWul9TTgyM2k6YmrQOGt+VtYTtttxRXWktGlBwDjo0gok43pzOK78qx0lT2IGi/Tnq9CDgQpYlmDdDq/FvvWddU/qqtwdHyVLRblKOOcX1yZ5tAYA9otXfEPqyMeesITum1NzdfVMXkGT4PtsVDQmGN6DwoxUraC4/rgAyFd9TguYGSDM3xJR+U/omm/78tjSl70wB4xG1CjjbP83aGUbl2DRuWIU4+f/OTutG57+it7aux0YgYk1lcCExnJ5baQkns5g7QSqXmwZWBrdhGy9tNRWwIbaaFDqjeT1LqRXg88pm35Lf4WndMWod/zANALkUHnCoJmEboCCl6mn4tvZRbwR7FoKKxi60oRz+alb3TEBTAXJYlyiTimhcKn4fMlXh4L8nVg3LALQCy6BW03WrZApt8IXZ0uFtr0pIEZQXTako9ep7VIuaOXcuKtQGjhSS5kOE38dX5PWmQx2JxVJ2fAy7KiXDzpYd2AMi7rGjyzUGhP3A5wC5A7HTw1Xx1HtVZar3JLF6XVcnr6EpiFOSvPOEHTkE0+tTasOXMN/X0PANEAVNkoM1fpYpTcuYfq7MbcsIy5EP4u+2ho1DA0WBq0puJx1R8x7ChwI8M6288kpFFG5EWn1BXKZYauxZP5c3gZWvhCLvIyiMLUC6/MnuM+GXtUNkDOwEEzy8GvmcFZdXSeKLT4Y7ZQYYyVp5dW6VWxD6Ihs+gZ9cpMpfBbnx5XnE7LIK20Pj/pMqCjbhexTwGCd8DfC5gEcl6vb5JdkS8cXWoAyEpYQrxQkxSZVxDzUQmzBoKxPOO3/B57RmAMdwbLQlm2TdZrIcZE1OJ1WiKLoNPx9+KwA3WHCyzXh66SJ/QYL95naHSWhWUJjw53Ri8+8SYenyFjoKvdMvoHbdF5EZwee4QnBoJSbvB6+hp8ybj1zPatIbD/mBvPmXBgxXk0Y9h1+lIDAMwI9o94vH7YGOkyDXSjrlRAdMxklLhKNXBHcZRhmWM+vIE7C6TKMxbJDrd851fsC0XrsmcmRvt+xFfYsjPNXsLYId5ZgNl211Waz5Pd+sY3drfq0dm6Om0M8MsKAE/4yPiEXi/ubrxx8hpukTNWhrF0i892cBo+fLVrpWWasDkJRc+cl8MzcWw3MZjOPri9fTNgonVyz9PIg6bPL/Ki0ybZxhnQ5sQZ4aUHgIyFYvUMIOcThsa/Oq8Vd2eYh9vinZdmfT2CWq9ZvjGhuSNc4KaOUcuodavz9xrHvi0bb2q6zkaed+jx3Sl9JZn9CH4EuKgs6pAXga7XZ9A/+spXdhfwiE+DC27MjmPplkk++tZuOmVcBrzQZx50DTvUwBXdVHbRpcbr6Wbg9gNuTzwJZL2c1achT4MKrtbXNPahIZzjpLXcvgYAABnlF3WLKhW4/KnQHhDCX1TQDLplZwAzoM57Vm3JRSpwL0qAG7JKIzYGjWFd0/RLtCHolPZAXPNLvxSLd8sMAqz2b2iB8RN65v7WH/ux2G14WIMI23/dgC1vGR9992ufsCd6pHIHbqMNB+0yCop2wCPMVt8Y0NQ8Y/Ksb/GzHYxn3xAtezkv+/seADwaoYB/WUArbLpa6Uxr3Jw2NSDIIAwMy7jzNZAsI3MZ2to2ji+DMUbrwbS3Y02oRsurq0fUiR+srdC3/pf/0r3lVa+KR6I+PKRmyXFmCpu68t+gNx3f8hM/0V2sq/6luqXgPf5WZ8i8o2Hqt9Rzrukczrxj6UEDTiZWmPiybQh9alengEkbnnIpLefmsHkiLdGT7jrMg4Dp9+LvewBoXVFRvFWgloKmrelbuC1+0myUgU/6GMNdLH3MBqi56Eg+q0iBXzUkY5vPtuK+ld1mF4n++FOe0t3wkz/ZvUkzAd6LiB1+6uQt11/51fnf+LKXdRfrvv9T9PiPwSR2Hgq3drPKHbRJ59werGsLr07r4wVrWgtRVLqN4QdWwbHuPX4jUA96tM9F3UxK6dvKb6XNk7fvAaA1GlooCi2jlOmX4bGsKR9j6zcYFFwBrfSUNoX1SUo4L+WudI1G53JXeY5muTRan5dwsfiOf/EXdzf81E91b/6VX4l39lu3A3Hl17T/Br1u++Yf/dHuUr1P8QDdRhxV51/XYNJaDMsyrcfAr3Wu4wPixdtZlpvDhmulOW+srdc8EZ8zqGSeHO5lOVBwoPEA4ouC+SLP9Ev6Sw0AfWdKQjhiq31N2CWyglZ4N2c8xIkq2kwazvzj1IvnBG6jMYVupFcVtyiybbMofYuudXXiwIrRA1FaICVtnj5gcroMbvJfGOX1g4AWAy8RzRVf8iXdjRoE/pK9C7y0pHQvDPZXfp2486Yf+qHumBYO76fOf4Hqb6N6t8ESanlO7/2iVx9XgDaGvi3eVlrmbeU7LXClK85pmXdeuOZxnOk/ba13qUym6fOqQJ8PT+KDjHoFt6epeJeNLjUA9OBSAkVwPlutNcr39CkAl38peRCkI9yqV0kpKI3RhTVf9geMcyLgcnZdHCzR6uik5Uqbg5ez6VDNe75M1AiHHYsuLqfJ0Jfj0dGX8CJuXscHA6yTwsQWhGts9MDu7JPniUAMApoJMAj4diBOK9I9/iZXfk373/Tyl3eX6cp/H+1x4IRjn1jTwhb8rivtqE+o48oAg85fnzYMT20z0gYu4xHWDx5+tFnaGOf4zXUJxzLt17zYjvawCO4YRo2J3uDSxugbOOyyMH9wTP/tbQAoODQ2V7AHhGkR4yko719NlRWzjJqGuPlbfoseIzbxVBbej+fYqn6jDGl3kIvKU+Pb0qu3se2XzTQNeU1dGzot0vHDRip/vAIsefFmXMKyDZ2ErWJRUIMAtwNXaBC45T/8h7gdYCZwWK8vf1ynF73pR36ku0x4DyrTfg7ZoHPBn11tzdhEpcGip2qUP/PPw8u0ERZeyCy47LPw68+Wie/wFL8T5ujVk/WBSUlpw2HTxJ9tkMM9ax/Yzd0NTTLdN+p0sy7jL7UdmNGHKR+j5q1MBVXBXJ04AfZWhTnGi0MQoaOyYoBwIyhp5MGX/ahYpTNqcuorcc6VY1sqByByuopPGzbvVGNo4EKLDjyBDlz56I7OnDZL/sU85xYNjWBb76Wf0rPrUxoEDutKxs63OKkmWbQvk3iogH4arTgO++DoBKa1Hxn6Y/rMEVUcP37b3/1dt61Tgk5pDz2nAkOrv9APROyEwxboGIdZKs32jcwZf5aND9Ip/U5qge5WTdV5L/561SMO+0ZnqOoGG+FiYVAd6OFXXtm9+xWv6P5a+h/XjsC/+umf7i6SvY5owY9z/Uz/cd79lwM3GmyNK/twSvAZ8a7pSUG0GdGjIxLtx6nARXdoqEfy4lRgYUKLxZGBn3nDlkrDnqSflixedV7TrOVW+b6loK3lU4FpbxM2tVUF6raKfFz4wlZl9HXtGSb54N4g+0LHCVe0CVzoVdujxOt6jfoTD3bgAFMcuDfKvpSXGVqcOyg9ODORPoSb/Edw5t9SAwDK8eNARTo6RqVCqIy43yuiJsXELuVqKz+cfPJID19hGkzkQqNfnKIqnwqi0fEjn59p7UNP5YYr/DWudeAUVcLoi/4YDk5wweHQijW24qoj3qyDLA4/61mTeJluhQxILa+EdZBVYDApA4t4aCS6wE6+K4VBhfvoG//qr7pzGnA4BBS5HKTBjjWuUhwxhl6nJB+9sYMbskQMw5Ew/RflEy8ubC6MTTUcDgU5RPnVIGmYNDJ3XKht3/DFTyMJLNFyzNcjrryyu0EHmvy9Tk++n84HuI82NG2q8W2oTdBI6VjUI7jMIOwGuErE3mf1mvCmBr71chz6LvXEntG4RcugDa5PRzYW2H17Uzj4RYczFk8vzmqX4xmOIJdM0ql/HLdYUPu49TjUM3JUZukObW6z1Em0OfKQU8oXG7wURj/qigvNCeVjXxy41id4RJtxQ07Boq5w0flLGDtwgaXzgxunI2dc8PSzDPyJFUAad8sNAOBICI91WN0lHN8DUJjjkBkpQ6jSs4tYSXPhej8R0nnWaWTy+R4AIyaDi3GN6goP1lqW5SRc+KgYDMThnWO4bAbiKnzy9a/vrhf9ZU97WjTMeqqcoKPDU5a4qivDV35oWhVApXJ23g06MecWvW23Xo7a4his0zotGLep47Y21Wg5au1cKQ/HQtsOQTTjz3JtLxosacg9qyn7pk4f5jVfrhjZvoY0n33qmTBn6jJzWRPfBRqo0IdGyUnOdH7KHmshCXcyH5ogG6/3Rc9gd0KD4BFtw+bgjmgX2LMog0zqjXMUmF0dkhzynF/Idj3phIt/wvoxyzgh23Jrx8BLGnozOFEG5irYAR7qx86DfdSvErMfNOLHweEygYu+OP5pd9gPXCOTHjymI7/Qoxv0A1952BbcM/oxG2CNhTj626Ff2M8JC/hLDQAWFY1Y4BgIxSgQingKVssdGFVKznI21Cxc6zELp5aCbmDbkKP6yriruqrdrivc6Xe+szvyGZ/RbXD+HQ0nuawDsriSMDCBn/MSi4ykq5ga40lN+8/oHflVfRAjHJWIXeRzMu7Zj32s46AMrlacs0/6ScnPdhzglkhTLrjC4HaDGYaf56+qM7BTb9QOFoBuxdG4GKQ5UFTHfvaNlo6EDcCiUbJ4GAOB0kgfc1EedNCs5HbZgwM7mAlg612pmEbblFUGrqonGQCSThk7eFIegwvHgXMUGjxRhyUfWnQEmzpDd9J6fROdZWSdxtLczqizwIWwYEXQjMnvcU0nP9IcB0I/dMS5jTlufvtBtODfsFUvyASZDcUXT6LyF+TNlTdrtJp12vAiolrGII2pU9a3RUdHXVWn5yMWt2iamytwTHbc+6sxefQfoyOdI8dWy5V/gC1+GikLg+d0n45zJZ9UXtDi42gMTiMaifpzmn3SzaOrhvfDx5VJWfAVRCgnrsVbsigf9HkWZn6wwOX0H0+fgy01ZOK5DVAOz7A4t++sDmJtOXfQEy5LIoqyC2eAW/JDD+o8lcm2wud2kFknzuUI20bK7D/j1FTowZT/WEPXmraPJxu5PH1eCZCO/bmt6HWtiVIc+nl0ex4ALIeKcaMgzUaZJzhoU6FppJmnxrW8/frRSCpZLcyg435RgwEHdjAozHKLGDvKyHkDWoTKLmxmW9Bo1HiiESoNPcIupPOzUzj4clrKi2DJCzphRkcrcnqZmR9MZhz8Rsrbkhm2QqD4ua2AhtvEKAP4yKaTlfKEbv6zfHwNHCG76GgSfDBddzk9wuASMBZh0hSPRVzSC2bQkV8ccbe1SEqyM20Om7fpm18+uHkNpIURaeZpAk7K7izosx1amKZNrcVJU/7SAwACMzAja45bQlaslW+63pcRlubpmRcP/P/snQm8ZklV2G+/1/1639fp6Zl5PTAwMMoi4kKiDpi4RI0xronRaNRE4hpiXJBlWMQYo0nUuEQxoBIVcIW4xACjoiiMIILszAzMvvTe/bbe8v+fd8/t+u6791te9xBA6vf7vrq36tSpU1XnnDq13mFWR2CxMWBWP+Ah08z4ZSAvtax7ib6cUgiG4XeeQKti8T3vqS4yKbXGIYDCVjjv3/OSEC/w9H7AtTVzJN6yjopknY8NLPleYNx/3o+AKoxaAuItBQYM3u2ncvJy0rg8s4W1wdcKL1/z23RJbww/yPuCeSvgKYyFb91Zbm9FWlvfhizPNPkBaz0IZ2fThNcZZ92XdAijMrPMlj3azzxbzpCGVuukdpeeCjoyEr+Mz+ABOsirzK0TPhMWfsCNoKOht0i32seJFYAZZWGikWyYVmHbxCS84WWltOHK96zMJu2IPMq0w57FO7QCEfQLLJHNcBvuri/4gmo9M/TxSakO5hmWT2ecdcVk1hLm/TFu1J174xurKZbAsrc1zhtyvR7b+/TssXNZp4vxO/PoCjRfhOEc5VpgEjAsGs10e3nLVcev59iuqxBRXnvwlrMtsv2adqlhMs5eT9fQW5f5LGX2e4hOxDWWCHlnO29gEnA9w6JQPEVdd+Gts1zmwzq/DNNP2sRtnS4ytPDbgJFXgbuBFUcRnumbeB8KV8ZncDss8m7hTdgBv6C/jWMArnjJcnTCF/iKJL2Pq1IAiS0IKCouw4f5JdHJTJ3wbbwUrEwbaWqYoXjayNt4y3iFgp5/hksx93/N11TrXJ+GYWWiUS5pG0kL+Xsj8H5u3X0QITvzhjdUU7z7kcwZbsfdgBDqFM4Q0LpBVbKX4xQ6VxemsC7m+P6gu/VSEVq+DdwDuMH7CVUK5mn+HRmWYeVzKBFprNsp6K1p1+LwKnTzdrIv8ANrehXTpsc+Nuok8w4GL/KOfEq8pqtxF2DxOEATIfb8GymXebvnIsuc6azVxG9Ymb58TviusIjroqdus3aa5r2dpvXewLXosgxlXNKm3xdewpTPK9V8GTvBsxlPmnmm6Us3kuWtMH6pbXv9cctRC509v8J/nmWz6J1tyFE/8xgFYzzOmXgZcxfXZk/T2/tRUDfDrFcALU9rWBCJrsCfykwTez2KJpQa9NgjO/u+XjrINxQPefW1iWRkuw2QVJdtICxfqFfzdplv5pprlndaopA0+9dhYdnzBz0qn3FcS1AySRfNlse83WsQZSTPaKdMVPhl+vI5QbrCjCuVUQNT10fznkjSb5WhF078mab22+9NdAtnEz7k4fIVQCtTiSt/Q/IeiOpK01vQgZRjvEBjr3LIOBjS8aKmv2a/TBOm6jDGbmfdqot2dL6LV8FTIFxm9Ou4a+ulxugFJ8kzkY7hR2+HkPu1Y3vE7HHXIRxBk/SPyHvsNinrIoWBsHXML3g/YJZzxnkQ4qP9a39UUbpo6AoLPInTvM2Luh9wJZ0DEeO9lMKfKYIW8HbR1BvWoiPh0k/cXX4fTF94iaNVG2XUeM9hUtUN3JVCIsYhpExbwmf6MqyEnfS516qwDPT405jjMQa2QYaUqzPfCeAtj0IXH6vABM+VgV76OjMcM9CyJIPha32YX1zTBQ2hDDK+B6X0+hvHdZUh+IQ8rNv88pF0jJN3mWevwJVA9XPSmyZzzKuQf865NHUCfMKatHyuUXWHtepsIB280K6HJr5IF2HFe1/+SUfbT5zRwbUjx3ifSAF0EeukT1ejtPM2bflrx7ffA28rsExfPgvm+zhuGK32SjJlsww3DsISptWQZVTns0xifuZrz9ShQLKcnelHBUpPB00hjKTNCbth8wtj51/nFYzYkWeDxzL6S5i6zMYPc5E+0xSAfelWhJu2ruOIq3H5XPLEinTGF/nlY1dYxumLM+u3DB/1XOItnzOdYSW9Ed5RLwk/yp9oEjA0WmamT+PFHoC6EUdlVsaXhWtrSuEmwZu40i/z8bnEL/OX7wOwlsNyZRkHIke8rKIOBjD25NlL60Di4qUHTwERj1EP0NxXZwINixvAV+SZyqWMH4bHOH9Dy1njb8P04V0RbnqFX8dzuQQqvdkLrkgneCQa/IuwoszGlnDxXOBt4rvStMIypxJfOyzruAsmYfXb9VXG5XOWPd8n8yHeHXArNNJkWKLyLExZoHEti3GyStz64nWqqQwr8y2fx8HdwNiQPY3ZwLQekgaD+/ItYVrJB1/HzD/xZT10MUnCDGbQ89Yqs7yQ/DAKj/GjXOCrgcopwq60o/LLvf1lWvG71FqGJU29Ye0yZwL8Jg0waQE0YW24IXgK0HgscZR1MinPtfFOZAGURCSi6KlbBekyZRN+lJ95tLVcF6OOwtUVL94uXOabeXelGxkG3lGuD39fuPiGYm3X+xAC2nlkz5fh+vk8BM2lqJ68xTvAoJdSDDyZ19CyES+e0gk/GHIpti88IGwbcAVMjdPnzD957RK2/nzaAlfmWz6Lq9kL4UurLO33Mm35bNK2a+ht42wDjvF+eRYAGURP3c5Iwi6TuDZeK6X9a2c7zvs4zDkOnhUwRZmzAYfRmzAr8LQCEsdAcJHXQHjrJdN25WU9ZA/VSjb8dUTeo+o3aRqaCXm0hX8Y3q7yDeCX5nSFok5a2vVQQGeq8FfQVMR2pWnjTfA2bPlePvfBB96yTAm4Cn8iC0D8JYFqULVRatIV+ZdEFhW/Aq4jICyLjvAyqKSlDM/nLroa7ZlAq/T78s7w9FeJfmWysi5Xxg6EjJt31sW48MOU+igco+KbAlDOsWFJNAlsk0frIevB4D58w4S/ha55Df5rtVvgb4Vlgq68u8K6+DpxTOpPrADKDLIwo7YCR5qy0GMog6jwYcqlJKTnuavyDLMC23FlpRrXju/JoglO+BJPE7naB+ss621EnWX+42SVsPr5PDRd0tADNApHX3wZHs89+ZRwJQl94SVM1F8H3q60XWHiGib8vWlMN0BI/d6ipQ1TJumMa6Uv4X0u0/g8ih8vewhQ3gpcZt4mbODdQrR/AwDLV22Nja+Vdtirt8rk/voSzrzyV4Z/RJ876kRzr5z8atMzCc0lrEeQ4jx8G2H5nvSUYa1ncZZOWpPeMr8SZsWz+XS4Mn3gLeC6U7SQFPAZozCXacXbNwlommHCnzhLP3Hry2vp4ql4N/xS7OBzpin9hNX3VqB8L2Haz6OEX/iJFECTaVGQvL1XZMaXP8PGduKsfxLujapehjEwkTI2sm7AwMsOvLi8gx61KU+Cm7897YjeNsFLv0+xlDC9z0V9Joy0SW95K3BJr8/le6br8ktYnzV5vWF3zg1IXWXNtuhCVoeVOA0KvPhe2iHusV2WPf06ofh0idf6XQB3hsVD31+b/qKMuech8BIuvd5q1eXawt+GSRrb4b4rpN4+1bie8hnfhacrTFiPW+etwL6Xri9NCdN+nkgBNImpOJmz+flehzUwPEhQ/srwYc/iVBEk7nwelmbcuKCxoDPyKhLH2XEbTUYDblLX0DxuQsrpluDIyzwLJglcdb0Guprucesz4fRLF3jNxzrOuijyLWko05XPbZzGJb0lXNdzbj82Lnpjy60r6rvEn3j1V+3q8pV5B14Qtv3Mo0v4S7rK5yZN/VDizLg+fxiedpqsg0nwt3G03yeaA9BU0iQ9h4Y/zdlxe2eHAGrQvGvPm3yEiZ4bv2xYCbdijUuY9A233whtLF4Yw/y8ZdXbVbzUM2H1B3oumacOK2GSBlnMy0B14vU3Txm8rKG5bZj3817BxSWV5z2bnvvVTVTj9zFc8a6mNz7pv2Dvx7vXYo1ywi5w/ddFynaW04B+mlv6dd77pkvzNG8F9u46XdRl7UdA608sJUxgBfc8P6/0PuMZfWAewt/CCcjdnA+InZCWpZU2US9TtvzWhpFe60D6xWs7CuPlm9HLEO59ANbtEluuve/Q5/jQCAeUQjjrvM0h8WtNWBNRv+Cw9/PZerB922WMd+IzXFwkCO8cPOvPLcHyq20nrdbxUWgRr7ft2Ham8L3Nq/KdaRoHTITVvvwqf5lWq+Uo+SXevMqLgIZnknfEIVz4IM/yp6+1pkXsu3R7K7DO+hWvOLUOkn8icoy/iSwAgSXQCvJqrWgEwrwI0YrLG3yzYYQ1TaQzbZ3eQhunE1bnuwIp3s00rs/ehCpe76ATKvHqJ970A3cJI84arzBeWpqNm/R6fVWDlwqchhGXvBb8nnuWzwNQobrcQCKsLt99lhZpzfy9CUcRbWAFwuV7vIBXJvSM/MLb3x7nD7wOyxNxXg4qfmm0/OK3vuMePt9B4C/zS7zpB/463ucMT3g//z3NvQDTMJA3OW/y3gEuKdHqUSgTLtsu2ynbLOKhJ2ioy21c0Au+KD/v8oK/hlbT8FsyL8rp1mfjznJPoeWNrdA1veaR6WRu68E6Nr3PgZdn4XSdfh0fcfVz5CV8jUdek27xysu+R1vybv6GBy34Wf7ML+JrXBFWw0qfeLLsDV7CxRW/GlY6op5rP+q6jsvyC6+TTvHKs0Evzwp/w3ukM1w606ksRrmJLIAgGIw2ssxjZo7VLawFVfuYqcTrLpFy6TnDorDLYM2/6SykMGpSC61Fkb1gk7ZJcekh8TUwdUXEO8/iFb+atMEL06eGVYM6BLiIQBzlHsCZf/Ev4vy8pwIjrs6qwV+/ZwPYS0mD7znObMMmLQr/eXrhh//oj6qLCL73A3oJycLdd1cbZ2fj5tr10gNOLSx969geoqtRA6/58+t10GX5prhvcA0KbkYawLeFQ0HnCPPK7I1cRqKL3lifNLqs2/olvIbRahgFVQaUB+z5Bug1b+IXEfYlyuhlp6FwOJHoBagLnIrcwHHkGHqRtnTe2Wf+hsatwODxeQCqlWaAtjpvLS2tu8i7pi8Ehl7VHlv+sH6bHtR0dT7yjfklHWU9J0yGpeD7tYW4bbjm5wYv4brAt/wo4uWntuk9d3wAAEAASURBVJ/x0JWKyuvRtYqi8wK+5AnpSzpMWj4nqrY/kQLIxFFRZgBhaepaQPtLMx1onDoMb6QznXjEEXfK4ctMiW+cAvVlIl7xSK94wlzCH8Bpz8S1VEvcHnMfn8be/UVfFJdkxCkyGG+YU/DDATeAs0xkHaFQ5riX/ygXgcy/5S3VFEdx45YchhxLCKZn8tcfPBin5OyRs1dWGLN+RZl1UqLvfbbs5LvEhZveyrOG5+iBYaa4ww8m9cYcaYsbkBDQ7JF7cXbQII2BF9/noNEyY14r/Asf+tAyOuJUqvEjb6/sdjjgx1is60YgMg/x8pMn/JaB/DeOCz4F7wLlXuDzZZ4HyJRJm21l20U91Eiz/UrYfC7zbcIKemwjw81betuCb/omnS+1a4c17zXuwMuz4fJw8EL9LgppbtIYgPM9yxIBHX+TKYCaGPEk4vyizLDMSsIyXQctEZTx8SEPQsq05XM7faZrh+d7xg+9bZiK1TydYjx8jp7qfr6A4+1A3gnoGfZgWGE6XDKljLrCWW+E27N6J+ASV3+Hud+6E9DrsPxQhsOBKYYjeYOv+Pw+wLDyr8izDDBf5hi8Gy/u5YMx48MjtUAExQjiImVe8kpylOBq7wRMhvdLUdaXCu288w2M+8uTlmVZwjpAAS2hGB2GeSdj21m/pgm8Rha8WMIm3vBpy8gbayvqsgC0zMJoYUzX+WXLJY4Eb79nePgddEhrzFuBu42zC1c7rHkvcCcelVXexG3+WY5Mk/4AjUNeVtb0EOBAnkTpQ4wNrimVBA5JHlFtAvvSXS5eM8vKSZp8H4mXsniR5Ro+E+ZviV7LSzzDPDUuy59I9Qk/Txr96KWAybz1G4fAVZi9Xn4ZKw6mKZ3p6slHvx9gXvZMgde8J3GkHahrzP9SqFNhiTue8T2nbzkjb/Mt3ACuIrz9GMM18o6hkJHipdyBm3DL1IUr7gigPs46RyBcy9lu/hSsMr4NOfBundV5N+Vt4RU+ecKogfQd710whukibdKOb545jGriA/LSXzu/JibxNAH1A+HSmxZnmb58bifre59IAYikXUjZckLWHKClTXTimkSpDCAsXtq4fc8euh1XJFt+rAXAIcEaPlYxyuXEYOLvhbdhxV0L/wo6jFdotDhwU77jRuINKP6AT5xZlxFV40mwxJewIVSZtz2iwlM7YbJ8GdblCye9jUIpger8m/zKOJ6bNHW5W9HLk4LgCLprXMIkleINOtsJDS/gy+ighbiYCygj6uc+WhvQNt7y3TZsAJdpK157H5OmXoACb9KXfjtNmX87Lt8nVgCZMH21kRn5k5BkrIyf1M/CpFZu8E6KqAe+YbSe+BXBCmurN1wBQ4ATVJa9r/xZrq60nWE1M+WEnD1Zn+tj8C54YaVRX5qyJ2lgM9/ab8J7HgbKRRrbLfC24AfghsX15Bv0Ggft6Uqc5XNXfIaln3VmuuS1Ekf5nGn0u8IjrE037+JtLKESSf3cxtWJp5VOmKiLoh5aIBO9rl4B1I2RzZGFyYqVij5hGIvCuoAN3o5EmXdHVH/QFaq4dgZlWZPmNsxq3ku8ZfqynsvwrueGnppJ45166OrVG9guREVYCVfS0m6TEq5I3jyOir8EeAny0tNybPvd0K6wxNWmNxRiRg5J2+Cs67FJ0n6vI9p4G/iOPAJ3D55M1+Rf8HATlkCFb1y7PYroeJxIAQzLrI3Y96aiZbYugMsMG4ce80241dCQaSW1xNUmPeHSb8dfifemPsdENgBfME2TvAgbl+4BOBh24B3E5Xv53ORZPwyLG4AdVyiKRMNwD9QJadqw7fdE2xveok+44BPq1ry6eK6Nq/2eeZZ+F0xXWJlmnOeJFIAIy0y7CteZaQej9PVsZXrzGjuPMmHxXNLrc76nX4COfByWxrjLpbWLgGTYYXm30zWwCngyaPoF8KS4G7zgyLQFuuZRuBK2iRgSXsI0z10015GrwV/SbPpsr8SVfpM/DwNhLXoG4grYdngvvoGI/lRdMV1h0dYtGsssup4nVgAlkk4iSoAhz9kY2Qjl2M5khjdxQ/BMGvVI4JSGK4E362TSMgnftEUyQCn8bYQFTJOuDVPjzHIl3BWhsSOvgaCkbyDw0kvScilk+WloeB/Oup760rbzyPeA78MJUBe+dljzPiGepKHtN/jaEUPeJ1cALWJzsSimqOq46N19tnJHuIboAq+pcmJmNIYRGbSiZeBxrI9WspGvk+IdV5ACrqzHul6j3rKO0y+pNKzlmhDwObkY7yXuGr6B4z2fh9GbMCb3uXzPMP2xXItucckD+vJaFz+08wOscRHXgVMA4yzXijqu44RpXI2jyasHp/CZZ4m3SdcgrB9aeMroMk0+6+fkYgkbz0NwrYCtAyZXACXDkGGzXJeZy1wir+G6GqyPmAw3faYrGS/CyvwzwQS+wp+4J0g2ErQTL3WSDTcSQQ9AqaxKhgpzL9NYJ1n/GVb4K2gAtsRbgK6gt6z/Ei6f27jbdduOz3SdflGGMl08225FfKYv4TJMP8LHgR/FD20c7ffMq868oafA24TVMHp99BUgzWM7fbvtoo066Gq3RYOweJhIAUiImZWIm546mTAJqd9jI4RhvuOiEevnCOj5C7zCF7DDKi3gMh99N4Cwnh2f2ao36ZhVClFZhh4SJgoWr/R5ECjoLFOzCSccO9OyHsroYc9BrwDisC7EUTrL2uG6Qy8BWr/h6vptwzf5Xkoy8NSGz0jDMy79jOv1k5YaoJ0ucFq/wrX5oQ/pGDhNKs7k4XhPfK30CZvR6Ze0ls8gDtzlRqCBNB34B+LzpfCjHngv62FUOxXJOx8nUgCJoSyogtQpTFnA0qfxViiERNryHVJ04m3B5WtTEeYnk2DinmP/9xSfoprauDFM3oZWYLIMkYfwdboGTyKe0E+8kUycKKELHLaRnvgScKGMulA36bMcALlr8AJbed0+7Ke7/aZel2vSdkW2wqLcdViZbkX5kw73IdTCF/D1RqYW2ngVd4mzC6YJE3+PK2Oadqphy7gyeYQPwSlsmVa8fRuBBvB24CzxlM+Rjroq67jEFbw2END/knjTF7LsFPtTLpezl4Y6Yf/ukmGYizjHZTkPIJEloQXY8qOVmBVZP8tw8avTZnpx5vMKPEMCTHOeQy1nEZL1n/d51QVO2i1x3l3FYz55sjBRCN/kn7Rl5AR+4miSWC6ExiOoU3xvcOqmm6olng3LOoi8zd+f8Jk46cC/AN3SX/nJcD6hvcDBGe8PSNgSRyYfxzdd1nHkbf6ZL3G5fXcNyjO26bqvnm8nenLQMwWxU9Edg3Wakp7kh6F0mK7Ir12OxJc44hBQbUm14xoYHwqc8WqQD7Urnw3yXQtAv4lr42i9Zzp9XZNu+XX5nzSNlVWHRx4duAaSFS+JN/2IqvH24RqALXD1Pa7KAiiRZU9dMk9JxCgNFL2KleKv6GHKdOIr38v8B57B4XFeT9ld89KXVof/8T+ujr///dXffuu3xgm4tWwznXLH3kCiK/MyoJWlA+FQ4Nfw6evH/8iPxDHUtz/3udXin/95fCo7TPm6vE3ZrYN0WReELSF0j/2Zn6l28Anvd/63/1ad+PmfrzaiUPzE96SuyCGGY+W7uOLAjlYLwn6Wujv3gQ9UFScWp5/85Graz2yjEFQAc3/yJ9ValNJaPvsd25qhN3ENrd+yjDXxmS7LMvAuvIJPWbV8LnpYqGMoVfJfJx4CB/DWQNLatF2LtoBvhZmsxFM+1yjDs8Mp66EP10Ca4iXxpt9EgTd67Q66GpgxHzhpevGyFYAElgVt510WoBOuLEg+F8wU6QnvGkul4CReYTxWusiXdnfCsLqNMOhZT/PddVe1VvO5NsEzTZve1b4HA5K/TppVAGfe9KbqMEK/AQHSbf57f686jgDPfOmXVmtk4iyvkeVzvqvM3vWuaiN3E+x63OOiV77x3/7b6q2e2rvttvis9oo5AdO2XNkGmU8KTNZDHEKCfk/knQX31M03V1u+/uurHZ/yKdXW666rNlKGtR6Qsm1Qoqeozw+iZJco4zq/bFwMCQbyK2lpl5G4ErZ8jmS2OxaTJ/rOe0aAewPOU3aVzhoVubQIOAJvgATClX+mL9suIcbBu4LeOnGmHYjvoDHz0i9hy+cSJp+lt1FaGVj7o9KW4GxfXzORAjBjM5Bp0tek1q3YUx6hg39t4pL5BqGW38QbU2e1UHU1MrUQjd/gpac4S8913iO8XHShm6P3PP7ud1d7UAJxHJcwD6w47msavi5D4DNRvvtc559ljrg2TbzHhSCJl3evujqL6b8TwU03bxgv0YAZ2PKbshgO85+mB97/1KeG8Ev/eo4qr330o6uTr3zlsiXRSp+vA3gMhLYMsyxhptf0cjtI3EWw+M53Vpuxlq5+0YuqPU96UrWJ4ZM3FHW5DVxfNv0d31G9GSWw9bM/e/mwTo3X8g3wA++lG3yDtDKyeFb4vQrtHDQ86ad/utqKBfI3HNE+/vKXVxto4665kC5cXWGZjXHBawWNAV+8l7Bdz11hiXes+YVEgF/SWj4niHXrHRkzyYNG1LR2wWe6Pj+sib7IznAyC8Eh0gy9+02CGm3cmag70PTlr4SKW4Frc31owcqKgGHOcox2ih5rpj7BdwYFMM+1WzFmhU7vgvOmXd0AXvHUFdnQUYRFmcv4+lkcCpQ3GHlTS1QoDOvVV2uf9rRqM0KkM/0xJiUvevNN7cqy53MTR95aM5zgr7Yx9tc5Ln83pvcd/+t/VWsRUC/aSJfp0zfcPJtfDWi8bSWt0qySOfMXf1FNY53cCO6nMFyZ/YIvqLYcODAg/GdRXme4teg4l2vM4etOMsRZpKzi1MnsizXeUJjWUV1PyxC85kPtt98Houn151FKW774i6vdDKVmMP/3fNZnVXPep6BiGgN3H/5oTzLzhh15LV3At/AaV+IpnwfS1XCWXZlobgXuwNdOl+/pd+VhnMfDxZv0C9f8huSTeNv+RBaAic3MAraX8yJMgMtwgRsmEpdORg28+E1j53P6y4AR7xDgLFdbbaGHnOHcve7kAw8EjmmYaQ334CXOsAACgj9x6RJnvveFWdE1jALvL+hMH+ZcpOfe+rVfW63nOLFuAcvkOPcKbOW2H8fMlnWYs+ddQMA2/fN/Xu0yDe44l3X8H24pOoRlEZdYqMigo40rmaMLf9Jq3EUFjPsO9v/Yj1WP+aqvqtbWdWZ6Lyx9mLq8m3mAuxiGPMjvhHcjoNh2oGD3zc6G+b/rkz4phlVl+cXtu3klbfqGpcvwfC/9jFNNe5XXLoYh6e7nzkbFVWtoGL7EkelKP+Kot5Lm6MBs1w4hKnGVzyXOfA6cNW7Dcu/CqHTCJkz6hpUucRuWfOxzH7xxo9xECkBTyWOvZ9XytTCpQU/ZU1FoL2vw4k0JsvFtwLKRfDau9IVJRhG/2th48Tqb7x1+mpPe5BNpgUkfsGVXNNo8PdTBw4etoYg7xbt5nACXF2FqgnuravTWwGxFCGR4oRta6nfz0QVzkKYNY7wWkOFLpLE/lm7znkdQgg7CdKcQ5pO/8ivVDlYmztdlNF2UBb/Juw47TR0fYXy965/8k2qjE1+4h7kybC2KZItjYPI9T32b3tlmcZUu8Za+8Xlbr2b1POPpjQwvPgslk6a+7es1ZOdo019/znOq27kaTRtmE8phy7XXVtsYWl1485urowxB9nzGZ1RrUXDOq5zgZxnsoaTnCHWts93SDI56pm6EK8sujemSXmHOcYvQKRTMjsOHI1pr7m/+4A+qGayBbeCPGxPIK/GmX+JPvCHY5J0wWj9xKzDp5bujWDjmnRfHmi5ho36lG7jgBeKyvpP2hPV25MSrf5x6FMY7M+P2XvHW6Rt8NV7p1iXOqKM6bh565S3jtC4G8Fou672u+0DCX9KY713+RApAhFaADerlhz57oaIFU/gVZF1mHPARwBNEKxhqRNPle1x4UYeLN2/qtZDi9TLEwFOnKdManpWpHxWAX5rdJ7lqaiPMqz2wFmZU+KTV21vDSY8P4G9oWY5pyrEcHVCN5ZOaPeoBAK9KV1GJ1/kAf9vqSzYdx771t3+72oDwzGiJqACADYx1fZh3ls3wGesXf9fhw8vhPB+5445Ke8I6mgZHuJr+Zeou1YdxGbYMuPwvXp0MO8UwaYFJvyMMTXZgZbzvbW+rrsW62MpVZTPQei3j7M0I/d4nPrGaQhhzNmANwwNXN9bS9mvBY7ltJ90i75ZdGiMP4nT+50SuzyVt5XPCTtFWS9C183M/t9rmSgPuASyQM7/xG9Xepz892qpJV9dl4Pe5rpNIVP8ZF/C1HzzLs/yrtWM76lJZ+RztkX6dThyZrzynG8ALnLdCKfzWQ9aLdZTpIpHpDOOXLp/0k68BiGh5VliVhgor8Qa9NZ42vgZHZtDhj60AAlmdkcTIyDp7aCvPa7clLCvFOEnPQmVB0m8qui6g4bKQ11brvLdfvGpkC50a1rgVlSZdhHst1xqWypy80p2ll5jnjr0Nhw9Xm6FZBSBeKy9uG7ZSmQBTe160x0paInX3X5O3aaErbhsmnfMKXta41Zl76mSannUTqw66h5kx/8C/+3fVo5/xjGot+csM6RJf2/cacKcxd8/OJmh1gj0A3k1kzdtLp7uE7VJ9l2HC5bvtZP7OL8w4PMHE/oPv/M7qXiylT/6Wb6luolfXPQTNRxC2q6jPzfSOwcAF3SpwaY4f8InXdrKnsn7t0Ww7nf9JcdKSfptnAjf8tfS3f1sd+r7vq9az9Ki7h8ncbfg7WI1YS3uZt2nFM4C/prPEn8/hQ5M9svTIv1q08pmupNf3xO9ztpHP6QbwEijPite5EOthkwqf98Sb6fQND/xFOTI+8VoXOjsWZUacWq95e7ZKJtuiUXKG4Rocy6+d/9kmnZHtQEnJn8LuL5nZ5zRhynQBT5yMkT8JTjxtP/AQHwoC34rrqrwyD/HpHDKsoSdbV49lF9hA48aZdSxhaR1YWUnvBQRVIZj/rd+qFv/mb5Y3CgWWMf/qPJM+K9IKN49F792n99zITLluAdPVocZ68hSuXeaudzcynac3TiWyxE7AM1gz62+8MZbAAnHH3wAuaLTOS2cbWccy8zSMtNHJPuYrdkDbzV/xFQ2oFssUk6ebUBIqHOvNPjJ+PvPLMpso8YI42s48/CU9wrRdbxw4VOYOqXZhaei0ou6VHi9SpS0zbfoB1PobiLMe8gec7SZ9ury9t03vcmyADPwN4K1jMiz5wXfrKN8FS5g6SbxneIaVftl2Wb+GiTfrN3k/Yc0jXfmcYW1/bAugT5t4Q2kydRt533sQVld+wpTa1fi4FZiCtgvWR0csGbFevJYZ8/X1CoAWwDnHzfTEYbKDb6tjVvy5t761WvP4x1cHf/M3www+ytKSisIK7csjaQ0fHAkrjdmDxLo1imc9s/3r6qXIRb/6AwNr3cT6/wCi+gUcTYOh7c9RlikmMzew7KdbAMc8E2BbEIAcftQpL6XLAH16Ijf1WBa3EMdmHZ7jHd8eUEvI/QrrmZx80o//eLWJdXbdPcyyv/e7v7u6HvN7irR+JSkuMa2tjrCWbD/CY4NOpFpmcC2XZqeiMB2uO7QAhDYFfi2m/i6GIDqXc+dQAHtZ/XAC1A7iguUalUfGQ1eWIeqDtNKRQ4HIpPgLGk1rO9dtbXQX7Q0s8Vm/Wskqfd917XT5nv4y1KX/5PsMSTwKv9ZVvme8fh+uEqb9PLYC6EMuoQpUxqdvRl1EtgnI93aB1ZyhWKz8wrXx+x4QwLlVda3j19pknKcnXoOJu5axuJNcFzFl5+jtz9GT7nzhC6tHsdFlOzPaMtFtrBbMM7Hl+nLvDjvyiNttyTM2FIEzYOseSTwqAG8S3kqeOas+zxeArOhQcsDoynJEQPlnWRhzrz18uJrB3NUpABfAu7amtze9+OnN3a13DpO5osxrP/mT4xxCOcyxR1FJ+EGSTSyzzX7apxkSdfG217ym2kY9bkH5TLsJhwnN8yjS8wwLzNdtzbGsCu510OOmHIXEuAvWM713CFvWD3G6Xpoj1qyBEA/+yf/zf6oZ9iRstsfHPUjZH/y936t2s59jEQU77RwE1ovWQPwUCgTO7x+EgJtnjS+GeYSfpY0vUI6p2dlqWuuMMJ281u6ADF+jJUl7hvLET8UhjemiTObTdoQ15WnFJXT6rejldO3A+t00fel6kgwNHlsB9GFRE1+qjkGoNqF9cIOplt8C1krsiEw8Kh5dVrRCsw6mzfGxpvhFGvwcw4I5tgdXjG+3Mc49+IVfWO17whOWmZT09iSnYXSXxYJpxCnidDIIQmU+S/SW5+mJHWooUDNOkMkoMKLUmO4cDLqBeYhkqjmUkKZz0m3PGQIifssoI8rI6SjXOXp8LZJphQgn01eY6loFSWOCpx/1AJ1+2GQNPefO7//++NDGsT/902qRtf71bh9maCFdMVEGHadY+z/wP/9ntVnrB3cPebz/e76nugbrZYnhUUX51rOrcuuXfVm1FeW4CctmI2VzTf7O1762euA//sdqA0OVsASg9RzKwg06rgZMOVYHb2zYqdsqMrE+rWvLVpc/5mGAcVh2EQUu7QdYMVlLeXQO6576n/9ztZN8Q5FD55nf//1q5pprov7PM4dx9q/+qlpHG09pydCmoRDAOU/5K5TFpptvrjZ8+ZdXcyxpLsIPM7OzIdQx3CSPaHPoUYEq5Iv1VmgnJBV+cU9rXaLgjG/gg8LWH/HJD2VMpMm8yoj6OdqwFd7kU+fZ8FGmKeATfxE09HEiBSDydgbRU9eFHZpTR1rh24VJHJlPV3zGNYJgo0HDWWbJN9FD5IceTsKMLkZtYmPLHpa0dmM+OjPvhpp0DhPe+LKXVQ/89/9eHXzGM+LrOMkQASNuhMEv55xDoez8N/+m2g0jbGT762l6xLtIN4XlEff9qwSAdx5gfb10J44llEsoABkexnevwnmGIJZjDcOTdU95SjBxfCHIRuanNTOjMoP5Age9rS6W62DGtgvGQUjmmTjbwv6Dx3/bt1Wb69nzRZb53vWLv1gd+dEfrTaR1xqFjDw0s8/C0Fd/5mcGOoXwzVhBuxCU67/ma6rdCPY2engnVRX4VGiZ9yHq9c5nPatah1KSzrMI4VosiZv+/b8PgXnnD/1QNc/KwgZwqCyb9CoXP8KqUgb3Opb64gwCdTNPz/8YevpHoaTTWbbrUF7XAZfOrxjdyVmP97HVeg0W1g6WSw/+1/9a3fGKV1QLnLeYQQG6KWzxHe+orv5P/6m69h/8g2qrwzKU0hx8cdtLXlLNkdc6wqz3aHPbGuXjF5qW/vqvqz3gPsAux80ojznK9v7/8T+qJXjMTiaHVEnPCh9cyoYmezrbW5f+8tul/y7hvxRLOunDlen7nst0w57HVgCXijGIrmnUweCx38oCZKLMK/0MH+YHQ6OZNyCYKgPdtZi+19x+e7UToXcjUOlc+rmTnuBPfvZnq9NsMz0MgygYmnwNTeDxcNEcJvGm7/qu6sZv/uZqt5NwtQLZDVNOwwzvQXFsJr29YE42rq9XABSqJYcmzKZ7pFcG3wyuvQjJOoTPz4Q9/Gu/Vk1hnq5DYOPAC/m6/30NgpJ5qURUW731jQAugGMKhn0CPbhbhtOtp0d8AgrhNhTYGfLahMBqti+hwDb9y39Z7XJYgXPi8dO/8iurnWzx3VikTzz6WkuplO5iTL4Azq3WB/mf4QzBYxha7aSsuichZH/J2YVFvnQ0Y69sz0mZTv/u71abscQej0CdgeYPsvXYsbhlnSfdBk17nHVnW3aV2XmJ61BU78MqOcX+iiegxK9CwW+kA/hLhPciQn4BfE+kvg/l8AactrsTiSq4N7MBaju80ZynQPjP8F3Ijd/wDdUns8X5KqzELKv0eKbjLz7/86tph1TyWC2QxnW5ku7kqfTb8CncK8INIJ8yXcpFhulnWDv9qPexFUAfosw8iUm41RJkenHlTzyJexhOK1AjOsfMMs9uzMO2czvrHfQKf8Us94cwKffCmNdiam6CscPctmF1+BdkaoT/AL3njfSi05r66WROGGwTDLQIQ63XRCRN0qHQ6dxC65HgcyiiczDoYzBHD8CQ8ZHKGtcJmOodz3tetcjQYkZT3LwRGjfZ5AYdPyYaVgRpyjqpUQSzz9HbPhFllsL/IBt9ZPgD9IbmJ9O/5Rd+IWjVzJ2nHq579rNjstL60sw+qDnfcosMrY7QY68jzV7247uX4jY25LwN4T6EwgnzX5rpze8B5w1YBirCbcA+kSHCW9i96KfP7eUV/n3/5b9Un/RN39RM1j6EIjnKJOTGT//0agrh+kvq+8lYWtcxSaugnaSHv5v6c2+C8wubsUaump2t7mI+5yHKPIXQh9kO3buYBJ5h8vAYyuVzGfbsRtnZJimM1qe7Mt//Z39WXTh8OOrH4l4E9ymE/wA8Yd6lBReCDh1ujz4HPodnMc/UowCCd4E33+TdyMO/Didcl4vQFg7hAn9XgojsxtUHftkKoA9xm4xhwtuHI8pTRLZxFlGXBK8wvY13R9spTMEj9LQfoId6N418nLGtI97Hwih+23AjDO0GGc21oBPf3uMUY9xZVgluYPybzu2xf+Oe+X/4D6vtCKuHji5gmsaYnbxlfOnMsbvvx2DUXUw4PgVTNM3yxKfvROSNP/AD1VvZjuvklNaKOMIsrgH9rn3StqIe7P3ZNLPp27+92uc4H3cCBfLTLOstYLJ+LwK2yzGwQwKGAH57cBql5RRYLrOlpWHaeQTkKD3z/Qx77mIi8R561HuYJ9jI0OepCO7DjI0/hGBfz1mH9VpWMin1PMOW3Xexbr//7//96nHEqSj2cRjqBoZJ7/hH/6jaiGVwA3V6A88qOd1plOP9KI0ZhwkouQ0oq/f+1E9ViyjQWSwD3bvZefijKBXtCodXm1G6j2Ysv0i5NmOpzDHsOeMcCU4BX4fifyJ7GErhfz+w91Ee2/idr351dY4djoew3GLYheI7CV9cp+LBIsq68KzDX/IF5ydSnn3k6fDBuZWz0useCtq27Va0TQ3QGz6h8PflJ/62whlH5sZWAH0FaBPU996VfhwC+/ANhCuwNIbNsb5eew+tz7s94G+8+MXVO37yJ6ured+OyXgIc30LAj5D3Azp3CCEERtMGZVIT3eSnv/w7/xOdQPjzHTvgRFfzcz0e+h1rmb8qgLYCKPO0FMtYmpu4Dk+J05PmPMQ9p6b6NU+5wd/cHlG2waH3ruZxFLIHo2ZuYmhgOPtLTD1PIy5GUtBp9CnC3M4X0pf4YPpXd04fMstzdLje9hGvPiXf1kdcCmPsuq0RuZRhn5X3slAJ/hiXZ24JeLeQZrbmUi7F0V59Nd/PerTLThbUR7X0zs7yfpOFMBmBOGxWE1btHqIz97VXYE7PvVTqz9kCLL3Va+q9mAB6G7AwjnGfQZXsznqEAoo28atzb+H5bPmD/+wOuB+f/CtpSxudnos8xKJV4Xj9qT9KAHnEpag4wz1ZFu6LGotfYg2eTQ06p7khCVtoBPH6xn2/M4/+2eV9ptrKntRNnsR/rXktwalfZI5h8MouE/B9E93O4eQfg2l/DoU1n/iS86hAFD2W8hTZbG5LlvC63fx+NDwyxD+zrxa+IQZJWNjK4AGUSsTtb8MvRpXFqILwzgFyHwVEBVAaGb81OKaal/BBOAWTP8pBGIbJpz76e257KUVjWS06Mlo5NOve121D1O6FP7bYNLfhQH3IZxPhQl2aKrjNJuvooe4g3P+FwmP5UGYMmev9T+XGe1czpL5X8dE1eu+7uuqu0n/zQja59DzS69LasfYuLSJWfc14HcvgArMXi0OM0WO/FnnwMdMusqPIHvzbZi04Yi/HwaW2T8fxbNDExn3MEtpZ/74j6s9mOTivkjvmfWkmf0KhMKtS3sox6M4HbiRutMycvdinPfnfQ29t2a55yocEkxJH++Wy41F2yn7CXrIV7KP4J9iTh+gTObx6SjOdNb3B1FYr/5X/6rajH/tzTfH/EvsW6AdFdTdjs1xC9B5jN57P+22gzmWafK5IB0oEvNz3mYbtL6XS1Ke9CVfUu1GMHegsKRH9ydYAq9B+B/PKcIttJUKS6W/jrQe1DqDIt+N4nwy7ZHunUwi/go4d6HYn07gjno+R6U++zmfU932ghfEJGruLTFdycvxTv7SkCtVhpUu6SvDfE486XfFm7bhWdNYVn8t1yVTLZDljq8d2PUe6DOj9AEMQmjQy3XiL3/iy0KuLFort5oBI03d24XpD1PrFIAvZgZ8J73MNCatG15kBBk38xAubvFxyQ7T2TF/urf+3/9bvRbhv5HfbtbjH0NPvbeYXzjB8CKdisivCuek42by2l73RtL024x//xhmuwEh/GQS7aqF03SnmWm+AHyso2PJuJwYm12A0/zMNpCptDSc7Z6n94qrxrAgcuORPeRJliu/hPH24xjm6Nwl+XaGMxtcNqP9XIZ0bkIzXefGlcfTqz8OYZzFVD+AItwFTduI9yjSFuC1mmKuhDpcw5jcNfWYNBUfNLmjbj1lvJp6PouZ/VJ6/lN1GySTWs7bMKt/CetjO1bHIejboGCDX1xaGTMI2fa6Xk4yXJnD8tqOYG8kD62XTcBtBI9n4rU6NtCLu6rigSudqxvS4yTv62jLJ4JvH/i3Q9tWyrOJNHYA5x02YIE9+V//62ZZ1uHGLyP8syj1vSi462mrQyifdMddveAleTJ5NuObd/KHiAwe8PuEP4CgrSu+wQvQAM8OYB58SRoHQwfflm3DwbDx3yDWpY4ugsdH0g0p3sBdR2cFlH6mNP8MzzCZ4Nc42/4AM926LQjh01gm8tz7guv4CNSA1gQHXFidZuLoOsaBmvO62+l9/jfj/cciGO7sX48J/SnE5+ywG3TuhqGnMX3trR0XunKQPWuEkU5B+w3oeRfm8ZOZad+AGflkeh7HyjqZ9x6GETMMF2JZit5pibxSQF2GizLCVOI8C63XY2Y/hh69gkGPsHvvbC3Mwn0Bs/H2iOn+DNj7mIPYXu8FcNZ+EQFxvK/byDBkDxbERmbPQ9DJx33tWgDO0Dt29jqwBernWpTpp5HvDkzmRayK2BEIDntEFdU0Qrub+v4irCKHN9E+1IsC8ecMrV6BojmMUF7lvATttA5aZETrzOVBh0C5BfooSuYCVsI68rZuw/oAT9AjTaTzDIYK/Vxdfntq6+hPX/ayOMm4i55fa2gD4TnX496NU298YzX7zGdW21kK1N2LUvs1hhGHscCcHF7D3MdnMq+SR7pV4B+89dZqndYJ+Nu9u/WeLsosT7Vcn6xE29Z83ErSKJsMVy4aVz43gcsP3epnEGjVCiBJiIaTiPZvMJ+J36J3HpEqKg2YoAUmUDMnEzjuPY6gv5yZ6jMIks5Tgp+GWTpNI7ut1Asv7ZHCwehx+SZm8N56Is0tvLc6d8Cusz2YtgvMfD8eptrPUmAKtj3cPGPEXOaSKQYamXfdn9IjfoDx7uO4DuwiwngNpvlncUAohwrvYNixiKXh2r8p3PW3HcHOXY3eZxgOOhdg1E2YtNfQex5EgXw6VsXnMwbeWY9L1yOEjnPD0S5vJO+/YG/AQeDXwcT2IKnAHmLIoTPNYQRzAWGL1Qfyi7kDy0OeFXQ5L7KHibnH/NN/Gjsdr2OsvYCCDUVtPWI1nNUaIs+nM2R6kktmCF3kJw7cddTdY6nfHbSPQrmO8OAhnmMXJYpsC4rIGX/dUfBbcoVcnhB3tnvwHHGGr8X3Fiad+d1Lue5FUe2nPWcos9ZJ8pSKxvmVcywZu3So00J6PZOAqv0DWEBzKOjHe68kKzbJI6dp61PUzwz1HEO9SLn8FzzIY0MbNJQ9tVADfLGcLP4jbV2uIrj3UbyRD2ku102sANpZlr30ADESV/4GIke/9OLtSdrQVVeKjXYVmn2eSZxfYwx+ulYCWgJPZf13ml79jFtlYfzQ1jCFPe60Qkdvq7uPiboTMMFudxJiPl/vcmAxKSjMHGncCOS6dJTXxoGZnJTUKUQfxhx/C3sIZmH+KXqQG5mUehrKIPf5305P8xbGqXsQ0CnShimMZeHlIWlJpKKISUbM44cQFO860G1kjHotjLwFP5nM8j9E7/kqZuvfiMVxmOHLVspqTxqMSQ+2kbJ+AEF1M5TuRgR2LxNfx5wlp0yxogEezfLjjKW3MZfyBNbv0z3A5NyccwmWmR7VzVIXwfk05jWuphdNWj7AnMDx2jw/hDJ9KkuP51Ga0hLCT3pdKAD87fU+AstwDGWnKhAi8fGwXNeE6YwTTw67DLuTOnUC03sM0lowXBf5UL9ag2lpHGFC9i42Lu1jpcMjx7NYS0+p5wUyX29COo8FFKsByWfiC6ytP+LLnjpxtKCW0wLbiaPAbXz8Em+dfxvfpO8TKYCGiDoX30stl/GdREhw+esEuhSY2vpSSP+T49nzNOhmhHMnQqOTrvUw+fWY5qd/7ueqV9Hjuv6r28QE21MRjHWsBpyBUTTZbSBFNs3ogKPX20UPsI7e/5MQlE9mKS9dlvssAmDfFue1jUTgXc6yR9GFKYriuAjcVey5fxrrzzd99Vc3+wA+jBL6HUzpvQjMZpSIk1yRjr/lp3iN8f0aevULCKtLhScZ//8uiu29jFntmTRPdQ1dwFnmNyNshxj3r8d6uUCvdpZ0toOHkrxq7CE2Qr0XptZp6n4maWZRUBdY7lqgHAsI/3l6yms5LPVpKIcwxYE9gfJ5Ez3sOsb7KoBFlkcrJs0+nWHWztnZqE9p+WuWTJ/DONtxfzpXENaxOnEO5Zlboi2rAqMVl9uSHcadQYnNoBBi3oK4FYJEHobJyOtrq8Fh0/301NtoC+8sCMvBtPUPL2hW8SW+DSijffCPy7pPQAF8Jpu1UqGkElYhhrIBb9uVuCMOusw3wus2XZHGcH7CtF2JL+LBJW/ppKHLdeHpgivDtJwmdmVGNpoatgwrn/uIteCdzoLiMrY3fZFYWHsLNXsuebnxxd5+Dab09ZjdH2BW/9Uw+Fc8//nVBvyNCPVTGCe/BSb33Lk3207zO4YpfoKJQK+82oPgfDmTbE5Q5dFeGeZvEbobGKtrNtuLh3Frefg5M7+IUDt80OnvpMf+1Ne/vno05nq5mehdCN5r6Z33oZB2k7fLkkF/XTceZkrnCcc4f4BQWN/boO9+etFXo1zc6rwTC2ARxv9slMvjUHpOCH4tAvpehG2JDUGbeHcI5HbmB1lC86CLZvU+FNwbvvd7qz302gfA6SqKCmqBrbgeQbZMCn2WX3qcZPzfDKXOkv9G8Ltr8Rxj5qey82+bCth6APcfM9T5fVY4PoUJv7fQoz6Zcf9urLItlPUQSu/D9LA7UYoeWCJBTGzaljn/4tLkEopmi/MItG/bBY/Q5lor62++udoKXp0rB6eY39jM/oy4Bh7cAVsj0HxXiZ5AKT5M3Wyl/rfw/tUsBepcWkxnW1+DVePhKJeLYxuwtJBvKo8Sd6azDozv499Mk36TjocyLJ6ln7b1Z7tlvplGmL58EqbPX6nK+iANh5C2s1n8SURJeMJleMaln/ErfCrNygsTun72fahTcGjA0+zuO+bMNE4GdD+9B1c2wUiPQkgeRCB+lR5urt40oiVwI+NwDwqZg2b2FKbqm+jt7EVcftsCTDK/PcZr2WH2SyyFpdm8mXxnED7Hn1oSngS8FiWz9/DhoEMl8YXsl3fTUQq/SuF1COGrWevez+acfdC4kTKkFWFDe8jofphPZtap0NYgCK4KhEKiTq6iB38MY9ytbAI6yU66exHK32JS6yjjcMvv6sOnsZrx9xHwT+HSj8cyzLiJXW4H2Op7BoXkPMA26N+EBfFK0mmNpFOxbWOSbhsCm+U3zr0Lv87w5X4E+gB5OxM/z7BmH8K8G3rCEfaHCNMfIvw3IvTXgWMtcxRvL6yA66mPC3W9yVfWv2W7iJWTS7lnUTRLDAGmUUqh4As+SI6wdz7LxOVmrI88zuycjzccq0icmEzYZeL4J0xO3shk3p/Qnk6ERlsj5Cn8Wm6vR4H9GPNFS7V1tZkhlgeKtDazN16Bu87E8LxvoA4Kz/BI00VXxtUJAs66Qem7k9IzFV4EG+ElTP0cHvDpSrgMa/uTKwAYsRRI75jzWiWzNcP2r8wwCWrDtN9NI15v2Um8kacM0P4JTJgF8Sjvmxiz38mY8y/o0Y6x428Djey672YqzgMmdzEz/QqUwDEYWWdvv0QPJw2uKe9kXHg3s/OvYZ7A3YNLCL3zB7E8xP7921jP9j660zIBbpsKBjP4BCbwIgLlzPph5he0MtTUMlaakDLxB5l8fBkC+BcMJ25ACPYpgIS7AUah9eeGmA0IzTF69zsxZXWaqDMoC8fjCoyTZxvBv5PnQ/S61yNoT0QxbadHeyUCf089uReJW3/naUOpXyBfh0l7Z2erDQjar8Dcv2/9oQjcBecdBIsoNic672K874aaX2AC8AiK5jrLSBtpmiu0XiumZeB5gteyJv/nrPHfxBBrNwK6lbBrEKS/ZUfgQ9Cnc0v2EukH+nXKdB4F6olAnUuBh/kmgsMWVz3y9l7bKl10FNT1GVYPcsnU4ckF6PU7BsEvCZy+9Uwe25mPuB/L8JeZ2HTXo20tXe9nWPhyeEQF5m4Pl/50Wgnb4DGPFbtiVNIRAPxlmDIhvflufDxTX9JUhrfTNrA8uDfCDsFPwu2mDs/SeZ0Cd9sKME0cX5Z/JnBjDwFE69diLsAoazExrUAJ08m0Md6xcC1XhgwjLeP0QwhsJJ778DbZ1Hk6eebJtQfYvffbXm4BwFUIRVzBBRPGFVA08PX0Wvcxs//rTKLtpxynGNvvYfztfnZNa5nanYIfZnz9Uhh5G7Pt8yiCgKMHvon1+yOMpd+J+bif9eOHYNgFJgvdWnsRAZjB7HwXE4Y7NRuxHpxTsIe5i/z+mgnJD/zwD4fJ75r7ZvJygiuF3zJZX5Z7HeXaiRXweiamdiA40zT6Eoy3sWZq60Ul4Dq4aWQIBXAdQ5N7GHe/nJn2m+ilH83uO/ciiFPhvJv18vs8L0C53A3o1W7u6DvImN8Tjm9jsvJNwG5GGWxAsajAvJnX8sssV9Nr76Z+NkL7ephTPpihrPdxVflvUE8nwHU3iuuTUG7bUC5eZWXeFXV3Bt75XecYwH0X7bTROMoRQgr9Ls2pEO6m976KfQ0qTtMKEzh4ttw5QRzl1nJCME9R52+ibZ6Mkn8XbePyo8opcJtH6Qi3rT2/cTU88l7q6X/AMzuwlhZQdkdZ7XBDlJOixyj3X/M+i4Vhp3GcdvRItBZCC2vkYJidUcb5rJPWcOTbJbwZnb5ldm7lHHV/AaH3+vUpOhqPP3uASmswNiKZwHag7jxdeaGeQE08o3yGyB961Y4dO77ixIkTzlq54tLtIGbOWXEa7iTm6wIZyfT2EDKGDaMJ691wFtYKSF+E+axvpdjQpW+4DettrabNO/ZsKH9xN2CdpsRFUDjTehHjPLDeliuODeByDVva1MbCxHcBYPrTrFWf9c45xuVbGR+7ycRKF8Y71xaAOUlvINOupZf3IIj3CqpovJftAYURIXKpcSu9pVtP1xHubbv308tfRKlsRcEsYsIfwSKZ4xCQTHUAhvP8gcznOrt5Wr6yTDKIt77OEe7a9DyrEgrxVhTJtdBhI7XTWF4vUvV+uznoPEbvfT9be51FSCYUxra6xvsKYZj14Hdd3DIrqHGzsXWDopynfrwC3B2AXrLikeDNWiHQrdLKdrEd7e0epF6OsNphr76dSb9thInTslpGL0315mjX9U8iRLtRbjvBGwoQON1Zyw2zH8VCuYnTi3PU63tYediPUvWgVdJpnt6JF3VAGtvDW5TvY13/AkpLJbkP3w1D8qSuqV/gdd4FGPfr4c9Bo1u2T7INegudiGcz5OMp2uAc+T7oZaxMWqqAZ2gPtzhjBy93TvjWq22m752TlsN368U6MEcvSXXOxeeGFp6btMSHYjCtacj7PMpoB/luQejvYGJyH/MlJ6DlIRS8SkiLUstwGrjz0L4dy/Igm9TiOxLgGeLObt++fR0y/+vjKwCJpaKc4T5GL/IgJvY5mHoBk8hLG73yyqqWqbOAfQREocXHryTTBk6z3wZSeFOA46qpIo1pSyceKzDvdeMl1n4Djor3kkZdmJHGURbNOHeUKRTJKMLEfWuE2/jecKOm9WosadHZwGeIP+V8g2YhJqjmpz25E4IK4DyMfIJ6Mt6xmzftWgYF33FzrkuLL+shfcPiskryUICdjVdQ3Jq7nTyauQLCMo2+gpGMpzZfQkisT60Qw91wozBKgz2YilHLyLqTUa1/f9p1Hobyw6TitS6dTEtFbzoQLSvwOo2K2893KVTu14+r4oBx8431F4qCPM+T3wXgVKRaZ1EW8QHjJSLeKnwcYXyQ+Q8V3Q4UtLsQjZcuBVNcefkmj5FO5bUAza4caBlZX8k7wqSzHiyT9WJZl6DBS1y9r9G2VtG4xdiyhuICxunck7T1WnrdrSjiDYSZh3iSfxOv5c/7+swjO0RpUWFZDtOUaa3LC5TZ49/5bK++j3krV0mcq1mP0rkPefOykzu9Xh6lqEW+hnrawl0IBzjpuRcLYRocsVRMHkPc6hSAGicIogHVTich6A7M5E2MkTdjsgUD0gDpLOSkLpiLREdgerW8PX8KdVbaJHgT1sb02fvqvQsv8Uqf4RnveyqTbFzDEsaGzgZO5TBDmN8diNuGqRstiLPkpyVig3v23uU9mctZftWI+Q1zGSu9CuJ2GFQ81s+otDK2tOcd/baLTpwyocyY3wfYKeMTbrl0XWWPCP6Cpg66M6205ZyQu+8CV51YmBK3uPKX+IXRilGYnaew7tZRryqnsMoof4OXuHSmizYhwFDrV1qiruowcZXOvI1X+O0UAi8wTV1ZzhqvNJ2HD6P+oUGlZdp0WX7fE6/0Whfi1QXeFg2Gxx4Kevv1s7PVIvMj57G89rBqtRELxq9LzRHmh26czNYqOMWQ4H1Y4TuxRtYCs4e5lv0cyfb+CZeeYxs59I1wjQJQ0Y3tYjKLCvBs+hpmiXdgktyAuef9bYuMAd0tFmezqdCurZJlRpeqrwxd7n2Nk8ltMhvWyjMsmzB9gka6BhY8iTcFSL+kI2HDL+Iy7wxvBJi6sAGtl1i+q2mWQbQEVJi6ZizrMzDjuCyzuHQ2lIoABPE+7E/mlFZp0k8GzXLoC5M9/jKVlzD21csliMEn4c0j8uQ58xd/Uqsf+RMfjrgVjjjrTZGR2aOswte/pNmUNZZlniDeuBjzJ1LT4LLsGZx+lFkagIuhhBHiwGsoq9813bVWgg7qNNuwC7d4sy6Esw4a5zM9unhi/kxcKDq/wryNFaFr2IdwH8vQB52XYB7FXZmP+g//obqLyextzO04V3WC+IrTmjs4kHQVFoLDA/NzFSrareaXJs8RD5SNUZ6FG9dBfFQAQm7R/HLsFrTQGQrg/MAiE2RuWHGSIo6clhVQ5FFUSxNqk2XDeqNqNkaGNYCrfDBPe37xJdN30dFG34aJihaIukjnTa06YWXGcOkvvw39b+chsGHSm67BmwEdfoOnrncpifaqYX0XJk3/Br6OT68vPONLP2Apq36eH5ApL9XOcp6RZgQ/SGuYygCXNGgF5BAsy1DSEHnV9d2k68nLdIlD4XYDVromLQHxTHyo4Bp3A9eDu8TrzdalU9g127030U+ru7znkuJ6J9XB794UD6Q5l7KVXaNnWIZ0g5cbyPyAyzvZM7KVSdpPZTnVj87GBjgVJS465zKzEc/xDQ1kf/pZz3rWN+7Zs+eGU6dOabtb1qjLEenlqvjl0ssM5shmj2hC2BKTPOfRXlPMgsdBkbonHImzAIjegzysGBtiPKIKBD2PwZg13h6QVQWrUKSxFLY2opK52nF976mohgl/4O1hyBJv5i+d0VPht/EmTJmu63kALvO2rernxDuKtgE8dUa9YeAWb1e8SZvwpKeL8I48pLmNt8HVwhHhQ/Bn+YXzl/UgmnMsla5lLH+ApVT3mUQ8Q4QZlMFGevK7Ob154Oabqw+zN+EqVjPOoCBOsiS7xLDAjU2HWBGaZay/haVt5c5fWJfUyQTOpucYxJ61yPyda+6+++6nQ/RPbtmy5aZ5JiLO4mBiVdf4WKkQC+6apRMW7t5yfsC72i6i8aYoHACxvj0uoWk+DhMocSWRVmY+D8tjXLzDcHTFpanXZqQu2EnCSryms5zhhjBhgqTfpMkAfNvL8EnpXYGrpKNWAMELMmUZV+Tt4wo8PWGZLOnt4ocG15D8Eo9+A+9zXQ+Jt4wr0zTpevKIdDWuhBV3KgCHg9s5Z+Deg1PsOXjgZS+rtnDkeA+TnJ4jWcISuIPblB7FErW0nAbmDEODBe6w2Ev4VS69Mg8QikPBt379je8g5+K5dTgnkxH+d4Lj2wMDEevuuuuu7wLXs1kS3MnygBXjpOugDTMqMyvAQjuBg/NwyHGubp5DEaxhU8cUBXCTS0xUjCDeJT0rLytwVNbjxjsxZuU1475xE46Ac67Cynwk6DXrcovwCFIGGLwPVnpl2jS3++AyfIVgkL7LBV7ihuFtp2y/D8XbGuM2aXvoaeNq4OsIFaw/V2XacWVa+brPZUwDA38Z5kqL34Y4R4e4jZ7dsf27Gbt74/B+hFqz/jQnQGfZWenW7QWGBidZap9h5egItzN7Q9QhZvi3zs4uz9dg7q9C8CWbBa01a1n6q44fP36U9x+65pprfoKwc2ve8IY38AGWpyvs1b333nstx2lfQMQ3bGZp6/Tp0zk54NzM2C4rQkXgOOc0GztOsI65xGThGmY0p9wl59jFSqWyFBwrLLRRnYuN4ju01CFXxmv3qFcGK41dM8jlKIBkpKiXmrBx8TZphxSohBkHbwkfaHuEoISz7f111UMJJ772exfpCRN4AUi8GV7WVVf6DGvg64B8T7zD+EyYPhcxljkBFH46OV18Z4JVnPPsEnX5/DDCf5phgDcX6x5gQu8M82bXsTnMT8d7AYy3GZ9n38d1HGP30+suvefOyGE0BsKVfyG/WPfTyLKxv8g28luuvvrqu3xR9kO6KKA+SntNUM6w4DMI++FNmzbd7GQB69DOD6gEYj4EfyxXLhtauJOsWZ58xSuqc2ye8dhtzIiiIFY4KjFOXuFng6+AWWXAI9ZTwwRW4ih6G0YZwlRl0aRX1+5RGzwlcMdzH5wKwLix8HbQOoC3iG/jHYCr6esKK0nvii/xRnyRZ5m267mNr3wXr4Pidj2IZ6TgJ0x2UuCS56cRYNfiXcZzN+U+NxGxVO7mqkdxh8L7f/VXqyPczryBjWTb2Fm5zh6fcyweqT7IKcT9DAu8kyE+kqLF2rJ6pG2Es0gX+Bo1W1O4L3Ju7g28fz+9/ptNR7m07M8j7yH4hoV75StfOf2VzDQSEZoDRfB1COILGBYcZszAyt55pXX18wMQs8i+6uMcRDn9S78EiZj5zg/gOzTQGkhnw/jWqfVquEvQy71J+Z542r54daMEtZ1u1HuJt2GwOq9RaYfFd+IdkqDJewiMUb14pdn6HUJ75NETr9AYb/22aWm/d5HYB5N4gx968m7ja+Mq3/M58bb5wfA+lzEBU9eVw1pvTHLr7hYmw/14zAfp2a9nS/lxJvK8i9JZ+0UUwVl643m2kO/mJOYpJsyPMu7fy/mKA4zzN7HTs5ngE7e/8Z2knePU4jp6fc3926mv5yH4rxAF9E6/ipWFr/qqr0rLfsDqbrIphwUPPvjglsXFxe8h8llbcWyPNRMRTD4/QKK4OAN/nsMqx9kbP88ebucH/EKO+/HdP2Ch7fk0NzoVAOETuboSrcrSAsiGnAiIW3c2AAAtn0lEQVRXD2OUAjURvhZwSVPSK0ibQTNZCZ9h4/jSa9oGb0+5EleTzwi4rIey3Zq0iazDHwUT9JJ3Q28HjjKoja98H3hu1UPEDSljxjc4gM3LWd0c524+vwFxDXcn+Dm3Lcz6n/C4OeNvl/TOMr/mEeyT8P/DzI+tR1kc4vj1NrbWi9PTfvJ/WX9luYY8a73znZpta5DRk6T/Meb7fuzAgQNxnLSU6RJHr3pBWxjXDAuYJHw0YS+emZn5an6XNT8g4vjWHuMjr1g6zimzsx5P5cCF13S5fyAn68Zt8LJQw55LBTAMbtK41eBtmGhIZilQ1sM48ENQDaRPgXLya2RvL9JRQgGI7Rp48celd1iZyjhNa99H8UOZBvCBMne+U64cAkSPLlCPi3jbIevCjsXJQ/j4EFeuHeEwzjbW7/2C0EmuMtvI6U1vaxLmfZwuneXw2BHOiRz5iZ+oNjPBd4CTjntQAM6VnQeHbhWCH72543w6alfxfhU0z7322ms/KD5obcx939vONhvqQGBHTL038wPPIOyHyPAzzJCz0pc9P+A33E56cIX5gfNMkkxxrjwaEougZCSJzQYeSXhPqWRQ066ionswLgeXgpqASWu+r8ZPvKuldwUNMi+Mm3hDoJKhawKbNK3wLvob2ExLGsNG0dtOV+Ju4or8FTrD+xRAk6ZAVIaVzwVI4BT3MH4q0wobTuHHubHnPNt1d3LXwnXszLuDsby78jz0pQXgOQjvH/SaOc/QOA92lZ+GY+Oc37C4zHE+O6ZnuJ19xmW9N7FS9GzM/VulCzoVfDaPrlG/9bqRZnyNAH656CQgO1/XvB7/M7EIvgX/ucwPXOOpOeYKJpofiIkNtLrbij1ksZuND5vZVnycZZEzLBueQ2u6aaKcHxhoiN4iXYqwiUxTNm7i6IsrYcU0LH0Zn3gzTH9cV6Ztp8nWm2QZphdfMq+Z8Jxw6UfeJUybmOJ9II3o6jjp9bmP3oSrwVd4Ed9Bg+F9advho97LTBVolWHXJKBwgUt67OkdnuJbd/Klx3R3cazbXv9hTuN5etFjud4xsAnedTLQFYH7uZLuIp3cTm6EfjwXsvhREZcIV7l9V5I4dDrNpyW3TrFk/2F6/Rded911Lw16lztsxHS5wzZsmGvz+zDYiFOzJHImCXcj+D9IxLcx9phxfoA4rOHQPiNxJYCNYKXG/gEq9gwTI86KLrJ0OH34cLUGTRnbiomz97ocF3mBoLQsLgdfpk28lD+DBnxbzRj9SdxAT92TcAVO61M69HtciTdp7wFtgruwtcPEZVjZU7dhGoT1w0B8D83j4B3AA+72e5lvxElrB73CZdqoG+oyvm7MkpwC7WfPz3EYZx8Xhkzz7G696/n+wIe5O2A/F8rcy3B2J/cxPMwtSMc4LLeLW6cOcEX7DjYB2S6xrIffxyslneWzcgc9Oc53zPBThL2EXt+1fcvSyGaZbthzN7cOS7Gckema+YE777zzcWikH8IU+TI3rLCj0I0HWD9hNYzAdik6lg1JH2MidiWesgI5dnyW3VDTHDuOeQMnSYa4UQW60nMLMop5emKsrpSGeYaQOXaU9Opyo4p5JHNGRP71CE5Gp59pXWb1ua/na8Pne/qJJ9/TV7Ek3j6YhNVvYEbQH3iByXoocQzgKXG2ger3EOr6ucQbQTX9CmrA6TMU3UIv78z+ve5lAWY7y3ee1PPr0I75XfbbwqUqi0zyeST3Xtb3NYmv5ZzMLmCnmduK67yo91Us6znOv8iyPF8z4x6DpaXfRN6ezXr+e6VZwceLZT3fJ3Gj5GUoLjKeuvXWW6dyIxGXi3wxCuDF7Dh6ImuPOT8gcRPlU+4f8Ks3J9hWfIJLSC6wxBL7B6TKFQMaZ1Jng5sK/TRp0qHw4tWVPd/QBGNGJt4V9Nb5jYOmS8gSbxe9DXwLeV94CabQCLeC3gJoAM+Y5RiGt8RXPhdZNo/iKV3iDYuQOIVTCHnQfSpubz/PTr69HtFlz76fevcz7Ou5Pen9nNS7CXP/KBe+TCH0HtC5nTDT72ff/gFuRVI5THBMtyTNZ1Gdc5yP8FeY+3/N+w/S4/+ekc7s33zzzSPH+cL2uSsiBVTi9Ate8IKLt9xyC3x1cfrDH/7wt8MAP4Ai2O/8AGEqw8kUgYzEz2VDG2WeWdVjXPV0BougYpNEc+y4tX+gr6AZfqUtgAavzMNLl0AlzDB/kC0vQZYWABVyKWLI0wBUTxoVgHBaAAPwHXhHxZdJXA3RtevBUOsnYntoMl2fk15/sWpRA5V0lc9dOOSlLme4eINe+MyLORznu6bvsp47Vv0a8F7MeHv2DV6UevhwNUdnNM9P5ym+01gD9734xdUej+kyn6U14DhfyyCU4WQdjsRqRXMJ8TbX8++nY33JoUOHfpowh9j1Cvnyfp0gYpV/V0QBZN4Q1oxB7r///n2YKs8n7pn12uSo+aFEM+Bnw8X8AMJ+mi2Tx5gbWGCOYMp74zx2rDWgxh6jkh/JMwbm32dS26KNAAyUsOdFhgXfKAWwAm8Po7dzSUHtUwDiHce14UJQSegx23QNzJi0ZTr9TJsKwPsRMizh2u8ZHulH5Jl4VSwKq6danexbZB5qM1en7WO3nl+MOsoV7ttYpj5B+KNYt38Pl8vuYqb/LB3cET75tvEbvqG6mqXAHe1jukU9lHQNedbc57qNbVN0nvbuP83GnhfykZv4CkwpY0NwjB2lJrliDmKdpFhz2223rWMDwoOsRX4bxD+VgvwhJgxKdaOTw25YWB7YjpEzOEOD+kEMlcFWLkY4yGzqHj5AMeUtKPWtuRVLIeF6GlwmkSW9/cXbWkIYe2CXEY33L00NXnAnXvMrf2ITtunF87nHT3q9Gsx75gJvTdIAXtI3eMXV48o04hKn13jpMlUJExFD/hI2QXwXr3XrMdakN3BnGRN4hJ+40xdX3PtX02vyjAv8PfiiXvriCNeyFO9J8WLu2/vH9yGYyfe8vjftPMTytHB7EXaHA4sc1nkIi2AzfHgHF5ye5GDPNWztvZG7C3cS5tDBNf3k257su4KViXPKiLKCzPyBsoO5/x0KvzJFeUA73ux+VwZdYdbtI+IgdsBMYdnwywl7AcOCm874IYlz5yYfFkBpzA/QEHGEEhPsGB+pPMltRBeZfJnyIhIFQougpXlrYqqjNI6XS3hnnb3gMAYap2KsQM3HY+C1d/IiE3uVkXgVCl1JZ4ZF8PJFFF4Oah5eCRb0FjAmX42T3pPUkXSKdyx664z6ypX14KWrCtVOhEi8Kry+NH20l/CJV2WlchGv8YG7DwHhw4Q/kkGXX0daoPynWYreRdtNYU36HYL9bNBxdx/7aav383FQjtFVj2Yjj0vWDyPwJ9jHv96jvKz970MxbPCYLuV2hUBlMaGzOLF91wN4jPM9puv23d8SD+Ww01Tyx+40TTeus34fUVdPVMQM5R133MHlqNNuK/4e9g9sv+xjxzSSAjTPTakPs614zmvJ2FY8TYPE2AtGtHb92ZNSicFEmr2aqAqC9w7KLMalX1ZIhnX5DV4S5GWm3lojLm/yGUhT02EcEctZZJ4ZV/tGRu8MnMKk875BnfTqbDixlL7h6dpxvvuzHnTi9b3Em8zQlTYSFX9tGPEa5k24CmfijevYLTOuTGNpfE9XPhuWsHMIvfgcurnSkpfOxq29bbzEZzsm3vTLtjBswbRMrM1xZP08/iaE/Syn9jaiEPbyfQVNeWk4yZn8OTan7b/55upebrvyK1JbuNDjapb1th4+HG0sr5Fx5J35jemXx3SPk+ZHOW/z44cPH16A3jW33nrrdE6wj4lvYrBs84kTTpLAwgCP3DW7CQ95yIj3f+XsJhaB4x5d3/6R5djWfzQqYc4P2AinaJwjHHZYYj12DcuGceyYnlkGSrNf01cFEIJKWr83XzJHVEjNWJEdaW3cARjjCZdB0jwP/IRrXejyyq1kyHZFJ4O38fpunPh0eZuxjK8Tb7rEke+ln3GqD/P2XSe9Om/DNSzxem110phpSz8S1X8lvoQRr7SrALRUxKdLvJmm7dcoG/rKd2HFG7axCoCftwybj3hj4g6YoKGut2H4Iw44zf0znMW/jt79CGv4btrxe4YPwz8n+RTcBXbszbJd10M5fhfB5buHmIC+SMdyDZ+Gd41fC/Ryj+nS40+7Wob7BX630Ovf4wvlcy7NhrJoj6izTj5i7pZbbpl6/vOfT7stK4J77rnnaWi8l7Cj6XPYzeSxY7snJWhZisakLIYFCJ6KwG/fnWDfwHGPHdOgXlHm2M2NRDKMt+zK9JrqjUldC7SCHk4mGdMp4OJ1CKBi8R58FY4YVmCZBC/pxVsOARJvSdqKPOrIvnBLKF5vrLX8O1SeNb0m7UtXo13hBTzpxWv581bgGAKIr6fMw/Jpx0lvzoXs7hgC9OVREitO4TyRF/gZ729lff5aevN3OaHM5N7hb/qm6m46D7++tJ7JQL8DeLffksTc389dfG7yYfvd5W7fjWO6HNTxPM0b4J8fZHb/TdKq4OOtaj3f9KtxH1EFkARS0Ogeai1XsaPw67EInsf8wKO8uOCyjx0j8N62cowdWadQBM4JeOzYj1ycoHE1TzWlL3tQVQuODHoSBaMAeMGkAnW5FSuTqgUVKBWTF0z20dsWmKznLj/x5odSYs4CwFH0DuTRIdSJV0H1uwnbrYcW3gEcBXHt8PI98WoJaA05ZxHxHTQUKOMxFIMWGfUXws/zeWb03b+/jbH7Zj8bx7LeQwwDHuBDsbOc4PNzYmcZ6/sRkOOM9Q8w2bzv5pvjmO7lXMcFQbF912O6DH0/wLLeCxH8X5ZQ5aF9TDcK8BH4G9XujygJ5RHFt7/97Xx7cef3keGzWALZ7PxAbSksD3rHpQTGCKaBAXVzHLs8wq6sOWZqVQIX62PHA1dIj4t7CJy9qZWpMliNK5k+04tJvLrE2wUXAGP+mb4Lb1fyFXmNIXRpTagM063AU0e0w9vvmV6/xBuCXUa2n1Pg6e39QGwoABTTeYR6PzvzTrGUPM/JvetYTTrFufy9LPc9zCGdzazdH8dqfIjNPbv5oOtBrIOt9ae2nOSLEhXlamfb865VG9dxMbPvtTw/huD/CLzNhoPlzTyP9DjffPrcpVbqg3iEw2nMNX/1V3/F5wY/1VWB6oMf/OBjMI9euH79+q9mGWT18wOMF6nk5W3FaHSPHR9lE9E8ewjWchLLrZlxLdkVKt84CmAYg/eR0VYAfXDDwrvyLQWqK22kGUPg22lLvF35JnwZVz5nfNsXr79SsbRhfHcmXgVxgbH1Osb2e+i9H2L77gEm9hTic4SvZ+OOs/u7Meuv4iOnHt2F36r76Sgucu7kIOP8XSzp+a3CGOeDbxWz+zHZ4jjf4W19TNfZ/Q9Ip8t6T3nKU5wEHKf4JnlE3P93BZClotEGthUzLPDY8YuowKexoSi3FTt00DIe28X8AD2B8wNn2dl1jC/NnmC14DzLPZ4vsHeIjURjY7wEmC1nJcqcOnvqDI+AMf/60pR4x0QVYH34EodCIkynZVGXJWEn8ZNelW/btWlqv7fhfQ8YaW3R24YVTuH3K7peKrONu/YXmNXfxXl7z+R/+NWvrnZwEYf8oJk/x81UwtvD3856/hRbew/w9WfX/mdY9ruM7buOfJpjugxp/4zh7XNnZ2ffIM1XYvuueK6UW9lKVwrzKvHQ0Ap5s+7JtuJn8v4clg0P1teSaVIJMz7tNQM124r5zttRJnu8luwiimGasaBMI0OEQgD5pO6RtgCG9XzjCFK7PAqq6cQb6Xm/HJepS7yJL+P63jO89Ns0BV5oLLcCC9/AoeSdrXcjzzr23/t59Wu5Yuu9jONn+ervu9mbf46x/vW33FKdYDPPltnZUBD3MPbfzefBD/Fl4U1M/F3mdVx8+nCa0+1b3b57D+P8F2Hu/1zQ2doXU5b1/+fz+EL0EaYSRdBsK+aQ0U56lB+EhO+gcmdQBGpZfxPND9iL0JWENeDW4dOs8R7ls0tzLB16CckUs74xLCBuHEUg82UFDuv5AFu1S7zZU4somH6VGDNt1kVXTz0J6sSXacQb9TKGBZBpSj/w2U4tl3jD/HNiD2dvHpC8224X2GA2Te+9hS8PuznHAzsnGO9Ps8HGCb/bn/nMahdf0JUHHvypn6p2cjb/aj60sU1LEByXeR0X+4i2TsGbfN/04k/Q67/k8OHDru1rvTS87PtHk0v+/WiiqaGFipM+OqnlZUMUwU1qVW47/TIZ12PHxF/esWPGhCc4dnyUa8mWuKZ5mqUhL3WYdH5gHAugKdgED5c7BzAgSoVgdSmWccgawNeRIHpqwidVWAr4MBd4gfGrzrZNfFuCwzmm86y+nzDfyW26u9ivf4oxvR+oOUq77mPp7h6+uON39O5lLf80Q4GNfIPv4Dd+YxzTXeuhH/GhTCYd58ODsVbP9t210gE//ibzVs85ePDguy0LYR/xZb1hddgV91GtAJJgKlKVD081+wf+MRr2BawWPMmvGTFH4NeM+ABvwGWy4b6Mwy+/duznl45y7Pg4txFdYLZ4GosgXL0MNxzZ8hyAlaliWo3rY/9JBHUFDsrX5yy7saWg9sEa3o9pMC7xjlsPwo900upQxR/7PNyyq5I+Szutxdw/x3j+aib0Ftgafoa5nQNM7M0RN4NFp7+dcf6dP/7j1RqUxG56/H2M8weO6dpmE7QbZaNZLsY436/sYO6/jTI8n1t5XmNZiFPwL+uYrng+Em513PqRoKwjDyrWsb8Vy+NFP2v2nSiCZ7N/YJ/zA4S5kmDlj18umYtfMz9A7+FtrafZP1DBaNNc7BhzA8wRDHOjBHUMNu9EPwzvCpzjCFOdyzC8ScgK/BmB3xcnXuNGKRbrfGznch6K2ANhm72Yg8m8dZj1D3PB5sk3vjEsgllm9V3Ku4/v6j2GK7b9jNZJtvAeJ36JYcAOlv88prvZpWB6+9gqPqHg18Uuj+k+QNhLEPyfsCzyJJ4d1XBmEfijxI0vKB8lBENGmPxUsuZ/xbXlB9hB+Dzen+nki0coCZa7VBZju2RIVwvcOOSx44cxF+e5iGSamWQ/h+5uwvaxYzOyElOgoGPsPMcBTLwKVKfITCJIRYYl3iK4O48CoIuGMqwPb6LIes73Pj/gLDOK9wL36U2xYWeB5bzH0h4P3Hqr0lbt9e59btqdZsluK8d29zEE4NhcNYNy2Mb1W3cyzl/LkOBqJgHjmC7DgsvcvpvHdCX7p1k6fOH+/ftVAgr/R+04X/r63JXl1r5cHoFwKlzam/kBVgs+lfcXYpJ9ocxzWV8zYkIothWzieQ4DOX+gbNsHMltxV3zAzK+BF2uAiiFSXwpUFe6oRJvr2Ih73QlTcPCjLPuhS8tAMPGdcI223XFx8rMbr6s4yTeGUz9RW7nOUPPv49Z+8328lzE8RArOuuw1DbQu68n7DTHdfcz5r+A0t7GVvBY1sN6WO04H5ouwFexswy++t/M9D+Pcf5bLRNxH/Xj/GF1f6X5alhej0gcDeD8AHK3bHYxLPgqwpwfuNGDFmzAWPWwIL92LNMdYVtxXEvGUMOLSu2BYv9A3eOvZhKwVywKgSkF9UpW4KjJxS7ausLaNEmvcLG8WJSjDVe+N3iF19x3FyiTfUucxd//7GeH8H+Ir+c8mo9o3vkzPxPxG/lu3hxHcx/Fl3e8kddlvbsx/bfefHN1GKtgnUu7TBLG7b0okVDMk1lnkhVf0/XAGuN8J/Yc579K2uExLcxmudqwj0X3Ma8AstLbx47ZTfgs5ge+D0WwjWGBYA4Z1NZjOxo5BN35Ad0c20Yffs1rqtN+7Zh1ZjePhBLQTK2xDvR8dVinN65w1HBX0rKQHssmhye9Pne5vvAuWMNCYYF7XHob/JZTE53NWhsx2/c/4xnRY5/kO5JzHPeeZnh3DUdwPcX38J/9WTXFnnrnBDT776VN5vjtYkPPQWA2IfxBh8u5uHFpCeDlv+AV5pbct3+C9P+Rnv+/3HDDDS7xfUSO6Ra0PKKPHzcKIGuJBmrGYpw2vAYl8DyWDr/Z2Vp2ZeXkzMTzA1aUW0NdKz7JfnHnBxb4rNk03zJYw5jTyyK0CuLWWpn5Crnsqe1RJ3GjKCjxtmHb7+PkG8oSwLAA6noYli7yAK7Jy7V8BHqarbjXMWa/m225O9jN5+m7O1i/38Yk3jzmvgdzXN9f5MOb08zXuM23YiXg6q/7umoHiiOP6UZtTVhn0Bv84Vd2tB45lPbz8M4LWsd0Y+5pWNk+luIm6hE/FgqGtvZaslw2vAuav4XPnv8ywv8iJgk/2xEB2txGDJhxypQ9iELuWvGOJz+52szS0jGWk4567BgTdKr+lHPcRjQO0jFhZORRot8I0QicCVfizLD0R6AYiI40LWU3TPCaPErBF6OCSr3mBOsJlvJOvfKV1Xr28nsR5zR1Gxt1sOQclrmN98MMBzZzTHcfimEfvkt+TvDFdVzimsxpKjjOZxl/rV/ZuZX352Hu/6lo7FS49NbVp48r4bdsH3cKwELRUNGgfu3YdyZs/gTvc9hI9PXEPZ9RwfVeSzbpsePYKALzxteM6PX3ff7nV9vYdXaErxkd9WvHDAXWcaIsviDjtuIr5BScUgk0gjQCfx+c4fmbVFSyp+/LOvCqFOre1/fG1YLvJJ/Wks6xvjv4LtLjeoHLLmb2j7AfYy2z+Nu59PUIyvXsO99Zbf36r6/2onBPMsF3hN2bh1jXP8Dk4Ea/potSX+1XdihPXsflPXwfgD9ewF2WvyJtyT8fj4Jv+XQlXy2HfBz+l8eO/doxFoDHjr+HMd6GPHaslp+o6DIzP1cLZObTHDt+yGPHfAbKj5xOYZbGaoHj0MlN0YaUNNVzrN5EdDwMCNuI+HKyrgN0ICjw1gI7ENHxUg4BynQNbfTO5zHf3czjJ+Gd6NvCV3W8V/8Uqy2HXvKSuE77QXbvXYPQ38/uzN0MBe5Hyc790R9Vu1jvv5ov8mxzoxb16v4AHULaQc3QIDV0HtOdpy3/M/fv/8ior+kOxfgxGDlxrX0MljFIpoEHjh2zWvAY5gduYbLwn/lxRcZ8caMxwGE1jFvOWFqC+eLoKLsST/j1V+YHFrk/LrYVu12VsW30eD1M2ghHkalh9s5eCCJzb8E01awpG6wrXYHi0vi6CEy8eSFI3GDUwiu4ym0SF8oQOr3L0GvB8rLRARwIv0pxO8exTzOP4vbdrVyv5b18eziTfycHdy4yzLqes/gnmfjbg3V1giu7TnBF1wLl38913AfYqq2yuJyv6VKf8ZUdT5lyOS07virH+e+X1o+WY7oD9fYIvpT89Ahm89GDGkYdOHbMROE/QBG8yK8dyxB88XjybcUULxQBpm0eOz7KDjTnB+LYcf1NuEnmB2wYe/0T0KRLgUqxTD8ii7++8ARJvJ1XgiH0o9Inni5feptbgVGqKqxGkSD8mv7z9OIHmK3fgXl/CiFfhxJQwZ1jGOAS4If4ss7jGE4tYCU8zI3Pfjl6Nz3+VawKzOTXdBlqTbpvH1Ik5zybd+JruswJvYl8n8Npvddblo+2Y7rS9JFwf+cUQFYqjDlwDZPHjgl7HseOD7itGKWgiag1MH4dKUD8PIgSzM6xYy+TPEbPpsk7xaSWZm/XsWMFz4xSAOPyTnDlbcNxyy6C0nUpaDstaMIlvvQNDLz4XgqqROQlpnl5pzDi0/rowxsw0KbghoDjz1suIuJSUPwN9vbAeMuus/XxGW2E+QBXaTtZt4ee/Ci9+wdRBjdyAacf33Aiz89oP8ydjkd+9merPdzHdzUHdzZ7TFd6ycM8+ZOEcZ1k8bHpKb+m67LevTx7HVcc03Wc/5Vf+ZXizRWicfF+XMBNVJMfFyVuFaKcH/DYMczx/Qj/v2OicB2KQBnxN9H8QAgFiWR8JwRPcuGk8wOnX/ayatr5AXqyHBaUQpaCapgCpctrwb3FWFdeCy5hoxqwxG/6UlAdr6cC8HbkxGWaVACmKV3iM22jAABQsRinAmjwgnM9w6JzXreFIO/jfL678vyA5jFO6l3F+/sQ8vUMAzzAczfbfP2uw3rG/FcjlFoJzv5fxvZdKzGP6S5B749j8v/I4fqYbtn2ZRn/Lj1nm/9dKvOKsiKw1kOzrZj5gSeiBF7AstCXohBifoD4yz52fIxtxQ8z0eW15dOMeUcdO84hgMRtsxdFOBSySV0qJNOJS7ydQ4AhiMt8S3yZRGWg0nBuge622sk4fYnlug3u00fA59lE5W8zQr2BHv327/u+6kZ6+Xl2Wd7HZ7am2WMxwwrAPgR/L4d9vLVHwb+M7bt8QnLzNO3oMd3fhr7nM87/G+mFfhX6R/T2XfP9aHSfUABFq8AY7fmBL4GBXsj8wJNYOchjxzLP+PWm0NpbOj/g9tZ6bHvUY8cw/9Thw8sU1LPZSY4Cp0DFrcD4Y9/eS17DXOIdNgkYAp5m9phKxzTeoT9HOeYZ+mwj/RaW6fYh1AuY91sR+vdj6u9lD7914M8NPacZBiwBv++bvmn5KzusnoTgY1FMOs5HyGmuC3FM1zv+WOp9G++u57/WOvm7Os4fxg/jM/IwLB9ncTCzY/88djzF/MB3Ygk8h2HBbrcVEx9LSBMVW0FSSFACMvYZjqo+yLHjkz//89Uav2bEenZMEsL45Rg3lwG7dgKGqINzNS6sCdLmFVsNlhpf896HXAVBOdz7ED7C71q+s/M72R9xmn367pNY5Iz+HS9+cXX4lluqDQi8F3o4NPKyjuNveEO15Yu/uDrE7bse9rG3v4xjuudpo7iOizZ6GLK9jusnUQpU+8feMd2+ar/S4Z9QAP01OnDsmG8bXg0jPRvwf+tkUj0/oJxMtmxYC1hMjNFbnqQHfJAtxXNYBNPsMHSysNw/kGb/JIdr+ot0KSYVgEMcNNPEQwuFNTbvODOPUrxAL7+O03j77eGZ7PMSjgWP8SLst3P11k6u4trFxN8R5gPOsp//ApN9h1jn9ys77u5b7TgfAY+dn7SJ13F5OOe/+7GZ2dnZ+ywtbebWcCf4Ruq0S7Xzd+fpEwpgRFvXvUczP1AfO34R8wNfYNL6WjKtdX9juxzbxrFjlsCOIhgPey0ZM+DTtVCoCMg/cMLEY+PuAgw8BQ4VgG5SrEmP+x7cqnsaujcxaecSnkOALQxpjnOXwqHP+7z4wIbXcGtlKOAPcqLSeYGD3/3d1X4O8az1DAUWQ9ZFF91DwmKC1u27wjBE+z2O6T734+WY7pByX9GoSdv/imb+sYSsvVzE/oGvpqd5EbsJb1j1147tefnFsWOEZ4E5gYcQkqMvfWl1kdnztfSi5+1psRTSVJ+kzhqhr4XdtCH2KALGxvHcNbToyiPTxfFaaNvD7Trb2Y3nDbsKsjftHMHsX8Ia2MUBqQ/xNd1P4qs692Dmn2Rrr8OanaznH+ScvkOB5tptlVKhmLryboVJSnNMl2W991HO5zLOf6VwPA8s77bSfuK1VQOfUACtChn1Wi8dhUnp1445PPJdMN0PMD+wvT52PPH9AyGoCKnWgA1ymp1xD7KT8OQv/qIHGeJrx3nsuEtYlvvygvJa4FeED4Asm/2uCHS5FWlRUJ7T3/X0p8elHM7k8yH7aj+9//uYx1hkhn/2W7+1mmdyT4Xg/v4zbPQ5zjHdbV/7tdXBL/3SauvsbCg8x/mWY0KrJgQfWvlk3zZvfjpO+pfQ8//Ex+Mx3a42eSTCulv/kcjp4wgnAmu9NcOC++67b5ZThs/DBP1GL4/w2HEI9WrnBzCvPet+nIMv93Nl+dzLX17NcOLNY8deSxa4U3DbvfuY9VzOLWSSFUKfEfU8wSI9+V4+nuH8hdaKR3U3cfjpHBbBHd/7vdWh5zwnZva9lfcCk39LrJxc7Vd2sAhUbpe5fbfKY7pYLy+lrl+Euf8hSaQ+PrGsl201of8JBTBhhZXgMN4UnzWbzs+aMT/w2cS/mPXnz2LDSWwr5t1JwlXPD5zFpD7y/9o7m9i4qiuOv0nGSUqo4sTYjmM3CWoSJEpBfBSkClWJVNi0lYKQLCFBy6ZlwSIJHyoCLBwghAqEWqnAhk2FhLroggJRpaqbIBZICAkWESBAidUAdsaxISkkIU7c3+963mM89jjzxkPsSe6TxjPv+c2d+85759zz8T/n0M2oZNqx3Y4BEul1D47Cysnk/KwQkeHVAKYxflmwBLucVd93V/M2CqAsxXGnObKGVV9nXsdNNyXDtNPehJNviAy9UzC+q/+35O330HevhwacTeime4Yy8OCgAh5jf7ns9ltebhm3bzxff0DcGqBArgezgfEv6K/44Mn8+gcUBqSRvsnrFyQW3UVOwSH8A22sVNJYs2Aan81FmGlpx2gUa7GbNz/zTLKGJJkzMNkEIURBRFbQybM5gfQlx6Sf0/cgWGDwwPyu2NREFL9g6e0C+51oIadgblN4baGt76IA4GcEYSCDnuX9hzj/fkou/3oq89h/0TRdlui8MX2ndFraSUPU/IM4W++EtltZ9d+S1tJc2kfmz/MEzDw3agAzadLwER7MrBoR/oF2HuAHGOz+ctqxD7W+g1xc60otA6lC64A7jtNthFTZY4BqlhBWW2rasTZ1FX7Ai/AHa21pFCDTAHQKMkaos3/0aEjZXUEJ7m7APEWY/BsRe4Qq1UL6aKf1NYLI1f0kAuFLGL5j166kZ/v2ZNWmTcG+D2G9/Ha+0w0YC2gmbt8Ous+iUT3b0dER6rpV0rjWtcXj9VMgCoD6aVXXmTyg0jTzD6Rpx6iud4hOa0ba8VlW1TE87kfwD5x4443v0o7xDygsam2V/wmCRQblZFd81fsJmqOswLPfSyfdz8nauxyAzhdvv50cIZlpCxrIKGm5CgkbaprJN/b886FQR/fttycdpulyffO080OaLtqTxVpM0x1Mu+nK+OxH+G6tm9vg8SgAGiTcub7GA6vqzwKbdTO6hYd6Lx7s633AedlgYkn5vHMNl/0/tc0DrBigTQnHXIlowQQMWQQ/EFB5CoJq2z4bYepDCAPC+K7uqvpFQnM/ojDHKAz/Y7rnHKb2Pu724Kn/gNV9Pc6/lcT4v0IDmEBDOAmAae2OHaEc13LBQJoOCIdG4LvQ4CzCsWhdBsA877D/MGG9/zhTPsv4ojKjnT9165r6NwqAppJz5mA8wDoBQ/loPhfAD/we5nsMFXddGVacO2zoKs9YGaz4G7D0wxTHHCcch6s8WUqIrlbasTNUiCTY8TJsaLWFuj0BeOcqSm6fpCrvEPn4G6m19/HAQHIlpbdM212OMBi32AnaQDfddNehJdhN17HmAd+tTNP9DCZ3xX/JOVbjLjwWt+ZTIAqA5tN01hErU08xCzoQAg9x4g40gjYEgQLC0GF+/wCDpGnHX1FCe/jVV5PjqOZLyDa0wm5AE8rw6aZmgIZgp6NeYvOW2Lbk1jLs+c8pv9ULfv9TOuqsJSvPcQ3xddBc48Pdu5PleP37qMpjrT41jXnCd2nku6qAnW+a7p+Z3p9g/jGnWUmrdNrx/fuhQBQA3w9dZx1VDYCwYTENG5bTju12/Bu96MKKOSeYDrMOUONgMAtg7GCDA70dJe14+JVXklOkHRdJrdWDXxk21It/CmHRS329Tpj7IzSHSwkvrhTaS4RhDSm8hxEknYB+BCR1sdq3bdiQtHPcMF+w89FAGlD3A4BK+C7mkGbQazD/AIwf0nQvtnJcNW7neT0cBcB5JffUj5WZnGc/62b0KzSCp0houbrhtGOGTv0DZtxZUmuEklr6BwTlLN28ecrhZ8QAYXEGnIJw458A3jlEDH8ctX/LCy8k/8Orb+PNEwiCUQqc9nGse+vWqW66gpAasPOdGq8A30XYCZR6j/2HYfx/8a45k5lJ7sft/FHA1SZu55kCML5OLVV+8QMF0lb34fz6GTkF94EoHFu9enWb0oFpGRKre3NFVggYe7fyznpU/CsIF7aDxpsgyegMiTgBP5BqC4b2ABmtZaVvw7M/YiddIgFDlOlK6LF3DXH99bfdFsbSFDAMmXfVZ/I6OwuUWmvj2o7C/DtHRkZulPkHBwd1ghoxiWCeuu9yc0+MGkBz6dnQaDBBhh8ATYgHL3kEprhH6CuCIYS+PCfP4JwfTg/+AVb7cbz3X5B2bFuzNkJ2JwDpqAVcAtKwj2IcowiCY5gNduDppW5fOxiA+abpMoFCeg18fpHVf09XV9ewE6u8ZvfjtjAUiAJgYeg+41dhCO9Fhh+gm9ENwIn3klvwS5l5vmnHCoLThPtKaAJHqL03SrHSIi21V4HmO0nG3gry+LtJ2unE0acJoIMvmBRoFTk3PY6hyw5CTNzDv5m/Yb13HUfG5y3G8yXGItiiAFgEN6FyCoa/Ojs7C9u2bQvqP4VK+3EQPkG0YEsz046H8PgPUYvvB9jkvfTeW4cZsAK138q7wc7XAglWSOXs5vwc7HwAT8iPlXbT/Qgk5KOYN//wW3r2S6XSZH9/v47AuC0SCkQBsEhuRPU0WCmDbezxctrxTo79kdBZO6EzDysgdJ7VfQ/5vktwCO+5OpeoViyTX4aD0OOu+h5vgPEDxFn4Loz/JQJrL4z/F8aiI0pY9bNrcT9ui4cCdT88i2fKF89MYNhpYcPh4eHLcaTthsHuMu1Y/0CZGgqCujdVe5kc6F34zgSMrwBowMGnKh/SdNVOiGT8jU5Lgz09PYccOIb1AnkX9Z/cBt6ivpoLbHIw16SYgbK3vEjfuoN4z3+Lb+BmvOlvWvYaCK3ML5qwAu0zNyFkdBlXxvfl55zM72+d9reJ6euo3M/+z8nWu1vmR3AVnXM5W2/KGzn3lOJ/F4gCUQNYIMI38rP6B/xeakfjH/gd2sBuQmwbhBUDrsltFuScR2bnWxh1fHxcZrfs9suOUz2/nGPH0xeAAlEALADR5/uTrrCs2sFJODY2tgpt4EH2d8KUK4UVM36wyef7O1XfD8KlDN/9GsHzHKt/TNOtIlKr7UYB0Gp3rDxf/QN8zMKGlC3fzLEnscH7zarDJm/IPzALOcI4mhs2T8UH8XeEzQCmyCeeqzDiLYb1ZiFcKxyKAqAV7tIcc4QB9eNkaccAiW5l/ynTjitgxaFi0RzDzPgXTE7NkMnQTdc6BmgWMU13BpVa/0AUAK1/D8MVwKz6B0LasQdINPoDxwYQBH046fTQ6yh0tT7XPQ92Pip+6KYL4/+X7zzOiv8S7674Chzkw8XZTVcaXEjbuR6GC+laL4prgUEz/wBowstwDD7Khd+LICiCH5C59eAHZ2I1QWBqsxHTNF0Fxl8RBHuI6R/13Mqxq78b91uTAjEM2Jr3reasy0xcMAZPAc1RVu6dnHwdzP86qnzBsB37JuikPgKXcz9PgNUveg7n/hNmv5aw3n0yv2Oxz2lTjseaPx7/0XIUiBpAy92y+icM005T1zELfs2xPWgDV4PR16GnZz/BaVhEMGjnv4/G8MjGjRv3eZxzp5kVHotbpECkQItRQBx+WRjI1MtwFN7PqwRqd9IXEYQjCIddBw4cCNBAz/U7LXaZcboNUCBqAA0QrVW/AmNn/gFgxV0gCp/GOThJ6PAhEHwlr6vynFa9zjjv+inwf2nLEPdYCkRIAAAAAElFTkSuQmCC" align="right" alt="logo" width="80" height="93" style="border: none; float: right;"></p>
<blockquote>
<p>Please see the package <a href="http://haozhu233.github.io/kableExtra/">documentation site</a> for how to use this package in LaTeX.</p>
@@ -1589,7 +1592,7 @@
library(kableExtra)
dt <- mtcars[1:5, 1:6]</code></pre>
<p>When you are using <code>kable()</code>, if you don’t specify <code>format</code>, by default it will generate a markdown table and let pandoc handle the conversion from markdown to HTML/PDF. This is the most favorable approach to render most simple tables as it is format independent. If you switch from HTML to pdf, you basically don’t need to change anything in your code. However, markdown doesn’t support complex table. For example, if you want to have a double-row header table, markdown just cannot provide you the functionality you need. As a result, when you have such a need, you should <strong>define <code>format</code> in <code>kable()</code></strong> as either “html” or “latex”. <em>You can also define a global option at the beginning using <code>options(knitr.table.format = "html")</code> so you don’t repeat the step everytime.</em></p>
-<p><strong>Starting from <code>kableExtra</code> 0.9.0</strong>, when you load this package (<code>library(kableExtra)</code>), <span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #d9230f;">it will automatically set up the global option ‘knitr.table.format’ based on your current environment</span>. Unless you are rendering a PDF, <code>kableExtra</code> will try to render a HTML table for you. <strong>You no longer need to manually set either the global option or the <code>format</code> option in each <code>kable()</code> function</strong>. I’m still including the explanation above here in this vignette so you can understand what is going on behind the scene. Note that this is only an global option. You can manually set any format in <code>kable()</code> whenever you want. I just hope you can enjoy a peace of mind in most of your time.</p>
+<p><strong>Starting from <code>kableExtra</code> 0.9.0</strong>, when you load this package (<code>library(kableExtra)</code>), <span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #d9230f !important;">it will automatically set up the global option ‘knitr.table.format’ based on your current environment</span>. Unless you are rendering a PDF, <code>kableExtra</code> will try to render a HTML table for you. <strong>You no longer need to manually set either the global option or the <code>format</code> option in each <code>kable()</code> function</strong>. I’m still including the explanation above here in this vignette so you can understand what is going on behind the scene. Note that this is only an global option. You can manually set any format in <code>kable()</code> whenever you want. I just hope you can enjoy a peace of mind in most of your time.</p>
<p>You can disable this behavior by setting <code>options(kableExtra.auto_format = FALSE)</code> before you load <code>kableExtra</code>.</p>
<pre class="r"><code># If you are using kableExtra < 0.9.0, you are recommended to set a global option first.
# options(knitr.table.format = "html")
@@ -2932,6 +2935,250 @@
</tbody>
</table>
</div>
+<div id="fixed-table-header-row" class="section level2">
+<h2>Fixed Table Header Row</h2>
+<p>If you happened to have a very long table, you may consider to use this <code>fixed_header</code> option to fix the header row on top as your readers scroll. By default, the background is set to white. If you need a different color, you can set <code>fixed_header = list(enabled = T, background = "red")</code>.</p>
+<pre class="r"><code>kable(mtcars[1:10, 1:5]) %>%
+ add_header_above(c("a" = 2, "b" = 4)) %>%
+ kable_styling(fixed_thead = T)</code></pre>
+<table class="table" style="margin-left: auto; margin-right: auto;">
+<thead>
+<tr>
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; position: sticky; top:0; background-color: #FFFFFF;" colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; position: sticky; top:0; background-color: #FFFFFF;">
+a
+</div>
+</th>
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; position: sticky; top:0; background-color: #FFFFFF;" colspan="4">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; position: sticky; top:0; background-color: #FFFFFF;">
+b
+</div>
+</th>
+</tr>
+<tr>
+<th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;">
+</th>
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
+mpg
+</th>
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
+cyl
+</th>
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
+disp
+</th>
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
+hp
+</th>
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
+drat
+</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td style="text-align:left;">
+Mazda RX4
+</td>
+<td style="text-align:right;">
+21.0
+</td>
+<td style="text-align:right;">
+6
+</td>
+<td style="text-align:right;">
+160.0
+</td>
+<td style="text-align:right;">
+110
+</td>
+<td style="text-align:right;">
+3.90
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Mazda RX4 Wag
+</td>
+<td style="text-align:right;">
+21.0
+</td>
+<td style="text-align:right;">
+6
+</td>
+<td style="text-align:right;">
+160.0
+</td>
+<td style="text-align:right;">
+110
+</td>
+<td style="text-align:right;">
+3.90
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Datsun 710
+</td>
+<td style="text-align:right;">
+22.8
+</td>
+<td style="text-align:right;">
+4
+</td>
+<td style="text-align:right;">
+108.0
+</td>
+<td style="text-align:right;">
+93
+</td>
+<td style="text-align:right;">
+3.85
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Hornet 4 Drive
+</td>
+<td style="text-align:right;">
+21.4
+</td>
+<td style="text-align:right;">
+6
+</td>
+<td style="text-align:right;">
+258.0
+</td>
+<td style="text-align:right;">
+110
+</td>
+<td style="text-align:right;">
+3.08
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Hornet Sportabout
+</td>
+<td style="text-align:right;">
+18.7
+</td>
+<td style="text-align:right;">
+8
+</td>
+<td style="text-align:right;">
+360.0
+</td>
+<td style="text-align:right;">
+175
+</td>
+<td style="text-align:right;">
+3.15
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Valiant
+</td>
+<td style="text-align:right;">
+18.1
+</td>
+<td style="text-align:right;">
+6
+</td>
+<td style="text-align:right;">
+225.0
+</td>
+<td style="text-align:right;">
+105
+</td>
+<td style="text-align:right;">
+2.76
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Duster 360
+</td>
+<td style="text-align:right;">
+14.3
+</td>
+<td style="text-align:right;">
+8
+</td>
+<td style="text-align:right;">
+360.0
+</td>
+<td style="text-align:right;">
+245
+</td>
+<td style="text-align:right;">
+3.21
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Merc 240D
+</td>
+<td style="text-align:right;">
+24.4
+</td>
+<td style="text-align:right;">
+4
+</td>
+<td style="text-align:right;">
+146.7
+</td>
+<td style="text-align:right;">
+62
+</td>
+<td style="text-align:right;">
+3.69
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Merc 230
+</td>
+<td style="text-align:right;">
+22.8
+</td>
+<td style="text-align:right;">
+4
+</td>
+<td style="text-align:right;">
+140.8
+</td>
+<td style="text-align:right;">
+95
+</td>
+<td style="text-align:right;">
+3.92
+</td>
+</tr>
+<tr>
+<td style="text-align:left;">
+Merc 280
+</td>
+<td style="text-align:right;">
+19.2
+</td>
+<td style="text-align:right;">
+6
+</td>
+<td style="text-align:right;">
+167.6
+</td>
+<td style="text-align:right;">
+123
+</td>
+<td style="text-align:right;">
+3.92
+</td>
+</tr>
+</tbody>
+</table>
+</div>
</div>
<div id="column-row-specification" class="section level1">
<h1>Column / Row Specification</h1>
@@ -2968,7 +3215,7 @@
<td style="text-align:left;font-weight: bold;border-right:1px solid;">
Item 1
</td>
-<td style="text-align:left;width: 30em; background-color: yellow;">
+<td style="text-align:left;width: 30em; background-color: yellow !important;">
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin vehicula tempor ex. Morbi malesuada sagittis turpis, at venenatis nisl luctus a.
</td>
</tr>
@@ -2976,7 +3223,7 @@
<td style="text-align:left;font-weight: bold;border-right:1px solid;">
Item 2
</td>
-<td style="text-align:left;width: 30em; background-color: yellow;">
+<td style="text-align:left;width: 30em; background-color: yellow !important;">
In eu urna at magna luctus rhoncus quis in nisl. Fusce in velit varius, posuere risus et, cursus augue. Duis eleifend aliquam ante, a aliquet ex tincidunt in.
</td>
</tr>
@@ -2984,7 +3231,7 @@
<td style="text-align:left;font-weight: bold;border-right:1px solid;">
Item 3
</td>
-<td style="text-align:left;width: 30em; background-color: yellow;">
+<td style="text-align:left;width: 30em; background-color: yellow !important;">
Vivamus venenatis egestas eros ut tempus. Vivamus id est nisi. Aliquam molestie erat et sollicitudin venenatis. In ac lacus at velit scelerisque mattis.
</td>
</tr>
@@ -3071,71 +3318,71 @@
</td>
</tr>
<tr>
-<td style="text-align:left;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:left;font-weight: bold;color: white !important;background-color: #D7261E !important;">
Datsun 710
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
22.8
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
4
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
108
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
93
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
3.85
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
2.320
</td>
</tr>
<tr>
-<td style="text-align:left;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:left;font-weight: bold;color: white !important;background-color: #D7261E !important;">
Hornet 4 Drive
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
21.4
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
6
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
258
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
110
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
3.08
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
3.215
</td>
</tr>
<tr>
-<td style="text-align:left;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:left;font-weight: bold;color: white !important;background-color: #D7261E !important;">
Hornet Sportabout
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
18.7
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
8
</td>
-<td style="text-align:right;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;color: white !important;background-color: #D7261E !important;">
360
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
175
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
3.15
</td>
-<td style="text-align:right;font-weight: bold;font-weight: bold;color: white;background-color: #D7261E;">
+<td style="text-align:right;font-weight: bold;font-weight: bold;color: white !important;background-color: #D7261E !important;">
3.440
</td>
</tr>
@@ -3301,7 +3548,6 @@
<h2>Conditional logic</h2>
<p>It is very easy to use <code>cell_spec</code> with conditional logic. Here is an example.</p>
<pre class="r"><code>library(dplyr)
-options(knitr.table.format = "html")
mtcars[1:10, 1:2] %>%
mutate(
car = row.names(.),
@@ -3333,10 +3579,10 @@
Mazda RX4
</td>
<td style="text-align:left;">
-<span style=" color: red;">21</span>
+<span style=" color: red !important;">21</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999;text-align: c;">6</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999 !important;text-align: c;">6</span></span>
</td>
</tr>
<tr>
@@ -3344,10 +3590,10 @@
Mazda RX4 Wag
</td>
<td style="text-align:left;">
-<span style=" color: red;">21</span>
+<span style=" color: red !important;">21</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999;text-align: c;">6</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999 !important;text-align: c;">6</span></span>
</td>
</tr>
<tr>
@@ -3355,10 +3601,10 @@
Datsun 710
</td>
<td style="text-align:left;">
-<span style=" color: red;">22.8</span>
+<span style=" color: red !important;">22.8</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #666666;text-align: c;">4</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #666666 !important;text-align: c;">4</span></span>
</td>
</tr>
<tr>
@@ -3366,10 +3612,10 @@
Hornet 4 Drive
</td>
<td style="text-align:left;">
-<span style=" color: red;">21.4</span>
+<span style=" color: red !important;">21.4</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999;text-align: c;">6</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999 !important;text-align: c;">6</span></span>
</td>
</tr>
<tr>
@@ -3377,10 +3623,10 @@
Hornet Sportabout
</td>
<td style="text-align:left;">
-<span style=" color: blue;">18.7</span>
+<span style=" color: blue !important;">18.7</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #BBBBBB;text-align: c;">8</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #BBBBBB !important;text-align: c;">8</span></span>
</td>
</tr>
<tr>
@@ -3388,10 +3634,10 @@
Valiant
</td>
<td style="text-align:left;">
-<span style=" color: blue;">18.1</span>
+<span style=" color: blue !important;">18.1</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999;text-align: c;">6</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999 !important;text-align: c;">6</span></span>
</td>
</tr>
<tr>
@@ -3399,10 +3645,10 @@
Duster 360
</td>
<td style="text-align:left;">
-<span style=" color: blue;">14.3</span>
+<span style=" color: blue !important;">14.3</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #BBBBBB;text-align: c;">8</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #BBBBBB !important;text-align: c;">8</span></span>
</td>
</tr>
<tr>
@@ -3410,10 +3656,10 @@
Merc 240D
</td>
<td style="text-align:left;">
-<span style=" color: red;">24.4</span>
+<span style=" color: red !important;">24.4</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #666666;text-align: c;">4</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #666666 !important;text-align: c;">4</span></span>
</td>
</tr>
<tr>
@@ -3421,10 +3667,10 @@
Merc 230
</td>
<td style="text-align:left;">
-<span style=" color: red;">22.8</span>
+<span style=" color: red !important;">22.8</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #666666;text-align: c;">4</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #666666 !important;text-align: c;">4</span></span>
</td>
</tr>
<tr>
@@ -3432,10 +3678,10 @@
Merc 280
</td>
<td style="text-align:left;">
-<span style=" color: blue;">19.2</span>
+<span style=" color: blue !important;">19.2</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999;text-align: c;">6</span></span>
+<span style="-webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: #999999 !important;text-align: c;">6</span></span>
</td>
</tr>
</tbody>
@@ -3479,172 +3725,172 @@
<tbody>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(40, 174, 128, 1);font-size: 14px;">5.1</span>
+<span style=" font-weight: bold; color: rgba(40, 174, 128, 1) !important;font-size: 14px;">5.1</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(31, 154, 138, 1);font-size: 13px;">3.5</span>
+<span style=" font-weight: bold; color: rgba(31, 154, 138, 1) !important;font-size: 13px;">3.5</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(62, 75, 138, 1);font-size: 10px;">1.4</span>
+<span style=" font-weight: bold; color: rgba(62, 75, 138, 1) !important;font-size: 10px;">1.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(254, 206, 145, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(254, 206, 145, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">4.9</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">4.9</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(72, 34, 116, 1);font-size: 9px;">3</span>
+<span style=" font-weight: bold; color: rgba(72, 34, 116, 1) !important;font-size: 9px;">3</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(62, 75, 138, 1);font-size: 10px;">1.4</span>
+<span style=" font-weight: bold; color: rgba(62, 75, 138, 1) !important;font-size: 10px;">1.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(254, 160, 109, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(254, 160, 109, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(57, 87, 140, 1);font-size: 10px;">4.7</span>
+<span style=" font-weight: bold; color: rgba(57, 87, 140, 1) !important;font-size: 10px;">4.7</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(56, 88, 140, 1);font-size: 10px;">3.2</span>
+<span style=" font-weight: bold; color: rgba(56, 88, 140, 1) !important;font-size: 10px;">3.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(68, 1, 84, 1);font-size: 8px;">1.3</span>
+<span style=" font-weight: bold; color: rgba(68, 1, 84, 1) !important;font-size: 8px;">1.3</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(246, 110, 92, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(246, 110, 92, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(67, 62, 133, 1);font-size: 10px;">4.6</span>
+<span style=" font-weight: bold; color: rgba(67, 62, 133, 1) !important;font-size: 10px;">4.6</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(67, 62, 133, 1);font-size: 10px;">3.1</span>
+<span style=" font-weight: bold; color: rgba(67, 62, 133, 1) !important;font-size: 10px;">3.1</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">1.5</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">1.5</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(222, 73, 104, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(222, 73, 104, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(31, 154, 138, 1);font-size: 13px;">5</span>
+<span style=" font-weight: bold; color: rgba(31, 154, 138, 1) !important;font-size: 13px;">5</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(41, 175, 127, 1);font-size: 14px;">3.6</span>
+<span style=" font-weight: bold; color: rgba(41, 175, 127, 1) !important;font-size: 14px;">3.6</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(62, 75, 138, 1);font-size: 10px;">1.4</span>
+<span style=" font-weight: bold; color: rgba(62, 75, 138, 1) !important;font-size: 10px;">1.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(183, 55, 121, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(183, 55, 121, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(187, 223, 39, 1);font-size: 16px;">5.4</span>
+<span style=" font-weight: bold; color: rgba(187, 223, 39, 1) !important;font-size: 16px;">5.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(187, 223, 39, 1);font-size: 16px;">3.9</span>
+<span style=" font-weight: bold; color: rgba(187, 223, 39, 1) !important;font-size: 16px;">3.9</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(187, 223, 39, 1);font-size: 16px;">1.7</span>
+<span style=" font-weight: bold; color: rgba(187, 223, 39, 1) !important;font-size: 16px;">1.7</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(187, 223, 39, 1);font-size: 16px;">0.4</span>
+<span style=" font-weight: bold; color: rgba(187, 223, 39, 1) !important;font-size: 16px;">0.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(140, 41, 129, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(140, 41, 129, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(67, 62, 133, 1);font-size: 10px;">4.6</span>
+<span style=" font-weight: bold; color: rgba(67, 62, 133, 1) !important;font-size: 10px;">4.6</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">3.4</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">3.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(62, 75, 138, 1);font-size: 10px;">1.4</span>
+<span style=" font-weight: bold; color: rgba(62, 75, 138, 1) !important;font-size: 10px;">1.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(34, 168, 132, 1);font-size: 13px;">0.3</span>
+<span style=" font-weight: bold; color: rgba(34, 168, 132, 1) !important;font-size: 13px;">0.3</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(100, 26, 128, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(100, 26, 128, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(31, 154, 138, 1);font-size: 13px;">5</span>
+<span style=" font-weight: bold; color: rgba(31, 154, 138, 1) !important;font-size: 13px;">5</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">3.4</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">3.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">1.5</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">1.5</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(60, 15, 112, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(60, 15, 112, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(68, 1, 84, 1);font-size: 8px;">4.4</span>
+<span style=" font-weight: bold; color: rgba(68, 1, 84, 1) !important;font-size: 8px;">4.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(68, 1, 84, 1);font-size: 8px;">2.9</span>
+<span style=" font-weight: bold; color: rgba(68, 1, 84, 1) !important;font-size: 8px;">2.9</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(62, 75, 138, 1);font-size: 10px;">1.4</span>
+<span style=" font-weight: bold; color: rgba(62, 75, 138, 1) !important;font-size: 10px;">1.4</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(53, 96, 141, 1);font-size: 11px;">0.2</span>
+<span style=" font-weight: bold; color: rgba(53, 96, 141, 1) !important;font-size: 11px;">0.2</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(20, 14, 54, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(20, 14, 54, 1) !important;">setosa</span>
</td>
</tr>
<tr>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">4.9</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">4.9</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(67, 62, 133, 1);font-size: 10px;">3.1</span>
+<span style=" font-weight: bold; color: rgba(67, 62, 133, 1) !important;font-size: 10px;">3.1</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(37, 131, 142, 1);font-size: 12px;">1.5</span>
+<span style=" font-weight: bold; color: rgba(37, 131, 142, 1) !important;font-size: 12px;">1.5</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: rgba(68, 1, 84, 1);font-size: 8px;">0.1</span>
+<span style=" font-weight: bold; color: rgba(68, 1, 84, 1) !important;font-size: 8px;">0.1</span>
</td>
<td style="text-align:center;">
-<span style=" font-weight: bold; color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(0, 0, 4, 1);">setosa</span>
+<span style=" font-weight: bold; color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: rgba(0, 0, 4, 1) !important;">setosa</span>
</td>
</tr>
</tbody>
@@ -3653,7 +3899,7 @@
</div>
<div id="text-specification" class="section level2">
<h2>Text Specification</h2>
-<p>If you check the results of <code>cell_spec</code>, you will find that this function does nothing more than wrapping the text with appropriate HTML/LaTeX formatting syntax. The result of this function is just a vector of character strings. As a result, when you are writing a <code>rmarkdown</code> document or write some text in shiny apps, if you need extra markups other than <strong>bold</strong> or <em>italic</em>, you may use this function to <span style=" color: red;">color</span>, <span style=" font-size: 16px;">change font size </span> or <span style="-webkit-transform: rotate(30deg); -moz-transform: rotate(30deg); -ms-transform: rotate(30deg); -o-transform: rotate(30deg); transform: rotate(30deg); display: inline-block; "><span style=" ">rotate</span></span> your text.</p>
+<p>If you check the results of <code>cell_spec</code>, you will find that this function does nothing more than wrapping the text with appropriate HTML/LaTeX formatting syntax. The result of this function is just a vector of character strings. As a result, when you are writing a <code>rmarkdown</code> document or write some text in shiny apps, if you need extra markups other than <strong>bold</strong> or <em>italic</em>, you may use this function to <span style=" color: red !important;">color</span>, <span style=" font-size: 16px;">change font size </span> or <span style="-webkit-transform: rotate(30deg); -moz-transform: rotate(30deg); -ms-transform: rotate(30deg); -o-transform: rotate(30deg); transform: rotate(30deg); display: inline-block; "><span style=" ">rotate</span></span> your text.</p>
<p>An aliased function <code>text_spec</code> is also provided for a more literal writing experience. In HTML, there is no difference between these two functions.</p>
<pre class="r"><code>sometext <- strsplit(paste0(
"You can even try to make some crazy things like this paragraph. ",
@@ -3666,11 +3912,11 @@
collapse = " ")
# To display the text, type `r text_formatted` outside of the chunk</code></pre>
-<p><span style=" color: rgba(68, 1, 84, 1);font-size: 5px;">You</span> <span style=" color: rgba(71, 13, 96, 1);font-size: 6px;">can</span> <span style=" color: rgba(72, 24, 106, 1);font-size: 6px;">even</span> <span style=" color: rgba(72, 34, 116, 1);font-size: 7px;">try</span> <span style=" color: rgba(71, 45, 122, 1);font-size: 7px;">to</span> <span style=" color: rgba(69, 54, 129, 1);font-size: 8px;">make</span> <span style=" color: rgba(66, 64, 134, 1);font-size: 8px;">some</span> <span style=" color: rgba(62, 73, 137, 1);font-size: 9px;">crazy</span> <span style=" color: rgba(59, 81, 139, 1);font-size: 9px;">things</span> <span style=" color: rgba(55, 90, 140, 1);font-size: 10px;">like</span> <span style=" color: rgba(51, 98, 141, 1);font-size: 10px;">this</span> <span style=" color: rgba(48, 106, 142, 1);font-size: 11px;">paragraph.</span> <span style=" color: rgba(44, 113, 142, 1);font-size: 11px;">It</span> <span style=" color: rgba(41, 121, 142, 1);font-size: 12px;">may</span> <span style=" color: rgba(38, 129, 142, 1);font-size: 12px;">seem</span> <span style=" color: rgba(35, 136, 142, 1);font-size: 13px;">like</span> <span style=" color: rgba(33, 144, 141, 1);font-size: 13px;">a</span> <span style=" color: rgba(31, 150, 139, 1);font-size: 14px;">useless</span> <span style=" color: rgba(31, 158, 137, 1);font-size: 14px;">feature</span> <span style=" color: rgba(33, 165, 133, 1);font-size: 15px;">right</span> <span style=" color: rgba(38, 173, 129, 1);font-size: 15px;">now</span> <span style=" color: rgba(48, 180, 124, 1);font-size: 16px;">but</span> <span style=" color: rgba(59, 187, 117, 1);font-size: 16px;">it’s</span> <span style=" color: rgba(74, 193, 109, 1);font-size: 17px;">so</span> <span style=" color: rgba(90, 200, 100, 1);font-size: 17px;">cool</span> <span style=" color: rgba(108, 205, 90, 1);font-size: 18px;">and</span> <span style=" color: rgba(127, 211, 78, 1);font-size: 18px;">nobody</span> <span style=" color: rgba(145, 215, 66, 1);font-size: 19px;">can</span> <span style=" color: rgba(166, 219, 53, 1);font-size: 19px;">resist.</span> <span style=" color: rgba(187, 223, 39, 1);font-size: 20px;">;)</span></p>
+<p><span style=" color: rgba(68, 1, 84, 1) !important;font-size: 5px;">You</span> <span style=" color: rgba(71, 13, 96, 1) !important;font-size: 6px;">can</span> <span style=" color: rgba(72, 24, 106, 1) !important;font-size: 6px;">even</span> <span style=" color: rgba(72, 34, 116, 1) !important;font-size: 7px;">try</span> <span style=" color: rgba(71, 45, 122, 1) !important;font-size: 7px;">to</span> <span style=" color: rgba(69, 54, 129, 1) !important;font-size: 8px;">make</span> <span style=" color: rgba(66, 64, 134, 1) !important;font-size: 8px;">some</span> <span style=" color: rgba(62, 73, 137, 1) !important;font-size: 9px;">crazy</span> <span style=" color: rgba(59, 81, 139, 1) !important;font-size: 9px;">things</span> <span style=" color: rgba(55, 90, 140, 1) !important;font-size: 10px;">like</span> <span style=" color: rgba(51, 98, 141, 1) !important;font-size: 10px;">this</span> <span style=" color: rgba(48, 106, 142, 1) !important;font-size: 11px;">paragraph.</span> <span style=" color: rgba(44, 113, 142, 1) !important;font-size: 11px;">It</span> <span style=" color: rgba(41, 121, 142, 1) !important;font-size: 12px;">may</span> <span style=" color: rgba(38, 129, 142, 1) !important;font-size: 12px;">seem</span> <span style=" color: rgba(35, 136, 142, 1) !important;font-size: 13px;">like</span> <span style=" color: rgba(33, 144, 141, 1) !important;font-size: 13px;">a</span> <span style=" color: rgba(31, 150, 139, 1) !important;font-size: 14px;">useless</span> <span style=" color: rgba(31, 158, 137, 1) !important;font-size: 14px;">feature</span> <span style=" color: rgba(33, 165, 133, 1) !important;font-size: 15px;">right</span> <span style=" color: rgba(38, 173, 129, 1) !important;font-size: 15px;">now</span> <span style=" color: rgba(48, 180, 124, 1) !important;font-size: 16px;">but</span> <span style=" color: rgba(59, 187, 117, 1) !important;font-size: 16px;">it’s</span> <span style=" color: rgba(74, 193, 109, 1) !important;font-size: 17px;">so</span> <span style=" color: rgba(90, 200, 100, 1) !important;font-size: 17px;">cool</span> <span style=" color: rgba(108, 205, 90, 1) !important;font-size: 18px;">and</span> <span style=" color: rgba(127, 211, 78, 1) !important;font-size: 18px;">nobody</span> <span style=" color: rgba(145, 215, 66, 1) !important;font-size: 19px;">can</span> <span style=" color: rgba(166, 219, 53, 1) !important;font-size: 19px;">resist.</span> <span style=" color: rgba(187, 223, 39, 1) !important;font-size: 20px;">;)</span></p>
</div>
<div id="tooltip" class="section level2">
<h2>Tooltip</h2>
-<p>It’s very easy to add a tooltip to text via <code>cell_spec</code>. For example, <code>text_spec("tooltip", color = "red", tooltip = "Hello World")</code> will give you something like <span style=" color: red;" data-toggle="tooltip" data-placement="right" title="Hello World">Hover over me</span> (you need to wait for a few seconds before your browser renders it).</p>
+<p>It’s very easy to add a tooltip to text via <code>cell_spec</code>. For example, <code>text_spec("tooltip", color = "red", tooltip = "Hello World")</code> will give you something like <span style=" color: red !important;" data-toggle="tooltip" data-placement="right" title="Hello World">Hover over me</span> (you need to wait for a few seconds before your browser renders it).</p>
<p>Note that the original browser-based tooltip is slow. If you want to have a faster response, you may want to initialize bootstrap’s tooltip by putting the following HTML code on the page.</p>
<pre><code><script>
$(document).ready(function(){
@@ -3819,10 +4065,10 @@
<span style="display: block; padding: 0 4px; border-radius: 4px; background-color: #ffcc6f">21.0</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(60deg); -moz-transform: rotate(60deg); -ms-transform: rotate(60deg); -o-transform: rotate(60deg); transform: rotate(60deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red;text-align: center;">6</span></span>
+<span style="-webkit-transform: rotate(60deg); -moz-transform: rotate(60deg); -ms-transform: rotate(60deg); -o-transform: rotate(60deg); transform: rotate(60deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red !important;text-align: center;">6</span></span>
</td>
<td style="text-align:left;">
-<span style=" font-style: italic; color: green;">160</span>
+<span style=" font-style: italic; color: green !important;">160</span>
</td>
<td style="text-align:left;width: 3cm; ">
<span style="display: inline-block; direction: rtl; border-radius: 4px; padding-right: 2px; background-color: lightgreen; width: 62.86%">110</span>
@@ -3836,10 +4082,10 @@
<span style="display: block; padding: 0 4px; border-radius: 4px; background-color: #ffcc6f">21.0</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(120deg); -moz-transform: rotate(120deg); -ms-transform: rotate(120deg); -o-transform: rotate(120deg); transform: rotate(120deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red;text-align: center;">6</span></span>
+<span style="-webkit-transform: rotate(120deg); -moz-transform: rotate(120deg); -ms-transform: rotate(120deg); -o-transform: rotate(120deg); transform: rotate(120deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red !important;text-align: center;">6</span></span>
</td>
<td style="text-align:left;">
-<span style=" font-style: italic; color: green;">160</span>
+<span style=" font-style: italic; color: green !important;">160</span>
</td>
<td style="text-align:left;width: 3cm; ">
<span style="display: inline-block; direction: rtl; border-radius: 4px; padding-right: 2px; background-color: lightgreen; width: 62.86%">110</span>
@@ -3853,10 +4099,10 @@
<span style="display: block; padding: 0 4px; border-radius: 4px; background-color: #ffa500">22.8</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red;text-align: center;">4</span></span>
+<span style="-webkit-transform: rotate(180deg); -moz-transform: rotate(180deg); -ms-transform: rotate(180deg); -o-transform: rotate(180deg); transform: rotate(180deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red !important;text-align: center;">4</span></span>
</td>
<td style="text-align:left;">
-<span style=" font-style: italic; color: green;">108</span>
+<span style=" font-style: italic; color: green !important;">108</span>
</td>
<td style="text-align:left;width: 3cm; ">
<span style="display: inline-block; direction: rtl; border-radius: 4px; padding-right: 2px; background-color: lightgreen; width: 53.14%">93</span>
@@ -3870,10 +4116,10 @@
<span style="display: block; padding: 0 4px; border-radius: 4px; background-color: #ffc357">21.4</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(240deg); -moz-transform: rotate(240deg); -ms-transform: rotate(240deg); -o-transform: rotate(240deg); transform: rotate(240deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red;text-align: center;">6</span></span>
+<span style="-webkit-transform: rotate(240deg); -moz-transform: rotate(240deg); -ms-transform: rotate(240deg); -o-transform: rotate(240deg); transform: rotate(240deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red !important;text-align: center;">6</span></span>
</td>
<td style="text-align:left;">
-<span style=" font-weight: bold; color: red;">258</span>
+<span style=" font-weight: bold; color: red !important;">258</span>
</td>
<td style="text-align:left;width: 3cm; ">
<span style="display: inline-block; direction: rtl; border-radius: 4px; padding-right: 2px; background-color: lightgreen; width: 62.86%">110</span>
@@ -3887,10 +4133,10 @@
<span style="display: block; padding: 0 4px; border-radius: 4px; background-color: #ffffff">18.7</span>
</td>
<td style="text-align:left;">
-<span style="-webkit-transform: rotate(300deg); -moz-transform: rotate(300deg); -ms-transform: rotate(300deg); -o-transform: rotate(300deg); transform: rotate(300deg); display: inline-block; "><span style=" color: white;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red;text-align: center;">8</span></span>
+<span style="-webkit-transform: rotate(300deg); -moz-transform: rotate(300deg); -ms-transform: rotate(300deg); -o-transform: rotate(300deg); transform: rotate(300deg); display: inline-block; "><span style=" color: white !important;border-radius: 4px; padding-right: 4px; padding-left: 4px; background-color: red !important;text-align: center;">8</span></span>
</td>
<td style="text-align:left;">
-<span style=" font-weight: bold; color: red;">360</span>
+<span style=" font-weight: bold; color: red !important;">360</span>
</td>
<td style="text-align:left;width: 3cm; ">
<span style="display: inline-block; direction: rtl; border-radius: 4px; padding-right: 2px; background-color: lightgreen; width: 100.00%">175</span>
@@ -4264,11 +4510,11 @@
</div>
<div id="group-rows-via-labeling" class="section level2">
<h2>Group rows via labeling</h2>
-<p>Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function <code>group_rows()</code> in <code>kableExtra</code>, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don’t need to count for the header rows nor other group label rows. You only need to think about the row numbers in the “original R dataframe”.</p>
+<p>Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the function <code>group_rows()</code>/<code>pack_rows()</code> in <code>kableExtra</code>, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don’t need to count for the header rows nor other group label rows. You only need to think about the row numbers in the “original R dataframe”.</p>
<pre class="r"><code>kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)</code></pre>
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)</code></pre>
<table class="table table-striped" style="width: auto !important; margin-left: auto; margin-right: auto;">
<caption>
Group Rows
@@ -4540,15 +4786,15 @@
</tr>
</tbody>
</table>
-<p>Another way to use <code>group_rows</code> is to provide an grouping index, similar with <code>add_header_above()</code>. This feature is only available in kableExtra > 0.5.2.</p>
+<p>Another way to use <code>pack_rows</code> is to provide an grouping index, similar with <code>add_header_above()</code>. This feature is only available in kableExtra > 0.5.2.</p>
<pre class="r"><code># Not evaluated. This example generates the same table as above.
kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))</code></pre>
+ pack_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))</code></pre>
<p>For advanced users, you can even define your own css for the group labeling.</p>
<pre class="r"><code>kable(dt) %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")</code></pre>
+ pack_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")</code></pre>
<table class="table table-striped" style="width: auto !important; margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -4697,10 +4943,22 @@
</tr>
</tbody>
</table>
+<p><span style=" font-weight: bold; color: #D7261E !important;">Important Note!</span></p>
+<p>Note that <code>dplyr</code> 0.8.0+ introduced a <code>group_rows</code> function as well for a trivial feature. Therefore, I’m create this <code>pack_rows</code> function as an alias to the original <code>group_rows</code>. In the future, <strong>I recommend all kableExtra users to use <code>pack_rows</code> instead of <code>group_rows</code> to get rid of the NAMESPACE conflict.</strong></p>
+<p>Alternatively, for pre-existing codes, you have two ways to solve this. You can either load <code>kableExtra</code> after <code>dplyr</code> or <code>tidyverse</code>, or to use the <code>conflicted</code> package. Here is an example.</p>
+<pre class="r"><code># Method 1
+pack_rows() # instead of group_rows()
+
+# Method 2
+library(dplyr)
+library(kableExtra)
+
+# Method 3
+conflicted::conflict_prefer("group_rows", "kableExtra", "dplyr")</code></pre>
</div>
<div id="row-indentation" class="section level2">
<h2>Row indentation</h2>
-<p>Unlike <code>group_rows()</code>, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, <code>add_indent()</code> is probably more apporiate. For advanced users, you can even define your own css for the group labeling.</p>
+<p>Unlike <code>pack_rows()</code>, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, <code>add_indent()</code> is probably more apporiate. For advanced users, you can even define your own css for the group labeling.</p>
<pre class="r"><code>kable(dt) %>%
kable_styling("striped", full_width = F) %>%
add_indent(c(1, 3, 5))</code></pre>
@@ -4850,7 +5108,7 @@
</div>
<div id="group-rows-via-multi-row-cell" class="section level2">
<h2>Group rows via multi-row cell</h2>
-<p>Function <code>group_rows</code> is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider to use <code>collapse_rows</code> instead, which will put repeating cells in columns into multi-row cells. The vertical allignment of the cell is controlled by <code>valign</code> with default as “top”.</p>
+<p>Function <code>pack_rows</code> is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider to use <code>collapse_rows</code> instead, which will put repeating cells in columns into multi-row cells. The vertical allignment of the cell is controlled by <code>valign</code> with default as “top”.</p>
<pre class="r"><code>collapse_rows_dt <- data.frame(C1 = c(rep("a", 10), rep("b", 5)),
C2 = c(rep("c", 7), rep("d", 3), rep("c", 2), rep("d", 3)),
C3 = 1:15,
@@ -4896,7 +5154,7 @@
2
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
<tr>
@@ -4912,7 +5170,7 @@
4
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
<tr>
@@ -4920,7 +5178,7 @@
5
</td>
<td style="text-align:center;">
-1
+0
</td>
</tr>
<tr>
@@ -4928,7 +5186,7 @@
6
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
<tr>
@@ -4936,7 +5194,7 @@
7
</td>
<td style="text-align:center;">
-1
+0
</td>
</tr>
<tr>
@@ -4947,7 +5205,7 @@
8
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
<tr>
@@ -4977,7 +5235,7 @@
11
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
<tr>
@@ -4985,7 +5243,7 @@
12
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
<tr>
@@ -4996,7 +5254,7 @@
13
</td>
<td style="text-align:center;">
-1
+0
</td>
</tr>
<tr>
@@ -5012,7 +5270,7 @@
15
</td>
<td style="text-align:center;">
-0
+1
</td>
</tr>
</tbody>
@@ -5573,76 +5831,76 @@
<pre class="r"><code>kable(cbind(mtcars, mtcars)) %>%
kable_styling() %>%
scroll_box(width = "500px", height = "200px")</code></pre>
-<div style="border: 1px solid #ddd; padding: 5px; overflow-y: scroll; height:200px; overflow-x: scroll; width:500px; ">
+<div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:200px; overflow-x: scroll; width:500px; ">
<table class="table" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
-<th style="text-align:left;">
+<th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;">
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
mpg
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
cyl
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
disp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
hp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
drat
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
wt
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
qsec
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
vs
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
am
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
gear
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
carb
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
mpg
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
cyl
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
disp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
hp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
drat
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
wt
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
qsec
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
vs
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
am
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
gear
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
carb
</th>
</tr>
@@ -7926,78 +8184,91 @@
<p><br></p>
<p>You can also specify width using a percentage.</p>
<pre class="r"><code>kable(cbind(mtcars, mtcars)) %>%
+ add_header_above(c("a" = 5, "b" = 18)) %>%
kable_styling() %>%
scroll_box(width = "100%", height = "200px")</code></pre>
-<div style="border: 1px solid #ddd; padding: 5px; overflow-y: scroll; height:200px; overflow-x: scroll; width:100%; ">
+<div style="border: 1px solid #ddd; padding: 0px; overflow-y: scroll; height:200px; overflow-x: scroll; width:100%; ">
<table class="table" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
-<th style="text-align:left;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; position: sticky; top:0; background-color: #FFFFFF;" colspan="5">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; position: sticky; top:0; background-color: #FFFFFF;">
+a
+</div>
</th>
-<th style="text-align:right;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; position: sticky; top:0; background-color: #FFFFFF;" colspan="18">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; position: sticky; top:0; background-color: #FFFFFF;">
+b
+</div>
+</th>
+</tr>
+<tr>
+<th style="text-align:left;position: sticky; top:0; background-color: #FFFFFF;">
+</th>
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
mpg
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
cyl
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
disp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
hp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
drat
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
wt
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
qsec
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
vs
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
am
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
gear
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
carb
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
mpg
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
cyl
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
disp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
hp
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
drat
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
wt
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
qsec
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
vs
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
am
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
gear
</th>
-<th style="text-align:right;">
+<th style="text-align:right;position: sticky; top:0; background-color: #FFFFFF;">
carb
</th>
</tr>
@@ -10278,6 +10549,7 @@
</tbody>
</table>
</div>
+<p>Starting from version 1.1.0, if you have a fixed-height box, the header row is fixed</p>
</div>
<div id="save-html-table-directly" class="section level2">
<h2>Save HTML table directly</h2>
diff --git a/docs/awesome_table_in_html_cn.Rmd b/docs/awesome_table_in_html_cn.Rmd
index d49441f..5e999d4 100644
--- a/docs/awesome_table_in_html_cn.Rmd
+++ b/docs/awesome_table_in_html_cn.Rmd
@@ -131,7 +131,7 @@
## 行
-`row_spec`和`column_spec`差不多,除了没有列宽。注意,当你数第几行的时候,你不需要考虑表头和你通过`group_rows`添加的那些行,就数那些原生的“内容”行就行。
+`row_spec`和`column_spec`差不多,除了没有列宽。注意,当你数第几行的时候,你不需要考虑表头和你通过`pack_rows`添加的那些行,就数那些原生的“内容”行就行。
```{r}
kable(dt, "html") %>%
@@ -290,24 +290,24 @@
```
## 行组
-我们一般做表格时,想表示几行同属一类一般有两种方式,其一是新插入一行大类的名称,然后再给那几行小的加上缩进。其二是在左边再加上一列,通过合并相印的行来表示所属的意思。相对应的,在`kableExtra`里,第一种方法可以用`group_rows`实现,而第二种则可以用`collapse_row`。
+我们一般做表格时,想表示几行同属一类一般有两种方式,其一是新插入一行大类的名称,然后再给那几行小的加上缩进。其二是在左边再加上一列,通过合并相印的行来表示所属的意思。相对应的,在`kableExtra`里,第一种方法可以用`pack_rows`实现,而第二种则可以用`collapse_row`。
-### `group_rows`
-我们先说`group_rows`,请看下面这个例子。
+### `pack_rows`
+我们先说`pack_rows`,请看下面这个例子。
```{r}
kable(mtcars[1:10, 1:6], "html", caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)
```
-另一种使用`group_rows`的方法是提供一个目录,用法和`add_header_above`相同。
+另一种使用`pack_rows`的方法是提供一个目录,用法和`add_header_above`相同。
```{r, eval = F}
# Not evaluated. This example generates the same table as above.
kable(mtcars[1:10, 1:6], "html", caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))
+ pack_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))
```
如果你熟悉CSS,你可以自己定义标签行的样式。
@@ -315,9 +315,13 @@
```{r}
kable(dt, "html") %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 3, 5, label_row_css = "background: repeating-linear-gradient(45deg, #d9230f, #d9230f 10px, #f96352 10px, #f96352 20px); color: #fff;")
+ pack_rows("Group 1", 3, 5, label_row_css = "background: repeating-linear-gradient(45deg, #d9230f, #d9230f 10px, #f96352 10px, #f96352 20px); color: #fff;")
```
+说起来,`pack_rows`本来叫`group_rows`,可是`dplyr`0.8加了个同名的function,所以起了个小名,这样大家用起来方便些。
+
+(白学现场:明明都是我先来的)
+
### 行的缩进
有时候只添加缩进就可以变的很有用,这时候你需要`add_indent`。
```{r}
diff --git a/docs/awesome_table_in_pdf.Rmd b/docs/awesome_table_in_pdf.Rmd
index 881e5c6..257deb6 100644
--- a/docs/awesome_table_in_pdf.Rmd
+++ b/docs/awesome_table_in_pdf.Rmd
@@ -134,6 +134,13 @@
kable_styling(latex_options = "striped")
```
+You can also specify which rows you want to striped on via `stripe_index`. In most case, you might want to turn off the default 5 rows + a space setting in `knitr::kable()` by setting `linesep = ""`. See this SO answer for details. https://stackoverflow.com/questions/45409750/get-rid-of-addlinespace-in-kable.
+
+```{r}
+kable(mtcars[1:8, 1:4], "latex", booktabs = T, linesep = "") %>%
+ kable_styling(latex_options = "striped", stripe_index = c(1,2, 5:6))
+```
+
### Hold position
If you provide a table caption in `kable()`, it will put your LaTeX tabular in a `table` environment, unless you are using `longtable`. A `table` environment will automatically find the best place (it thinks) to put your table. However, in many cases, you do want your table to appear in a position you want it to be. In this case, you can use this `hold_position` options here.
```{r}
@@ -317,25 +324,25 @@
```
## Group rows via labeling
-Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function `group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
+Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the function `pack_rows`/`group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
```{r}
kable(mtcars[1:10, 1:6], "latex", caption = "Group Rows", booktabs = T) %>%
kable_styling() %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)
```
In case some users need it, you can define your own gapping spaces between the group labeling row and previous rows. The default value is `0.5em`.
```{r}
kable(dt, "latex", booktabs = T) %>%
- group_rows("Group 1", 4, 5, latex_gap_space = "2em")
+ pack_rows("Group 1", 4, 5, latex_gap_space = "2em")
```
If you prefer to build multiple groups in one step, you can use the short-hand `index` option. Basically, you can use it in the same way as you use `add_header_above`. However, since `group_row` only support one layer of grouping, you can't add multiple layers of grouping header as you can do in `add_header_above`.
```{r, eval=FALSE}
kable(mtcars[1:10, 1:6], "latex", caption = "Group Rows", booktabs = T) %>%
kable_styling() %>%
- group_rows(index=c(" " = 3, "Group 1" = 4, "Group 2" = 3))
+ pack_rows(index=c(" " = 3, "Group 1" = 4, "Group 2" = 3))
# Not evaluated. The code above should have the same result as the first example in this section.
```
@@ -355,7 +362,7 @@
LaTeX, somehow shows surprisingly high tolerance on that, which is quite unusual. As a result, it won't throw an error if you are just using `kable` to make some simple tables. However, when you use `kableExtra` to make some advanced modification, it will start to throw some bugs. As a result, please try to form a habit of using a vector in the `align` argument for `kable` (tip: you can use `rep` function to replicate elements. For example, `c("c", rep("l", 10))`).
## Row indentation
-Unlike `group_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more appropriate.
+Unlike `pack_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more appropriate.
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt, "latex", booktabs = T) %>%
@@ -363,7 +370,7 @@
```
## Group rows via multi-row cell
-Function `group_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider using `collapse_rows` instead, which will put repeating cells in columns into multi-row cells.
+Function `pack_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider using `collapse_rows` instead, which will put repeating cells in columns into multi-row cells.
In LaTeX, `collapse_rows` adds some extra hlines to help differentiate groups. You can customize this behavior using the `latex_hline` argument. You can choose from `full` (default), `major` and `none`. Vertical alignment of cells is controlled by the `valign` option. You can choose from "top", "middle"(default) and "bottom". Be cautious that the vertical alignment option was only introduced in multirow in 2016. If you are using a legacy LaTeX distribution, you will run into trouble if you set `valign` to be either "top" or "bottom".
@@ -450,7 +457,7 @@
)
```
-If you need to add footnote marks in a table, you need to do it manually (no fancy) using `footnote_marker_***()`. Remember that similar with `cell_spec`, you need to tell this function whether you want it to do it in `HTML` (default) or `LaTeX`. You can set it for all using the `knitr.table.format` global option. Also, if you have ever used `footnote_marker_***()`, you need to put `escape = F` in your `kable` function to avoid escaping of special characters. Note that if you want to use these `footnote_marker` functions in `kableExtra` functions like `group_rows` (for the row label) or `add_header_above`, you need to set `double_escape = T` and `escape = F` in those functions. I'm trying to find other ways around. Please let me know if you have a good idea and are willing to contribute.
+If you need to add footnote marks in a table, you need to do it manually (no fancy) using `footnote_marker_***()`. Remember that similar with `cell_spec`, you need to tell this function whether you want it to do it in `HTML` (default) or `LaTeX`. You can set it for all using the `knitr.table.format` global option. Also, if you have ever used `footnote_marker_***()`, you need to put `escape = F` in your `kable` function to avoid escaping of special characters. Note that if you want to use these `footnote_marker` functions in `kableExtra` functions like `pack_rows` (for the row label) or `add_header_above`, you need to set `double_escape = T` and `escape = F` in those functions. I'm trying to find other ways around. Please let me know if you have a good idea and are willing to contribute.
```{r}
dt_footnote <- dt
@@ -492,7 +499,7 @@
col.names = linebreak(c("Item\n(Name)", "Value\n(Number)"), align = "c"))
```
-At the same time, since `kableExtra 0.8.0`, all `kableExtra` functions that have some contents input (such as `footnote` or `group_rows`) will automatically convert `\n` to linebreaks for you in both LaTeX and HTML.
+At the same time, since `kableExtra 0.8.0`, all `kableExtra` functions that have some contents input (such as `footnote` or `pack_rows`) will automatically convert `\n` to linebreaks for you in both LaTeX and HTML.
## Table on a Landscape Page
@@ -505,7 +512,7 @@
"Group 1 contains mpg, cyl and disp",
"Group 2 contains hp, drat and wt"),
notation = "symbol") %>%
- group_rows("Group 1", 4, 5) %>%
+ pack_rows("Group 1", 4, 5) %>%
landscape()
```
diff --git a/docs/awesome_table_in_pdf.pdf b/docs/awesome_table_in_pdf.pdf
index 49dd152..a226d80 100644
--- a/docs/awesome_table_in_pdf.pdf
+++ b/docs/awesome_table_in_pdf.pdf
Binary files differ
diff --git a/docs/awesome_table_in_pdf.toc b/docs/awesome_table_in_pdf.toc
index d0bb9ce..d69ebfe 100644
--- a/docs/awesome_table_in_pdf.toc
+++ b/docs/awesome_table_in_pdf.toc
@@ -19,18 +19,18 @@
\contentsline {subsection}{Header Rows}{10}{section*.20}
\contentsline {section}{Cell/Text Specification}{11}{section*.21}
\contentsline {subsection}{Conditional logic}{11}{section*.22}
-\contentsline {subsection}{Visualize data with Viridis Color}{11}{section*.23}
+\contentsline {subsection}{Visualize data with Viridis Color}{12}{section*.23}
\contentsline {subsection}{Text Specification}{12}{section*.24}
\contentsline {section}{Grouped Columns / Rows}{13}{section*.25}
\contentsline {subsection}{Add header rows to group columns}{13}{section*.26}
-\contentsline {subsection}{Group rows via labeling}{13}{section*.27}
+\contentsline {subsection}{Group rows via labeling}{14}{section*.27}
\contentsline {subsection}{Row indentation}{15}{section*.28}
-\contentsline {subsection}{Group rows via multi-row cell}{15}{section*.29}
-\contentsline {section}{Table Footnote}{18}{section*.30}
-\contentsline {section}{LaTeX Only Features}{20}{section*.31}
-\contentsline {subsection}{Linebreak processor}{20}{section*.32}
-\contentsline {subsection}{Table on a Landscape Page}{21}{section*.33}
-\contentsline {subsection}{Use LaTeX table in HTML or Word}{23}{section*.34}
-\contentsline {section}{From other packages}{23}{section*.35}
-\contentsline {subsection}{\texttt {tables}}{23}{section*.36}
-\contentsline {subsection}{\texttt {xtable}}{23}{section*.37}
+\contentsline {subsection}{Group rows via multi-row cell}{16}{section*.29}
+\contentsline {section}{Table Footnote}{19}{section*.30}
+\contentsline {section}{LaTeX Only Features}{21}{section*.31}
+\contentsline {subsection}{Linebreak processor}{21}{section*.32}
+\contentsline {subsection}{Table on a Landscape Page}{22}{section*.33}
+\contentsline {subsection}{Use LaTeX table in HTML or Word}{24}{section*.34}
+\contentsline {section}{From other packages}{24}{section*.35}
+\contentsline {subsection}{\texttt {tables}}{24}{section*.36}
+\contentsline {subsection}{\texttt {xtable}}{24}{section*.37}
diff --git a/docs/best_practice_for_newline_in_latex_table.Rmd b/docs/best_practice_for_newline_in_latex_table.Rmd
index 5cd5006..f225193 100644
--- a/docs/best_practice_for_newline_in_latex_table.Rmd
+++ b/docs/best_practice_for_newline_in_latex_table.Rmd
@@ -75,7 +75,7 @@
```
### Linebreak in other kableExtra functions
-If you have a need to put a linebreak in `kableExtra` functions such as `add_header_above` and `group_rows`, just go ahead and use `\n` directly (in kableExtra >= 0.8.0) and it will be automatically converted. Note that this feature is also controlled by the `escape` option in those functions.
+If you have a need to put a linebreak in `kableExtra` functions such as `add_header_above` and `pack_rows`, just go ahead and use `\n` directly (in kableExtra >= 0.8.0) and it will be automatically converted. Note that this feature is also controlled by the `escape` option in those functions.
```{r}
dt2 %>%
@@ -83,6 +83,6 @@
kable("latex", booktabs = T, escape = F,
col.names = linebreak(c("Item\n(Name)", "Value\n(Number)"), align = "c")) %>%
add_header_above(c("Combined\nTitle" = 2)) %>%
- group_rows("Group\n1", 2, 2)
+ pack_rows("Group\n1", 2, 2)
```
diff --git a/docs/best_practice_for_newline_in_latex_table.pdf b/docs/best_practice_for_newline_in_latex_table.pdf
index 9a238e5..c7e036b 100644
--- a/docs/best_practice_for_newline_in_latex_table.pdf
+++ b/docs/best_practice_for_newline_in_latex_table.pdf
Binary files differ
diff --git a/docs/kableExtra in other HTML themes.Rmd b/docs/kableExtra in other HTML themes.Rmd
index e0ab290..2ca1bb0 100644
--- a/docs/kableExtra in other HTML themes.Rmd
+++ b/docs/kableExtra in other HTML themes.Rmd
@@ -118,23 +118,23 @@
The following features are introduced in `kableExtra` 0.2.0.
# Group Rows
-Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function `group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
+Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function `pack_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
```{r}
kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)
```
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt) %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")
+ pack_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")
```
# Add indentation
-Unlike `group_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more apporiate.
+Unlike `pack_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more apporiate.
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt) %>%
diff --git a/docs/kableExtra_in_other_HTML_themes.html b/docs/kableExtra_in_other_HTML_themes.html
index aa741b4..b1ea55b 100644
--- a/docs/kableExtra_in_other_HTML_themes.html
+++ b/docs/kableExtra_in_other_HTML_themes.html
@@ -12,54 +12,90 @@
<meta name="author" content="Hao Zhu" />
-<meta name="date" content="2017-10-31" />
+<meta name="date" content="2019-03-15" />
<title>kableExtra in other rmarkdown HTML themes</title>
+<script>$(document).ready(function(){
+ if (typeof $('[data-toggle="tooltip"]').tooltip === 'function') {
+ $('[data-toggle="tooltip"]').tooltip();
+ }
+ if ($('[data-toggle="popover"]').popover === 'function') {
+ $('[data-toggle="popover"]').popover();
+ }
+});
+</script>
<style type="text/css">code{white-space: pre;}</style>
<style type="text/css">
-div.sourceCode { overflow-x: auto; }
-table.sourceCode, tr.sourceCode, td.lineNumbers, td.sourceCode {
- margin: 0; padding: 0; vertical-align: baseline; border: none; }
-table.sourceCode { width: 100%; line-height: 100%; }
-td.lineNumbers { text-align: right; padding-right: 4px; padding-left: 4px; color: #aaaaaa; border-right: 1px solid #aaaaaa; }
-td.sourceCode { padding-left: 5px; }
-code > span.kw { color: #007020; font-weight: bold; } /* Keyword */
-code > span.dt { color: #902000; } /* DataType */
-code > span.dv { color: #40a070; } /* DecVal */
-code > span.bn { color: #40a070; } /* BaseN */
-code > span.fl { color: #40a070; } /* Float */
-code > span.ch { color: #4070a0; } /* Char */
-code > span.st { color: #4070a0; } /* String */
-code > span.co { color: #60a0b0; font-style: italic; } /* Comment */
-code > span.ot { color: #007020; } /* Other */
-code > span.al { color: #ff0000; font-weight: bold; } /* Alert */
-code > span.fu { color: #06287e; } /* Function */
-code > span.er { color: #ff0000; font-weight: bold; } /* Error */
-code > span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
-code > span.cn { color: #880000; } /* Constant */
-code > span.sc { color: #4070a0; } /* SpecialChar */
-code > span.vs { color: #4070a0; } /* VerbatimString */
-code > span.ss { color: #bb6688; } /* SpecialString */
-code > span.im { } /* Import */
-code > span.va { color: #19177c; } /* Variable */
-code > span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
-code > span.op { color: #666666; } /* Operator */
-code > span.bu { } /* BuiltIn */
-code > span.ex { } /* Extension */
-code > span.pp { color: #bc7a00; } /* Preprocessor */
-code > span.at { color: #7d9029; } /* Attribute */
-code > span.do { color: #ba2121; font-style: italic; } /* Documentation */
-code > span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
-code > span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
-code > span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
+a.sourceLine { display: inline-block; line-height: 1.25; }
+a.sourceLine { pointer-events: none; color: inherit; text-decoration: inherit; }
+a.sourceLine:empty { height: 1.2em; }
+.sourceCode { overflow: visible; }
+code.sourceCode { white-space: pre; position: relative; }
+div.sourceCode { margin: 1em 0; }
+pre.sourceCode { margin: 0; }
+@media screen {
+div.sourceCode { overflow: auto; }
+}
+@media print {
+code.sourceCode { white-space: pre-wrap; }
+a.sourceLine { text-indent: -1em; padding-left: 1em; }
+}
+pre.numberSource a.sourceLine
+ { position: relative; left: -4em; }
+pre.numberSource a.sourceLine::before
+ { content: attr(data-line-number);
+ position: relative; left: -1em; text-align: right; vertical-align: baseline;
+ border: none; pointer-events: all; display: inline-block;
+ -webkit-touch-callout: none; -webkit-user-select: none;
+ -khtml-user-select: none; -moz-user-select: none;
+ -ms-user-select: none; user-select: none;
+ padding: 0 4px; width: 4em;
+ color: #aaaaaa;
+ }
+pre.numberSource { margin-left: 3em; border-left: 1px solid #aaaaaa; padding-left: 4px; }
+div.sourceCode
+ { }
+@media screen {
+a.sourceLine::before { text-decoration: underline; }
+}
+code span.al { color: #ff0000; font-weight: bold; } /* Alert */
+code span.an { color: #60a0b0; font-weight: bold; font-style: italic; } /* Annotation */
+code span.at { color: #7d9029; } /* Attribute */
+code span.bn { color: #40a070; } /* BaseN */
+code span.bu { } /* BuiltIn */
+code span.cf { color: #007020; font-weight: bold; } /* ControlFlow */
+code span.ch { color: #4070a0; } /* Char */
+code span.cn { color: #880000; } /* Constant */
+code span.co { color: #60a0b0; font-style: italic; } /* Comment */
+code span.cv { color: #60a0b0; font-weight: bold; font-style: italic; } /* CommentVar */
+code span.do { color: #ba2121; font-style: italic; } /* Documentation */
+code span.dt { color: #902000; } /* DataType */
+code span.dv { color: #40a070; } /* DecVal */
+code span.er { color: #ff0000; font-weight: bold; } /* Error */
+code span.ex { } /* Extension */
+code span.fl { color: #40a070; } /* Float */
+code span.fu { color: #06287e; } /* Function */
+code span.im { } /* Import */
+code span.in { color: #60a0b0; font-weight: bold; font-style: italic; } /* Information */
+code span.kw { color: #007020; font-weight: bold; } /* Keyword */
+code span.op { color: #666666; } /* Operator */
+code span.ot { color: #007020; } /* Other */
+code span.pp { color: #bc7a00; } /* Preprocessor */
+code span.sc { color: #4070a0; } /* SpecialChar */
+code span.ss { color: #bb6688; } /* SpecialString */
+code span.st { color: #4070a0; } /* String */
+code span.va { color: #19177c; } /* Variable */
+code span.vs { color: #4070a0; } /* VerbatimString */
+code span.wa { color: #60a0b0; font-weight: bold; font-style: italic; } /* Warning */
</style>
-<link href="data:text/css;charset=utf-8,%40font%2Dface%7Bfont%2Dfamily%3A%27Open%20Sans%27%3Bfont%2Dstyle%3Anormal%3Bfont%2Dweight%3A400%3Bsrc%3Alocal%28%27Open%20Sans%27%29%2Clocal%28OpenSans%29%2Curl%28data%3Aapplication%2Ffont%2Dwoff%3Bbase64%2Cd09GRgABAAAAAE8YABIAAAAAhWwAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABlAAAABYAAAAWABAA3UdQT1MAAAGsAAAADAAAAAwAFQAKR1NVQgAAAbgAAABZAAAAdN3O3ptPUy8yAAACFAAAAF8AAABgoT6eyWNtYXAAAAJ0AAAAmAAAAMyvDbOdY3Z0IAAAAwwAAABZAAAAog9NGKRmcGdtAAADaAAABJsAAAe0fmG2EWdhc3AAAAgEAAAAEAAAABAAFQAjZ2x5ZgAACBQAADWFAABReBn1yj5oZWFkAAA9nAAAADYAAAA293bipmhoZWEAAD3UAAAAHwAAACQNzAapaG10eAAAPfQAAAIIAAADbLTLWYhrZXJuAAA%2F%2FAAAChcAAB6Qo%2Buk42xvY2EAAEoUAAABuQAAAbz3ewp%2FbWF4cAAAS9AAAAAgAAAAIAJ2AgpuYW1lAABL8AAAAKwAAAEyFNwvSnBvc3QAAEycAAABhgAAAiiYDmoRcHJlcAAATiQAAADyAAABCUO3lqQAAQAAAAwAAAAAAAAAAgABAAAA3AABAAAAAQAAAAoACgAKAAB4AR3HNcJBAQDA8d%2BrLzDatEXOrqDd4S2ayUX1beTyDwEyyrqCbXrY%2BxPD8ylAsF0tUn%2F4nlj89Z9A7%2BtETl5RXdNNZGDm%2BvXYXWjgLDRzEhoLBAYv0%2F0NHAAAAHgBY2Bm2cY4gYGVgYN1FqsxAwOjPIRmvsiQxviRg4mJm42NmZWFiYnlAQPTewcGhWgGBgYNBiAwdAx2ZgAK%2FP%2FLJv9PhKGFo5cpQoGBcT5IjsWDdRuQUmBgBgD40BA5AHgBY2BgYGRgBmIGBh4GFoYDQFqHQYGBBcjzYPBkqGM4zXCe4T%2BjIWMw0zGmW0x3FEQUpBTkFJQU1BSsFFwUShTWKAn9%2Fw%2FUpQBU7cWwgOEMwwWg6iCoamEFCQUZsGpLhOr%2Fjxn6%2Fz%2F6f5CB9%2F%2Fe%2Fz3%2Fc%2F7%2B%2Bvv877MHGx6sfbDmwcoHyx5MedD9IOGByr39QHeRAABARzfieAFjE2EQZ%2FBj3QYkS1m3sZ5lQAEsHgwiDBMZGP6%2FAfEQ5D8REAnUJfxnyv%2B3%2F1r%2Fv%2Fq3Eigi8W8PA1mAA0J1MzQy3GWYwdDP0Mcwk6GDoZGRn6ELAE09H%2F8AAAB4AXVUR3fbxhPfhRqr%2F6Cr3h8pi4wpN9K9V4QEYCrq7b2F0gC1R%2BXkS3rjKWXlfJeBfaF88jH1M6TfoqNzdWaXxZ0NM7%2FftJ2ZpXfzzeVILi0uzM%2FNzkxPTU68Md64GQZ%2Bvfa6d%2BP6tatXLl%2B6eOH8uVMnTxyvVg4fGisfhNfcV0f3luz%2F7Srmc9nMyPDQ4IDFWUUgjwMcKItSmEAASaNaEcFo069WAghjFIlAegyOQaNhIEhQxALHEqIeg2P0yHLjKUuvY%2Bn1LbktrrKrOgUI%2FMUH0ebLc5Lk73yIBO4YeUrL5GGUIimuSx6mKl2tCDD8oKmCmGrkaT5Xh%2Fp6rlphaS5PYp4kPAy3Un74OjeCdTi4nFosU6Qg%2BqRBsoazczLwHdeNqpVx3AW%2BoVjdhMThOo6YkGJTl862RFq5r263bbYSHyuswVrylsSBhHzVQKDU11g6hkfAxyOf%2FDVKJ1%2FHCvgBHtNRJ%2Bb7eSYepeQ4VLZBqAeMjgM7%2FzyJJF1kuGw%2FYFpEq458Xrr65YTUa6VCEKGKVdJ%2B2FoBYYNKCwV1K6B2s1mJnPB7Ww6GtyO04ya%2FHHWPHs5P4J65NyVa5VA0E0LocwPci45b6tvMvohm1BYc1h12Xd2GrbbHVkjB1pzs6IKtOHeYd%2BJYhFasmfs9Zt%2BSZlo9pu8eg0utWZAKB8vjaxBQx7cSbK3Qdr2nBwM27vrXcUHtLolLJyJjK3CAbDcFDo3hsPZ63IH2RrsoWyskdB47jiKitFtcAgqj4wQQxN3PB81RCiCo0Y1jnUVYlOj5JHhJd2JBevIEeSQxDWzTN8PEE3AL90KtP11dVrC5II1L1w331pHFq10vPBGYeyUCFRvB7PAEzMltdubhb%2BlZ4dw9w86yyNfG%2B%2Bu0ZWOBkmsb%2BGrsrKGIN4R0XPQimnAEcj3CI6ZDR35zzHJEZlcW5cQCTMwty4umkB5B4ajHwVNhQDqdMLSAmClnhLScgYgMbQJESALUrtIvjpQz9LVxuIPSiYgQkjusZ01l4BERrPtdO9KfDErKQLne6EUbJlXHqTccNzL163tuES26ickjo5va6FIkCyIyaFEYA%2BlejuqlFxLWIYKmQG9W0tlMe0yXu80wPe%2FOavEJrd8srSFziSal30wMj5H2mH7T6H218RQ93qOFysDEgtLBoRuQUeXjyPQKexdLjoa4vtAQJiBsEXYutEo9T1%2Fm5mUdBMbXFCzIq8Z6Yl5%2B7nyic%2B1mE3xisVatpBarpcC%2FmUs9%2Fs3Csty2GRPfLMo7FrfqcS1KDxIntwVjnkEtjRJoFKEVHWmelIyxd7Y9xlqGHTSA0VfbnBks08M4W21bHczuJBrTiYixiBnsMF7PepCwTAdrGcy8UqZb5uWGvIyX9QpW0XJSrqE7hNzjjGU5u1vgRe6k5DVv4DZvpVnP6Vi0yMKLOhUvPUq9tCzvFhi5mV9KVNMvWpfRJg1bggjEml6Uz6KmiiN92dh%2BGg19OHK4TmOC61TIcAFzsF7DPNQ0fkPjNzr4sMZHaEX5fk7uLZr9LHK9AW9KF2wU%2F%2F%2FBUfaOnlREfyrK%2Frv6Hyn3ISkAAAEAAwAIAAoADQAH%2F%2F8AD3gBhXwHfFRV1vg5974yvZdMQspkSIYkQkgmhdAyIIQQWsSADCLSpajUiMgiAkuJNGmhKyJGDCyybCiyiGBHRGQtyLIuf2UX19UPy7oWyFz%2B972ZBxOE72N%2BL2%2BYd%2Bbe0%2B5p99wBAscBBIN4ACjI4D4oUJEIVAbIL8wPYX4oP1TQ3um3%2B0v5dZz2bj44nsyKLhYPXKkaL1wCAhuuXcQ69dsWyAu7qF5PBMFqQzQRkzQgYvIQCuXleXYHlCXl2x1YZg%2BF7HxMDNAQLQoVetwuKZCZjRUTQqc%2Ff7RjebisqAeuEQJXmpZUdA%2F3KgcgsJA2kL1xDNPDZqCyQAWdXiIy5YOHThUq4%2FKB1XFpgPr5heVtJuSQvJzxOeKB6HfEplzKWCEA4Sc%2BVgqkw8bwIF16K7fg0ttNJr3DajEKBqfT5UlNkwXJKyD4hCRRlFySwU%2BTvTTJkJTh1wkms6l%2FpBWa08Fmt%2FWP%2BNz2AWYcYEez3WwXvU5qECE%2FVB5ylJXl5993Hyc3zw6hkHaPoerldxVjh7eMX%2FF3hYWxu0KF382pcKpXsV%2B9QlS93Mj%2FSz%2FujinsVE1dDTszcEk1u4LpPdjXmDdw6UAsqFlUg7rmf2J%2Bd3aGLmC757GBuEe55mHNXGxifZVrLtuNNUBhwbU6wSQ5IAOyoS2MCxcH7VmpXkHIdZlFP4BPtOvFdvlZZsncL0Kl1pZcS99Iam5eK1erfhFvrkviL9HDKc5X6OV%2FChUq7aGEvw5U6QuFVCbEhOSSZHegODM7WOzxhOzZ2cVFJaXFIbfHK2cH7WlELuK3EnR5vHZJEkzvHZw35S933n0ucur5ky%2FMO7SraN2mrVuqGiNPnIt%2BNnTy6HF4fMkfvf%2B6EEjfkpWPh7rtXrJgp%2BNAk9hzQScj6194%2F%2ByxlZE72Ow0KvcdloMLbPcBiDD%2B2jdSW%2FEk6MENfk55AfQMtwabaPC0aZWZ2a6Nob1NKgxRc3qemb%2FaF0jtk3xZPtkpc4Xjr3KVXE7WDfpi%2BsfVJ1RotwUyJVFVbE4ZV3JUPi0pLsq%2B%2BXMM4A9Vd%2B%2FYcXcVvrtx7bLN61av2oINVTU11dU1NVV4cuPaFRvXrV7xDGPNH6%2BheQJpbMQaHLiz8R9fXb5w8dLl5vO7XnzhD7uef37Xxa8u%2F%2F3ipa9pxpUqrt5AYeq1b8QPxVNg5BQWw13h9k4PpEqB3Lx2eW0DlmxfqkdfUhoy9Y6EnNZgW0t7MZ%2F6smlubka%2BI0NfFckQoDwPkjih%2Bd4yrpTleTdRqoinJE6Ts7AULcTt8mRxQbYjMeLcXMpYwucgMgaCkrrMn668Z97YBwZHJm%2F%2B%2FhnWZ%2FKwOzazl5c2DerS%2Bo2Xth9eshXXd7jTu7NHHeb98%2BVHfqw%2F%2Bz%2FCmp5zhvSZe3e%2FkSOubt2EO3tExnWrrbsy%2F51x94%2BaWFa%2F84V1k%2Fbfx2Z1fWE0%2B2It%2B2zfxGEfAaBiMbBctRiug0CpIBLFUpyK2R%2BOumYgYrZB%2BcZAdoT4%2BTfM0CpsksEggGCxGoNUsV4J5sVpc5SGJE6pwxvIJgM3r97%2B1Kq1S7et2UQKUI%2Fv7znOCn%2F8jpW80ohvKaN24aOatFEFAx8XLFYDFYItR0UbkQMljuIiEgx5HMS0efW2pWtXPbVdGZb9yjruPIInv%2FsR3z%2F%2BEisAhMFkrmCRXGCB9uEUKgoomw16o95qEwxoJiaT2cDtl84CUP5G4XWJOTBmWLK8olOmNOjMKhUpWZWHK5LZgl9279229we2OBUX50kuVjv5QDo7PBwnsvrhWJF%2BYDIuVagZDxeFHOF1MEKbsBMEQS%2BKJjOVdXJ1BKw61EH%2BfeqSTzTz3I7ZA3Zuv%2Bwhshy3sDFL2TjctJR6n2SDsfFJ3A0I5ewXfAgugw7s%2B0XQG0SAfFVWHOEsr6TyphSHW5NHFc9J6Wa%2B7B3Dfp42HguHAUINniPlZCpQ%2Fl0CogDIrW%2F8u85iv7sGv8ZzGzYAxjwV%2FMCxTwobJQCTWU8HRPQeruaaXpRqestVdUOXso7dupeF7px4Z8%2Bed3arKFc44AIg51W9ch4kIIiUEocmSk4sBpCcj15oUDRJXYYExl37RmirrkIv55rLASYJJF%2BS3t0nopeptU%2BE%2BmLrLK%2BlPgQyid3mCBU6UP1rVz8R2n770zc%2FXf7x8s%2FNn9fvaFi3rmFHPfmMLWRP4lycho%2FjNPY4W82Os88wiJ34K4tdAIQjAOQkx8YArcM2PaAOjSZBL8uolzAJFFvGDXd8ej67P2AvKpUkOYghcnK7zl300RBcsExwzJ%2Fhbrd7GuYBwhgAIYtbTx%2F3%2Bd4klJ3gtKCQnGIz9InYZEzqG8EkjSzNavCB%2FcXYlcQshhyMsZrI6PYLWc3lOG%2FvlA4rHr%2F3uTFD3r38%2Fr%2B3fMKOke9W4oJ9G566u7au84CpOz%2Fct5R99wF7W6dIYjjnawrHIAh3hlungFOWgXoyzVKbHOr1eD19Il6vISsrrU8kSzbY%2B0QMGpdjgYh60zDTHJKHoyP4404pw27zB4o1o62gq%2BBLL299am8j%2Bzv774zj995%2FdgTOZsOfWr3rnTWPj2h8qGbo1%2FM%2F%2FkYYvmxfms7TtPrM54E7ns4vwBw0rFy%2FaNJjRRVTet31OgCBPABhongUDOCAzuE0h6gnxChToCJ1ulB0iH0jeqvscFBZotflk%2BhMQ5oJDqhrC%2Fl%2F%2FFxmAUlGYeK5Z6Jl5MDec2yJQdc%2Bl5ViNduL1avoZ805eGll04jy6COKheT8S%2BU6kQwdw%2BlW6nPpXF4qtEoBziwAye3mMnRLkqlPRLqZdQlsKxTcLghkqhzjrLL5M%2BWgUwldSkjbL1HPLrCf51d8MHbv66zu%2FmcGl5Kz0YNZ0%2Bmcf759kbEB29qGGrZiYWop2b2R9fYqnKnlWOVzqXqgNfQIB5LtRr8fQLLT7CyT0ZLaL2K0WFzU5e0TcfmojkckcgvcyhJ4pNlr8Bd63VyEhIbiGhfIBFGTq8R9lqcWB2Dl1G79Rn%2F9i8n08OU3L%2F760UX2E369YuvqVUPrI9VryFR8CXc5V%2FrYefbW7svv%2FYNdxUHv%2FOnFVQ1V8yse2Dde0UcAIY%2FzU4L0sA1FEQg3jJT0jVAJFBlqbOOrALk1dCOmkuHNF%2BmpaKOYunHhldNAlZhEyFGpz4R20C%2Bc47Vmu%2B6gqXo9lewuq5TfXrLnZORk9Ink5JjAlNwvYvJBoF8E5N8qd9nN3jrmj7mOx8OPLDXqolpgwv0zZkpuzaeTynf%2BvWjNvnr22b%2BbsfDJR7%2Be%2BcL6dQ1bXlu3CDvOWfHIMytnrhJPHt7x4L7eg%2F48%2B8C5U0euLuu%2Ff8ozr1xteHTRssdGru8V3kwfeHTMsN937%2FzksLEzFdlO5NQpNsMLWdAtnJlizzQYAAQu26AljUvWZbEQlyuJi1Ymcr8Iaal2jjKNg5qJ9Ctqx02jMyDFKHJw8TpUIvjHKhXZQlZ0%2FIwe1eO%2B%2B6%2FRVHpg2mv%2FuPbBuguPMtfKLU%2BtuXfjkIFraEVzg2tlMuZg6O57%2FvXBP1C3kZ3H9od2PPV81RMVE%2FaNAy3HEcaokRS34Ta%2BLAA8XotzQMRiizkRDVfN87X0JXae6NzkVR6Znehb6J8XL%2BY3IKovXMjn0oEDMrkmmc2iXu9yGm0DIkab6hgTZklwj%2FT6FDccpXsmn6Rjlxv%2BknyrTFMR8%2BU%2FcF9%2BDiRwh%2FUCiChwdeXD58cDhSwsRjeikNNcTo83%2F0AtP2DDKLywji1nhxSezMTjgo9eVHOy3LBbJgIQ0OsEsToiIFRHrIjI4wHOlfxEz6a4ZOTXTLq9eTjdTofW1bEH6up%2Bg5GIBDhGEr2BkRNVlMZTa%2FP3HKVyrMMKrF3H%2FKPYUAWjlGsXaRnXrxTIhrJwqp%2FbMtnphFYWIdgGoLWtddqASGuPzdA7YhNaqFZLvVJSEa48LZwUd4YSN4mJ%2Baq%2FctSSXgtmD6gf2emV91%2F9KNj38bHd9l3PX0tq19dMnzFw3OSsgsWjj%2BzqPXn0w4On3e9nZ%2BNJLYFZ1yqkQ2ITFEM5zzwyA%2B1KLJ1kVwpAjsvSTgx3S%2BrQQeiisxv5Ky%2B9kGbnqUmllmSFEhOP6%2FG4ug6C2nJQUPdSt0td36R1IFMgbsUalrqlQAbw4KK1v1BwIH%2FudKqm8NCQbeMHP2LUtVk3rv7Fb4712N3Tt%2FDeaWvZt3%2B8wA7swe6Y%2F5cvjv3I1rHJn%2BAyhLM44ODVn14%2F7bBUDpq%2Fhpxb8c388XfdM%2BrU3veu%2BTws17Pv7O79aFvzMnvxc3aaHRq8sAZX4jgUsP7CfvYntoNhGYquJiAAAKJNPAIyWLjk0ojFqENR0SwqyILNaiG9I0bRYhFECoKD518xh6iplZYz%2B5W8H0OIlBsz%2FtURB6IHmnaT7itJORvb6A94cnbjGZYvHrnSg0zENwfPGTGddQIKJwCEo9xyW8ALGdA7nO0UUg1Wn89iEGQLjwd01iRrUlXEarWAxVcVsTjAWxUBevt4QnM9%2FgxBMbluwe4SAjxpj%2FmcgN0ef3cCt2IAhVVLsR%2F7%2BTIjjZjU9PTeY1ew4I9%2FOvhn8cCeI%2FNf9BnK2Pk3%2FkZ7TF00%2B6HoquhndauXPAGAMIdb09Oqr8gOu6jFpbdQb5IDekccglHi%2FHK2DL%2B4emRymUNIE3%2BRo3WokKfbtNP37Cs0%2F7rxjQ0X2Cvs2Rex%2FNNLuysbxBB7lX3FPmdvl64rwyU44QusOVSzuj8AUTgmDuEc04FdsYcWQQ8COJyiuSoiUsFSFREct4ppwc9rSBlA%2BZuAPZTBx2Az2Uo2CY%2FhIHysic%2F1z59PI%2FdU5CtWz%2BaJB9gi9gKmYebVKZgHgMq89Bc%2Br1GJWSSDAQXQoWAyS%2FreEUlCQsTeEUKRr3B03DZmUZBwxy%2F6S%2FMZmh%2BdTYZHt5OF4oH1LKc%2BeilhJj0UhpMlAKQ6pAbjTRPxSW45Q0CbAac3asPzwaNfrY9LTuyi2ilOhUvnI8SSohNapUJK7wiAaDLZe0dMgujtHRGdt4%2B8%2FHaphRyV9%2Brq5lT1xe9nfPc0a2IrDuKQL%2F%2F9bve3DrL%2Fso%2FQj0kbVrGXCYuWZWXjUhzzD7xn%2F%2BD6GvYau8Q%2BZe8H8LUY7WK6yuVQ2KdHBJ0giCCaTTraO6LTiQaJoshJV81RgnG%2FQbydi5f%2FDYnpjc2ssZGSRrI3Ws1z7dXkYQC8NoLNxfFqVpwaNht1OotVT4GzFDJj9GrpGI15%2BJJiPpxLMg0v6dVv9AONx9jclFWuR6fyFGvI0TNxvRC%2BUjHmnkjBViRGg4Ix0Yn6RGzLWkgJZRVRDKHw1TvRrzc2NpL1J6JN5M0l0dc5snnk4%2BjCBF0QIT1soQCCJCMFzgtw3EBXxTekkO0%2B0aio0pV%2FbIp9V%2BKIgpPrUZJOFCUev%2FJSmsuNBjuVjDK1gKQgp2DnLbuZlRjwuJUAn2MY4nce4COtZjadZSsCntbhh6zRomMm0bbpo%2Bbh4oGrVQLPOume7Uev%2FBCXo1IDsUG7sFsvcaytVpDB7jBS2aqjKCdypaUI4xPzabNJKZdj%2BWvNn%2BtsW4%2FRVB2xkGeEk582NR%2FnE3ZMwaxy2guAqFp99FZ5bu%2BIXqDW3hHqvLVNiOltBiTmueJRtpW9oZgjHIE9sBOOujo9%2Bv1%2Ffvn5h%2F9Eeb77LHuYa%2B94HIt1bArbxs6yU1iIuRjEAnYqZp%2BE8erqdUBRONnA%2Bc75DE6XQaiKGAySLDuqIjKVEtavhpXmSgW%2FmlplYChutYXx7Ay7tLsRZ5PWUePGL949euKoYPr7t1HOh2jK6mdXrVC5wHaoXLBCCp%2BZp8MeAIEa%2BOqmZtns6x0xC7KTL2yZM%2BMtlRs3J6I2pViG8q258sX7OOxndrH0tpz5ki3rzuqxivyf%2FDnN%2BWMCN1SGs8yIxKS3y0aDQdYTwePVm8EMVRGzmVDK5UepkSi6cntnp2Ku8ktw20SOf5bGNm4BcRXyGdhfcfkJ9jQ7%2FVXTzl2vfEZGRLeJB94%2Fzf4%2BLjqZjFi9cuWqJwDVHIFw29ha4V6a0wSQ5BSFrGxTGvV4uH30CFSfoEoJiY4mt0CGlozy8D%2Bo5jgx%2B6jmBbwy4BEI%2B9d3rHnZ0I%2FGN%2B7usnL1ey%2BxM389WLx%2F1%2BINHRbWXfoDLjz%2B6Z07su%2BYN73vyIFFvd959sV3qtf2nfFA35F3FQw8AoDgABCGcv7JvJ7iABSRUp1epgK3CYLmFeJ5qGYSi7k3IEsbWYFQyQrE9PWqJzjM14yPj2OHrLDdhgYZZafDrqOCmQ8UpzGUuFzsLkUnVHMYs4uij%2F2F%2FcJfFxrfee3ld8QDzf2vsC8wo5nuaa44%2BMabh%2BghQAAA4XW1%2FpMcNqJgMuooCJQqiPLlrxWvQhjgF8%2F%2FSgXTwej3O6M%2FNmF1x8zWHdVaFh%2F5uU3bnwXkmg1yXz6aT6km%2BQwpyW6LRdQn2Q0U9TGTotqUGOKqNclWAjJldKcyenwSZ0h8cyc75y5CT3v2xU42u%2BnL9p6UYpSa0Nne7yy%2B1EQ%2F7PaW6%2Fdbm0N88llHNx18ic5qnrv59RXv0YUK93QAQr1q9QNhhyCJ3ORLiskXFJMvtDT5KhocAz63Yu7rj%2FPIY0oTXmKdjuAkfHg%2F60QWROeQZnI4%2Bgq5M9oX4lybrUY5GWGrIBJRpnoDiChTUeOcJmE%2BqKL%2BGCJdcNEhlrSb%2BQ6T8%2BR887zoCZJPFyv1ZQBBscZ6pWKmQyqDLKBgMIoCNwcUdUrMcuuKmVot8AvlzU6qi9roq82%2F0LSFwoaNC69OAIQGdoRMVnSRY2mRUFAYoxcJlTDIOdBSfeJRD5nMSvEEu4B%2BdkS6svyKX6HWC0A%2Bi1c2Kd5c2XRy3h0mgYbo%2F4spg%2FKNEDuCzdrMFFACSacHOUgFevPMXj5rMb9CfMoLfOrSA%2BKF5b9KyigFJCgExOMgQVJYD1TWiQQEwrO%2BG5rpVFUTC3DfaPxsA1vG9pEg3dQ8jnwV9QJea2Zv0k3XKtUKsJLHIlEqwBgjmU%2FLQUfRp9mbCwCxTjhHHZIf9OA8AILRID2BkJ%2Bs1ZoxwDW1OMStBHU83G1fm5MZ0%2B4QzhUdK3f33F8MRKk50lPCUEXzoVc4K1NnTEvz%2BRw6yqMpYkzrFSFGI7jd1ooIt4LJFRHRA24o%2F98LVH4tX7NllapJZ7zS6LZn8QVeLKsVKjrQrxv43GPPvUychyc%2FVveH0F3HR77xCrNs%2FmPDWy89tOWB3js3Y1%2Bb1GPe7Jq5dxTuORZ11TZuHC3LD00fOhwI7OVWtVZygRPSeVUt0%2BD1Wq2mVGqiGX4zmNwOu8HOhccRljzgqoiArYV5DSXF1SDB1sddEk825YBijeRQiVcrvHAqyJ5Pv%2F3%2Bk0l%2F7GwKzGzQ6Wa811i%2FqXFjfb0wlJ1jP%2FDXxwMGLpdcbNHcsTuWvv7ll29fOPPJXwAQpnMOLxWGxbIaK6VuPU3ySmaOmQ0cHDPPzVmNGM9qlJ1DHgNzu6hmOGTcZXYV9f8d8HTbUOn8QrbvuW11Tz3swiw0oRPvyPQu96Sywe9%2B2mlNGRBlVqGU88fB%2BdM97E%2BVvGCx2CV7ht%2FhtgIgmqhez9mjt1FnRYR6bscerSYTkLTqvTcUDPLPA6osi%2BJOiG7ST%2F%2Fn2W%2B%2F%2B%2BTCTLMsNCxmTzdu3Ny4evOmNS9gNlr5647tA%2Frh0V%2B%2Fmfny%2B4Gv3r54%2Bi%2BfxLF0cN44IRk6hdOTDF4jpdzqtkrxGit4uRskyaUyyqIw6paZQyiRZQ632%2B%2BJsUuivNbh53Kb%2Bx%2F2JYp%2Fe%2F%2B7qFl8eecf%2FzBk65bfb7WQLstc2AZl1GMH9v3fJxx%2Fp2pttp%2F%2Bc%2FeGrS8oUksFoBYpHVxK3cVlMjkJ4UaSuj0GvhQMgKIsVkScspUqq0GtY98IAxWmOZS1p2QNgeJSXkPW3DX3mE%2BzrxreeANH3lObN6LH8KHopW83l9G3%2B3TugmsDC9PnPNkLgEKQuYQCzplcKIVu8HC4a56vQ5YpvYtY4ESnSHIzW6Vn%2BQzd72xlLbYWV0R0nXpFDJm6XKvOqvPk5pJekVxrm%2FJekTY2T7teEU9KnHUa%2Bzj%2F8pXd%2BrzbxD1uragaVBdAqDC%2BjaAUkrJv%2FOXKcGMXmJOnbhQXF%2FF3QsHJVnf87VhB3sSqoa%2Fte5X9jf3r7FdPzMgtC%2FccNOnTtwb3ZPb6ZWdOPLzh7amPD50%2F4z8%2F1T4uVE5ICkzt9ewxXYdBbfPqVx54ddvqMauTndXFnYfmBnY%2B2PS66ypEhs2ZFOn5IO08%2FZFvfn4cEPYCCD24nnuUzM5i0nFz7dF7vEkWvcMhVEQcNgOA3q0Y7xjlCatesVT2mALbtRUfM1P06cfm%2F%2BGZhgadoWD%2FjBMnyJuLfn%2Fkk%2BjrfHXnDOow4N5XP4gWAxDYDoDjxAtAwcr9tZ3PJCDa7Ga5MmImVlQ04%2F3EwqZSIqAJJVQc3NDQ1CG3TceObXI7CJWYU1Zc0qFDaSkAubaKudSxTZAEd4Q9TqPRrNP5kj22yognrLcC1z6ISzW5xSTOhATTljhb3v2det7Zv%2FeNGZnLt9g16B6h%2BaqNHZHv0yaP8TSV89QGJTzetxgMRqNOEkSdYHeYAGw2nY7KRje1xiKGfD5zeUyFyuJsRTUiQi0bdclYkzcER73JeuD5E2zOnB07dKSgy2icydpGlxLpQTZOcjW%2FXTo9NjcO5nNT4GQCoiASQHfca2tMVBjHYVRo6SRfJQGoCAfcdruDiz%2BgdwRo66xWHrfb4RPMPm5p0302p1UPDkUPuCLEt534Igi1bHVIVIgEzfAqepHh1bRDypryyOa1DVNmblnVsDhFl79rIuIAXcHhmYdfJicWLNj3cnSLcv%2Fzx9HjQmV99dDDg8e8%2BheuMZq2cnxdUBBOApeiri69x23S22xcWW02g%2FV2ytpSV72Jmrp7m4JG6NDUt95RNPXwJ%2Bq8d0XUSWM2dhSfU9EknsU6wSyDnOwzeLgds1GbYvxvmcVylSHFilGFxE4PYRT74fKaf%2FwOTZcvobX5lZ3PPffii88%2F10Cy2I%2FswyeR%2FAFNmMfeZ1f%2F8rfzH545p1j5vdyW1apU%2B6E8nOEzCrKsS3foHJkBwQhWq7siYrXprboUaHXDzMdZ0GLBqpaeO2hPAhMUr62Y%2BgRHrThpU8Niry7c%2BPBf%2F%2Bf7yzvryabGFc8%2B6xowcMRg1kUqqh9azT5h%2F1GcNr14%2BGTWl29fevfUeYVXHNNSlVexqMKW6qHJyT6bL8OfnOK1pqalecxOp8wtv80MFRHz%2F%2BY2VT5yJ1l63Ul6r3vQ0njtQyL9GzaIW15cvXnjnI8uf%2FfJ57P0SQsajObpM%2Fd9mHXp3YunT59birloRDO2a6z%2F9T38eEzFCzE9okGOpw1ywy6zXm8wEF4DsZrB4FYtg03rc2nRkaE5IY15ZEfvjt4eRQtfaahz6rrsFoaZNlk%2FfTbaJFSenDQjlrnS6XyW1twOtIplrqLzeuZaEfHYJKq%2Frj%2F5t8pdueG5kbsG25Hfpq50%2Bj%2Fe%2F%2BtjA%2FbXzF82%2BdmN88r%2FevSPL3Z6ftEjj7Yds%2BJ13jSzsaHnpjbt7h4Uvrdr2aAH%2ByzaXLm4R1W3O7p2KO71FCCkX%2FuG7BQrwKPWJlwu3jPioEKS1%2BC0OXtFLGGbVeaCkj1xU3kqIVjV5ONWqo52xVGXhtxKNuHyEMcdA5NSJuSy17ZurRiBXdlrw2vN8lyzHQeQZdU9%2F83mRWePngiAsIOvrjKhElx8fh86ZZPJ4DS4PSaz2aZzWdVV7TFqEbMS%2F4daVmW0rJcrhBY127EvX9TPNNQl6UP7Z7zztlAZLeMO6GMSvnpozV2Dj54hp7RcjgiVau%2BHAQ0ms6hHK6jhiJZl%2BNX0NFTicIYQt7ER%2B76ptuiMte%2FtYyP4oI%2F8o0cx9iPtrx6K5UpSgI%2FWinsblz4lNc3rsZipYBZ0yQ7ubnTuxCyYK7c2A1U2Z2Rlk8LhUHSq1BmbsoRPKeSfcBbp2qSdPsY%2B3jNxsk5nLHCcaHqjg0snBF7dzc6QBZ3OvHR%2FdK5QyUaz6j5l%2B4tJbXTp7trW9eRvHClACAIIOpXGzLBdFiVAUWlxQZ3RLaD1pnQ4ngmjmhUfYgteQT9m%2FJktwFVH2Cn27hFSQLxsGO6IfhU9jUdYD0AgfL1LfHw3z%2FsVMqnHK5jB7OBLO0UHfIJCVam1GRJo46KKOdrSUrLvuwFOnfnuS%2FtYTsWfl%2FStKu2xq3cXzuCVn9wf%2Bpn87mrGy5vtC03HtkAsZ6YPCZW3yJl7RUQr6npF0P2%2F5cz0oeZ%2FksHR0%2BTL6D5y31Q6eN685sPxrixetlPl5%2FYlJxu9AFbZRbmnpqlpTq09K3F7TdV%2FbpXcPJZTfEtxCddDvj7d3EK4ZLfHjedrpx794PFH58%2F49MClCxdM44aRZaRxE%2BaPjywnw0Zg4ebdS6Xj7NzZoCl4FhAvMxuZrfluorSo0RSABN%2BtlHzx8nKeJv3cDAiV7Ijaw5Oq4OwWDQ4H8UFqqsXiE2laujso0QScEzYFFXSDxYr7U7DPVNCV5Dj2pcRw4eKhDx%2BZ%2F9jjp45OnvHwVFIePIvB49LSPRvZ%2ByPvJcsjvOq5cRenZNg4zJn2qEvdpyXVQg6tAS%2FXAzu1JvkcpuoIdVglCaojEuTngS3pjfw38rSkOlOZT8nQVNOmbD9lKoU5HFg8t2TMUz2mRrqPyi95omTcisrHK%2FsMJSfuLFn%2FUKvsVinhsvqH%2FRkZSeoOPFuKdcJwrcuYCALV8343AGpSu4xtNPOWXcZcCQNO1%2FXt0PNKk%2FGszp3Ly0IVZPfVC2Lfxb3C5ZVhQDjK7fd5dVemazjNozNTahCARxo62irVJxKnwUz4SzDKgg%2B07k9ljt9sw2apra1KOJCldLR6NAOuqD89OWHNwpPHcdniPisKChY%2BtHv7My8sX%2FFdifTO%2Bxlov4LNXXfvoH7vstCH5z462QkQypUYSDzBpV4Zzk5y6s3mZI%2BdGD1OMS3dlORL6h%2FR%2B3xOcNr6RpxJIPa5uRWkRdPQzZ6Nm29lf5Lfinl2ypuduEqQxqONXTatnD0HG9jQblU05erVU2%2B99f%2FEEzUL%2B%2F1uGTs397MxS%2B7YtDz%2FxwtzsfO%2BU4psZqMkeIVtnHNByAibW0GmBSxtctLd7iwZeNSYn1gJchaVBku9il8r9co82Ja9clCxDnKwNLs0IXQ6VLV4%2BOLx8%2BeOq7t%2FUVXVgmF14%2BYuGrN42MKqeVtnzHh627QZW8mHj01aNmxh794Lhz059ZEFD%2FCHvfj7JZN%2BN2XbM1Onbd8BiscDEJT9Fw8MDrdzWGSj0WYS9URPTS6LW%2FYmGSwW2So5HBScbqsz3UmsTqvThG7JlATlWg%2B33RHrzL7lpjuGUOGj1uaovjBEKnH2HjYCJfY6dmGv72BvYGd%2BARu7j1wgZ5vZ3Ma57Ec08RslQBKsgaxUVYkkUR726QUqUDlmFjgmiYqtbgjFLYRiI5p%2FYebmnxVpXPuF1kupUABdeGdcdiE4pdy0Dj5fmkmCgNS13E07lbRqK%2Fn1%2FmCviN%2Btt%2FWK6OGGznh%2Fs4t9I39VVFmLztSUlwuwZdCiRC2l%2FKk33lG0dHD%2FqprTbw5%2FZmTxqMV9Z8yYvelw%2FcCqjf%2F%2B6K9P9H9t4KLl7R%2BcvmJR99W%2Ff6Ggbs3LPQbRnMF1WW0mD5q1NDW4IJjSKdy5prTH%2BklDl%2BfctXrZxm5rs9r27dWuY8e8oqHTRvWb0MVZPfnuKWXOMUCwWLTQ8eKH6u5TWpiTanKAI8lnpW495N90QCAhzctKeI%2FFxVnZpaXZWcU4pzgrq7Q0K6tYnFrUrl1RYUFBYfwOQGEM7xzvEdt5hxKeSwWDXmrNT0936a1esbSDZAKH1ZRuIuCwOYjJYXKk5AWcoRQByhNPBdhblgFRMxHuG90bnN2obu8KDjc3eYHM1py5DiFU2NqhNXTQOXMWz10weE77sRWvffDZq0880vHB5vXv4PB3les1tv2D02z76xP2YNvdezD3pT3s7N497JOXhMCeTTu3t%2F2dq9X3n575qfMjIXZI%2FQ7b%2Fu6brOGD0zj0rT%2BwD%2F%2BwB3P2xr8GQKCCushU8W1OdzqUhlt5pRQDokeJazP8rQwGh88D1EYJNTvSOakf3feGku9qVGpqG4xTV8ojfbXWGSt18iYUtdZJXEnDlt0%2FedPztWvHjM%2BbtnB%2BHauecmLUlAeov2bk6HHjJkhCcGFoRIcJs1jnI2OaCgRBqd8NhFraSI%2BCBGbICTupxI21YNTrBbMkWKwmUYegHGS5WbPRiyhjVuw2EAfPVEriM1kjLsUhtexzTK9lO0kQ1%2Fdk29mzvXB9yo23qh9EHfeDXhAhJWwiKKAki0J1RCSQr20nattixUJOXfM71Bv9Hhc%2BCdeuaV3LRAIbAAjXdUoX16r7wqGgF3iOLui5Zpn1JodXKu1gsnFoi9Pi0DmtjnQHAR63E4fT4bythikCCP22ZKVVoUS%2Bhp0Bqm51Fnr%2BL2UjHz5YPXLwfRNx36B%2Bl3eeXrwWxYbNVy%2F8n%2BpGrtwd7tNtSfXsNFaLo9jTdPZ89ub%2FpXB47YrkEiRpzW3r%2BoJ09UfBJLnmAoG5dBi5LJ5U83Z%2F2GIGp7L7nGwzHPNQhS3J7yWaAKe27LkytvA6c%2FfPn39g4Oqa%2Bfun195VPX3qwLunC2vmH9i%2FoGZlTdOCgdOm3l0zdZoiv%2FGASic8yQYLAMhwBiA6Q93NqCLLub9OUmpcstOLaHGCwAsItnQvZqjyadHEUVx6cz%2B0JMt%2Bsjy645vIQH91edGont0XbPj9msiaPXiIVI2%2FNHhk35IePbMLh0yeP6V6%2FZPPA4KflKlzBqAsnGkVRaCONIPUOstxn%2FMhJ%2BnrRKMzxUmcTl2yP92s88eVhKvIfTe2KDHRmKtlyd%2F2PpPpA3vsPbRzw4w1sz%2F8snbmA6Or7%2Bw%2BpUPP8mXDl2wVvqx%2BwJu%2F%2FYmVHWb32L5q0oAeXXrkBYa2LZl5056LnkfvwhP6xD0X5YAIN3pyAOvaT85494494cnCD133dnN3O1oEqNZDegiV4IHicLJoMOhs4HS6dC6%2BLeC2ulLMRKks6LWkMWHX6XqfaELKyMnTOhsGs13PNCxJNkz%2BZ%2F0Qg6GhAeewK698pKaNLwyr2caOScrsU1mzMEJygRWCYYcgIoBopDa7TidSq4jaQa%2F8RJkG7MortqVTEvILI6Z9PL1rzacn%2F%2Fov0pY1S3t%2FraYhx5WrKDBA2ED6Yh0dqvitsEECMJuofkCEQsyAJOqq2jzatUOseZR82L1nz%2B7xMwlZzIVNAOBQIge7xQhgUfrILXa7jtog%2F71CzQq3qDNoZYbSkOzBpo31obZtOw24a8BDQx4ubWIXRk7UT9S1Kckrtu%2BbHgSEvqQKP1d3kPleHwFKDSZuX2mGBGlK3sc5EGO7FpnEzw8MXLlQ8pQsvpNv4K4ld9471NP2%2FhFAoDt1kaPi26q3zgo7lONnEnBvHfMfbr3iP964r4XTTjgzJSYsWHJ0V%2F3qF3eu3%2FB8lN07fsKwYRMeGCZM3nHw8LPP7T%2Bw%2FTH%2Bb%2FYjjwCBau4hdsY9BF%2BZRr1AgMrEoJdu5R%2F4fBhELEUxdqM72c5aTGef1%2BIQVnvjPTGxCb3wfhzek01IufGW24c%2BAOIZzq8gnCYLACAbHrsGKMNHNDV6EPR%2FosTBA8ziYuCw7Tjs%2BThseQz2CwV2Ou3PYeV9xMZBVchkAMkvnuAQM34FFf4CxEZ9KD5qXmxUIBBiM2mNMBxSoY3Sba1zpQWwlbVVwCXk5EIqmmhqKj93lzEgkm2zG3tH7IEWecP9w%2B9rGZ4ohslCYnXDUm9MGF2J0ihbnJBfkf59Rs7q4vv9Y9X1ozq9%2BdbRTwPhSMnYbk2zOnXtXqqkXKHH1tZM7NOvw5ip2e0XjzjcWDEhMjB%2FyIz70jFvcU%2FeGRvmVKrdoPJ0bltbq9R1v%2FYaDgTdn4hNzIa84ltA1MLCGETS7SCOQSAGkdoSIv86xGsg3HKMrOsQE6CUQxiaKGmtgtyAkWIwIMNxKIN5QK4xAIk3MIIVnNA%2FfAdPM%2BwIOhPaRNEtuvROycm7kHm7iMHM7wabASUqOtByowkglmHm5an5G8bOiYau9y%2FSAF7vYVQ2zqR5UUeUXdxLDtMT0SMkNXqR9Lhag0cfURpetbZG%2FAvZr2jRHOZSOkc5ztkqzrMIAf55rM9N5VmbON8PqhxBs8aRmyFqoTwG4b4dxLFrV2MQyS0hsq5DTACHylWC%2FhhXgUA%2BgFip9id54Z5wod3t1glmAKcgCUk%2BrogS11erXC6%2FJJ%2BWL8jcIsuyoNfbqiJ6Kri17tNEXW55EDWhHZV7uVhLarxnM5QhVqpNqbM3bcJ9eBf%2Bbn%2F07S9xNlt4lIyKtaWSunqyntWxHSQcba5nhhhNYrmqS%2B3jurSmJdWx7jiVLwUx3sKsmLb5bgdRi4YYhP92EMegKQaR3RIiX4PgeGy65RhZ1yEmwMdxnW4b5z7CQrQJJmEDGMEX1st6ino0mXXgy0%2B0x2rMHLeOu0ewbTh8BHua7RiLw9m2MThS2DCa%2F3fbaLyfPTsaR%2BCIsWwrAOXzv877434CJ6RAQFkZnnRvmsAPExtcAA6rqFMCF0%2Ba32f2945YHTpRoDazQHnjnES1lrm3%2BFq4%2BYgL%2Fygm0lglwc7fxSoM1BZEj3qKzovZ1zsLv1479tEH9ykddGe2jnx04rGmh6Mjpu%2F9zy%2FNwbFk68SdWpPhmOUDNr2FDyl9dMMXV699l61D26bmvgOVZjp2ZRN9qTc7xVdOrI9LlUxpXLoVMfk7Nb7fDFELp2MQKbeDOAZzYhAZLSGyrkNMgA3xlRNMtEfCbHWUTvF5CmKjOFSQeO%2FfrHjvH9%2BpMOtFUbKDBB6vWeALiC8fs96sl2LdkZoVarkRrHVH8v9lCDcaJGexM%2BzzQ42NZ9GHnuYrO3mL5LvvUdvFy4zXWq%2FB6ei%2FV%2B5Y9yQAqv0oW6R0aK94ppxcMTUAXpMJUu25YkGhw5Hbrl12RaQd5LrV3S5tj%2Bvm0xpaZCBL2vZIQjWCo6Q2%2F2lnOTKUqE%2F1UYJv5ZAOKb36Lxv32p%2BOTCrfUnn27ofnjujZq094yVz2TcPf%2Fv7%2B58IPi6dX3OnPyC0L3b917LZdPTcF8w%2F0mVQxcHZN%2BcTisqHF1YMuXO0r7Nv3562c52pXkOTnPL8TACXovgLUVWlXOH6L57V56vN2t3t%2B7FP1eajFc%2FGz689fe%2BUW3xc%2FvP58whegruiOKsCNGRZehzj%2BcwyiTQwCqAIhKbtXOVDENWdkOJQLre3tedlIaF%2BWlJTe3ghi5y4pbYNtKyK%2BAqGgV6RD66BdECyZQU%2BxzqKriLgsNtBaO9R97viBxZsNL1corarUot3Jy%2F%2BqHSkOv7bLFExMz5TiAMaaVIb%2Fwg7NmPnUc0VVb4%2Ba%2F3xO8a6Hj%2F0reqcOO967tWbwurHswpy73lz03Mt7Jg1ZtfPpwzvoK7OWGon8BOY%2F%2ByddrEUqp%2Fie%2B4eMYP%2F9%2ByRWGwjyVpav5k5sXH9%2F5MVNo2XdQ6Sw4ektO5V1zXc4lW4kzreeMU%2BJFaqnVDtxVIn1ikl8vyqRVppEbn5e21993vp2z4%2F9rD7PafGcS1R7PsEQk1d7TaLX%2FgqAo9URXolZHHYXKGOgqI3xIgApTICovZYRgzDHIa79iUMMSoA4xl6IQTg0iG84RDrHQ4OYwA4CqBbHZ9d89VRlx1zyq6euqsJ5fsnUqhXwYN5jsTttkj7YRp9eETFSj91nsfLIR0%2B9LqSttY3QmLJw6%2F3b430QyITiIlAqxdlBMcj%2FlHpUk%2B6gRVqnV4kwil39%2Be%2FsK5T%2F9sUYXdkp9n3vr4YN77ll3OW%2Bpzc8v7NpC3vppe0vPUtC7Ev2FzR%2FcQmlWcInr25%2BcGHXgtrefZ6cNHMlm8b%2BtaaRbXjh4Aku21jXgbraqmOrzaLyJC1RNqNUrt0Vk%2F1HquySb%2Fe8drD6PPN2z4%2Bp45Ngi%2Bd8fu35a9%2Ff4vtcJtrzCSkx3Wh3fS2Ph2YhR9gJVO1CD4WTPAaDTSACKjsZTifKZjMqJ%2FQQ8tX1yhOfG8nPjUN6iccXE96Pp8ejezqVFHXsFCrqot3J8iefZP%2Fq3KW8Y1m4nPwYfwOUY3tEGCUsjvv7PvxEa3orl8vQ6iZn76u47uxt1M%2Bb2Kjnf3P2ZWVxBdGcfXw7QXSpTl4Si1SnX6L2X2yaUjNt%2BDw0Xd40o6Z25NzmV4rxTJ9pvAljfYjl95r63Iuxboyetf0XbEBQGjL6zuy7cMOvu8aRRcWffLRjTHRO6DzXjNjutSq5e2KSf0PVDI8mmZuf107VNOfWz4851OeBFs%2B5ZLXnE%2FyxtZarrfrYDqw6wr2xGWIjpKsAWu%2BI2t%2BVyXex0jOkFJfNZpfsrQMOsKeYPHqqT%2BNdjB7q5euvRZPnb3oYUWsXUUomXo%2FW9JUVbx7J4HugOKR748Sz333%2Fyd8fMwk63mSElTs38OYRzF9LmyID2Efsvwpjn83sV86KdcDaFQ1NOXQi58u3ce%2FZMxo1nF6Nmgn7Y%2FTmxejV%2BpuEyuv9TaJArLfsb%2BIw6gkU6UvxFLggHe4Ot0uSrE5nKpjtqZKY4bc6eDxpBaOR51hGGj%2BVwg8UUAc4b5zk4det2ia1fWVJO2TlvZF9aafq7NnSl1EYN4y9zJ7BYRgeN5RaonxdR8%2BRfs09fmXXEH%2Becs89LqzDiTgeF3ljSZmwlZ1m55QTGn6hNi32qy1yujAU0iAXCmBQuG26zkI8nqx8t7tVlk4oDOW1Mbbh0RHvSCKixdiunWg32pIyxcyKCIieFj7YoVjVRAeseV9R9a0q5rdyvYktTFkxnyvWs%2FNzup6pu8B%2BROnrBae6djz2%2BInL0aAOq4Y%2Fe8%2BQDVf9G154buPm5xvWCb3mrjKRjN%2B7vp4xEwtQh3q8Y%2Ba0KbPYz19MYDO5tw1mkLIPz3985rOPP%2F10x9NP7wBEE68Q7pH8YFF6wGWwWXmN0KJs3CSfKkwsE%2FIgzx1QzhIE0DR3nLfB89CcmUMWLuFF2u%2BWPJGTu3C%2Bt3TBoiIAgpP5iG2lhdp%2BkEMyxSpMejflw753u9KSrHUfcfpp29njxj46a8zY3z3YPRTq3rmsqJu4b9TM2lGjps8c3qFLlw78AkQdn%2Bk78TN1N5wPn%2BSzg2gC%2FnKrZc73En4mKLYb3o4vKU6BwvQ0olRTQpJEXXkDB%2FTOLAxZRpmn39tucP%2FKjIL21tHmqcL5rLZZnbvMquO3Tl1n1aldEci5Ff%2FFEyCCePMvngykw%2BK%2FeMIh5f8VUtYgffQ49lB7%2BR0HUNTpQenhP6WBBkscHEs5y%2BQZ1WF29yx63DMUTVyicNM3RdTpRZly061Rq55Od5RisXIk%2FbGKDPGARzmLjqmfcouq%2Fe4LkcAKAEQZizSpY1khOWwS0KwXbHbQUZP2M1%2Bx3pUgbyrhA%2FvjeGG9tcNjs9M6maNnb2B4FnXTeR1Tw7TF6DZldL0ZRcHuMIs2WRn9LW10DWe%2Fei9JQJ4ELUkjOsxJ7m6%2BQYbnXvbTY2Ow6D6FHh%2F7lTTBZZSVLOtqB8g4iCCHzeZK%2BdC1Y38ymWJ3vb5SBnteXszG7cAfyXB6EYzgPBD%2FURrIP3Wr6u%2BOqQ9OmDF94qRp5JtZj%2F9u9sx5C%2Ficym8TiHvgB8gGOwAEwU4c%2FM4nELJA1RaoJelK5ZPTbBAIlYikk0WuCInpvPM3e2CJ%2B16ASv2UpGqjUBAIkMRRWhRNSeqtK6QAyGYBkJXxUyYgEkE7ZYLxAQJIVjbPWkkXx4%2BZIJRzr1gnnuT0TQ2Xp3rTPZ5kI5Hl5NZ2wZDslYJtjN4kb%2F%2BILklMTUvtHyFp1rT0tPw0qqdJaUlpzsxM6BvJlJ0W3iDhg5ZN3bwwdMsfKruRW2ZQbuRlt9evdcorVpPyolGwuJT%2FdUDsCHUKOz4AWfRHQvA065Z1snHLxtW7%2FoddaNewgZANO4LY%2Bn9OPN%2BrQSxmD80rC7ed1%2FRm9%2FpuaEacl3tH9TwUsfXIpYPVzprl6o4iBXdYT0AUtDAtYc3y%2BEuJtrjkUwGEVlI650ylKvE%2B5ABA%2FHNTwuf9lc%2BBgItUcf0%2FAgZwQedwuks0ypTyaYjSqY%2BiqLe60l3E5aIWOZ1mxPuV70toergeGwR4g0v8V2eKi0otVJZJ05xV7GHcsHQO%2B0ESk9LSjDup6913x%2FKzVKdeX9THFGzb1v5TDDfpQ45bECoJ9%2B43cBcf0nCXXr%2FF8%2F43notvxJ6rVEnqc1TWG05X9cp%2BAAQRKWiHl2Knck80KgqljCAC4Aq1QvJpPHP6XaxCImp1FiUv6pwAUXstt2Ud9NrbHGJCAsQx9ufEKktsFtJBzroOMYF9EK%2FV%2BGK1mv8PflNJUQAAAAABAAAAARmahXJJOF8PPPUACQgAAAAAAMk1MYsAAAAAyehMTPua%2FdUJoghiAAAACQACAAAAAAAAeAFjYGRg4Oj9u4KBgXPN71n%2FqjkXAUVQwU0Ap6sHhAB4AW2SA6wYQRRF786%2B2d3atm3b9ldQ27atsG6D2mFt2zaC2ra2d%2FYbSU7u6C3OG7mIowAgGQFlKIBldiXM1CVQQRZiurMEffRtDLVOYqbqhBBSS%2Fohgnt9rG%2BooxYiTOXDMvUBGbnWixwgPUgnUoLMJCOj5n1IP3Oe1ImajzZpD0YOtxzG6rSALoOzOiUm6ps4K8NJPs6vc%2F4cZ1UBv4u85FoRnHWr4azjkRqYKFej8hP3eqCfDER61uyT44DbBzlkBTwZD8h8%2FsMabOD3ZmFWkAiUs5f4f2SFNZfv6iTPscW%2BjOHynEzEcLULuaQbivCdW5SDNcrx50uFYLzFHYotZl1umvNM1tgNWX%2BV%2F3gdebi3ThTgVEMWKYci4kHZhxBie3TYx3rHbGr%2BPdo7x4dIHTKe5DFn%2BO%2Fj%2BW2VnE3ooW6isf0LIUENvZs1gf%2FLHojJwdpplCP5gn%2F5gi26FoYa19ZVFOJ6Sxuoz%2Fq2Ti20IKVJdnqvYJwnhfPH%2F2f6YHoQF30aZaK9J8T026RxH5fA%2FWPW%2F8IW4zkpnIfoFLifGB86v0ffm5nbyRs5iaHR3hNBD0HSfTzoPugRM%2BhdN0x052KoHLBS0tdgpidAiEesDsgWYO73RWQz2LWIwjqnMe%2FuYISQtlbyf2NlT9Q9PoBcBnrO6I5ELoMeyHkNnIXGdv809H%2FDXNOTeAEc0jWMJFcQxvFnto%2F5LjEvHrdbmh2Kji9aPL4839TcKPNAa6mlZUyOmZk6lzbPJ3bo56%2F%2FCz%2BVaqqrat5rY8x7xnzxl3nvo%2B27jFnz8c%2FmI9Nmh2XBdMsilrBitsnD9rI8aiN5DI%2FjSftC9mIf9pMfIB4kHiI%2BhWfQY5aPAYYYYYwpcyfpMMX0aZzBWZzDeVygchGXcBlX8ApexWt4HW%2FgLbzNbnfwLt7DJ%2Fp0TX4%2BUucji1hCnY%2FU%2BcijVB7D46jzkb3Yh%2F3kB4gHiYeIT%2BEZ9JjlY4AhRhhjytxJOkwxfRpncBbncB4XqFzEJVzGFbyCV%2FEaXscbeAtvs9sdvIv3cjmftWavuWs2mg6byt3ooIsFOyx77Kos2kiWsIK%2FUVPDOjawiQmO4CgdxnAcJzClz2PVbNKsy2ZzvoncjQ66qE2kNpHaRJawgr9RU8M6NrCJCY6gNpFjOI4TmNIn36TNfGSH5RrssKtyN%2B59b410iF0sUFO0l2UJtY%2F8jU9rWMcGNjHBEUypf0z8mm7vZLvZaC%2FLzdhmV2XBvpBF25IlLJOvEFfRI%2BNjgCFGGGNK5Rs6Z7Ij%2F45yNzro4m9Ywzo2sIkJjuBj2ZnvLDdjGxntLLWzLGGZfIW4ih4ZHwMMMcIYUyq1s8xkl97bH0y3JkZyM36j%2F%2B58rvTQxwBDjDDGNzyVyX35Ccjd6KCLv2EN69jAJiY4go%2Flfr05F%2BUa7CCzGx10sYA9tiWLxCWs2BfyN%2BIa1rGBTUxwBEfpMIbjOIEpfdjHvGaTd9LJb0duRp2S1O1I3Y4sYZl8hbiKHhkfAwwxwhhTKt%2FQOZPfmY3%2F%2FSs3Y5tNpTpL9ZQeGR8DDDHCGN%2FwbCbdfHO5GbW51OZSm8sSlslXiKvokfExwBAjjDGlUpvLTBY0K5KbiDcT672SbXZY6k7lbnTQxQI1h%2B1FeZTKY3gcT2KvTWUf9pMZIB4kHiI%2BxcQzxGfpfA7P4wW8yG4eT%2FkYYIgRxvgb9TWsYwObmOAITlI%2Fxf7TOIOzOIfzuEDlIi7hMq7gFbyK1%2FA63sBbeJtvdwfv4j28zyaP8QmVL%2FimL%2FENJ5PJHt3RqtyMbbYlPfQxwBAjjPEN9ZksqkMqN6PuV7bZy7LDtuRudNDFwzx1FI%2FhcTzJp73Yh%2F3kB4gHiYeIT%2BEZ9JjlY4AhRhjjb1TWsI4NbGKCIzjJlCmcxhmcxTmcxwVcxCVcxhW8glfxGl7HG3gLbzPxDt7Fe%2FgY%2F%2Begvq0YCAEoCNa1n%2BKVyTUl3Q0uIhoe%2B3DnRfV7nXGOc5zjHOc4xznOcY5znOMc5zjHOc5xjnOc4xznOMc5znGOc5zjHOc4xznOcY5znOMc5zjHOc5xjnOc4xznOMc5znGOc5zjHOc4xznOcY5znOM8XZouTZemS1OAKcAUYAowBZgCTAHm3x31O7p3vNf5c1iXeBkEAQDFcbsJX0IqFBwK7tyEgkPC3R0K7hrXzsIhePPK%2F7c77jPM1yxSPua0WmuDzNcuNmuLtmq7sbyfsUu7De%2Fxu9fvvvDNfN3ioN9j5pq0ximd1hmd1TmlX7iky7qiq7qmG3pgXYd6pMd6oqd6pud6oZd6pdd6p%2Ff6oI%2F6pC%2FKSxvf9F0%2F1LFl1naRcwwzrAu7AHNarbW6oEu6rCu6qmu6ob9Y7xu%2BkbfHH1ZopCk25RVrhXKn4LCO6KiOGfvpd%2BR3is15xXmVWKGRptgaysQKpUwc1hEdVcpEysTI7xTbKHMcKzTSFDtCmVihkab4z0FdI0QQBAEUbRz6XLh3Lc7VcI%2FWN54IuxXFS97oH58%2BMBoclE1usbHHW77wlW985wcHHHLEMSecsUuPXMNRqfzib3pcllj5xd%2B0lSVW5nNIL3nF6389h%2BY5NG3Thja0oQ1taEMb2tCGNrQn%2BQwjrcwxM93gJre4Y89mvsdb3vGeD3zkE5%2F5wle%2B8Z0fHHDIEceccMaOX67wNz3747gObCQAQhCKdjlRzBVD5be7rwAmfOMQsUvPLj279OzSYBks49Ibl97In%2FHCuNDGO%2BNOW6qlWqqlWqqlWqqlWqqYUkwpphTzifnEfII92IM92IM92IM92IM92IM92I%2FD4%2FA4PA6Pw%2BPwODwOj8M%2Ff7kaaDXQyt7K3mqglcCVwNVAq4FWA60GWglZCVkJWQlZCVkJWQlZDbQyqhpoNdAPh3NAwCAAwwDM%2B7b2sg8kCjIO4zAO4zAO4zAO4zAO4zAO4zAO4zAO4zAO4zAO4zAO47AO67AO67AO67AO67AO67AO67AO67AO67AO67AO67AO63AO53AO53AO53AO53AO53AO53AO53AO53AO53AO53AO5xCHOMQhDnGIQxziEIc4xCEOcYhDHOIQhzjEIQ5xiEMd6lCHOtShDnWoQx3qUIc61KEOdahDHepQhzrUoQ6%2Fh%2BP6RpIjiKEoyOPvCARUoK9LctP5ZqXTop7q%2F6H%2F0H%2B4P9yfPz82bdm2Y9ee%2FT355bS3%2FdivDW9reFtDb4beDL0ZejP0ZujN0JuhN0Nvht4MvRl6M%2FRm6M3w1of3PVnJSlaykpWsZCUrWclKVrKSlaxkJStZySpWsYpVrGIVq1jFKlaxilWsYhWrWMUqVrGa1axmNatZzWpWs5rVrGY1q1nNalazmtWsYQ1rWMMa1rCGNaxhDWtYwxrWsIY1rGENa1nLWtaylrWsZS1rWcta1rKWtaxlLWtZyzrWsY51rGMd61jHOtaxjnWsYx3rWMc61rEeTf1o6kdTP%2F84rpMqCKAYhmH8Cfy2JjuLCPiYPDH1Y%2BrH1I%2BpH1M%2Fpn5M%2FZh6FEZhFEZhFEZhFEZhFEZhFFZhFVZhFVZhFVZhFVZhFVbhFE7hFE7hFE7hFE7hFE7hFCKgCChPHQFlc7I52ZxsTgQUAUVAEVAEFAFFQBFQBBQBRUARUAQUAUVAEVAEFAFFQBFQti5bl63L1mXrsnXZuggoAoqAIqAIKAKKgCKgCCgCioAioAgoAoqAIqAIKAKKgCKgCCgCyt5GQBFQBPTlwD7OEIaBKAxSOrmJVZa2TsJcwJ6r0%2F%2B9sBOGnTDshOF%2BDndyXG7k7vfh9%2Bn35fft978Thp2wKuqqqKtarmq58cYbb7zzzjvvfPDBBx988sknn3zxxRdfPHnyVPip8FPhp8JPhZ8KP78czLdxBDAMAMFc%2FbdAk4AERoMS5CpQOW82uWyPHexkJzvZyU52spOd7GQnu9jFLnaxi13sYhe72MVudrOb3exmN7vZzW52s8EGG2ywwQYbbLDBBnvZy172spe97GUve9nLJptssskmm2yyySabbLHFFltsscUWW2yxxX6%2B7P%2BrH%2Fqtf6%2B2Z3u2Z3u2Z3u2Z3u2Z3s%2BO66jKoYBGASA%2FiUFeLO2tqfgvhIgVkOshvj%2F8f%2FjF8VqiL8dqyG%2Bd4klllhiiSWWWGKJJY444ogjjjjiiCOO%2BPua0gPv7paRAHgBLcEDFOsGAADAurFtJw%2Fbt23btm3btm3btm3btq27UCik%2F1sq1CH0I9wl%2FDTSONInsjxyKcpGc0VrRNtGx0dXRF%2FFpFiV2KbYl3j%2B%2BJz4vkTaxKjEgcSXpJzMm6yb3ALkAnoCV0ARLAcOBjdCAJQJqgWNhJZDT2EbbgTPhz8h%2BZFJyDbkFSqgVdGh6Br0BhbFFCwHVhNrj43DXuH58V74WcIkahHvyDRkLXIGeY18SxWl%2BlMHaIVuSc%2Bh3zHpmNbMJOYuy7DF2E7sFvYMJ3Clf%2B3DHecNvjm%2Fm38g1BYmioxYS5wqbhZ3S0Wl2tJkab50U04pl5CHy9vlmwqlZFJaK4uVnco55YlaUK2kNla7qEPV6epi9aMW01jN0zJohbRZ2mptj3ZWu6e91wE9vT5LX63v0c%2Fq9%2FUPRiZjprHS2GmcNG4ar8yIOcycZC4yN5mHzMvmE%2FOrhVq6NcCaYC2wNlgHrAvWQ%2Ft%2Fe6w9115r77XP2fecrE4xp65zwM3lNnZnuBfdZ17E071sXj6vrTfP2%2BHd8F74lJ%2FeL%2BHv86%2F6D%2F23Qfogf1A%2BqB10CAYGk4LFwdaf2C%2BJfQAAAAABAAAA3QCKABYAVgAFAAIAEAAvAFwAAAEOAPgAAwABeAFljgNuBEAUhr%2FajBr3AHVY27btds0L7MH3Wysz897PZIAO7mihqbWLJoahiJvpl%2BWxc4HRIm6tyrQxwkMRtzNIooj7uSDDMRE%2BCdk859Ud50z%2BTZKAPMaqyjsm%2BHDGzI37GlqiNTu%2Ftj7E00x5rrBBXDWMWdUJdMrtUveHhCfCHJOeNB4m9CK%2Bd91PWZgY37oBfov%2FiTvjKgfsss4mR5w7x5kxPZUFNtEoQ3gBbMEDjJYBAADQ9%2F3nu2zbtm3b5p9t17JdQ7Zt21zmvGXXvJrZe0LA37Cw%2F3lDEBISIVKUaDFixYmXIJHEkkgqmeRSSCmV1NJIK530Msgok8yyyCqb7HLIKZfc8sgrn%2FwKKKiwIooqprgSSiqltDLKKqe8CiqqpLIqqqqmuhpqqqW2Ouqqp74GGmqksSaaaqa5FlpqpbU22mqnvQ466qSzLrrqprs9NpthprNWeWeWReZba6ctQYR5QaTplvvhp4VWm%2BOyt75bZ5fffvljk71uum6fHnpaopfbervhlvfCHnngof36%2BGappx57oq%2BPPpurv34GGGSgwTYYYpihhhthlJFGG%2BODscYbZ4JJJjphoykmm2qaT7445ZkDDnrujRcOOeyY46444qirZtvtnPPOBFG%2BBtFBTBAbxAXxQYJC7rvjrnv%2FxpJXmpPDXpqXaWDg6MKZX5ZaVJycX5TK4lpalA8SdnMyMITSRjxp%2BaVFxaUFqUWZ%2BUVQQWMobcKUlgYAHQ14sAAAeAFNSzVaxFAQfhP9tprgntWkeR2PGvd1GRwqaiyhxd1bTpGXbm%2FBPdAbrFaMzy%2BT75H4YoxiYFN0UaWoDWhP2IGtZtNuNJMW0fS8E3XHLHJEiga66lFTq0cNtR5dXhLRpSbXJTpJB5U00XSrgOqEGqjqwvxA9GsekiJBw2KIekUPdQCSJZAQ86hE8QMVxDoqhgKMQDDaZ6csYH9Msxic9YIOVXgLK2XO01WzXkrLSGFTwp10yq05WdyQxp1ktLG5FgK8rF8%2FP7PpkbQcLa%2FJ2Mh6Wu42D2sk7GXT657H%2BY7nH%2FNW%2BNzz%2Bf9ov%2F07DXE7QQYAAA%3D%3D%29%20format%28%22woff%22%29%7D%40font%2Dface%7Bfont%2Dfamily%3A%27Open%20Sans%27%3Bfont%2Dstyle%3Anormal%3Bfont%2Dweight%3A700%3Bsrc%3Alocal%28%27Open%20Sans%20Bold%27%29%2Clocal%28OpenSans%2DBold%29%2Curl%28data%3Aapplication%2Ffont%2Dwoff%3Bbase64%2Cd09GRgABAAAAAFIkABIAAAAAjFQAAQABAAAAAAAAAAAAAAAAAAAAAAAAAABHREVGAAABlAAAABYAAAAWABAA3UdQT1MAAAGsAAAADAAAAAwAFQAKR1NVQgAAAbgAAABZAAAAdN3O3ptPUy8yAAACFAAAAGAAAABgonWhGGNtYXAAAAJ0AAAAmAAAAMyvDbOdY3Z0IAAAAwwAAABdAAAAqhMtGpRmcGdtAAADbAAABKQAAAfgu3OkdWdhc3AAAAgQAAAADAAAAAwACAAbZ2x5ZgAACBwAADiOAABYHAyUF61oZWFkAABArAAAADYAAAA29%2BHHDmhoZWEAAEDkAAAAHwAAACQOKQeIaG10eAAAQQQAAAICAAADbOuUTaVrZXJuAABDCAAAChcAAB6Qo%2Buk42xvY2EAAE0gAAABugAAAbyyH8b%2FbWF4cAAATtwAAAAgAAAAIAJoAh9uYW1lAABO%2FAAAALcAAAFcGJAzWHBvc3QAAE%2B0AAABhgAAAiiYDmoRcHJlcAAAUTwAAADnAAAA%2BMgJ%2FGsAAQAAAAwAAAAAAAAAAgABAAAA3AABAAAAAQAAAAoACgAKAAB4AR3HNcJBAQDA8d%2BrLzDatEXOrqDd4S2ayUX1beTyDwEyyrqCbXrY%2BxPD8ylAsF0tUn%2F4nlj89Z9A7%2BtETl5RXdNNZGDm%2BvXYXWjgLDRzEhoLBAYv0%2F0NHAAAAAADBQ8CvAAFAAgFmgUzAAABHwWaBTMAAAPRAGYB%2FAgCAgsIBgMFBAICBOAAAu9AACBbAAAAKAAAAAAxQVNDACAAIP%2F9Bh%2F%2BFACECI0CWCAAAZ8AAAAABF4FtgAAACAAA3gBY2BgYGRgBmIGBh4GFoYDQFqHQYGBBcjzYPBkqGM4zXCe4T%2BjIWMw0zGmW0x3FEQUpBTkFJQU1BSsFFwUShTWKAn9%2Fw%2FUpQBU7cWwgOEMwwWg6iCoamEFCQUZsGpLhOr%2Fjxn6%2Fz%2F6f5CB9%2F%2Fe%2Fz3%2Fc%2F7%2B%2Bvv877MHGx6sfbDmwcoHyx5MedD9IOGByr39QHeRAABARzfieAFjE2EQZ2Bg3QYkS1m3sZ5lQAEscUDxagaG%2F29APAT5TwRIgnSJ%2Fpny%2F%2FW%2F%2Fv8P%2Fu0Bigj9C2MgC3BAqKcM3xgZGLUZLjNsYmQCsoGY4S3DfYZNDAyMIQAKyCHTAAAAeAGNVEd320YQ3oUaqwO66gUpi6wpN9K9V4QEYCquKnxvoTRA7VE5%2BZLemEvKyvkvA%2BtC%2BeRj6m9Iv0VH5%2BrMLEiml1XhzPdNn3n0rj6%2FEKn2%2FNzszO1bN29cv%2FbcdOtqGPjNxrPelcuXLl44f%2B7smdOnjh09crhe279vqrpXPuM%2BPbmzYj%2B2rVws5HMT42OjIxZnNQE8DmCkKiphIgOZtOo1EUx2%2FHotkGEMIhGAH6NTstUykExAxAKmEqSGMFl6aLn6J0svs%2FSGltwWF9lFSiEFfO1L0eMLMwrlT30ZCdgy8g2S0cMoZVRcFz1MVVStCCB8raOD2Md4abHQlM2VQr3G0kIRxSJKsF%2FeSfn%2By9wI1v7gfGqxXBmDUKdBsgy3Z1TgO64b1WvTsE36hmJNExLGmzBhQoo1Kp2ti7T2QN%2Ft2WwxPlRalsvJCwpGEvTVI4HWH0HlEByQPhx468dJ7HwFatIP4BBFvTY7zHPtt5Qcxqq2FPohw3bk1s9%2FRJI%2BMl61HzISwWoCn1UuPSfEWWsdShHqWCe9R91FKWyp01JJ3wlw3Oy2Ao74%2FXUHwrsR2HGHn4%2F6rYez12DHzPMKrGooOgki%2BHtFumcdtzK0uf1PNMOxwDhN2HVpDOs9jy2iAt0ZlemCLTr3mHfkUARWTMyDAbOrTUx3wAzdY%2BniaOaUhtHq9LIMcOLrCXQXQSSv0GKkDdt%2BcVypt1fEuSORsRUwgrZrAsamYJy8fu%2BAd0Mu2iYFhexjy9FIVLaLcxLDUJxABnH%2F97XOJAYQOOjWoewQ5hV4Pgpe0t9YkB49gh5JjAtb880y4Yi8AztlY7hdKitYm1PGpe8GO5vA4qW%2BFxwJfMosAk2X9n9X2cVVfnA36pzHNHJGbbITj75NTwpn4wQ7ySKfAu9u4kVOBVotr8LTsbMMIl4VynHBizBEJNVKBAfMNA9867j0InNX8%2BranLw2s6DOmqIHBIbDfQR%2FCiOVk4XBY4VcNSeU5YxEaGgjIEIUZOMi%2FoeJag4mEB3PUOweCaG4wwbWWAYcEMGKn9mR%2FsegY3R6zdYg2jipGKfZctzINQ%2FvxkJa9BOjR44W0OpTKAskcnjLTcKyuU%2FSVIWSKzKSHQHebYW9mfGYjfSHYfbT3%2Bv877XhsIwGzEUaleEwITyE2u%2F0q0Yfqq0%2F0dMDWuicvDanKbjsB2RY%2BTQwOnfvbMUhiNPFyDCRwhZhdjE69Ty6FjoOoeX0spZz6qKxxu%2Bed523KNd2do1fm2%2FUa6nFGqnkH8%2BkHv94bkFt2oyJj%2BfVPYtbzbgRpXuRU5uCMc%2BgFqEIGkWQQpFmUckZe2fTY6xr2FEDGH2px5nBcgOMs6WelWF2lmiKEiFjITOaMd7AehSxXIZ1DWZeymhkXmHMy3l5r2SVLSflBN1D5D5nLM%2FZRomXuZOi16yBe7yb5j0ns%2BiihRdlFbd%2FS91eUBslhm7mPyZq0MNzmezgspUUgVimQ3kn6ug48mntu3E1%2BMuBy8u4JnkZCxkvQUGuNKAoG4RfIfxKho8TPoEnyndzdO%2Fi7m8Dpwt4XrnSBvH45462t2hTEX4Bafun%2Bq8jIzK%2FAAEAAgAIAAr%2F%2FwAPeAF8egd8lFXW9zn3PmX6PNMnPZNJMRRDMkzmDYgZMRRDCEmMMUPJIgZEepHlRYyIiNhRUdYuS4ksy9reLDYsdOmLLC%2FLy7L2CgKrrCJkLt%2B9T2YyYPl%2BD8804J5zT%2Fn%2FzznPBQKbACSTvAEoqJAdtUhUJpQYjBJVAUrKSkIOJ1ZUOEKOUGkfV8ARiPB7E72m87WJZF58ibzhXPVE6QsAAnMufI4H9XXsUBh1UpOJSJLmQNWqNsasLkKhsrKnA%2FT1HCF9PQzSAPYtD5V5PW4lmFeIK86EcCRbObLp2lGjGxpH4%2Bf0wLkjjU3NDSNGxYSMxbSdDkzomhE1SypQalCISvniob1lDuTL7injC1O%2BMr%2FxmeJtxeRt%2FiJviJ8mmrjFOr0BJCZ3QAbkQFu0ypCZ45HcRqNJQkiT%2FLKsOO02s2Ryudze7CxVUnw%2Bv9%2BtmKTcgEEymzPRlgN2e5rHaeOXyeeiisnJFagMOSsqSkr45kL8Tr450SfM5%2Fy1V66pGvBwTV1BcYcDEX67QjQkbo8cigTplyVI2OHh%2F6zdXHO4%2BiR6SjoxMPzo8O21h2tPx7O2lmylNV%2FtY5Nwubj3fXUA%2F8BuFveBr74CoNB84V6pSnFCLhRCL7g7OijfR7Oy3FalR49AcXYRFBnsQUcgkAYO6H15j6wiAGu%2BI%2BAo6pleFDAWKJZMX%2BaImNunWOpiskIVH796ewAqEzvV9gqX9nQ4Qd8S%2F1V%2FScSM%2FrmsTP9FfNUNIvzuVlRPMFxY5PB6fY6iwsJw3%2FJIOOTx%2BlT%2BWzaR%2BxYWecrR7fWFFanqi%2F33nnn9%2Bv%2BMvXr7mk933%2Fv5Gy3PrN6yZjg7WFV1D5s2oGoh7nx%2Bk2vvTrkeDT0HKlieXvvakkfecj%2F5uKnhm6iNHRk27a6bevTL%2BclH3ulVkX3cBTJUXjip%2FCDvBiO4wQ95PB6qo%2Flen0%2BWTRpofo8nLa04mB3UgpeX5PbMLEzzKz4%2FtapOlXt5a1llpXhN7FF7r8zJ37o%2FiN15Q2XhvsE8RdajOqwFyrwFGETXr%2F0F9u9dNnZsWW9869X1azow9qe%2Fkpc7D52mPRf%2F%2FHcJFrR1npvf9sWX336EO7%2F9x7lqeUMn6frt8y%2B%2F%2FZD%2FJjzecOGEAnxvWdzjpTAzWtHbGjRhlhdMXqvLVZSWnl5kpSoChLJVtcwXSPea8vNLSrT0dEnTegyPaZIUqIlJLnSKhAV%2FpfBuhb9EbE53bYVIM%2F3S45hfiZ%2B7th8IFPHN5QuXcscms1vF8kiAZ2qBsEEEFQX7FnJDeNy%2B8nIF2JLZ7%2F77DPtk3rJhVV9vefPD%2B57CzCF98cr82%2Bs631s4%2FvbxrKPf1XjT0Iqrh%2F%2BuafTMxR%2B9e%2B%2BmxqZnxzzx5l8embstxo7PeX0Ju3DjoqYJA7C611hyd3hAtH%2FzpD5jAAVm4DM6Zjj5C5WIAIu9DuxCIB0kuvEBAKGBbSTz%2BL%2B3Qm7UZjaZqCSBqtrN%2BVQgmAMTua3joeaMhBTicTt9wULS8PSj5x58eNk9Z5c9RUrRiPte3MTKzvyHRd5Yh9vFygP4yq3JlfmyfHG%2Bso1LyP%2F5yqgRNVjuDPclRSGvk7Q%2B%2FejZJY89%2FOA5sTT7ifVb%2Bzru%2FOEM7tv0EisFhErSJGUpbrBBOOo3ms0ypVZUVc0umUyqilarYrDxpN1aJrKQuykJwvwz%2FyPMUOCTXSqlRa6CiEzJy8U4J8DWf%2FjpM%2FeeOMZeLMKpxYqbPTyx088Oz8MKtnMuFqefm4gzAKEZPpUqpG1g5qivGRSjkSKAxWo2giJRKOFCysqS4vjNhQXCAa4Bxz1HEI%2ByNlx0FBextqOk9SjezW49yhaIHbGzuBtOggKe1wgFWVapDCXbdSNt5ghfoNCgMxLA3X1v%2B%2BdV%2Beg%2FvIsdR9MJYWVcS5rISqDg%2BCuVQQLkSiTc7QoHPANIGq49dw6wi7GwgmvujZoUrrSRNsaMLqjsmfjnkYu4aU6SlJZ28xECNyqt0mMrM2pBricBidueiNS5iDcRA0ir4h%2By4yQgGJP%2FDwLVF05IQ%2BW9XLoPLou6LYoTFPCnGT0jYkaV2kfEaBok8y%2B1kkYCeeDQnIEyQI2nUrlDE3kkDT3PzsfZhXMoxZHGw2OmTRl7w%2BSpLeQoW8gexttwNi7C6ewO9hD7%2FusTaELr8eOAMA%2BA1nJtTNAj6jJKAAZEs8WgqihJRgX9wJHOkYoXkf8iwR2RiKKqRRiitWw3lYdnr30cDzNae%2F8Tw%2F1L3sS5gFALINXpKDQgmp1pQxW86M3O8aoqMTlNtTGnSjATM2tjXEgCYfS3hKyuCkFHkzBeScI6WKhFVxLuD%2BEQLt4TkOo6CU5f1drrhvrrVly%2FdspDayfe%2B8EtQx7fuJG0HcbZLyyc1r%2B5qXbojtE1xa0dt4x%2F5c31r9hA6MYtP5DrVgijoiV5Po6KKs3MBOCVStFlgez8bG57v8%2Fvq4tZ%2FGilfr8pX7VqJm1EzJQGeg3j5%2FxX8ruWMbrG4oduFyXxMEFyQlkpkMeJTvhKbCMY1j%2Fo2ykPlEmSr335KxvYPvbZydev29P65KNrX58%2Bc92zfxv6%2BKil76PnU1Sl6fe%2Bl694%2F%2FzIweMjUO1ZPnH2TU3fxqa09%2Bl%2F6OHXAQgEAaSZuhddMDiaZ1epkRAzpTKAxyVzrnGh7JLreGi7qF1VqO5WvoGQ0DwF584uo3cpz4sCBzc9T9SAQPKgoqI082X2QfxhshCzXmZ5Jmoo6MvOYAk7gCWH6cudN5%2B98oSroZZNBoRWbuEw1ygDmqI9OZ36aJrbbTPYqIFmZrldRpdFA27ONADF4%2FHXxjyKYhkRU9LgYsIJ6e%2BpgHAkGUjkgUhLSBg2N9w3IMwpylMaKScT%2Fn6efcC%2BPLN8xActmMGOhu%2B4bH6EpsV%2FyAgOoO0n9%2F%2BHnR2B5h7hr455LAPJ1%2Bwc%2B1i1AYGhXOs6eQf4IR%2BuigYUp8WSlweZTnAWFNpz6mJ2u4d60kbEPGnUwENEvUTbVJbqTCjIAQJlPo8IXEUNdQEJcCAhMvd%2Fgvy8Q3E6TmsbErv%2B%2BZ2tRuuN%2F7f1X%2BzsNyv%2FvYhoN066sbVlcRuZiq%2FiWvuP7rEb%2F7LuhyPfsFPLMffdxfMnz7%2B1fu5qEc0RPdM6QIHLo14FgCDKRFYNMiWU1MaoAsLfupYpQwobhpDby4OfkoJ4iZQWPyy9jNLm8wLSdEtUyzvBB3lwOVwbLXYqnl6U%2Bo3%2BQo%2FHnp1ttBtL%2BihOZyBQXGwBS0Z9zJIGwfoYXGwTYYlLnVeWdKFwoCSqAj0%2FLqoW8qk7kShFiku3kK9cfCPVHyDedt%2FqpeyLL06zk4uXtU1DyfXfE2fPmrng0Ccjbhg%2Bflxtq7zz3ZUzXhrU%2FO6sjqN73mrbXD2iY%2FKzm89vbBp7Y%2F3VcwaOI3vqq674XdnlYysH1Ym8GajvcgekQQFURnOzZJfFEgyCCwqLtNy6mKZRrzd9RMyrUkMdR%2BNfdbfu7DIBzCIaw0J5kS16edcXuNOdBXwbyU1J1ewxtvTOqxtHP%2F3%2BJIOl3xOz3v0nmr9Y%2Bf2d8VNjp4xrbbm7jQ5mdazJdtYzasufW2r%2B83%2FH0fEE%2B3DTXbdNum1%2BHfd4stOSZuvMURh1OXnyAPjtnsaYXeumMPAnaOwXTOb4NVYT72PqU%2BxG7xcf6mPNQAQX6%2FIUcHKmcllV1UUlBRXFZdIaYyZNUjgzJ6Rpm8u6mKrApzM0vUgYbrTrbF2SFHbS18Xa5GhSmF5P7JYqZODSiqKajIK%2FVYNEqQIEZRigFxShVFwJURhGD6JU0ZlDP443kvW7ccNSPH2abWFfCns140peoYDeNeZHHSqlRgkMcp00ViJSV30QKhkjagSue7JMQH4304%2FFkrTgKC9Tjh69VLueUScBrhFPNVAUJJTKEur6Ce0u1dCFuorNZH28UayJb2IaDjjNtKWsWmioXPicrpB365FYFc3LTU9PA%2BB2dlqdhUV2QCMFCAazGmNBl900ImaXkg7mVCR4KJVkyfpRJFR5F86oRckaXOFoe0m%2F7W6YevPVY5uWvzf1w3P7vm99YGyIHU4139VjH6ob1tLvqqpxR9u2r5m2onVI9RVXsHUX9eMTLkxQdnCc6AuVEIv2VCsq3G5XOGzt77rMZaWBtEDvNOgN0au8hkhEMg3QTPzqkVUq5feAklS7rOucMleiPU7ivc6kQtuiYCqrfNTdlVF8fxLxCKgtj3iUQC44%2BjrzOa06UfyDSESH3x2j106vnpWmTXnhlT1o%2BUfT%2Fqt9NdGau79%2FZhf73%2BexCP2T2Pz%2FZefZXez6I%2FgIyv%2FEkRs7Yf3IFpM1FG27n5x%2B%2BNQ9Q%2FotPPTGQSQBH%2FPd%2F9Yf%2Fvjjne1sx152gh0p6f3eKHwYW3%2FEZZ93sA627uCCpcfMzwj7AIC8WN4IKljh6miAWKkBQZHNZgqip6CSZLOSmpjVSs0yBZocIpTouZRiZWGortKL8gsDiITjI5Uik%2BLHJ7FXiYTziRJnywoMgWdwNFstbzxXRcbikdvy72CqiPvXAaQznI%2Ft4Idczsm9VLdbktKzzeY83vfZ7QGDlqalDY9ZNLRSTbODPb0mZneCvyYG9BLcSxY9KQVDSTe5ArmSp7voCQYwWfE4HPqnwOu4AyOYNn%2FC%2FfPZh2fjx7C84%2FaZ8xev2nXHraxT3vDKpkVrHaacdQ%2B%2B%2FxGdXTuy8Zr4NrZo3PgNgDCXI%2FUBnh9eKI36VZeLN%2BNWnxscUBNzSKpskmtiJleyNBOvSfVEKuQRD2%2B0Iw4l2BUdoTI%2BZiikBS%2B9h9OfOtrxL7aJvdiOkQOHDrc2tEs72U%2FHmW846xyGi3DSZ3j9azd1FvUDImwoz%2BE2NIBd1OtGAIdVkjTZUhOTqWTlLbMzaamUcEELnGVzAbVA0BHKleew8ew2Ng534wR8gL3Dxq5ZjO%2FxGuQP7A55A7ubrcHDnUMBdY8RLs0Mg6L5BgnAqphMiBbFWBOzKNxLAnII3zehaKqJofOXXkp5iCsitPAkbol0bqDV8RN4ijmIm4tl7zK2BLqkUsalGqFvNN1AqVkBQDQJoSl5QlZS0MVSLhaCX7P9dHD8OHKMEwKWxLu8KBdxL6ZDTbQo3e8nNquVEFemy2DIsGlmjQdbOr9BNkt%2Br%2BzlsmTu1FB3wd0z5VlnstgW8BBwKLpv9YJL5RlPdMKNOALkU1L14E93sr%2ByVfg43vTxgZtW%2FGXnd1vevKGVHafhuOnyAlyMU3AcPjDybB377rOT591Y2mUHeYJu%2FUg004jIzW%2BQJFm2GGhNrMaABoNsUijK3QmbMnfKFN2XPIHtjr%2FNdmE5uRrDZG78Xj5t2EIGAOCFiawBT%2BozgRw%2BbSAGXiPLwM0MRsr79e4NCw4Rxa5IJL6kRnJurq0bOKEZy79hDV4k7gVL5JHn1l4AdgYS%2BtfxVS0wMJpjIcRkNiOAzUBl2cq%2FUrNZoXwP3VtwpgBXF1eWAOXEQAdVfSMRDKBcx1awhYvEZm7FB7CZETKxJf4D39CN6%2FHf8XkJ6VIlly6LPUkqBVCQArccJKJUl6GXoPq6r3PD1MsbzldfSPxvRcyR3dAvmukGo9nI1bbxUPHKisdJjEQxq9QGilBcN36X0mUp6hA6Y9DpEYujXuXykscVRBpkK4wudhzbcaSC07GdfUgtRrZEms9Wzok3cw1WSi3nqklH6R3oPr8kYcedOm6WR9NMYETFagVwUFlRVM1MVW5RVLtHv11adI%2FEnAKwL1KEcM%2FJO9nv43fpSiwh81U7%2BqQGdrQtXseFv4FZvycdQPQ8%2BVKfDHgE0jgAfBZF8RpdNTGjRO01Mer6daQROSBexQQy16Hxpkj%2Bkj3BXubXE3gz1vNr%2FPlDb76Bs9nSNzaSY%2BxxdivejVP5tZCj0mP%2FOYvf4smfoAvtpHU62rkEFkhGowdsNrvdbQXBV3ZNM9TENGr%2FTSzoRn%2FZLXHoEyAo4ckJSx%2Bau%2BBBspEdYacX8yA6iCb0UGXmlKkTd504Fz8rb%2FgchAXYat0CdkjjEZynUFmSCDVIJg9AhmYypVOVEwBXRFK5UWSV22N7Ev4uHU92T9OQe%2BLX7PPaKziWzWZnfL9pJMZW1bO5OPS3LSUP1S3lg9poocvnk0ySppm8njQw8cTzu4wWMA6PAZgtFm40C%2FWaRcikzJbSWfPzuXKqQ0sxKLdfgl3BF0A82brsgaXLW7gB12EPzH7oTqxuZWvZKtp73M0Tm%2BPz4vvlDUeOLdxZwVwPk1KRVS2cQX0ce4s4n%2BRlpKcHICC7LeCGy4rdAbAELNlGX3ZNzCdRYyq%2BuhvwVHHWrRpn%2BIvGGoVFl%2FMhDadWMcJP9LZen9cr%2Bdin7JuOx%2FZeN2FqnzFL7767DtWvZu2f2TrnyermlsJrn977BC7f%2Flkz5g4srx3e8%2Borqypveeqmzf8qL%2F13n8KGgcUDKqrHbRP6FwNIYiqrimdLCgBFNBhVKlHOuxSdv3y2lARgcoLtYrOlOn53IGEMEF7k%2BdXC13JCQdThQHSbDQaX08hRhsdSYuuXVBAOtyLx4BHI6%2B6CYLnlEXbyLfYFex%2FD9zz7BAf0ztqVZ%2B7EwHn6YufCPz33%2FDraBqjXfyHBI2K%2BRonRKAOiVZYkC3BDJ%2Bq9VNpUJOaj%2BsXtVx6h57CC2dmLTMMKdPlKFXO0a4DY%2BdTwvZeN%2FqJLhrqRy8gSsx%2BT0e52yQh%2Bv2ynlszMrKwci9mcnemSzdRvt6NJiOSi%2BEtCbgo1UyM3WkiKOMKJUtMlGvCIi78nPihD2fPbzWFJ6WPdxqngfix9q9Sr9HQdwoJDth5mUy%2Fnm1hKoRixV%2FmpUJxwVT85trLi1EAa6twb%2BaS%2B9uuhNBsStmnSbVMVzTXLnPpUo6oYTYpJ0C2VLGYDkWXJqFCUkhDL9evG%2BooUZ3VpjZj8Izex59h6fnXg56wfNmF%2FDGMtC5Pi%2BGHyHdka%2F47Y4j27dJCYyF2B7wZVlZEQEERvNFFF4QqiSgVDdslOjEH5Z65AarLLowIDZAGWchEZbA%2FLwDo6mozsXBTfQUqoXleVJiZ0RugfzTJISFUVEExmlYuSRP1I0IAGUcZdOgxNpl1qFqqPbALSzPPvkbfjTVJ6vIrs30m%2FRXi%2F0ykkLWUbyWw9T7KjVgXRIIFRJlTBfN2EuvH0BNZX4iUpmc0y8bOPPmIblXMHz60Xa1gA6MDkVFt%2FZIKYnGpfnBa6sUmAHY9%2FmJhqI4S4fJ%2BQL55xoKIY%2BVYNoOZTiaaCvQtCfCFHMMy1CH34IX7GMmfKjQd%2FUoR8AzFIA%2BR3QIHeUTdBWVYkSTznFd6SVJko0DW%2BxLKLeyTRZYcwiGjADQ%2FjqVO8uP6KGOiGzmqyKN4maq1OtpHWXhja9SRIRonoRhEaJZ5K0NrOFyl%2F%2FvMAAGKNdIQ%2BqATAwK1gBjVKRVTIdwCUpB%2FrioP0XWLww7EvHPD6PGRL5ZkqbKpcLx3ptW2gZ%2Fz7GYIdmjju9pfm6E8Zq6OFTovBQvLy%2FP78LIMhaEkbFrNYZLfbPjjm5jWdnDM4JnvBk0Az%2Fy%2BZVYSeXlcUJWdMvMcN9%2B1u8h0omny9N6YT%2BhuGr1r0xzd%2BOr%2F5xbv%2FOn7T8Y9PswO%2FX3znY5MWPHHDsNfXvfono1K6rn7f%2BK3vx32E27h55MJbxwOBFVznDsUNTsjh7BvIojRg1Mw2n89szrWA2WPUFFDSh8QUL7iGxEC7mCz83SHi7H5mUeZ0aISzRVANCgTlw1AfH9d2D8WobftHX%2B7YNsMT%2BhpLLZbJM2ZOJJNvaZk%2BQ5rNdrPv2XH2t6XzFTdbPuiJ9jP3rwh0PPOXNWvWAMLoCyfoMWk2eDi6esRYymclxCubh8RkDexcM%2B%2BlZZJuOTk32SdwmnJoYkjgUBQyIf4DZqJx81Mjh9525cmTzcuHVf%2FBTQZgFvauOZFVwBH49ZIydr4kH4iQK81M2CcaDRi9Gi%2BobTZhqFy7xwIOIyi6fTTdPt5ft4%2BoT4Q%2BecShOXlPGioU%2FBLkji3iOnVPiAnZ9vHnOw9ON%2Fmw7Jv%2B1omT5kyVp7dNmDnLjWVoRx7zq9vG4YSfTjyy5vt7ViWNk9BynD61y%2BDMEKROSUpzOLKcJlOm3%2BOkzuoYFVUUVMesmuoZHFNTel5aloiry3bI3RbgrbNeR4XKwOMJ6AVAxMMtOP2GaQZcT2aVs%2B%2FY3zDt7LdoiJfID985vmNc3Qb61PyZM%2Bd3NmAPdGAahth3Jx%2B789Eel5%2B4rCjB7nSOkgMeuCKa7SZElSn1%2BqwAPhndyHVz283akJgZqJ4bgp8v7QVDiRwWFgxH9KfOeieocBWpiZ1l%2B9eu3bj%2Fufm1o2uv6ocGOq9zCZ23rKHh3ZdLPsoafsVgoKAwtzSV26sYyiEKd0SrzFlZAwZIfRwOUqzmSkGUpIHpPXr4fJFg8Kp0K1jRqlj7qv2GxYy5Eke5wr7FpDpWXFxYWDksVqi5e1fH3BkXz%2Bn4pxIOWz79gRHv0LneqJs2FQ76ewKfPao%2BpSsqEvmsj%2BykQFfCF6ZeRcGFyUQK8v26El%2F4WGzqS33OfxjpXbL2ndc3sTfYvm9%2BvP3WksHVg5tvOnmsZKGTFc2buvrNabOfa5w5%2Fdrrmura10otT%2FceNqZjJ5Xzew187smt%2F1i1bPw9We5Roeh1xYVrZ732vkM6L1UOHVlb2WcEHT5q0qRRuwBhBYC0lmeDB8LRdATw2Y0Wg8Fo9Nolp1MaEnNqJkCjR6D%2FJfU5336yUOPaKqJJEuCQeFQirWX7O%2B6YxfZjqapqE%2F61bQ958LsXt8S%2F40CwpeDekav%2Fvh0ILAPAD7lsA1jEZFcyGsFksprtJg9Rr4kR6DJ%2FZWoO7uobKtNnnyJUlrW3X3ttO14phMgLHn98yIjzPqkFgFxoY259XSt4oSTqd%2FL0JgaDT%2FNcE9PAaBctOk%2FsjOTEKYEwCRGJxwB6tajQpMDBcxoHXzN8CJbum6GLZe60066mRmnd%2BeJXN6mThXRIWPMH%2FUn%2BNdGgxLmTUKrIsmYzWa0Gg8lkN4P41WCzUcXkofbu2oTf3cjSZdpuokXRuGOyi1dx22KswGZWhYd5AffOIrF9jYxdh40sI74Et93MVivueDXr0gYPcG0ouF4DRIkAevQioLvExgPivyvuhO7qQJ5BQRgeLXS7XPrsKDMzI6PAajSaTPkuq9WRKzu46XwOzWzPRJNH7%2BG7krl7%2BOC8ePqbjJDCRIiEfKFykdziVfBd8q%2Bke9n%2B%2BuvnTGL7vy529F437Xwso%2FdL097ZwvbVXz9jOnlw3rz12%2BLfSS1Lh1%2B%2FurZpy%2BF4kfhtxYuQjGCut1tMFxHAq6vrscoOoatQFU0Xx29SyV%2FXLRG8TS0ierkyof%2BZtWWXEPbn7boC9dce3JHE5yf0pzhpostXLJYMcLnSvcYhMa9mp0Nidu8vu%2FxUrvPeVQMOCCQs6MzrxGVT5986ecr8W6dQmX3ELvzxh7swGyl%2FI6Xt6%2F70Qnv7mhfYKbbnQTS8jE7s8wA7B4LrOep1cC1ckMMn1Hl%2BRVFNlKpZmqrlcuQEq9U9hBOEwa5mQEaKzBKmSBWoSQVlTvPepDFCnPndRKFJtuemosq2GZrG9p%2FtaZv8wfaPbt58TGf7vePdSx%2Fwsv5K9SPtbB87%2FT%2Fs7H10mU722JDgM67pTN1euaIq8dIsyh%2BTpOUZ%2Bfg6PcNnz%2FZanE5V4I0FhsQsv8m6iSfIBUmS5S2dL8HBXl8ook%2BLIkFBaLdMkafPPzxZ2v7R5zsmPXeFIQMJ22e1lq48uri9oOMZ9uLa9lNYiho3Z9%2B6xqU%2FbcBDAybXN3ZFFJ3LddVEh0mcejw5BCxZZVnUS7wGFxqlMrTMRy%2BJIqpdWewrCD%2B6iu3%2Fsre97yvSbCP7xLR8SXyH1LKxZTYkqp%2F1XIZ4dpmjpLktAEU5bnchWNw5lhxTli9rcMynUdPgGPX%2BvJ2%2F2BgiqPTHK2HB5clePsGgXCkPt082oetPnbx1%2FbDrDtW395oycuG8yJd%2F3%2FXu6MZHa5Zcv2zRrf2wZn1HILfzsvKx%2Bb0rCstHz73%2B8VXN%2F8y%2F%2FJriK%2FqHR%2F%2B30LeE6xuRa8AjToRYDHa7y2UyEIfB4fWZnHbn4JjVYrfL3HVyQt3QpktOVnRhgnBcxKOXvoLpIyFPwCO6cjK3bsas9tdeeHRt8xasYDuu%2BTD4aeiNN0jGwgknTn4e%2F%2FyqK4UOT%2FGc4zM%2BcENZ1E8cDrfby3t%2Fj9NoJ7JNtumyPcmJ1sVDgItr7tQYgH%2BgrxdrpR2zt72PpSLjsXRp7XUHt5Mj8dki4Ynt%2FEpI9JkPcrlm6BV1m0GWiYgIK0G0GNEuC5llKWndDU1X%2Fx0SbTfiOtaElf%2FINyryZYexkjVJLfFF86aMXUzaumS4AZRtXEaWOMsoSyaOIVng81ETVTMyMjNzVEXJ9plMVLbbMxQ7yDqidR3RdPz2LIDSIO1WQ8wBsin%2FpGskRZpuUfew19lm7LMwJ1eRcrT7sG6R5NCsqBgvN92NPdk7uARPdt4vtTDH4m9q1lxH%2FPGvvE03jMkcer4XnuKKI5gApOW6bWqi%2BYoMaKSUSAQlGWWzQVWtfIZmMSoUAA1mj4T2S2cBqaROkYZeq3KlhdkClOu%2FmD2BI48cxZHsMWxja46fYO2kPwmyZ7A1fiy%2BDRewhcJLzK17ycs1KTC73ZrXK0koahm%2FJgob%2FpNT8no0p9XJMTHDAFyVskQJkKKvhBlTUzxHyokifvTqgNsSaw9mmBRz7n4cwoqu%2BvcfR9RErqqfl%2Bfkfr2%2FYcZNo8ic866XXnR8Z72xNZI450HXce2MIn%2BoKqkIYDYgmvQhAm8c7YR%2FMwyOoefSIULSSMJGySlCWEwR6LrOB4nC0uhAZiCmDrLp6%2B3xekDI4T38Id7D54ipCHUbcnIcfn%2BuNTMzIFGXy8qjKd9qSbTzYosp2hbbF7bnuBrm%2BREWRw08Coc18VTQ4xFQ6%2BEJhDmL2m6%2Fc%2FOZG4cpn31T3XpmM9quH32qucGAVz7Z9jEdXMUObcyzBF8xskNVg%2BknbU8BIO5gJWSlYgMK7tcIpZJMAaCyhONDYlbqCOKOo0cV29lA1ylOauB7yBN7yOHlOmgGQ75bkoI52TabW3Z7qCzl%2F3%2F2IIuHzuFynuSi2BZnlftyiBSnzxyCyzwcrImh4e0Xbhz2%2B9mfKtWtL7xTP39x26LeM2aFPyFVQ7CnuWmyw5K3EXsOrqIfh2dPY5tNjY2nGm7QTxGQIqmCtoEHIlG%2FAg4zmKnd7qNeu82mSJSaHQ5QoCRU1lYi9ElBdqqp5pwa1sv%2FRAMmELwQB0baym968pqFwxaOC99ePv7pgf89chFZcXX5l1NzcyPRii%2Bnphf8lzhBwpbiQanl0rP6Dg26zurbad4v56mukCugE0Wi7Vh7JsTasSV5lIO0dJbKBcljHAhLOdJqfN6cwad7QYchPV3OyCA%2Bn4mYMrPSXCNiBtuIGMiGNH4pGWmKygXqpwH4S8%2BePzvOII575nOCTh4R15lS69q26gmSEBt94OCr7YtF6z7vlm8b7mpdcN%2BrL%2FfHcyhjZk77c8arjmflv%2FBn9kZObzbAuFFEB4A0ST%2Bd2BztZXeaidFqTfd6iV%2FzO51ado7Fn%2BavjxnT0sDFqcleG3P6QR7xs%2BNNXUfUIJTSVqjbjT%2BpBpRfbpXXFSKawsFwiBuQbNyyZcyzs2sbcS679w9k3%2Fmvbhr%2B6qufy7sbvojGrt10dOm6WtZ5ttes1keObtl5BAjMBCYFpHXcnkW8R87TLC6j7EsnBrDZ8jIhM%2FOyYp9LSycWo2xQPZ4ctYBHz%2FYyHc11H2qb9S%2BiA4oURXyC3SM%2B0WGqPrVIoJJaFCmMXFRdbixfuGzBqEk3j1qwfGE43Pbogt%2BNn93Y9siC8v1T6%2BqnzxxRO50cnPC7BcsWhCMLly6MTZs8uu2RtlBo%2FiNtYyYOnz6ttm7aDBHpCoDEp%2BPghZnR%2F7I53U6Plce2UaYyMYkJqxeRED%2FHBp%2FidDkbYkCRuuwmm93WEFPtdgt6FMsl5xX9mtiW3kNfypcpEhAfkgPKkCfoEXdAGF7cGCBD0YAVbOGWH374gX38448%2FvsOW4BViZBv3vHrfq8eO8RdyHMhFiKNCMGoniiKGmUaJSlTVsUcEbCpFdAhyJGBIAFHnAbag8wAAgUm89lnw%2F0o5D7g2jvTvPzOzu9KCJNSFaAKEBMYHAokSuQpiY04OODjYsWxCcjbkNaluuPdyiXuaS0jHpPfeE0N68fVO%2FObSe%2B8uy39mVlqEzr76oeyi%2BbG7U3bK83yfkUZBGZwCMyKlaRaXRRTLC6E4JyfkAld4DKmpsbkrK0ttpSafxzc15nHqTVNjepQycUvmivi5NiuyMYtA0qyNo3NOVr9OFfZJmt75WUW7VMhOWtE4fsubj9zRP33SzuaW6LxFB3rWTJj4xSuvXdHyYsOAb%2Fbpj257c%2BOS5s4tvmrim7appHXPputbn8kPlVdURssit194%2FxklXdGr7p3261Hh7uKKUGH0uu2nzi8Pxya1V5qmAUYu4UfygiRwVi0%2FYrQaWIvIdGcQ4pBB7dzU9snCdpLZJF%2FSOXJNjdRPPa0uMhVd2TKurqk5Mq5FXFPXEB0%2F7ucNExvqGieOb6wDIIw7lSbR99oBPqhmvm9ikm0mm7%2Fc7yzPc%2BbV1IrpYEmnX1mlhbZglpActKMVbEo36zBrHWyifBGnSASrw44ZvIhr6bwgFCxiuH4R45HIul%2Bc91p4c3j55tf%2FfvilPddGFx5b8zJqf5X9DCi9v%2Fm10vvcrj6U09uHsg%2F0Ke%2F29invHSBfX7VJ%2BTAv99nwkcNvfNd82xjlI%2F4%2FSu%2BrLyi3%2FObXaPaLTJb0b6xlBfCX%2BDHKMLqgAOoieZk65HLlmXXU56PLK%2FRmGI2e9HQbys4GEGweShSEA0F1mAtak3BQbR1SPGxVVo3K6irbp3YM1ToJV3pGr452r7n58XnrWi6tr79h3tY9yqTy%2FKbYvMvxsYvGRLrPu%2FBCWegef0l%2BcNcmpeGP%2FqIz6oqkNPas06Fd6BEEkMAIbZHRaUaDTKd2RMKCgERqGDdkGNkrBpBGCE4XBIMoIpOMsR4lWko4kLBqJI%2BK5j8Faab66Q897w8yR4ALIR3yqYfpaPGg8hFyDSo70RG06A12%2FoayC49HL1E%2Fs9K3DL2QNXzKGb8fhTCZCCJkRZgzSkcQkogAAdYJoQTf6LXQWZQQHjx2hLz1I7pgEIaGErEHWAIzAAhaezTEW%2BS5kUqBYFHUgcViJEbamxB9uT%2FROLFE8QLBIegdsp5%2BnaSN8spKbara53ErgY4FlFnoIwadmhP5X7VaYcvuz5QHAu8h%2FcO3K%2Bs89eFTJuceP%2Bdft9utd0xUFqDpyj3kqh3K1%2BH6uhrlzX%2FZctHQEckuSNLhJG8MjPTGCNLRbwWDZH%2BFr%2F6Jm7D5hAmyIDMiQ0ZGTrbVkMkqRQ3FUq17vL06HSowmDyctbXd2N5201ln3XjW5a88G6uvnz2nLjJHWMg%2B7W0766bZL10emd02YWJ7G%2BNFAYSwiCGdcx%2BZGTqdRB35BoSomd9sMRrSZYQkAYOKeoYC8S5MM5WnxriwyfZwnAs9I2%2Fh3kG0RVlFY12UNylYiiCAo%2FgZTriVRKwOA5LAgiyuTNnkwQ4Hyucer4lJXb96j39EPHUF%2BJnjK%2F5%2BbriipGXeqiuf3np9%2B4YudA6O3jbYEQv6S2bt37Cle8be7rMBwVgcxo%2BIr4APJkRy7enY7QbIl%2FLTzVK65C8mdrvDIed4PSa5IIE5pbQ8dlABTRX6S6xu1DgHrezj3QjuuaN9%2Fn1P7N541ards5oXtJ3REgwFWsOdE%2Fb9v3W9wlu7a432i6at2N7wzOzzq6tvrAr76ePuDExYn%2BqLI0JEDyCnCdwXdyjui3uFjR%2FVNMjMIUk6ao6YiGZWHZ0i%2FDX75U5H1aEgAOK2LmrkhkxmMUmXJFnOsjrBQR%2FdrXNlOGl7yiCq4Y2Z%2BzTTkbYwT8qwtv73xo0CxS6XhZtDZ7WvpVaAD0ZnlC6fNWF%2Bvigy%2Byj67YoVdz%2FPrAF7Z8wo%2F9mM65SDUhQQLFSOCbslO2RAIOJINwsiAoTMFr0emUykKWYSWc8XiHtk4gMlbe5qgAb7UsMIa0IFwu6bbumd0PqX1%2F72IW5Tjkmn%2F3QfCVmPHEWCwiKd8Cj0e7KGEUURmUU6Ebk1RiCQCHSypSLhfEr%2F%2B2Eqe2hQsaNeALBCVcRlNjI7Fh1Y7Gaz0W60ySYW9pXNXt9QQI0EXB1%2F3PjAIiZPQYprQ3RWgnr3Xd88KXuOu%2FGW5v7s6Kwj6xc5btOZJpzh7hmf2cktXDiKGxPRSYI8MjopD%2BWfMDoJeePRSb4QbvyciNkVzReismdxFD2z4Oyi0vHr6MwOwnTUfEt8ic9KPBFjIvYqgzhkDw%2FxTGK3kxc9YlKPgt969IarH3%2FwwP4nFG9dY%2BPEiY2NdULbnf0v3Hr7wAu3dHR2dnTMm5cy6s2OlKZTy49OL2AW1Ib01FNiGh70BD7YIdHEB79%2FOej1B9UBL%2B6NL0aoFonqQehRdg4ip%2FLxIFqsSMPn2KuMXYbaUNsyJZw1fMrGrnIA6Qpa2n5Y%2BTuAYvg1fgUA6eAP5Nrjj4L8IMFW%2BuJUVye0D51Au5h8T7W6B7CZSZlyNlXeJ75ClUs8XEnM8as%2BEb9qmXpVwDBeWUH%2BLLTzNU5DpKiQug4YJk0jh0pMoyDbnI1lQp0JPk9rzJdhoRy8xZvKwaN4g9Cm5HHsnddbrUub3bCVWHLF4ldiF1wYPjM27aFzzp37w3lvHP3F7rOrUcnw6jY6d1dT86yJ4eiY0sOnTO6%2F%2FYLru%2Bj0cyyamXhHhoZU2lu3GPuhiOexHiQ0HfQPYqfoh9HVJ1B0w2%2F%2FheIgzFQV2SMV52iKgYTCOlIxU1N0cUXaQwR7uWRYkxbXSNDfPYvXhpfEa4MpdD7OPtrg4sg4yUbMNmIRLCjNZEJsvgbgEETRbiYUvqb4syENGQkj%2FJFkkzkxTAQrMmlscsKiQLvUAAeUNb8G7yQ062PCs0QKkEYsI9rR6nzH9imOvcoLeLew9%2FghbKIUT%2BhoLlq5jiPvcYqZDnXNrC6WKXZGjNP8%2BVlGYAXOBfY556p5%2BZaodTT0KC89ZE%2BUXqqiG9pSFPdShT1JcXDoO1XhHnmNmZqia%2BgnXgMYFag1wGbucZ7cAJnQGCmivUCW3ep0GlBamtthAIqVWwGovcRJi9eKLYy8TgmP0%2BBgddahWmkscQqUlpiPo4MhBwPPA1tV5FzFz7cKwm9%2Bd%2BCzzzahATIdd1Du%2FG5GoOPWnR9%2BofQoyl1qHsRXeDuriLez36eUA%2BdUeTlUxtt7N1fgvJMpulHDv1AchOdUhXek4hxNMZBQZI1UzNQUXVzB2vvoeGkj2IAMglnogXTIjaRLBGTZYORGZXcgqMUn8260FqnLBlSM7lL%2BuB%2BVocqr6Rhetkf5tfL7vfj3qKxH%2BSMavZf%2B%2BVuaSiUAhD7DLeIHkgA2yIZCCEdyXJ4cuz0tB9LAW%2BTMK3Ab3QxXJQWpdOWImbyK8arGGFaJqpEG2V2IO%2FyqihEFV1Wm94Xts3tnv8iA1RevaL1x1sDRP56CjrR2UWL1%2FZBiOG0%2BWqzyvXWXXHDpANrEwNWGNfM3DSi%2FfHYJ%2Frbsp%2B8e6j5uKR4aUmlIXgO18Vocrdaz1uOkKrqR6V8oDkKPqsgfqZipKbq4gr0RJcl9kqDwq4yNv3kb1KtYuCSJSmbrqZpIDiOjjbIoSpJTMDbFZEdTTJAFWdIRyZowKGrdjOZBjePIDroW0tZGwh2UUz1yNcPaH1CQ4fikjst3rbt0NcHv%2FagMUij5c2Vc18rz5%2FNZJM3JfMkD1dAaGU3tegXFxQDlWSZTbXkgUGPKKtBBcbEui2SWhkqnxEIQcFgyozFLwnGq7ZUx0g03TH%2FaTYLqcnOkuuX8iaFL8zhXsVAn4a3SSDRSWl1%2FRVfoo3fmXTau%2BubIbfnTo2vnNjQ0TVjXsWQjbb4%2BhL9FfuGvkV%2BcNqai1JldVTJn7srmu%2B7JLfy6KLhqVGhcaeOylsh5lbWnl49r6TrnKPVMv%2FLO%2FazH5ASbVEBr5VQ%2BUtQfAPb2jbbEazY1vfvCE6Xna%2BkHfxhi6RUj001a%2BkAasPTikemClt4lAX%2B3T%2BGCYcUDmqJ%2FlKrwqwogTCEpQjeUQBBOgS2RydU1JDM%2FP2g3GoNBuabG7%2FGMKZPlsC%2FfW50fjVVXsyDp7OxQNJZtNo6aSoF3p%2BS0NFDHPHgbYiBJgQZGv%2FERLZmZ0t5q6wkJKnqMhzBz8MufZG0ZXsZRzHYYrWJk1TDShwoZfiVWbn2rce4L19%2F03NdfPRtr2nHzvKc%2Femdx%2Fd3LDyM4XkaJq%2Bcfm%2FbY8bqFq1fv6FyOvX%2B1oHvwefbOru7Y0zcz5q91cn3Tq52bInXKZx9RCGvWp8UlOEsQzpxD6T%2F05acLVrNap952xtZhP0xWx0%2B0iY%2BfnCrjtT1FbQ2389oqStRWanr34n%2BeflDP00eNTBe09C6rWpeVidoeugYAvcGv8LTaXynTgF0DGRLXuBwA%2Fy5J0T00eaRi6JdU8UmS4qDyuqqwJBTvUMXlkqApuriC9Vdu9UkSBIfk5fPVpZGx4MYuV46oJ%2BkEY0tOTnr6qEKLpcQNmZh%2BSJ2ImdjppB56CnnSKS02%2BRpiJifBU2MEnYC8izsQ2clwI9I%2B1YYLf3Gtkw8SVgdtm4XAwyNdtX46hDAvXCL2GCmnN3ZetuitjjuuvUr5%2F0PfKX9DwuFDDfpT17zfga0rz19x8fIFq84TXdXF99Wdtr1n%2Fm5lz4fKh8pLyPrJR8gyV%2Bhdtuva4%2FMv2Lj1ih27%2Blg74MwMf2tPV9%2FaEPAZUHI97ucl3KK2k5t4PReeOJ319ZfAyRW8pRiS%2BgUt3aSlD6jpeSPTBS29y6C2pIDWK8yCw0JYeIl7wbKhNGJ1pqWZBQEIyYUcNwVKAXHz0vPBYdBQiw8WTxJRTWOGj2%2BK1tf%2FPFpXNzVaf2ojO%2BKOwcEvTpva%2FPOG6c1EmNrUMqWhpRkIfcaHKAN0OZ81eEfOGnzxWQOjb0jBFAZx%2FC%2BzhmCNsJ9hQWsvOLVn0n5GBm1eUrt%2FzK5jR21o%2FOiJKy9AhwzKa%2F6alefjSoYJlXV2dVyL7IwUqpp%2BQes1ytH2RjTouvnWlnFKMOP2oSGVpeD1c2ZST4ByefGmpvMavgVOruA1XMnTC0emC1p6V0B9A0u1np977PkV5qi9zXh%2BBQ8XJOgmziYWsLhqD%2B1vHQZzli2Dxi8VWsCcbXDIRM6dEpOdxEnL%2BCQocxLLTDtnDWdWTT4Wyh0nAU7ot8Herhf%2F%2FuZLf5xv0ulUfvGjOONEDrXMYEgzK%2BCtE9qVsXpQVixvbB7mnLQ8CVqeut5Qc%2F0zNdcJKk9oH6byMk5M5VGJGk2mO108BE7wQmekxuJwGFF%2Bvs6WAeDL0umKLHa6drMgI7HQX0YznaWSNBddcwhCLotpRQ5tBcd%2BThplmiAy%2BBMMx2M6XcOLuERnVGvx%2B3WnH9vn31Wm9Cv3oTPQhPGbvaRDW9Q9dstdd%2FXVrfR7t8jpaBvqQuejTSZZXeCR145%2B8%2B1PDivZbnPyN%2BhT3SphMXhgNARhQWRMoMKEHQ6%2FX19RkWu3V%2BXr9aEchzvgiMYCATCbfxaNmc3YJNDOmfLEZnDT4VwQvFNiQupwHj45Cp00iOdT56kG4bniI7dDo6KTeT2fSk%2BLtyhf7dl5pPfHLSgb4QUvT7nsi2%2BR%2BbhTt2fL%2BU90tDx99FwN5Pu4fbWMBnC3%2FZprdiD9%2FciByqY1XcvYaf26naXlbOCeHGf7BhavuJhFHD0h%2FFXwSAVgZP0Zi5ozAMh6jE0ZWF4vsh39sg5pyx2NKqQzEZ2XGU%2BdFNAgrdc1Ne977elTUafn6kbhr2ed0XJ29tMLqh5sYBENqFX4M4lKD8Q9ehmS1eqmkUWyR8ay7CDxvRTYHVKNZ7qk8YhEdy1YcOklCy%2B67Pqa0tKaiorSGvGlCzavv%2BiCDZu7ykKhsrKqKkDwa%2BHPgkEygQuqIm4KNEUEQjLdBhvobPTrYvM6MzavFyCQ9fpZmoNENQebXw6qkISXvbF5mNVHiE23yjF6xRM27knfvXTUtKZoET%2B%2FfAk7F%2Buray7vKyjOr%2BKHAr4bGHqI3IN7%2BG5S%2BAS7SU0nbeih999Xlbp%2FqtQllG7Sj%2Fp4jIw7kiaIOqTTySBou5KZB5gLq7jGWhvCumKTs7N6sN5L%2Bp1zkG2h8t3HkHQFCVwRmQhIknSCRC8wvD8WUrffQHtNwbWDkz3iI84XlPdRySFI3luLeVIwEfnuWhIEtNuffHstwOzeZBl%2F%2BgzwRczUIGsiggSSZNFlkHRtI0Z%2BoT8E%2BbOoWSnwxY%2FoUzVPdILhSZyRP8ezp2Vz%2BE4SGJn%2FndpNDXwrMFMaMYjsRi%2BqN9Luoz60qB5QH885cqO31JNM8Ua1DBJFgVlJkOt5SRihMGIaeQcIpN7Ap91gROGgt0eWkkvbi2wunXrfKIyCdLA9wszuRplAgHssUq3uc6%2FavnXvvku37cGf9hzou3r%2FLbcAELbTizQXhfm75mXsYF6m6kEvys4gbKuXAofMQuS5LUhtbJnmP9AJy8gdX3yp56m7v%2BAps89kZzPacGPqPmctKUf%2BVkA7vpHbtCsijrgDV9RLQAg9pa0JI9VZmsxW0W%2FVN5vqlE12xKZeO24nRzp2bfoHPRPEf7z2SBs4vvHEBm8ApCxj83oe25YVSSeAEcaCFtqW8B8j5EX48mN%2F%2FIKMjge2AeK7BW0S%2B6EYdkQaJaL3%2BXI8RW5ntmywWIrSafaLika5cnP12dklBpdLzpRy83Knx0heRt66PJxOMvMy82yFPiiEabFCndlkMzXHbNp2YiNNoxZenyxzKUghO%2FCtQOhvro%2FH5DgKdA420DrVfS4oWELdb%2F7qWvq7BuL7XXhXXu9CVyrtGKN5yj0hZNq9ecn93ynPj9q6VMBLtvjQpG%2Be6ps7ebnwys5f3ucNFDzwTXgIxqK0Tx5wFVff9zVyT%2F%2FQ4%2BXsWgfzjp%2B0n6MTYDbdHRriMbs%2FSh7wQyNfQ04lboD45x8nfd7MPgcMBhzF34tPQRpYGbthFXUmWnBEBixim90k62TJikTRaiW6PJLPDTwBLSYu4RpNwn%2B8DhpfWI1CfA%2BzWrZnHP5%2BzefKBrTh0zXKHkmuzliH39q3rwfXHT%2FUN3Nu1gWuZ9Wn05u0pyuGRuJWn14KAMTT4QTpzcPp0q6k3PF0dS8BvtMDAcsjIIiIQGKXQLYPAt8FgTU2uvZ8EQDruB3sL%2FEV7krVDmZIWNNupYoPkxTdQ3NGKoYYgS4mKQ4q76sKS0JxHADfqZupKbq4gq9wuaT6%2FwCVeR0IAAAAAQAAAAEZmiehT9dfDzz1AAkIAAAAAADJQhegAAAAAMnoSqH7DP2oCo0IjQABAAkAAgAAAAAAAHgBY2BkYODo%2FbuCgYGr9zfPv0quXqAIKrgJAJZXBsIAeAFtkQOsGEEQhv%2Fbnd272rZtG0Ft27ZtW1G9dYMiamrbZlgrqN17M89K8uVfTna%2FoRs4AwCUGVBCU0zQl7DAlEIZWoPOfhXUs0BbVQAL1CG0ZepQd9STPdUW9dQ61FGN%2BU5LpOW1pswUpmU0hZj%2BTGOmWnQ2lPNyV2rEoO%2FA%2BmUw0CwATG8cNjkwyXzEYZrG9Of5NUyy%2BXBY7Q4Hm9a8tgCH%2FWU4bOcwPfmsjc7GvDcYPWk7StjU2G8qAf5xwHQE6D%2BzHRXUbqzi96bmrEQNEeim4V965jWnB%2Bho0sNRHnTn7E5H0V3nQAlaAGsawqkxWKfGhDPoO2Ts%2FGdwsk5fIecd011vh9O%2FOaegHO9toBWAfYLM5JBSxvoNquliyEeDvUucbeXvMd55vIqRtTGMJTnzAkP5bdnsXvTX6VGOPkbfYe%2ByRgh%2F6xHoLms6QDmmlvyFPThTB2PEtbczfMbr3XUu1JD7fmqUjaYre68jzpPD3wJIH6QH0RyQ5L6Ui%2FGeGFqDOZLiPj7iXnpkDsKJ5%2BTwO3LmEe8JYecb2fcazoXMC%2FEd4z0J7EFS3MdH3EuPJJX07gom%2Bff4%2FDMcpS1ee85bBLQNGO84cgiqPerpVcghUBEeK%2FS1jzBBfUZbwUv5X%2F7bkOlslqCEwJ5TBw4lBFsBJdRuHA4vYk%2Fown8RLYvLrQAAeAEc0jWMJFcQxvFnto%2F5LjEvHrdbmh2Kji9aPL4839TcKPNAa6mlZUyOmZk6lzbPJ3bo56%2F%2FCz%2BVaqqrat5rY8x7xnzxl3nvo%2B27jFnz8c%2FmI9Nmh2XBdMsilrBitsnD9rI8aiN5DI%2FjSftC9mIf9pMfIB4kHiI%2BhWfQY5aPAYYYYYwpcyfpMMX0aZzBWZzDeVygchGXcBlX8ApexWt4HW%2FgLbzNbnfwLt7DJ%2Fp0TX4%2BUucji1hCnY%2FU%2BcijVB7D46jzkb3Yh%2F3kB4gHiYeIT%2BEZ9JjlY4AhRhhjytxJOkwxfRpncBbncB4XqFzEJVzGFbyCV%2FEaXscbeAtvs9sdvIv3cjmftWavuWs2mg6byt3ooIsFOyx77Kos2kiWsIK%2FUVPDOjawiQmO4CgdxnAcJzClz2PVbNKsy2ZzvoncjQ66qE2kNpHaRJawgr9RU8M6NrCJCY6gNpFjOI4TmNIn36TNfGSH5RrssKtyN%2B59b410iF0sUFO0l2UJtY%2F8jU9rWMcGNjHBEUypf0z8mm7vZLvZaC%2FLzdhmV2XBvpBF25IlLJOvEFfRI%2BNjgCFGGGNK5Rs6Z7Ij%2F45yNzro4m9Ywzo2sIkJjuBj2ZnvLDdjGxntLLWzLGGZfIW4ih4ZHwMMMcIYUyq1s8xkl97bH0y3JkZyM36j%2F%2B58rvTQxwBDjDDGNzyVyX35Ccjd6KCLv2EN69jAJiY4go%2Flfr05F%2BUa7CCzGx10sYA9tiWLxCWs2BfyN%2BIa1rGBTUxwBEfpMIbjOIEpfdjHvGaTd9LJb0duRp2S1O1I3Y4sYZl8hbiKHhkfAwwxwhhTKt%2FQOZPfmY3%2F%2FSs3Y5tNpTpL9ZQeGR8DDDHCGN%2FwbCbdfHO5GbW51OZSm8sSlslXiKvokfExwBAjjDGlUpvLTBY0K5KbiDcT672SbXZY6k7lbnTQxQI1h%2B1FeZTKY3gcT2KvTWUf9pMZIB4kHiI%2BxcQzxGfpfA7P4wW8yG4eT%2FkYYIgRxvgb9TWsYwObmOAITlI%2Fxf7TOIOzOIfzuEDlIi7hMq7gFbyK1%2FA63sBbeJtvdwfv4j28zyaP8QmVL%2FimL%2FENJ5PJHt3RqtyMbbYlPfQxwBAjjPEN9ZksqkMqN6PuV7bZy7LDtuRudNDFwzx1FI%2FhcTzJp73Yh%2F3kB4gHiYeIT%2BEZ9JjlY4AhRhjjb1TWsI4NbGKCIzjJlCmcxhmcxTmcxwVcxCVcxhW8glfxGl7HG3gLbzPxDt7Fe%2FgY%2F%2Begvq0YCAEoCNa1n%2BKVyTUl3Q0uIhoe%2B3DnRfV7nXGOc5zjHOc4xznOcY5znOMc5zjHOc5xjnOc4xznOMc5znGOc5zjHOc4xznOcY5znOMc5zjHOc5xjnOc4xznOMc5znGOc5zjHOc4xznOcY5znOM8XZouTZemS1OAKcAUYAowBZgCTAHm3x31O7p3vNf5c1iXeBkEAQDFcbsJX0IqFBwK7tyEgkPC3R0K7hrXzsIhePPK%2F7c77jPM1yxSPua0WmuDzNcuNmuLtmq7sbyfsUu7De%2Fxu9fvvvDNfN3ioN9j5pq0ximd1hmd1TmlX7iky7qiq7qmG3pgXYd6pMd6oqd6pud6oZd6pdd6p%2Ff6oI%2F6pC%2FKSxvf9F0%2F1LFl1naRcwwzrAu7AHNarbW6oEu6rCu6qmu6ob9Y7xu%2BkbfHH1ZopCk25RVrhXKn4LCO6KiOGfvpd%2BR3is15xXmVWKGRptgaysQKpUwc1hEdVcpEysTI7xTbKHMcKzTSFDtCmVihkab4z0FdI0QQBAEUbRz6XLh3Lc7VcI%2FWN54IuxXFS97oH58%2BMBoclE1usbHHW77wlW985wcHHHLEMSecsUuPXMNRqfzib3pcllj5xd%2B0lSVW5nNIL3nF6389h%2BY5NG3Thja0oQ1taEMb2tCGNrQn%2BQwjrcwxM93gJre4Y89mvsdb3vGeD3zkE5%2F5wle%2B8Z0fHHDIEceccMaOX67wNz3747gObCQAQhCKdjlRzBVD5be7rwAmfOMQsUvPLj279OzSYBks49Ibl97In%2FHCuNDGO%2BNOW6qlWqqlWqqlWqqlWqqYUkwpphTzifnEfII92IM92IM92IM92IM92IM92I%2FD4%2FA4PA6Pw%2BPwODwOj8M%2Ff7kaaDXQyt7K3mqglcCVwNVAq4FWA60GWglZCVkJWQlZCVkJWQlZDbQyqhpoNdAPh3NAwCAAwwDM%2B7b2sg8kCjIO4zAO4zAO4zAO4zAO4zAO4zAO4zAO4zAO4zAO4zAO47AO67AO67AO67AO67AO67AO67AO67AO67AO67AO67AO63AO53AO53AO53AO53AO53AO53AO53AO53AO53AO53AO5xCHOMQhDnGIQxziEIc4xCEOcYhDHOIQhzjEIQ5xiEMd6lCHOtShDnWoQx3qUIc61KEOdahDHepQhzrUoQ6%2Fh%2BP6RpIjiKEoyOPvCARUoK9LctP5ZqXTop7q%2F6H%2F0H%2B4P9yfPz82bdm2Y9ee%2FT355bS3%2FdivDW9reFtDb4beDL0ZejP0ZujN0JuhN0Nvht4MvRl6M%2FRm6M3w1of3PVnJSlaykpWsZCUrWclKVrKSlaxkJStZySpWsYpVrGIVq1jFKlaxilWsYhWrWMUqVrGa1axmNatZzWpWs5rVrGY1q1nNalazmtWsYQ1rWMMa1rCGNaxhDWtYwxrWsIY1rGENa1nLWtaylrWsZS1rWcta1rKWtaxlLWtZyzrWsY51rGMd61jHOtaxjnWsYx3rWMc61rEeTf1o6kdTP%2F84rpMqCKAYhmH8Cfy2JjuLCPiYPDH1Y%2BrH1I%2BpH1M%2Fpn5M%2FZh6FEZhFEZhFEZhFEZhFEZhFFZhFVZhFVZhFVZhFVZhFVbhFE7hFE7hFE7hFE7hFE7hFCKgCChPHQFlc7I52ZxsTgQUAUVAEVAEFAFFQBFQBBQBRUARUAQUAUVAEVAEFAFFQBFQti5bl63L1mXrsnXZuggoAoqAIqAIKAKKgCKgCCgCioAioAgoAoqAIqAIKAKKgCKgCCgCyt5GQBFQBPTlwD7OEIaBKAxSOrmJVZa2TsJcwJ6r0%2F%2B9sBOGnTDshOF%2BDndyXG7k7vfh9%2Bn35fft978Thp2wKuqqqKtarmq58cYbb7zzzjvvfPDBBx988sknn3zxxRdfPHnyVPip8FPhp8JPhZ8KP78czLdxBDAMAMFc%2FbdAk4AERoMS5CpQOW82uWyPHexkJzvZyU52spOd7GQnu9jFLnaxi13sYhe72MVudrOb3exmN7vZzW52s8EGG2ywwQYbbLDBBnvZy172spe97GUve9nLJptssskmm2yyySabbLHFFltsscUWW2yxxX6%2B7P%2BrH%2Fqtf6%2B2Z3u2Z3u2Z3u2Z3u2Z3s%2BO66jKoYBGASA%2FiUFeLO2tqfgvhIgVkOshvj%2F8f%2FjF8VqiL8dqyG%2Bd4klllhiiSWWWGKJJY444ogjjjjiiCOO%2BPua0gPv7paRAHgBLcEDlNxQAADArI3Ydv7Vtm3btm3btm3btm3bD7VvBoIgLXVVqCf0ztXT9dzd3j3cvcX90CN5Snmae%2Fp45np2e356gbeH94HP8Q3x3feH%2FX38NwJwoHigQ2Ba4GBQCK4NfgxVDE0OnQr7w1nCI8P7wi8jdqR4ZGzkRDQSLRmdH%2F0UqxTrEVsbux%2FPHe8b3xh%2FlgglzESJRJfE6MS6ZChZJzkj%2BRouCA9GJKQuMhI5hsZRHR2A7kZ%2FYZWxldhtPDPeFd%2BIPybyE0OIy2SIrEy2IneSX8mvFKB6UpfodPQYeiOTjmnK3GOzsCPYpexaLjdXiRvBHeJ%2B8BX5Lvxe%2FqOACmWEnsJ60SsyYjqxiLhE3CoeE6%2BLL8RvUlRqJXWThkszpJXSbjkq83JaOZ9cXm4gd5IXKZACK4qSSSmiVFWmq0lVUtOr%2BdXyagO1oxbRSM3UsmnFtOpaC62nNkqbo7M60HPppfXaemu9j77X4IwUI49RxqhrtDWOGzeM92Y985lFWWWtcdZia4d10%2FpiU3YZu6%2B91j7rME5xp5szGVAgDcgBioDhYDpYDjaDE%2BAmeAW%2Bp8R%2FA5ajfCcAAAABAAAA3QCKABYAWAAFAAIAEAAvAFwAAAEAAQsAAwABeAF9jgNuRAEYhL%2FaDGoc4DluVNtug5pr8xh7jj3jTpK18pszwBDP9NHTP0IPs1DOexlmtpz3sc9iOe9nmddyPsA8%2BXI%2BqI1COZ%2FkliIXhPkiyDo3vCnG2CaEn0%2B2lH%2BgmfIvotowZa3769ULZST4K%2BcujqTb%2Fj36S4w%2FQmgDF0tWvalemNWLX%2BKSMBvYkhQSLG2FZR%2BafmERIsqPpn7%2ByvxjfMlsTjlihz3OuZE38bTtlAAa%2FTAFAHgBbMEDjJYBAADQ9%2F3nu2zbtm3b5p9t17JdQ7Zt21zmvGXXvJrZe0LA37Cw%2F3lDEBISIVKUaDFixYmXIJHEkkgqmeRSSCmV1NJIK530Msgok8yyyCqb7HLIKZfc8sgrn%2FwKKKiwIooqprgSSiqltDLKKqe8CiqqpLIqqqqmuhpqqqW2Ouqqp74GGmqksSaaaqa5FlpqpbU22mqnvQ466qSzLrrqprs9NpthprNWeWeWReZba6ctQYR5QaTplvvhp4VWm%2BOyt75bZ5fffvljk71uum6fHnpaopfbervhlvfCHnngof36%2BGappx57oq%2BPPpurv34GGGSgwTYYYpihhhthlJFGG%2BODscYbZ4JJJjphoykmm2qaT7445ZkDDnrujRcOOeyY46444qirZtvtnPPOBFG%2BBtFBTBAbxAXxQYJC7rvjrnv%2FxpJXmpPDXpqXaWDg6MKZX5ZaVJycX5TK4lpalA8SdnMyMITSRjxp%2BaVFxaUFqUWZ%2BUVQQWMobcKUlgYAHQ14sAAAeAFFSzVCLEEQ7fpjH113V1ybGPd1KRyiibEhxt1vsj3ZngE9AIfgBmMR5fVk8qElsRjHOHAYW%2BQwyumxct4bKxXkWDEvx7JjdszQNAZcekzi9Zho8oV8NCbnIT%2FfEXNRJwqmlaemnQMbN8E1OE7Mzb%2FP%2F8xzKZrEMA2hl3rQATa0Uxs2bN%2B2f8M2AEpwj5yQBvklvJ3AqRcEaMKrWq%2F19eWakl7NsZbyJoNblqlZc7KywcRbRnBjc00FeF6%2Fenoi05EcG62tsXhkPcdk87BHVC%2BZXleUPrOsUHaUI2tb4y%2F8OwbsTEAJAA%3D%3D%29%20format%28%22woff%22%29%7D%2A%7Bbox%2Dsizing%3Aborder%2Dbox%7Dbody%7Bpadding%3A0%3Bmargin%3A0%3Bfont%2Dfamily%3A%22Open%20Sans%22%2C%22Helvetica%20Neue%22%2CHelvetica%2CArial%2Csans%2Dserif%3Bfont%2Dsize%3A16px%3Bline%2Dheight%3A1%2E5%3Bcolor%3A%23606c71%7Da%7Bcolor%3A%231e6bb8%3Btext%2Ddecoration%3Anone%7Da%3Ahover%7Btext%2Ddecoration%3Aunderline%7D%2Epage%2Dheader%7Bcolor%3A%23fff%3Btext%2Dalign%3Acenter%3Bbackground%2Dcolor%3A%23159957%3Bbackground%2Dimage%3Alinear%2Dgradient%28120deg%2C%23155799%2C%23159957%29%3Bpadding%3A1%2E5rem%202rem%7D%2Eproject%2Dname%7Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A%2E1rem%3Bfont%2Dsize%3A2rem%7D%2Eproject%2Dtagline%7Bmargin%2Dbottom%3A2rem%3Bfont%2Dweight%3A400%3Bopacity%3A%2E7%3Bfont%2Dsize%3A1%2E5rem%7D%2Eproject%2Dauthor%2C%2Eproject%2Ddate%7Bfont%2Dweight%3A400%3Bopacity%3A%2E7%3Bfont%2Dsize%3A1%2E2rem%7D%40media%20screen%20and%20%28max%2Dwidth%3A%2042em%29%7B%2Epage%2Dheader%7Bpadding%3A1rem%7D%2Eproject%2Dname%7Bfont%2Dsize%3A1%2E75rem%7D%2Eproject%2Dtagline%7Bfont%2Dsize%3A1%2E2rem%7D%2Eproject%2Dauthor%2C%2Eproject%2Ddate%7Bfont%2Dsize%3A1rem%7D%7D%2Emain%2Dcontent%3Afirst%2Dchild%7Bmargin%2Dtop%3A0%7D%2Emain%2Dcontent%20img%7Bmax%2Dwidth%3A100%25%7D%2Emain%2Dcontent%20h1%2C%2Emain%2Dcontent%20h2%2C%2Emain%2Dcontent%20h3%2C%2Emain%2Dcontent%20h4%2C%2Emain%2Dcontent%20h5%2C%2Emain%2Dcontent%20h6%7Bmargin%2Dtop%3A2rem%3Bmargin%2Dbottom%3A1rem%3Bfont%2Dweight%3A400%3Bcolor%3A%23159957%7D%2Emain%2Dcontent%20p%7Bmargin%2Dbottom%3A1em%7D%2Emain%2Dcontent%20code%7Bpadding%3A2px%204px%3Bfont%2Dfamily%3AConsolas%2C%22Liberation%20Mono%22%2CMenlo%2CCourier%2Cmonospace%3Bcolor%3A%23383e41%3Bbackground%2Dcolor%3A%23f3f6fa%3Bborder%2Dradius%3A%2E3rem%7D%2Emain%2Dcontent%20pre%7Bpadding%3A%2E8rem%3Bmargin%2Dtop%3A0%3Bmargin%2Dbottom%3A1rem%3Bfont%3A1rem%20Consolas%2C%22Liberation%20Mono%22%2CMenlo%2CCourier%2Cmonospace%3Bcolor%3A%23567482%3Bword%2Dwrap%3Anormal%3Bbackground%2Dcolor%3A%23f3f6fa%3Bborder%3Asolid%201px%20%23dce6f0%3Bborder%2Dradius%3A%2E3rem%3Bline%2Dheight%3A1%2E45%3Boverflow%3Aauto%7D%2Emain%2Dcontent%20pre%3E%20code%7Bpadding%3A0%3Bmargin%3A0%3Bfont%2Dsize%3A1rem%3Bcolor%3A%23567482%3Bword%2Dbreak%3Anormal%3Bwhite%2Dspace%3Apre%3Bbackground%3Atransparent%3Bborder%3A0%7D%2Emain%2Dcontent%20pre%20code%2C%2Emain%2Dcontent%20pre%20tt%7Bdisplay%3Ainline%3Bpadding%3A0%3Bline%2Dheight%3Ainherit%3Bword%2Dwrap%3Anormal%3Bbackground%2Dcolor%3Atransparent%3Bborder%3A0%7D%2Emain%2Dcontent%20pre%20code%3Abefore%2C%2Emain%2Dcontent%20pre%20code%3Aafter%2C%2Emain%2Dcontent%20pre%20tt%3Abefore%2C%2Emain%2Dcontent%20pre%20tt%3Aafter%7Bcontent%3Anormal%7D%2Emain%2Dcontent%20ul%2C%2Emain%2Dcontent%20ol%7Bmargin%2Dtop%3A0%7D%2Emain%2Dcontent%20blockquote%7Bpadding%3A0%201rem%3Bmargin%2Dleft%3A0%3Bfont%2Dsize%3A1%2E2rem%3Bcolor%3A%23819198%3Bborder%2Dleft%3A%2E3rem%20solid%20%23dce6f0%7D%2Emain%2Dcontent%20blockquote%3E%3Afirst%2Dchild%7Bmargin%2Dtop%3A0%7D%2Emain%2Dcontent%20blockquote%3E%3Alast%2Dchild%7Bmargin%2Dbottom%3A0%7D%2Emain%2Dcontent%20table%7Bwidth%3A100%25%3Boverflow%3Aauto%3Bword%2Dbreak%3Anormal%3Bword%2Dbreak%3Akeep%2Dall%3Bborder%2Dcollapse%3Acollapse%3Bborder%2Dspacing%3A0%3Bmargin%3A1rem%200%7D%2Emain%2Dcontent%20table%20th%7Bfont%2Dweight%3A700%3Bbackground%2Dcolor%3A%234CAF50%3Bcolor%3A%23fff%7D%2Emain%2Dcontent%20table%20th%2C%2Emain%2Dcontent%20table%20td%7Bpadding%3A%2E5rem%201rem%3Bborder%2Dbottom%3A1px%20solid%20%23e9ebec%3Btext%2Dalign%3Aleft%7D%2Emain%2Dcontent%20table%20tr%3Anth%2Dchild%28odd%29%7Bbackground%2Dcolor%3A%23f2f2f2%7D%2Emain%2Dcontent%20dl%7Bpadding%3A0%7D%2Emain%2Dcontent%20dl%20dt%7Bpadding%3A0%3Bmargin%2Dtop%3A1rem%3Bfont%2Dsize%3A1rem%3Bfont%2Dweight%3A700%7D%2Emain%2Dcontent%20dl%20dd%7Bpadding%3A0%3Bmargin%2Dbottom%3A1rem%7D%2Emain%2Dcontent%20hr%7Bmargin%3A1rem%200%3Bborder%3A0%3Bheight%3A1px%3Bbackground%3A%23aaa%3Bbackground%2Dimage%3Alinear%2Dgradient%28to%20right%2C%23eee%2C%23aaa%2C%23eee%29%7D%2Emain%2Dcontent%2C%2Etoc%7Bmax%2Dwidth%3A64rem%3Bpadding%3A2rem%204rem%3Bmargin%3A0%20auto%3Bfont%2Dsize%3A1%2E1rem%7D%2Etoc%7Bpadding%2Dbottom%3A0%7D%2Etoc%20ul%7Bmargin%2Dbottom%3A0%7D%40media%20screen%20and%20%28min%2Dwidth%3A%2042em%29%20and%20%28max%2Dwidth%3A%2064em%29%7B%2Etoc%7Bpadding%3A2rem%202rem%200%7D%2Emain%2Dcontent%7Bpadding%3A2rem%7D%7D%40media%20screen%20and%20%28max%2Dwidth%3A%2042em%29%7B%2Etoc%7Bpadding%3A2rem%201rem%200%3Bfont%2Dsize%3A1rem%7D%2Emain%2Dcontent%7Bpadding%3A2rem%201rem%3Bfont%2Dsize%3A1rem%7D%2Emain%2Dcontent%20pre%2C%2Emain%2Dcontent%20pre%3E%20code%7Bfont%2Dsize%3A%2E9rem%7D%2Emain%2Dcontent%20blockquote%7Bfont%2Dsize%3A1%2E1rem%7D%7D%2Esite%2Dfooter%7Bpadding%2Dtop%3A2rem%3Bmargin%2Dtop%3A2rem%3Bborder%2Dtop%3Asolid%201px%20%23eff0f1%3Bfont%2Dsize%3A1rem%7D%2Esite%2Dfooter%2Downer%7Bdisplay%3Ablock%3Bfont%2Dweight%3A700%7D%2Esite%2Dfooter%2Dcredits%7Bcolor%3A%23819198%7D%0A" rel="stylesheet" type="text/css" />
+<style type="text/css">@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;src:local('Open Sans'),local(OpenSans),url(data:application/font-woff;base64,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) format("woff")}@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;src:local('Open Sans Bold'),local(OpenSans-Bold),url(data:application/font-woff;base64,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) format("woff")}*{box-sizing:border-box}body{padding:0;margin:0;font-family:"Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;line-height:1.5;color:#606c71}a{color:#1e6bb8;text-decoration:none}a:hover{text-decoration:underline}.page-header{color:#fff;text-align:center;background-color:#159957;background-image:linear-gradient(120deg,#155799,#159957);padding:1.5rem 2rem}.project-name{margin-top:0;margin-bottom:.1rem;font-size:2rem}.project-tagline{margin-bottom:2rem;font-weight:400;opacity:.7;font-size:1.5rem}.project-author,.project-date{font-weight:400;opacity:.7;font-size:1.2rem}@media screen and (max-width: 42em){.page-header{padding:1rem}.project-name{font-size:1.75rem}.project-tagline{font-size:1.2rem}.project-author,.project-date{font-size:1rem}}.main-content:first-child{margin-top:0}.main-content img{max-width:100%}.main-content h1,.main-content h2,.main-content h3,.main-content h4,.main-content h5,.main-content h6{margin-top:2rem;margin-bottom:1rem;font-weight:400;color:#159957}.main-content p{margin-bottom:1em}.main-content code{padding:2px 4px;font-family:Consolas,"Liberation Mono",Menlo,Courier,monospace;color:#383e41;background-color:#f3f6fa;border-radius:.3rem}.main-content pre{padding:.8rem;margin-top:0;margin-bottom:1rem;font:1rem Consolas,"Liberation Mono",Menlo,Courier,monospace;color:#567482;word-wrap:normal;background-color:#f3f6fa;border:solid 1px #dce6f0;border-radius:.3rem;line-height:1.45;overflow:auto}.main-content pre> code{padding:0;margin:0;font-size:1rem;color:#567482;word-break:normal;white-space:pre;background:transparent;border:0}.main-content pre code,.main-content pre tt{display:inline;padding:0;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.main-content pre code:before,.main-content pre code:after,.main-content pre tt:before,.main-content pre tt:after{content:normal}.main-content ul,.main-content ol{margin-top:0}.main-content blockquote{padding:0 1rem;margin-left:0;font-size:1.2rem;color:#819198;border-left:.3rem solid #dce6f0}.main-content blockquote>:first-child{margin-top:0}.main-content blockquote>:last-child{margin-bottom:0}.main-content table{width:100%;overflow:auto;word-break:normal;word-break:keep-all;border-collapse:collapse;border-spacing:0;margin:1rem 0}.main-content table th{font-weight:700;background-color:#4CAF50;color:#fff}.main-content table th,.main-content table td{padding:.5rem 1rem;border-bottom:1px solid #e9ebec;text-align:left}.main-content table tr:nth-child(odd){background-color:#f2f2f2}.main-content dl{padding:0}.main-content dl dt{padding:0;margin-top:1rem;font-size:1rem;font-weight:700}.main-content dl dd{padding:0;margin-bottom:1rem}.main-content hr{margin:1rem 0;border:0;height:1px;background:#aaa;background-image:linear-gradient(to right,#eee,#aaa,#eee)}.main-content,.toc{max-width:64rem;padding:2rem 4rem;margin:0 auto;font-size:1.1rem}.toc{padding-bottom:0}.toc ul{margin-bottom:0}@media screen and (min-width: 42em) and (max-width: 64em){.toc{padding:2rem 2rem 0}.main-content{padding:2rem}}@media screen and (max-width: 42em){.toc{padding:2rem 1rem 0;font-size:1rem}.main-content{padding:2rem 1rem;font-size:1rem}.main-content pre,.main-content pre> code{font-size:.9rem}.main-content blockquote{font-size:1.1rem}}.site-footer{padding-top:2rem;margin-top:2rem;border-top:solid 1px #eff0f1;font-size:1rem}.site-footer-owner{display:block;font-weight:700}.site-footer-credits{color:#819198}
+</style>
</head>
@@ -71,7 +107,7 @@
<section class="page-header">
<h1 class="title toc-ignore project-name">kableExtra in other rmarkdown HTML themes</h1>
<h4 class="author project-author">Hao Zhu</h4>
-<h4 class="date project-date">2017-10-31</h4>
+<h4 class="date project-date">2019-03-15</h4>
</section>
@@ -84,17 +120,16 @@
<div id="getting-started" class="section level1">
<h1>Getting Started</h1>
<p>Here we are using the first few columns and rows from dataset <code>mtcars</code></p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(knitr)</code></pre></div>
-<pre><code>## Warning: package 'knitr' was built under R version 3.4.1</code></pre>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">library</span>(kableExtra)
-dt <-<span class="st"> </span>mtcars[<span class="dv">1</span><span class="op">:</span><span class="dv">5</span>, <span class="dv">1</span><span class="op">:</span><span class="dv">6</span>]</code></pre></div>
+<div class="sourceCode" id="cb1"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb1-1" data-line-number="1"><span class="kw">library</span>(knitr)</a>
+<a class="sourceLine" id="cb1-2" data-line-number="2"><span class="kw">library</span>(kableExtra)</a>
+<a class="sourceLine" id="cb1-3" data-line-number="3">dt <-<span class="st"> </span>mtcars[<span class="dv">1</span><span class="op">:</span><span class="dv">5</span>, <span class="dv">1</span><span class="op">:</span><span class="dv">6</span>]</a></code></pre></div>
<p>When you are using <code>kable()</code>, if you don’t specify <code>format</code>, by default it will generate a markdown table and let pandoc handle the conversion from markdown to HTML/PDF. This is the most favorable approach to render most simple tables as it is format independent. If you switch from HTML to pdf, you basically don’t need to change anything in your code. However, markdown doesn’t support complex table. For example, if you want to have a double-row header table, markdown just cannot provide you the functionality you need. As a result, when you have such a need, you should <strong>define <code>format</code> in <code>kable()</code></strong> as either “html” or “latex”. <em>You can also define a global option at the beginning using <code>options(knitr.table.format = "html")</code> so you don’t repeat the step everytime.</em></p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">options</span>(<span class="dt">knitr.table.format =</span> <span class="st">"html"</span>)
-## If you don't define format here, you'll need put `format = "html"` in every kable function.</code></pre></div>
+<div class="sourceCode" id="cb2"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb2-1" data-line-number="1"><span class="kw">options</span>(<span class="dt">knitr.table.format =</span> <span class="st">"html"</span>) </a>
+<a class="sourceLine" id="cb2-2" data-line-number="2"><span class="co">## If you don't define format here, you'll need put `format = "html"` in every kable function.</span></a></code></pre></div>
<div id="basic-html-table" class="section level2">
<h2>Basic HTML Table</h2>
<p>Basic HTML output of <code>kable</code> looks not bad in <code>prettydoc</code> because themes in <code>prettydoc</code> have already changed the theme of <code>table</code>.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt)</code></pre></div>
+<div class="sourceCode" id="cb3"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb3-1" data-line-number="1"><span class="kw">kable</span>(dt)</a></code></pre></div>
<table>
<thead>
<tr>
@@ -242,8 +277,8 @@
<div id="full-width-or-not" class="section level2">
<h2>Full Width or Not?</h2>
<p>By default, a bootstrap table takes 100% of the width. It is supposed to use together with its grid system to scale the table properly. However, when you are writing a rmarkdown document, you probably don’t want to write your own css/or grid. For some small tables with only few columns, a page wide table looks awful. To make it easier, you can specify whether you want the table to have <code>full_width</code> or not in <code>kable_styling</code>. By default, <code>full_width</code> is set to be <code>TRUE</code> for HTML tables (note that for LaTeX, the default is <code>FALSE</code> since I don’t want to change the “common” looks unless you specified it.)</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F)</code></pre></div>
+<div class="sourceCode" id="cb4"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb4-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb4-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F)</a></code></pre></div>
<table class="table" style="width: auto !important; margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -391,8 +426,8 @@
<div id="position" class="section level2">
<h2>Position</h2>
<p>Table Position only matters when the table doesn’t have <code>full_width</code>. You can choose to align the table to <code>center</code>, <code>left</code> or <code>right</code> side of the page</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F, <span class="dt">position =</span> <span class="st">"left"</span>)</code></pre></div>
+<div class="sourceCode" id="cb5"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb5-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb5-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F, <span class="dt">position =</span> <span class="st">"left"</span>)</a></code></pre></div>
<table class="table" style="width: auto !important; ">
<thead>
<tr>
@@ -537,8 +572,8 @@
</tbody>
</table>
<p>Becides these three common options, you can also wrap text around the table using the <code>float-left</code> or <code>float-right</code> options.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F, <span class="dt">position =</span> <span class="st">"float_right"</span>)</code></pre></div>
+<div class="sourceCode" id="cb6"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb6-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb6-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F, <span class="dt">position =</span> <span class="st">"float_right"</span>)</a></code></pre></div>
<table class="table" style="width: auto !important; float: right; margin-left: 10px;">
<thead>
<tr>
@@ -687,8 +722,8 @@
<div id="font-size" class="section level2">
<h2>Font Size</h2>
<p>If one of your tables is huge and you want to use a smaller font size for that specific table, you can use the <code>font_size</code> option.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">font_size =</span> <span class="dv">7</span>)</code></pre></div>
+<div class="sourceCode" id="cb7"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb7-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb7-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">font_size =</span> <span class="dv">7</span>)</a></code></pre></div>
<table class="table" style="font-size: 7px; margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -837,26 +872,26 @@
<div id="add-extra-header-rows" class="section level1">
<h1>Add Extra Header Rows</h1>
<p>Tables with multi-row headers can be very useful to demonstrate grouped data. To do that, you can pipe your kable object into <code>add_header_above()</code>. The header variable is supposed to be a named character with the names as new column names and values as column span. For your convenience, if column span equals to 1, you can ignore the <code>=1</code> part so the function below can be written as `add_header_above(c(" “,”Group 1" = 2, “Group 2” = 2, “Group 3” = 2)).</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span> =<span class="st"> </span><span class="dv">1</span>, <span class="st">"Group 1"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 2"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 3"</span> =<span class="st"> </span><span class="dv">2</span>))</code></pre></div>
+<div class="sourceCode" id="cb8"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb8-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb8-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb8-3" data-line-number="3"><span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span> =<span class="st"> </span><span class="dv">1</span>, <span class="st">"Group 1"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 2"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 3"</span> =<span class="st"> </span><span class="dv">2</span>))</a></code></pre></div>
<table class="table table-striped" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
<th style="border-bottom:hidden" colspan="1">
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 1
</div>
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 2
</div>
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 3
</div>
</th>
@@ -1003,18 +1038,18 @@
</tbody>
</table>
<p>In fact, if you want to add another row of header on top, please feel free to do so.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="kw">c</span>(<span class="st">"striped"</span>, <span class="st">"bordered"</span>)) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 1"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 2"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 3"</span> =<span class="st"> </span><span class="dv">2</span>)) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 4"</span> =<span class="st"> </span><span class="dv">4</span>, <span class="st">"Group 5"</span> =<span class="st"> </span><span class="dv">2</span>)) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 6"</span> =<span class="st"> </span><span class="dv">6</span>))</code></pre></div>
+<div class="sourceCode" id="cb9"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb9-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb9-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="kw">c</span>(<span class="st">"striped"</span>, <span class="st">"bordered"</span>)) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb9-3" data-line-number="3"><span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 1"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 2"</span> =<span class="st"> </span><span class="dv">2</span>, <span class="st">"Group 3"</span> =<span class="st"> </span><span class="dv">2</span>)) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb9-4" data-line-number="4"><span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 4"</span> =<span class="st"> </span><span class="dv">4</span>, <span class="st">"Group 5"</span> =<span class="st"> </span><span class="dv">2</span>)) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb9-5" data-line-number="5"><span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 6"</span> =<span class="st"> </span><span class="dv">6</span>))</a></code></pre></div>
<table class="table table-striped table-bordered" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
<th style="border-bottom:hidden" colspan="1">
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="6">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="6">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 6
</div>
</th>
@@ -1022,13 +1057,13 @@
<tr>
<th style="border-bottom:hidden" colspan="1">
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="4">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="4">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 4
</div>
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 5
</div>
</th>
@@ -1036,18 +1071,18 @@
<tr>
<th style="border-bottom:hidden" colspan="1">
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 1
</div>
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 2
</div>
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="2">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="2">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 3
</div>
</th>
@@ -1201,9 +1236,9 @@
<p>You can also use <code>add_footnote()</code> function from this package. You will need to supply a character vector with each element as one footnote. You may select from <code>number</code>, <code>alphabet</code> and <code>symbol</code> for different types of notations. Example are listed below.</p>
<div id="alphabet" class="section level3">
<h3>Alphabet</h3>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"Footnote 1"</span>, <span class="st">"Have a good day."</span>), <span class="dt">notation =</span> <span class="st">"alphabet"</span>)</code></pre></div>
+<div class="sourceCode" id="cb10"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb10-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb10-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb10-3" data-line-number="3"><span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"Footnote 1"</span>, <span class="st">"Have a good day."</span>), <span class="dt">notation =</span> <span class="st">"alphabet"</span>)</a></code></pre></div>
<table class="table table-striped" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -1362,9 +1397,9 @@
</div>
<div id="number" class="section level3">
<h3>Number</h3>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"Footnote 1"</span>, <span class="st">"Have a good day."</span>), <span class="dt">notation =</span> <span class="st">"number"</span>)</code></pre></div>
+<div class="sourceCode" id="cb11"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb11-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb11-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb11-3" data-line-number="3"><span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"Footnote 1"</span>, <span class="st">"Have a good day."</span>), <span class="dt">notation =</span> <span class="st">"number"</span>)</a></code></pre></div>
<table class="table table-striped" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -1523,9 +1558,9 @@
</div>
<div id="symbol" class="section level3">
<h3>Symbol</h3>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"Footnote 1"</span>, <span class="st">"Footnote 2"</span>, <span class="st">"Footnote 3"</span>), <span class="dt">notation =</span> <span class="st">"symbol"</span>)</code></pre></div>
+<div class="sourceCode" id="cb12"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb12-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb12-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb12-3" data-line-number="3"><span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"Footnote 1"</span>, <span class="st">"Footnote 2"</span>, <span class="st">"Footnote 3"</span>), <span class="dt">notation =</span> <span class="st">"symbol"</span>)</a></code></pre></div>
<table class="table table-striped" style="margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -1691,13 +1726,13 @@
<div id="in-table-markers" class="section level2">
<h2>In-table markers</h2>
<p>By design, <code>add_footnote()</code> will transform any <code>[note]</code> to in-table footnote markers.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt, <span class="dt">caption =</span> <span class="st">"Demo Table[note]"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 1[note]"</span> =<span class="st"> </span><span class="dv">3</span>, <span class="st">"Group 2[note]"</span> =<span class="st"> </span><span class="dv">3</span>)) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"This table is from mtcars"</span>,
- <span class="st">"Group 1 contains mpg, cyl and disp"</span>,
- <span class="st">"Group 2 contains hp, drat and wt"</span>),
- <span class="dt">notation =</span> <span class="st">"symbol"</span>)</code></pre></div>
+<div class="sourceCode" id="cb13"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb13-1" data-line-number="1"><span class="kw">kable</span>(dt, <span class="dt">caption =</span> <span class="st">"Demo Table[note]"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb13-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb13-3" data-line-number="3"><span class="st"> </span><span class="kw">add_header_above</span>(<span class="kw">c</span>(<span class="st">" "</span>, <span class="st">"Group 1[note]"</span> =<span class="st"> </span><span class="dv">3</span>, <span class="st">"Group 2[note]"</span> =<span class="st"> </span><span class="dv">3</span>)) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb13-4" data-line-number="4"><span class="st"> </span><span class="kw">add_footnote</span>(<span class="kw">c</span>(<span class="st">"This table is from mtcars"</span>, </a>
+<a class="sourceLine" id="cb13-5" data-line-number="5"> <span class="st">"Group 1 contains mpg, cyl and disp"</span>, </a>
+<a class="sourceLine" id="cb13-6" data-line-number="6"> <span class="st">"Group 2 contains hp, drat and wt"</span>), </a>
+<a class="sourceLine" id="cb13-7" data-line-number="7"> <span class="dt">notation =</span> <span class="st">"symbol"</span>)</a></code></pre></div>
<table class="table table-striped" style="margin-left: auto; margin-right: auto;">
<caption>
Demo Table<sup>*</sup>
@@ -1706,13 +1741,13 @@
<tr>
<th style="border-bottom:hidden" colspan="1">
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="3">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="3">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 1<sup>†</sup>
</div>
</th>
-<th style="text-align:center; border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;" colspan="3">
-<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px;">
+<th style="border-bottom:hidden; padding-bottom:0; padding-left:3px;padding-right:3px;text-align: center; " colspan="3">
+<div style="border-bottom: 1px solid #ddd; padding-bottom: 5px; ">
Group 2<sup>‡</sup>
</div>
</th>
@@ -1881,11 +1916,11 @@
</div>
<div id="group-rows" class="section level1">
<h1>Group Rows</h1>
-<p>Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function <code>group_rows()</code> in <code>kableExtra</code>, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don’t need to count for the header rows nor other group label rows. You only need to think about the row numbers in the “original R dataframe”.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(mtcars[<span class="dv">1</span><span class="op">:</span><span class="dv">10</span>, <span class="dv">1</span><span class="op">:</span><span class="dv">6</span>], <span class="dt">caption =</span> <span class="st">"Group Rows"</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>, <span class="dt">full_width =</span> F) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">group_rows</span>(<span class="st">"Group 1"</span>, <span class="dv">4</span>, <span class="dv">7</span>) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">group_rows</span>(<span class="st">"Group 2"</span>, <span class="dv">8</span>, <span class="dv">10</span>)</code></pre></div>
+<p>Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function <code>pack_rows()</code> in <code>kableExtra</code>, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don’t need to count for the header rows nor other group label rows. You only need to think about the row numbers in the “original R dataframe”.</p>
+<div class="sourceCode" id="cb14"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb14-1" data-line-number="1"><span class="kw">kable</span>(mtcars[<span class="dv">1</span><span class="op">:</span><span class="dv">10</span>, <span class="dv">1</span><span class="op">:</span><span class="dv">6</span>], <span class="dt">caption =</span> <span class="st">"Group Rows"</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb14-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>, <span class="dt">full_width =</span> F) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb14-3" data-line-number="3"><span class="st"> </span><span class="kw">pack_rows</span>(<span class="st">"Group 1"</span>, <span class="dv">4</span>, <span class="dv">7</span>) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb14-4" data-line-number="4"><span class="st"> </span><span class="kw">pack_rows</span>(<span class="st">"Group 2"</span>, <span class="dv">8</span>, <span class="dv">10</span>)</a></code></pre></div>
<table class="table table-striped" style="width: auto !important; margin-left: auto; margin-right: auto;">
<caption>
Group Rows
@@ -2087,7 +2122,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Merc 240D
</td>
<td style="text-align:right;">
@@ -2110,7 +2145,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Merc 230
</td>
<td style="text-align:right;">
@@ -2133,7 +2168,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Merc 280
</td>
<td style="text-align:right;">
@@ -2158,9 +2193,9 @@
</tbody>
</table>
<p>For advanced users, you can even define your own css for the group labeling.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>, <span class="dt">full_width =</span> F) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">group_rows</span>(<span class="st">"Group 1"</span>, <span class="dv">3</span>, <span class="dv">5</span>, <span class="dt">label_row_css =</span> <span class="st">"background-color: #666; color: #fff;"</span>)</code></pre></div>
+<div class="sourceCode" id="cb15"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb15-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb15-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>, <span class="dt">full_width =</span> F) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb15-3" data-line-number="3"><span class="st"> </span><span class="kw">pack_rows</span>(<span class="st">"Group 1"</span>, <span class="dv">3</span>, <span class="dv">5</span>, <span class="dt">label_row_css =</span> <span class="st">"background-color: #666; color: #fff;"</span>)</a></code></pre></div>
<table class="table table-striped" style="width: auto !important; margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -2239,7 +2274,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Datsun 710
</td>
<td style="text-align:right;">
@@ -2262,7 +2297,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Hornet 4 Drive
</td>
<td style="text-align:right;">
@@ -2285,7 +2320,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Hornet Sportabout
</td>
<td style="text-align:right;">
@@ -2312,10 +2347,10 @@
</div>
<div id="add-indentation" class="section level1">
<h1>Add indentation</h1>
-<p>Unlike <code>group_rows()</code>, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, <code>add_indent()</code> is probably more apporiate. For advanced users, you can even define your own css for the group labeling.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r"><span class="kw">kable</span>(dt) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>, <span class="dt">full_width =</span> F) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">add_indent</span>(<span class="kw">c</span>(<span class="dv">1</span>, <span class="dv">3</span>, <span class="dv">5</span>))</code></pre></div>
+<p>Unlike <code>pack_rows()</code>, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, <code>add_indent()</code> is probably more apporiate. For advanced users, you can even define your own css for the group labeling.</p>
+<div class="sourceCode" id="cb16"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb16-1" data-line-number="1"><span class="kw">kable</span>(dt) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb16-2" data-line-number="2"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="st">"striped"</span>, <span class="dt">full_width =</span> F) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb16-3" data-line-number="3"><span class="st"> </span><span class="kw">add_indent</span>(<span class="kw">c</span>(<span class="dv">1</span>, <span class="dv">3</span>, <span class="dv">5</span>))</a></code></pre></div>
<table class="table table-striped" style="width: auto !important; margin-left: auto; margin-right: auto;">
<thead>
<tr>
@@ -2343,7 +2378,7 @@
</thead>
<tbody>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Mazda RX4
</td>
<td style="text-align:right;">
@@ -2389,7 +2424,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Datsun 710
</td>
<td style="text-align:right;">
@@ -2435,7 +2470,7 @@
</td>
</tr>
<tr>
-<td style="text-align:left; padding-left: 2em;" indentLevel="1">
+<td style="text-align:left; padding-left: 2em;" indentlevel="1">
Hornet Sportabout
</td>
<td style="text-align:right;">
@@ -2465,19 +2500,19 @@
<div id="column-style-specification" class="section level1">
<h1>Column Style Specification</h1>
<p>When you have a table with lots of explanatory texts, you may want to specified the column width for different column, since the auto adjust in HTML may not work in its best way while basic LaTeX table is really bad at handling text wrapping. Also, sometimes, you may want to highlight a column (e.g. a “Total” column) by making it bold. In these scenario, you can use <code>column_spec()</code>. You can find an example below.</p>
-<div class="sourceCode"><pre class="sourceCode r"><code class="sourceCode r">text_tbl <-<span class="st"> </span><span class="kw">data.frame</span>(
- <span class="dt">Items =</span> <span class="kw">c</span>(<span class="st">"Item 1"</span>, <span class="st">"Item 2"</span>, <span class="st">"Item 3"</span>),
- <span class="dt">Features =</span> <span class="kw">c</span>(
- <span class="st">"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin vehicula tempor ex. Morbi malesuada sagittis turpis, at venenatis nisl luctus a. "</span>,
- <span class="st">"In eu urna at magna luctus rhoncus quis in nisl. Fusce in velit varius, posuere risus et, cursus augue. Duis eleifend aliquam ante, a aliquet ex tincidunt in. "</span>,
- <span class="st">"Vivamus venenatis egestas eros ut tempus. Vivamus id est nisi. Aliquam molestie erat et sollicitudin venenatis. In ac lacus at velit scelerisque mattis. "</span>
- )
-)
-
-<span class="kw">kable</span>(text_tbl) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">column_spec</span>(<span class="dv">1</span>, <span class="dt">bold =</span> T) <span class="op">%>%</span>
-<span class="st"> </span><span class="kw">column_spec</span>(<span class="dv">2</span>, <span class="dt">width =</span> <span class="st">"30em"</span>)</code></pre></div>
+<div class="sourceCode" id="cb17"><pre class="sourceCode r"><code class="sourceCode r"><a class="sourceLine" id="cb17-1" data-line-number="1">text_tbl <-<span class="st"> </span><span class="kw">data.frame</span>(</a>
+<a class="sourceLine" id="cb17-2" data-line-number="2"> <span class="dt">Items =</span> <span class="kw">c</span>(<span class="st">"Item 1"</span>, <span class="st">"Item 2"</span>, <span class="st">"Item 3"</span>),</a>
+<a class="sourceLine" id="cb17-3" data-line-number="3"> <span class="dt">Features =</span> <span class="kw">c</span>(</a>
+<a class="sourceLine" id="cb17-4" data-line-number="4"> <span class="st">"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin vehicula tempor ex. Morbi malesuada sagittis turpis, at venenatis nisl luctus a. "</span>,</a>
+<a class="sourceLine" id="cb17-5" data-line-number="5"> <span class="st">"In eu urna at magna luctus rhoncus quis in nisl. Fusce in velit varius, posuere risus et, cursus augue. Duis eleifend aliquam ante, a aliquet ex tincidunt in. "</span>, </a>
+<a class="sourceLine" id="cb17-6" data-line-number="6"> <span class="st">"Vivamus venenatis egestas eros ut tempus. Vivamus id est nisi. Aliquam molestie erat et sollicitudin venenatis. In ac lacus at velit scelerisque mattis. "</span></a>
+<a class="sourceLine" id="cb17-7" data-line-number="7"> )</a>
+<a class="sourceLine" id="cb17-8" data-line-number="8">)</a>
+<a class="sourceLine" id="cb17-9" data-line-number="9"></a>
+<a class="sourceLine" id="cb17-10" data-line-number="10"><span class="kw">kable</span>(text_tbl) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb17-11" data-line-number="11"><span class="st"> </span><span class="kw">kable_styling</span>(<span class="dt">full_width =</span> F) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb17-12" data-line-number="12"><span class="st"> </span><span class="kw">column_spec</span>(<span class="dv">1</span>, <span class="dt">bold =</span> T) <span class="op">%>%</span></a>
+<a class="sourceLine" id="cb17-13" data-line-number="13"><span class="st"> </span><span class="kw">column_spec</span>(<span class="dv">2</span>, <span class="dt">width =</span> <span class="st">"30em"</span>)</a></code></pre></div>
<table class="table" style="width: auto !important; margin-left: auto; margin-right: auto;">
<thead>
<tr>
diff --git a/docs/using_kableExtra_in_radix.Rmd b/docs/using_kableExtra_in_radix.Rmd
index 48cc723..a725b76 100644
--- a/docs/using_kableExtra_in_radix.Rmd
+++ b/docs/using_kableExtra_in_radix.Rmd
@@ -9,11 +9,16 @@
output: radix::radix_article
---
+**Starting from kableExtra 1.1.0, you don't need to turn on this option as it's turned on by default for Radix and gitbook, for everyone's convenience. This Documentation is here to help you understand the logics behind the scene. **
+
+**If you want to this kind of native support to other html format, please submit a PR and add the template name to [this line](https://github.com/haozhu233/kableExtra/blob/f3b6aa4bf1648979bbf48bb6f827755387eebed5/R/zzz.R#L23).**
+
People may find some features in `kableExtra`, such as hovering/striped rows are not working in `radix`. The reason is that `kableExtra` relies on `bootstrap` stylesheet to do these jobs while `radix` doesn't have those css load. Therefore you need to tell `kableExtra` to load the table css for you by setting `options(kableExtra.html.bsTable = T)`.
+
```{r, echo = T}
library(kableExtra)
-options(kableExtra.html.bsTable = T)
+# options(kableExtra.html.bsTable = T) # No need for version 1.1.0+
kable(iris[1:6, ], caption = "kable with kableExtra") %>%
kable_styling(c("striped", "hover", "condensed"), full_width = F,
@@ -37,4 +42,4 @@
# Appendix
Here is a screenshot of how table looks like if you don't turn on the `kableExtra.html.bsTable` option (with the same code). In fact, the only part that breaks is the `striped` and `hover` option. :P
-![](radix_no_bs.png)
\ No newline at end of file
+![](radix_no_bs.png)
diff --git a/docs/using_kableExtra_in_radix.html b/docs/using_kableExtra_in_radix.html
index b719724..70a336c 100644
--- a/docs/using_kableExtra_in_radix.html
+++ b/docs/using_kableExtra_in_radix.html
@@ -25,8 +25,8 @@
<!-- https://schema.org/Article -->
- <meta property="article:published" itemprop="datePublished" content="2018-10-16" />
- <meta property="article:created" itemprop="dateCreated" content="2018-10-16" />
+ <meta property="article:published" itemprop="datePublished" content="2019-03-15" />
+ <meta property="article:created" itemprop="dateCreated" content="2019-03-15" />
<meta name="article:author" content="Hao Zhu" />
<!-- https://developers.facebook.com/docs/sharing/webmasters#markup -->
@@ -44,7 +44,7 @@
<!--radix_placeholder_rmarkdown_metadata-->
<script type="text/json" id="radix-rmarkdown-metadata">
- {"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["title","description","author","date","output"]}},"value":[{"type":"character","attributes":{},"value":["Using kableExtra in Radix"]},{"type":"character","attributes":{},"value":["A new article describing how to use kableExtra in Radix\n"]},{"type":"list","attributes":{},"value":[{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","url"]}},"value":[{"type":"character","attributes":{},"value":["Hao Zhu"]},{"type":"character","attributes":{},"value":["https://github.com/haozhu233"]}]}]},{"type":"character","attributes":{},"value":["2018-10-16"]},{"type":"character","attributes":{},"value":["radix::radix_article"]}]}
+ {"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["title","description","author","date","output"]}},"value":[{"type":"character","attributes":{},"value":["Using kableExtra in Radix"]},{"type":"character","attributes":{},"value":["A new article describing how to use kableExtra in Radix\n"]},{"type":"list","attributes":{},"value":[{"type":"list","attributes":{"names":{"type":"character","attributes":{},"value":["name","url"]}},"value":[{"type":"character","attributes":{},"value":["Hao Zhu"]},{"type":"character","attributes":{},"value":["https://github.com/haozhu233"]}]}]},{"type":"character","attributes":{},"value":["2019-03-15"]},{"type":"character","attributes":{},"value":["radix::radix_article"]}]}
</script>
<!--/radix_placeholder_rmarkdown_metadata-->
@@ -65,6 +65,10 @@
width: 100%;
}
+ .pandoc-table>caption {
+ margin-bottom: 10px;
+ }
+
.pandoc-table th:not([align]) {
text-align: left;
}
@@ -81,6 +85,10 @@
padding-right: 16px;
}
+ .l-screen .caption {
+ margin-left: 10px;
+ }
+
.shaded {
background: rgb(247, 247, 247);
padding-top: 20px;
@@ -188,6 +196,10 @@
/* Tweak code blocks (note that this CSS is repeated above in an injection
into the d-code shadow dom) */
+ d-code {
+ overflow-x: auto !important;
+ }
+
pre.d-code code.d-code {
padding-left: 10px;
font-size: 12px;
@@ -218,6 +230,11 @@
}
@media(min-width: 768px) {
+
+ d-code {
+ overflow-x: visible !important;
+ }
+
pre.d-code code.d-code {
padding-left: 18px;
font-size: 14px;
@@ -600,9 +617,9 @@
var fn = $('#' + id);
var fn_p = $('#' + id + '>p');
fn_p.find('.footnote-back').remove();
- var text = fn_p.text();
+ var text = fn_p.html();
var dtfn = $('<d-footnote></d-footnote>');
- dtfn.text(text);
+ dtfn.html(text);
$(this).replaceWith(dtfn);
});
// remove footnotes
@@ -628,7 +645,10 @@
var clz = "";
var language = pre.attr('class');
if (language) {
- if ($.inArray(language, ["r", "cpp", "c", "java"]) != -1)
+ // map unknown languages to "clike" (without this they just dissapear)
+ if ($.inArray(language, ["bash", "clike", "css", "go", "html",
+ "javascript", "js", "julia", "lua", "markdown",
+ "markup", "mathml", "python", "svg", "xml"]) == -1)
language = "clike";
language = ' language="' + language + '"';
var dt_code = $('<d-code block' + language + clz + '></d-code>');
@@ -843,9 +863,19 @@
// prevent underline for linked images
$('a > img').parent().css({'border-bottom' : 'none'});
- // mark figures created by knitr chunks as 100% width
+ // mark non-body figures created by knitr chunks as 100% width
$('.layout-chunk').each(function(i, val) {
- $(this).find('img, .html-widget').css('width', '100%');
+ var figures = $(this).find('img, .html-widget');
+ if ($(this).attr('data-layout') !== "l-body") {
+ figures.css('width', '100%');
+ } else {
+ figures.css('max-width', '100%');
+ figures.filter("[width]").each(function(i, val) {
+ var fig = $(this);
+ fig.css('width', fig.attr('width') + 'px');
+ });
+
+ }
});
// auto-append index.html to post-preview links in file: protocol
@@ -857,7 +887,7 @@
// get rid of index.html references in header
if (window.location.protocol !== "file:") {
- $('.radix-site-header a').each(function(i,val) {
+ $('.radix-site-header a[href]').each(function(i,val) {
$(this).attr('href', $(this).attr('href').replace("index.html", "./"));
});
}
@@ -866,6 +896,8 @@
$('tr.header').parent('thead').parent('table').addClass('pandoc-table');
$('.kable-table').children('table').addClass('pandoc-table');
+ // add figcaption style to table captions
+ $('caption').parent('table').addClass("figcaption");
// initialize posts list
if (window.init_posts_list)
@@ -877,6 +909,7 @@
$('#disqus_thread').toggleClass('hidden');
if (!$('#disqus_thread').hasClass('hidden')) {
var offset = $(this).offset();
+ $(window).resize();
$('html, body').animate({
scrollTop: offset.top - 35
});
@@ -895,13 +928,14 @@
<!--/radix_placeholder_distill-->
<script>$(document).ready(function(){
- $('[data-toggle="tooltip"]').tooltip();
- $('[data-toggle="popover"]').popover();
+ if (typeof $('[data-toggle="tooltip"]').tooltip === 'function') {
+ $('[data-toggle="tooltip"]').tooltip();
+ }
+ if ($('[data-toggle="popover"]').popover === 'function') {
+ $('[data-toggle="popover"]').popover();
+ }
});
</script>
- <style type="text/css">
-table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}*:before,*:after{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>thead>tr>th,.table>tbody>tr>th,.table>tfoot>tr>th,.table>thead>tr>td,.table>tbody>tr>td,.table>tfoot>tr>td{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>th,.table>caption+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>td,.table>thead:first-child>tr:first-child>td{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>thead>tr>th,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>tbody>tr>td,.table-condensed>tfoot>tr>td{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>tbody>tr>td,.table-bordered>tfoot>tr>td{border:1px solid #ddd}.table-bordered>thead>tr>th,.table-bordered>thead>tr>td{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*="col-"]{position:static;float:none;display:table-column}table td[class*="col-"],table th[class*="col-"]{position:static;float:none;display:table-cell}.table>thead>tr>td.active,.table>tbody>tr>td.active,.table>tfoot>tr>td.active,.table>thead>tr>th.active,.table>tbody>tr>th.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>tbody>tr.active>td,.table>tfoot>tr.active>td,.table>thead>tr.active>th,.table>tbody>tr.active>th,.table>tfoot>tr.active>th{background-color:#f5f5f5}.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover,.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr.active:hover>th{background-color:#e8e8e8}.table>thead>tr>td.success,.table>tbody>tr>td.success,.table>tfoot>tr>td.success,.table>thead>tr>th.success,.table>tbody>tr>th.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>tbody>tr.success>td,.table>tfoot>tr.success>td,.table>thead>tr.success>th,.table>tbody>tr.success>th,.table>tfoot>tr.success>th{background-color:#dff0d8}.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover,.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr.success:hover>th{background-color:#d0e9c6}.table>thead>tr>td.info,.table>tbody>tr>td.info,.table>tfoot>tr>td.info,.table>thead>tr>th.info,.table>tbody>tr>th.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>tbody>tr.info>td,.table>tfoot>tr.info>td,.table>thead>tr.info>th,.table>tbody>tr.info>th,.table>tfoot>tr.info>th{background-color:#d9edf7}.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover,.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr.info:hover>th{background-color:#c4e3f3}.table>thead>tr>td.warning,.table>tbody>tr>td.warning,.table>tfoot>tr>td.warning,.table>thead>tr>th.warning,.table>tbody>tr>th.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>tbody>tr.warning>td,.table>tfoot>tr.warning>td,.table>thead>tr.warning>th,.table>tbody>tr.warning>th,.table>tfoot>tr.warning>th{background-color:#fcf8e3}.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover,.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr.warning:hover>th{background-color:#faf2cc}.table>thead>tr>td.danger,.table>tbody>tr>td.danger,.table>tfoot>tr>td.danger,.table>thead>tr>th.danger,.table>tbody>tr>th.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>tbody>tr.danger>td,.table>tfoot>tr.danger>td,.table>thead>tr.danger>th,.table>tbody>tr.danger>th,.table>tfoot>tr.danger>th{background-color:#f2dede}.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover,.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr.danger:hover>th{background-color:#ebcccc}.table-responsive{overflow-x:auto;min-height:0.01%}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>thead>tr>th,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tfoot>tr>td{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>thead>tr>th:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child{border-left:0}.table-responsive>.table-bordered>thead>tr>th:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>th,.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>td{border-bottom:0}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:12px;opacity:0;filter:alpha(opacity=0)}.tooltip.in{opacity:.9;filter:alpha(opacity=90)}.tooltip.top{margin-top:-3px;padding:5px 0}.tooltip.right{margin-left:3px;padding:0 5px}.tooltip.bottom{margin-top:3px;padding:5px 0}.tooltip.left{margin-left:-3px;padding:0 5px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{bottom:0;right:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-style:normal;font-weight:normal;letter-spacing:normal;line-break:auto;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;word-wrap:normal;font-size:14px;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px rgba(0,0,0,0.2)}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{margin:0;padding:8px 14px;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{border-width:10px;content:""}.popover.top>.arrow{left:50%;margin-left:-11px;border-bottom-width:0;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);bottom:-11px}.popover.top>.arrow:after{content:" ";bottom:1px;margin-left:-10px;border-bottom-width:0;border-top-color:#fff}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-left-width:0;border-right-color:#999;border-right-color:rgba(0,0,0,0.25)}.popover.right>.arrow:after{content:" ";left:1px;bottom:-10px;border-left-width:0;border-right-color:#fff}.popover.bottom>.arrow{left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);top:-11px}.popover.bottom>.arrow:after{content:" ";top:1px;margin-left:-10px;border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,0.25)}.popover.left>.arrow:after{content:" ";right:1px;border-right-width:0;border-left-color:#fff;bottom:-10px}.clearfix:before,.clearfix:after{content:" ";display:table}.clearfix:after{clear:both}.center-block{display:block;margin-left:auto;margin-right:auto}.pull-right{float:right !important}.pull-left{float:left !important}.hide{display:none !important}.show{display:block !important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none !important}.affix{position:fixed}
-</style>
<style type="text/css">.pagedtable {
overflow: auto;
padding-left: 8px;
@@ -3184,7 +3218,7 @@
<!--radix_placeholder_front_matter-->
<script id="distill-front-matter" type="text/json">
-{"title":"Using kableExtra in Radix","description":"A new article describing how to use kableExtra in Radix","authors":[{"author":"Hao Zhu","authorURL":"https://github.com/haozhu233","affiliation":" ","affiliationURL":"#"}],"publishedDate":"2018-10-16T00:00:00.000-04:00","citationText":"Zhu, 2018"}
+{"title":"Using kableExtra in Radix","description":"A new article describing how to use kableExtra in Radix","authors":[{"author":"Hao Zhu","authorURL":"https://github.com/haozhu233","affiliation":" ","affiliationURL":"#"}],"publishedDate":"2019-03-15T00:00:00.000-04:00","citationText":"Zhu, 2019"}
</script>
<!--/radix_placeholder_front_matter-->
@@ -3201,16 +3235,18 @@
<div class="d-byline">
Hao Zhu <a href="https://github.com/haozhu233" class="uri">https://github.com/haozhu233</a>
-<br />2018-10-16
+<br />2019-03-15
</div>
<div class="d-article">
+<p><strong>Starting from kableExtra 1.1.0, you don’t need to turn on this option as it’s turned on by default for Radix and gitbook, for everyone’s convenience. This Documentation is here to help you understand the logics behind the scene. </strong></p>
+<p><strong>If you want to this kind of native support to other html format, please submit a PR and add the template name to <a href="https://github.com/haozhu233/kableExtra/blob/f3b6aa4bf1648979bbf48bb6f827755387eebed5/R/zzz.R#L23">this line</a>.</strong></p>
<p>People may find some features in <code>kableExtra</code>, such as hovering/striped rows are not working in <code>radix</code>. The reason is that <code>kableExtra</code> relies on <code>bootstrap</code> stylesheet to do these jobs while <code>radix</code> doesn’t have those css load. Therefore you need to tell <code>kableExtra</code> to load the table css for you by setting <code>options(kableExtra.html.bsTable = T)</code>.</p>
<div class="layout-chunk" data-layout="l-body">
<pre class="r"><code>
library(kableExtra)
-options(kableExtra.html.bsTable = T)
+# options(kableExtra.html.bsTable = T) # No need for version 1.1.0+
kable(iris[1:6, ], caption = "kable with kableExtra") %>%
kable_styling(c("striped", "hover", "condensed"), full_width = F,
@@ -3220,7 +3256,7 @@
row_spec(0, italic = T)</code></pre>
<table class="table table-striped table-hover table-condensed" style="width: auto !important; ">
<caption>
-kable with kableExtra
+<span id="tab:unnamed-chunk-1">Table 1: </span>kable with kableExtra
</caption>
<thead>
<tr>
@@ -3366,7 +3402,7 @@
kable(iris[1:6, ], caption = "Basic kable")</code></pre>
<table>
<caption>
-Basic kable
+<span id="tab:unnamed-chunk-2">Table 2: </span>Basic kable
</caption>
<thead>
<tr>
diff --git a/inst/NEWS.md b/inst/NEWS.md
index 9458755..3244010 100644
--- a/inst/NEWS.md
+++ b/inst/NEWS.md
@@ -1,3 +1,26 @@
+kableExtra 1.1.0
+--------------------------------------------------------------------------------
+
+# Major Changes
+
+* `pack_rows` was added as an alias to `group_rows` and is now the preferred
+term for this feature as `dplyr` 0.8.0 instroduced a function with the same
+name.
+
+* HTML Font and Background Colors now gets a "!important" tag so they can be
+printed out under bootstrap
+
+# Minor Changes
+
+* Added a `fixed_header` option to `kable_styling`. (Similar with the same option in `scroll_box`)
+
+# Bug Fixes
+
+* LaTeX packages now only loaded in latex environment so there won't be
+memory leaking issues in html_notebook.
+
+* Fixed an typo in stripe_index
+
kableExtra 1.0.1
--------------------------------------------------------------------------------
diff --git a/man/footnote.Rd b/man/footnote.Rd
index 34b3f61..063ca3c 100644
--- a/man/footnote.Rd
+++ b/man/footnote.Rd
@@ -7,9 +7,9 @@
footnote(kable_input, general = NULL, number = NULL, alphabet = NULL,
symbol = NULL, footnote_order = c("general", "number", "alphabet",
"symbol"), footnote_as_chunk = FALSE, escape = TRUE,
- threeparttable = FALSE, general_title = "Note: ",
- number_title = "", alphabet_title = "", symbol_title = "",
- title_format = "italic", symbol_manual = NULL)
+ threeparttable = FALSE, fixed_small_size = FALSE,
+ general_title = "Note: ", number_title = "", alphabet_title = "",
+ symbol_title = "", title_format = "italic", symbol_manual = NULL)
}
\arguments{
\item{kable_input}{HTML or LaTeX table generated by \code{knitr::kable}}
@@ -40,6 +40,10 @@
footnotes be the width of the original table. It's useful when you have
long paragraph of footnotes.}
+\item{fixed_small_size}{T/F When you want to keep the footnote small after
+specifying large font size with the kable_styling() (e.g. ideal font for headers
+and table content with small font in footnotes).}
+
\item{general_title}{Section header for general footnotes. Default is
"Note: ".}
diff --git a/man/group_rows.Rd b/man/group_rows.Rd
index b5b6db4..db032f5 100644
--- a/man/group_rows.Rd
+++ b/man/group_rows.Rd
@@ -2,6 +2,7 @@
% Please edit documentation in R/group_rows.R
\name{group_rows}
\alias{group_rows}
+\alias{pack_rows}
\title{Put a few rows of a table into one category}
\usage{
group_rows(kable_input, group_label = NULL, start_row = NULL,
@@ -10,6 +11,13 @@
latex_gap_space = "0.3em", escape = TRUE, latex_align = "l",
colnum = NULL, bold = TRUE, italic = FALSE, hline_before = FALSE,
hline_after = FALSE, extra_latex_after = NULL, indent = TRUE)
+
+pack_rows(kable_input, group_label = NULL, start_row = NULL,
+ end_row = NULL, index = NULL,
+ label_row_css = "border-bottom: 1px solid;",
+ latex_gap_space = "0.3em", escape = TRUE, latex_align = "l",
+ colnum = NULL, bold = TRUE, italic = FALSE, hline_before = FALSE,
+ hline_after = FALSE, extra_latex_after = NULL, indent = TRUE)
}
\arguments{
\item{kable_input}{Output of \code{knitr::kable()} with \code{format} specified}
@@ -65,6 +73,6 @@
\examples{
x <- knitr::kable(head(mtcars), "html")
# Put Row 2 to Row 5 into a Group and label it as "Group A"
-group_rows(x, "Group A", 2, 5)
+pack_rows(x, "Group A", 2, 5)
}
diff --git a/man/kable_styling.Rd b/man/kable_styling.Rd
index ea4c716..ee6de44 100644
--- a/man/kable_styling.Rd
+++ b/man/kable_styling.Rd
@@ -11,7 +11,7 @@
repeat_header_method = c("append", "replace"),
repeat_header_continued = FALSE, stripe_color = "gray!6",
stripe_index = NULL, latex_table_env = NULL, protect_latex = TRUE,
- table.envir = "table")
+ table.envir = "table", fixed_thead = FALSE)
}
\arguments{
\item{kable_input}{Output of \code{knitr::kable()} with \code{format} specified}
@@ -81,6 +81,9 @@
a plain no-caption table in a \code{table} environment in order to center the
table. You can specify this option to things like \code{table*} or \code{float*} based
on your need.}
+
+\item{fixed_thead}{HTML table option so table header row is fixed at top.
+Values can be either T/F or \code{list(enabled = T/F, background = "anycolor")}.}
}
\description{
This function provides a cleaner approach to modify the style
diff --git a/man/scroll_box.Rd b/man/scroll_box.Rd
index 1cc6742..5d4b3af 100644
--- a/man/scroll_box.Rd
+++ b/man/scroll_box.Rd
@@ -6,7 +6,7 @@
\usage{
scroll_box(kable_input, height = NULL, width = NULL,
box_css = "border: 1px solid #ddd; padding: 5px; ", extra_css = NULL,
- fixed_thead = list(enabled = F, background = "#fff"))
+ fixed_thead = TRUE)
}
\arguments{
\item{kable_input}{A HTML kable object}
@@ -19,8 +19,8 @@
\item{extra_css}{Extra CSS styles}
-\item{fixed_thead}{A list of two named element. enabled and background.
-Default is F and white, e.g. "list(enabled = T, background = "#fff")"}
+\item{fixed_thead}{HTML table option so table header row is fixed at top.
+Values can be either T/F or \code{list(enabled = T/F, background = "anycolor")}.}
}
\description{
This function will put a HTML kable object in a fixed-height,
diff --git a/vignettes/awesome_table_in_html.Rmd b/vignettes/awesome_table_in_html.Rmd
index e23cf9f..576bcf9 100644
--- a/vignettes/awesome_table_in_html.Rmd
+++ b/vignettes/awesome_table_in_html.Rmd
@@ -119,6 +119,14 @@
kable_styling(bootstrap_options = "striped", font_size = 7)
```
+## Fixed Table Header Row
+If you happened to have a very long table, you may consider to use this `fixed_header` option to fix the header row on top as your readers scroll. By default, the background is set to white. If you need a different color, you can set `fixed_header = list(enabled = T, background = "red")`.
+
+```{r}
+kable(mtcars[1:10, 1:5]) %>%
+ kable_styling(fixed_thead = T)
+```
+
# Column / Row Specification
## Column spec
When you have a table with lots of explanatory texts, you may want to specified the column width for different column, since the auto adjust in HTML may not work in its best way while basic LaTeX table is really bad at handling text wrapping. Also, sometimes, you may want to highlight a column (e.g. a "Total" column) by making it bold. In these scenario, you can use `column_spec()`. You can find an example below.
@@ -176,13 +184,13 @@
mtcars[1:10, 1:2] %>%
mutate(
car = row.names(.),
- mpg = cell_spec(mpg, color = ifelse(mpg > 20, "red", "blue")),
- cyl = cell_spec(cyl, color = "white", align = "c", angle = 45,
+ mpg = cell_spec(mpg, "html", color = ifelse(mpg > 20, "red", "blue")),
+ cyl = cell_spec(cyl, "html", color = "white", align = "c", angle = 45,
background = factor(cyl, c(4, 6, 8),
c("#666666", "#999999", "#BBBBBB")))
) %>%
select(car, mpg, cyl) %>%
- kable(escape = F) %>%
+ kable(format = "html", escape = F) %>%
kable_styling("striped", full_width = F)
```
@@ -322,31 +330,49 @@
```
## Group rows via labeling
-Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function `group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
+Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the function `group_rows()`/`pack_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
```{r}
kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)
```
-Another way to use `group_rows` is to provide an grouping index, similar with `add_header_above()`. This feature is only available in kableExtra > 0.5.2.
+Another way to use `pack_rows` is to provide an grouping index, similar with `add_header_above()`. This feature is only available in kableExtra > 0.5.2.
```{r, eval = F}
# Not evaluated. This example generates the same table as above.
kable(mtcars[1:10, 1:6], caption = "Group Rows") %>%
kable_styling("striped", full_width = F) %>%
- group_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))
+ pack_rows(index = c(" " = 3, "Group 1" = 4, "Group 2" = 3))
```
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt) %>%
kable_styling("striped", full_width = F) %>%
- group_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")
+ pack_rows("Group 1", 3, 5, label_row_css = "background-color: #666; color: #fff;")
+```
+
+`r text_spec("Important Note!", bold = T, color = "#D7261E")`
+
+Note that `dplyr` 0.8.0+ introduced a `group_rows` function as well for a trivial feature. Therefore, I'm create this `pack_rows` function as an alias to the original `group_rows`. In the future, **I recommend all kableExtra users to use `pack_rows` instead of `group_rows` to get rid of the NAMESPACE conflict.**
+
+Alternatively, for pre-existing codes, you have two ways to solve this. You can either load `kableExtra` after `dplyr` or `tidyverse`, or to use the `conflicted` package. Here is an example.
+
+```{r, eval=F}
+# Method 1
+pack_rows() # instead of group_rows()
+
+# Method 2
+library(dplyr)
+library(kableExtra)
+
+# Method 3
+conflicted::conflict_prefer("group_rows", "kableExtra", "dplyr")
```
## Row indentation
-Unlike `group_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more apporiate.
+Unlike `pack_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more apporiate.
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt) %>%
@@ -355,7 +381,7 @@
```
## Group rows via multi-row cell
-Function `group_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider to use `collapse_rows` instead, which will put repeating cells in columns into multi-row cells. The vertical allignment of the cell is controlled by `valign` with default as "top".
+Function `pack_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider to use `collapse_rows` instead, which will put repeating cells in columns into multi-row cells. The vertical allignment of the cell is controlled by `valign` with default as "top".
```{r}
collapse_rows_dt <- data.frame(C1 = c(rep("a", 10), rep("b", 5)),
@@ -436,10 +462,13 @@
```{r}
kable(cbind(mtcars, mtcars)) %>%
+ add_header_above(c("a" = 5, "b" = 18)) %>%
kable_styling() %>%
scroll_box(width = "100%", height = "200px")
```
+Starting from version 1.1.0, if you have a fixed-height box, the header row is fixed
+
## Save HTML table directly
If you need to save those HTML tables but you don't want to generate them through rmarkdown, you can try to use the `save_kable()` function. You can choose whether to let those HTML files be self contained (default is yes). Self contained files packed CSS into the HTML file so they are quite large when there are many.
```{r, eval=FALSE}
diff --git a/vignettes/awesome_table_in_pdf.Rmd b/vignettes/awesome_table_in_pdf.Rmd
index 881e5c6..257deb6 100644
--- a/vignettes/awesome_table_in_pdf.Rmd
+++ b/vignettes/awesome_table_in_pdf.Rmd
@@ -134,6 +134,13 @@
kable_styling(latex_options = "striped")
```
+You can also specify which rows you want to striped on via `stripe_index`. In most case, you might want to turn off the default 5 rows + a space setting in `knitr::kable()` by setting `linesep = ""`. See this SO answer for details. https://stackoverflow.com/questions/45409750/get-rid-of-addlinespace-in-kable.
+
+```{r}
+kable(mtcars[1:8, 1:4], "latex", booktabs = T, linesep = "") %>%
+ kable_styling(latex_options = "striped", stripe_index = c(1,2, 5:6))
+```
+
### Hold position
If you provide a table caption in `kable()`, it will put your LaTeX tabular in a `table` environment, unless you are using `longtable`. A `table` environment will automatically find the best place (it thinks) to put your table. However, in many cases, you do want your table to appear in a position you want it to be. In this case, you can use this `hold_position` options here.
```{r}
@@ -317,25 +324,25 @@
```
## Group rows via labeling
-Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the new function `group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
+Sometimes we want a few rows of the table being grouped together. They might be items under the same topic (e.g., animals in one species) or just different data groups for a categorical variable (e.g., age < 40, age > 40). With the function `pack_rows`/`group_rows()` in `kableExtra`, this kind of task can be completed in one line. Please see the example below. Note that when you count for the start/end rows of the group, you don't need to count for the header rows nor other group label rows. You only need to think about the row numbers in the "original R dataframe".
```{r}
kable(mtcars[1:10, 1:6], "latex", caption = "Group Rows", booktabs = T) %>%
kable_styling() %>%
- group_rows("Group 1", 4, 7) %>%
- group_rows("Group 2", 8, 10)
+ pack_rows("Group 1", 4, 7) %>%
+ pack_rows("Group 2", 8, 10)
```
In case some users need it, you can define your own gapping spaces between the group labeling row and previous rows. The default value is `0.5em`.
```{r}
kable(dt, "latex", booktabs = T) %>%
- group_rows("Group 1", 4, 5, latex_gap_space = "2em")
+ pack_rows("Group 1", 4, 5, latex_gap_space = "2em")
```
If you prefer to build multiple groups in one step, you can use the short-hand `index` option. Basically, you can use it in the same way as you use `add_header_above`. However, since `group_row` only support one layer of grouping, you can't add multiple layers of grouping header as you can do in `add_header_above`.
```{r, eval=FALSE}
kable(mtcars[1:10, 1:6], "latex", caption = "Group Rows", booktabs = T) %>%
kable_styling() %>%
- group_rows(index=c(" " = 3, "Group 1" = 4, "Group 2" = 3))
+ pack_rows(index=c(" " = 3, "Group 1" = 4, "Group 2" = 3))
# Not evaluated. The code above should have the same result as the first example in this section.
```
@@ -355,7 +362,7 @@
LaTeX, somehow shows surprisingly high tolerance on that, which is quite unusual. As a result, it won't throw an error if you are just using `kable` to make some simple tables. However, when you use `kableExtra` to make some advanced modification, it will start to throw some bugs. As a result, please try to form a habit of using a vector in the `align` argument for `kable` (tip: you can use `rep` function to replicate elements. For example, `c("c", rep("l", 10))`).
## Row indentation
-Unlike `group_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more appropriate.
+Unlike `pack_rows()`, which will insert a labeling row, sometimes we want to list a few sub groups under a total one. In that case, `add_indent()` is probably more appropriate.
For advanced users, you can even define your own css for the group labeling.
```{r}
kable(dt, "latex", booktabs = T) %>%
@@ -363,7 +370,7 @@
```
## Group rows via multi-row cell
-Function `group_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider using `collapse_rows` instead, which will put repeating cells in columns into multi-row cells.
+Function `pack_rows` is great for showing simple structural information on rows but sometimes people may need to show structural information with multiple layers. When it happens, you may consider using `collapse_rows` instead, which will put repeating cells in columns into multi-row cells.
In LaTeX, `collapse_rows` adds some extra hlines to help differentiate groups. You can customize this behavior using the `latex_hline` argument. You can choose from `full` (default), `major` and `none`. Vertical alignment of cells is controlled by the `valign` option. You can choose from "top", "middle"(default) and "bottom". Be cautious that the vertical alignment option was only introduced in multirow in 2016. If you are using a legacy LaTeX distribution, you will run into trouble if you set `valign` to be either "top" or "bottom".
@@ -450,7 +457,7 @@
)
```
-If you need to add footnote marks in a table, you need to do it manually (no fancy) using `footnote_marker_***()`. Remember that similar with `cell_spec`, you need to tell this function whether you want it to do it in `HTML` (default) or `LaTeX`. You can set it for all using the `knitr.table.format` global option. Also, if you have ever used `footnote_marker_***()`, you need to put `escape = F` in your `kable` function to avoid escaping of special characters. Note that if you want to use these `footnote_marker` functions in `kableExtra` functions like `group_rows` (for the row label) or `add_header_above`, you need to set `double_escape = T` and `escape = F` in those functions. I'm trying to find other ways around. Please let me know if you have a good idea and are willing to contribute.
+If you need to add footnote marks in a table, you need to do it manually (no fancy) using `footnote_marker_***()`. Remember that similar with `cell_spec`, you need to tell this function whether you want it to do it in `HTML` (default) or `LaTeX`. You can set it for all using the `knitr.table.format` global option. Also, if you have ever used `footnote_marker_***()`, you need to put `escape = F` in your `kable` function to avoid escaping of special characters. Note that if you want to use these `footnote_marker` functions in `kableExtra` functions like `pack_rows` (for the row label) or `add_header_above`, you need to set `double_escape = T` and `escape = F` in those functions. I'm trying to find other ways around. Please let me know if you have a good idea and are willing to contribute.
```{r}
dt_footnote <- dt
@@ -492,7 +499,7 @@
col.names = linebreak(c("Item\n(Name)", "Value\n(Number)"), align = "c"))
```
-At the same time, since `kableExtra 0.8.0`, all `kableExtra` functions that have some contents input (such as `footnote` or `group_rows`) will automatically convert `\n` to linebreaks for you in both LaTeX and HTML.
+At the same time, since `kableExtra 0.8.0`, all `kableExtra` functions that have some contents input (such as `footnote` or `pack_rows`) will automatically convert `\n` to linebreaks for you in both LaTeX and HTML.
## Table on a Landscape Page
@@ -505,7 +512,7 @@
"Group 1 contains mpg, cyl and disp",
"Group 2 contains hp, drat and wt"),
notation = "symbol") %>%
- group_rows("Group 1", 4, 5) %>%
+ pack_rows("Group 1", 4, 5) %>%
landscape()
```
diff --git a/vignettes/best_practice_for_newline_in_latex_table.Rmd b/vignettes/best_practice_for_newline_in_latex_table.Rmd
index 5cd5006..f225193 100644
--- a/vignettes/best_practice_for_newline_in_latex_table.Rmd
+++ b/vignettes/best_practice_for_newline_in_latex_table.Rmd
@@ -75,7 +75,7 @@
```
### Linebreak in other kableExtra functions
-If you have a need to put a linebreak in `kableExtra` functions such as `add_header_above` and `group_rows`, just go ahead and use `\n` directly (in kableExtra >= 0.8.0) and it will be automatically converted. Note that this feature is also controlled by the `escape` option in those functions.
+If you have a need to put a linebreak in `kableExtra` functions such as `add_header_above` and `pack_rows`, just go ahead and use `\n` directly (in kableExtra >= 0.8.0) and it will be automatically converted. Note that this feature is also controlled by the `escape` option in those functions.
```{r}
dt2 %>%
@@ -83,6 +83,6 @@
kable("latex", booktabs = T, escape = F,
col.names = linebreak(c("Item\n(Name)", "Value\n(Number)"), align = "c")) %>%
add_header_above(c("Combined\nTitle" = 2)) %>%
- group_rows("Group\n1", 2, 2)
+ pack_rows("Group\n1", 2, 2)
```