WorldBank
I. Giới thiệu
Trong thời gian gần đây, vấn đề biến đổi khí hậu và khí thải carbon
dioxide (CO2) đã trở thành một trong những vấn đề quan trọng hàng đầu
trên thế giới. Việc theo dõi và phân tích lượng khí thải CO2 của các
quốc gia là cực kỳ quan trọng để hiểu và đánh giá tác động của mỗi quốc
gia đối với môi trường và biến đổi khí hậu toàn cầu. Bài tiểu luận này
sẽ tập trung vào phân tích bộ dữ liệu EN.ATM.CO2E.PC của Việt Nam từ năm
2010 đến 2022.
EN.ATM.CO2E.PC là một mã chỉ số trong cơ sở dữ liệu của World Bank.
Mã này đại diện cho “Tổng lượng khí thải CO2 (tấn) trên mỗi người” và
được tính bằng cách chia tổng lượng khí thải CO2 của một quốc gia cho
dân số của quốc gia đó.
Mã “EN” trong EN.ATM.CO2E.PC đại diện cho “Environment” (Môi
trường) và chỉ ra rằng chỉ số này liên quan đến các chỉ số môi
trường.
Mã “ATM” chứng tỏ phương pháp đo lường sử dụng trong chỉ số,
trong trường hợp này là khí quyển (Atmosphere).
Mã “CO2E” đại diện cho “CO2 equivalent” (tương đương CO2), chỉ ra
rằng chỉ số này bao gồm tất cả các khí thải gây hiệu ứng nhà kính
(greenhouse gases) được quy đổi thành tương đương CO2.
Cuối cùng, “PC” là viết tắt của “per capita” (trên mỗi người),
chỉ ra rằng chỉ số này được tính theo số liệu dân số.
- Tổng quan
Dữ liệu EN.ATM.CO2E.PC (Total CO2 emissions per capita) cung cấp thông
tin về lượng khí thải CO2 trung bình mà mỗi người dân trong một quốc gia
gây ra. Đây là một chỉ số quan trọng để đánh giá mức độ ô nhiễm không
khí và đóng góp của mỗi quốc gia vào biến đổi khí hậu toàn cầu.Nó được
tính toán bằng cách chia tổng lượng khí thải CO2 của một quốc gia trong
một năm cho dân số của quốc gia đó. Kết quả được biểu thị dưới dạng tấn
CO2 trên mỗi người.
Dữ liệu này cung cấp một cái nhìn tổng quan về mức độ ô nhiễm khí thải
CO2 của các quốc gia và có thể được sử dụng để so sánh mức độ ô nhiễm
giữa các quốc gia khác nhau và theo thời gian. Nó cũng cho phép phân
tích xu hướng tăng hoặc giảm lượng khí thải CO2 theo dân số.
Dữ liệu EN.ATM.CO2E.PC thường được thu thập và công bố bởi các tổ chức
như World Bank, United Nations Framework Convention on Climate Change
(UNFCCC) và các cơ quan môi trường quốc gia. Điều này giúp cung cấp
thông tin quan trọng và cơ sở để theo dõi và đánh giá hiệu quả các biện
pháp giảm thiểu khí thải và quản lý môi trường.
- Phân tích
- Giai đoạn 2010-2020
## Warning: package 'WDI' was built under R version 4.3.3
## Warning: package 'ggplot2' was built under R version 4.3.3
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.4 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.1
## ✔ ggplot2 3.5.0 ✔ tibble 3.2.1
## ✔ lubridate 1.9.3 ✔ tidyr 1.3.0
## ✔ purrr 1.0.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(ggplot2)
library(dplyr)
d1 <- WDI(indicator = 'EN.ATM.CO2E.PC', country = c('VNM'), start = 2011, end = 2020)
ggplot(d1, aes(x = year, y = EN.ATM.CO2E.PC)) +
geom_bar(stat = "identity", fill = "pink") +
labs(x = "Năm", y = "Lượng thải CO2 (tấn/người)",
title = "Biểu đồ thể hiện lượng thải CO2 của mỗi người tại Việt Nam giai đoạn 2011-2020")

Dựa trên bộ dữ liệu lượng CO2 trung bình mỗi người thải ra môi trường
trong giai đoạn từ 2011 đến 2020, ta có thể nhận thấy một số điểm nhấn
và xu hướng:
Tăng dần theo thời gian: Xu hướng chung là lượng CO2 trung bình
mỗi người thải ra môi trường đã tăng từ năm 2011 đến năm 2020. Điều này
cho thấy sự gia tăng trong sự ô nhiễm môi trường từ khí thải CO2 trong
suốt giai đoạn này.
Biến đổi không đều: Mặc dù có sự tăng dần chung theo thời gian,
có những năm với sự tăng đột biến và những năm với sự tăng chậm hơn. Ví
dụ, từ năm 2011 đến 2013, lượng CO2 trung bình mỗi người tăng từ khoảng
1.76 lên 1.82, tăng chậm hơn so với những năm sau đó.
Tăng đột biến vào năm 2020: Có một sự gia tăng đáng kể trong
lượng CO2 trung bình mỗi người vào năm 2020, với giá trị là 3.68. Điều
này có thể được giải thích bởi những yếu tố như tăng trưởng kinh tế, sự
thay đổi trong mô hình sản xuất và tiêu dùng, hoặc các sự kiện đặc biệt
như đại dịch COVID-19.
Ý nghĩa đối với biến đổi khí hậu: Lượng CO2 trung bình mỗi người
thải ra môi trường là một chỉ số quan trọng để đánh giá tác động của con
người đối với biến đổi khí hậu. Sự tăng đáng kể và liên tục trong lượng
CO2 thải ra môi trường trong giai đoạn 2011-2020 đòi hỏi các biện pháp
hạn chế thải khí nhà kính và chuyển đổi sang các nguồn năng lượng tái
tạo và thân thiện môi trường.
- Giai đoạn “Covid 19”
d2 <- WDI(indicator = 'EN.ATM.CO2E.PC', country = c('VNM','CHN','USA','IND','RUS','KOR','JPN'), start = 2018, end = 2020)
ggplot(d2, aes(x = year, y = EN.ATM.CO2E.PC, color = country)) +
geom_line() +
geom_point() +
labs(x = "Năm", y = "Lượng khí thải CO2 trên mỗi người (tấn)",
title = "Biểu đồ xu hướng phát thải khí CO2 trên mỗi người giai đoạn Covid19",
color = "Quốc gia")
Dựa trên dữ liệu về lượng CO2 trung bình mỗi người thải ra môi trường
trong giai đoạn 2018-2020 cho 7 quốc gia (Trung Quốc, Ấn Độ, Nhật Bản,
Hàn Quốc, Liên bang Nga, Hoa Kỳ và Việt Nam), ta có thể nhận xét như
sau:
Trung Quốc: Trung Quốc có mức độ thải CO2 trung bình mỗi người
cao, với giá trị từ 7.533193 đến 7.756138 trong giai đoạn 2018-2020. Đây
là do Trung Quốc có dân số đông và là một trong những nền kinh tế lớn
nhất thế giới.
Ấn Độ: Ấn Độ cũng có mức độ thải CO2 trung bình mỗi người tương
đối cao, từ 1.576093 đến 1.795595 trong giai đoạn 2018-2020. Đây là do
Ấn Độ cũng có dân số đông và đang phát triển kinh tế nhanh
chóng.
Nhật Bản: Nhật Bản có mức độ thải CO2 trung bình mỗi người cao,
từ 8.031496 đến 8.761979 trong giai đoạn 2018-2020. Đây có thể là do
Nhật Bản có một nền công nghiệp lớn và sử dụng nhiều nguồn năng lượng
hóa thạch.
Hàn Quốc: Hàn Quốc có mức độ thải CO2 trung bình mỗi người cao,
từ 10.990030 đến 12.216456 trong giai đoạn 2018-2020. Đây có thể là do
Hàn Quốc cũng có một nền công nghiệp phát triển và sử dụng nhiều nguồn
năng lượng hóa thạch.
Liên bang Nga: Liên bang Nga có mức độ thải CO2 trung bình mỗi
người tương đối cao, từ 11.232288 đến 11.797194 trong giai đoạn
2018-2020. Đây có thể là do nước này có một nền kinh tế phụ thuộc vào
ngành công nghiệp nặng và tài nguyên hóa thạch.
Hoa Kỳ: Hoa Kỳ có mức độ thải CO2 trung bình mỗi người cao nhất
trong số các quốc gia này, từ 13.032828 đến 15.222518 trong giai đoạn
2018-2020. Đây là do Hoa Kỳ có một nền công nghiệp phát triển và sử dụng
nhiều nguồn năng lượng hóa thạch.
Việt Nam: Việt Nam có mức độ thải CO2 trung bình mỗi người thấp
hơn so với các quốc gia khác, từ 3.014711 đến 3.676440 trong giai đoạn
2018-2020. Đây có thể là do Việt Nam vẫn đang phát triển kinh tế và sử
dụng nhiều nguồn năng lượng tái tạo.
Tổng quan, các quốc gia có mức độ phát thải CO2 cao hơn thường có dân số
đông, nền kinh tế lớn và sử dụng nhiều nguồn năng lượng hóa thạch. Trong
khi đó, các quốc gia có mức độ phát thải CO2 thấp hơn thường có dân số
ít hơn, đang phát triển kinh tế và sử dụng nhiều nguồn năng lượng tái
tạo hơn
IMF
## Warning: package 'imf.data' was built under R version 4.3.3
library(tidyverse)
library(tidyr)
dataset <- list_datasets()
b <- load_datasets("APDREO")
library(DT)
library(flextable)
##
## Attaching package: 'flextable'
## The following object is masked from 'package:purrr':
##
## compose
View(b$dimensions$indicator)
b1 <- b$get_series(freq = 'A', ref_area = 'VN', indicator = 'PCPIE_PCH')
datatable(b1)
I. Giới thiệu
Bộ dữ liệu PCPIE_PCH (tên đầy đủ: Per Capita Income, Price Level, and
GDP per Capita in Real Terms) là một tập dữ liệu được cung cấp bởi Quỹ
Tiền tệ Quốc tế (IMF) bao gồm thông tin về thu nhập bình quân đầu người,
mức giá và GDP bình quân đầu người theo giá thực của các quốc gia trên
thế giới. Dữ liệu được cập nhật thường xuyên và có thể truy cập miễn phí
trên trang web của IMF.
Bộ dữ liệu PCPIE_PCH bao gồm các cột sau:
Mã quốc gia: Mã ISO 3166-1 alpha-3 của quốc gia
Năm: Năm dữ liệu được ghi nhận
Thu nhập bình quân đầu người (danh nghĩa): GDP bình quân đầu
người theo giá trị danh nghĩa (USD)
Mức giá: Mức giá tiêu dùng (CPI)
GDP bình quân đầu người (thực tế): GDP bình quân đầu người theo
giá thực (USD)
- Tổng quan
- Giai đoạn quá khứ 2014-2018
names(b1) <- c("Year","PerAnual")
b2 <- b1 %>% filter(Year == 2014|Year == 2015|Year == 2016|Year == 2017| Year == 2018)
ggplot(b2,aes(x = Year, y = PerAnual)) +
geom_col() +
labs(title = "Biểu đồ thể hiện chỉ số giá giai đoạn 2014-2018",
x = "Năm",
y = "Chỉ số giá(%)")

Tổng quan, giai đoạn từ 2014 đến 2018 đã chứng kiến sự biến động mạnh mẽ
của chỉ số giá trung bình.
Chỉ số giá trung bình có sự biến động mạnh trong giai đoạn này, với mức
tăng cao nhất vào năm 2016 (4,7%) và mức giảm thấp nhất vào năm 2015
(0,597%).
Chỉ số giá trung bình có xu hướng tăng trong giai đoạn này, với mức tăng
tổng cộng là 12,75% từ năm 2014 đến năm 2018.
Mức tăng trung bình của chỉ số giá trong giai đoạn này là 2,55% mỗi năm.
b11 <- c(1.83916209933333, 0.597097329925695, 4.73724753451867, 2.59735516451939, 2.98296514826081)
mean(b11)
## [1] 2.550765
## [1] 12.75383
- Giai đoạn hiện tại 2019-2023
b3 <- filter(b1, Year == 2019 | Year == 2020 | Year == 2021 | Year == 2022 | Year == 2023)
ggplot(b3, aes(x = Year, y = PerAnual, group = 1)) +
geom_line(color = "darkgreen", linewidth = 1) +
geom_point(color= "black") +
geom_smooth(method = "lm", se = FALSE, color = "red") +
labs(title = "Biểu đồ thể hiện chỉ số giá 2019-2023", x = "Năm", y = "CPI(%)")
## `geom_smooth()` using formula = 'y ~ x'
CPI có sự biến động mạnh trong giai đoạn này, với mức tăng cao nhất là
5,24% (năm 2019) và mức giảm sâu nhất là 0,19% (năm 2020). Nhìn chung,
CPI có xu hướng tăng trong giai đoạn này, với mức tăng tổng cộng là
16,98% từ năm 2019 đến năm 2023. Mức tăng trung bình của CPI là 3,2% mỗi
năm.
b31 <- c(5.23664701066823,0.187234072315773,1.80834501604547,4.60752116019626,4.13999999999988)
mean(b31)
## [1] 3.195949
## [1] 15.97975
Biến động này có thể do nhiều yếu tố ảnh hưởng, bao gồm: Giá cả hàng hóa
thế giới biến động, đặc biệt là giá dầu mỏ. Nhu cầu tiêu dùng trong nước
tăng cao. Chính sách tiền tệ và tài khóa của Chính phủ.
- Giai đoạn tương lai 2024-2028
b4 <- filter(b1, Year == 2024 | Year == 2025 | Year == 2026 | Year == 2027 | Year == 2028)
ggplot(b4, aes(x = "Year" , y = PerAnual, fill= as.factor(Year))) +
geom_bar(width = 1, stat = "identity") +
coord_polar("y", start = 0) +
labs(fill = "Year", x = NULL, y = NULL, title = "Biểu đồ thể hiện chỉ số giá 2024-2028")

Chỉ số giá có sự biến động trong giai đoạn này, với mức cao nhất là
5,24% (năm 2019) và mức thấp nhất là 3,35% (năm 2024). Xu hướng: Nhìn
chung, chỉ số giá có xu hướng tăng nhẹ qua các năm. Mặc dù có sự biến
động nhỏ, nhưng giá cả nhìn chung có chiều hướng đi lên trong giai đoạn
2024-2028. Độ biến động: Sự thay đổi của chỉ số giá giữa các năm là
tương đối nhỏ. Điều này có thể cho thấy nền kinh tế tương đối ổn định về
mặt giá cả.
LS0tDQp0aXRsZTogIk5WNiINCmF1dGhvcjogImhuZCINCmRhdGU6ICJgciBmb3JtYXQoU3lzLnRpbWUoKSwgJyVIOiVNOiVTLCAlZCAtICVtIC0gJVknKWAiDQpvdXRwdXQ6IA0KICBodG1sX2RvY3VtZW50OiANCiAgIGNvZGVfZG93bmxvYWQ6IHRydWUNCiAgIGNvZGVfZm9sZGluZzogaGlkZQ0KICAgdG9jX2Zsb2F0OiB0cnVlDQogICB0b2M6IHRydWUNCiAgIHRoZW1lOiAiZGVmYXVsdCINCiAgIGhpZ2hsaWdodDogdGFuZ28NCi0tLQ0KDQpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0NCmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVFJVRSkNCmBgYA0KPGJvZHk+DQo8aDE+V29ybGRCYW5rPC9oMT4NCjxoMj5JLiBHaeG7m2kgdGhp4buHdTwvaDI+DQo8cD5Ucm9uZyB0aOG7nWkgZ2lhbiBn4bqnbiDEkcOieSwgduG6pW4gxJHhu4EgYmnhur9uIMSR4buVaSBraMOtIGjhuq11IHbDoCBraMOtIHRo4bqjaSBjYXJib24gZGlveGlkZSAoQ08yKSDEkcOjIHRy4bufIHRow6BuaCBt4buZdCB0cm9uZyBuaOG7r25nIHbhuqVuIMSR4buBIHF1YW4gdHLhu41uZyBow6BuZyDEkeG6p3UgdHLDqm4gdGjhur8gZ2nhu5tpLiBWaeG7h2MgdGhlbyBkw7VpIHbDoCBwaMOibiB0w61jaCBsxrDhu6NuZyBraMOtIHRo4bqjaSBDTzIgY+G7p2EgY8OhYyBxdeG7kWMgZ2lhIGzDoCBj4buxYyBr4buzIHF1YW4gdHLhu41uZyDEkeG7gyBoaeG7g3UgdsOgIMSRw6FuaCBnacOhIHTDoWMgxJHhu5luZyBj4bunYSBt4buXaSBxdeG7kWMgZ2lhIMSR4buRaSB24bubaSBtw7RpIHRyxrDhu51uZyB2w6AgYmnhur9uIMSR4buVaSBraMOtIGjhuq11IHRvw6BuIGPhuqd1LiBCw6BpIHRp4buDdSBsdeG6rW4gbsOgeSBz4bq9IHThuq1wIHRydW5nIHbDoG8gcGjDom4gdMOtY2ggYuG7mSBk4buvIGxp4buHdSBFTi5BVE0uQ08yRS5QQyBj4bunYSBWaeG7h3QgTmFtIHThu6sgbsSDbSAyMDEwIMSR4bq/biAyMDIyLjwvcD4NCg0KPHA+RU4uQVRNLkNPMkUuUEMgbMOgIG3hu5l0IG3DoyBjaOG7iSBz4buRIHRyb25nIGPGoSBz4bufIGThu68gbGnhu4d1IGPhu6dhIFdvcmxkIEJhbmsuIE3DoyBuw6B5IMSR4bqhaSBkaeG7h24gY2hvICJU4buVbmcgbMaw4bujbmcga2jDrSB0aOG6o2kgQ08yICh04bqlbikgdHLDqm4gbeG7l2kgbmfGsOG7nWkiIHbDoCDEkcaw4bujYyB0w61uaCBi4bqxbmcgY8OhY2ggY2hpYSB04buVbmcgbMaw4bujbmcga2jDrSB0aOG6o2kgQ08yIGPhu6dhIG3hu5l0IHF14buRYyBnaWEgY2hvIGTDom4gc+G7kSBj4bunYSBxdeG7kWMgZ2lhIMSRw7MuDQoNCi0gTcOjICJFTiIgdHJvbmcgRU4uQVRNLkNPMkUuUEMgxJHhuqFpIGRp4buHbiBjaG8gIkVudmlyb25tZW50IiAoTcO0aSB0csaw4budbmcpIHbDoCBjaOG7iSByYSBy4bqxbmcgY2jhu4kgc+G7kSBuw6B5IGxpw6puIHF1YW4gxJHhur9uIGPDoWMgY2jhu4kgc+G7kSBtw7RpIHRyxrDhu51uZy4NCg0KLSBNw6MgIkFUTSIgY2jhu6luZyB04buPIHBoxrDGoW5nIHBow6FwIMSRbyBsxrDhu51uZyBz4butIGThu6VuZyB0cm9uZyBjaOG7iSBz4buRLCB0cm9uZyB0csaw4budbmcgaOG7o3AgbsOgeSBsw6Aga2jDrSBxdXnhu4NuIChBdG1vc3BoZXJlKS4gDQoNCi0gTcOjICJDTzJFIiDEkeG6oWkgZGnhu4duIGNobyAiQ08yIGVxdWl2YWxlbnQiICh0xrDGoW5nIMSRxrDGoW5nIENPMiksIGNo4buJIHJhIHLhurFuZyBjaOG7iSBz4buRIG7DoHkgYmFvIGfhu5NtIHThuqV0IGPhuqMgY8OhYyBraMOtIHRo4bqjaSBnw6J5IGhp4buHdSDhu6luZyBuaMOgIGvDrW5oIChncmVlbmhvdXNlIGdhc2VzKSDEkcaw4bujYyBxdXkgxJHhu5VpIHRow6BuaCB0xrDGoW5nIMSRxrDGoW5nIENPMi4NCg0KLSBDdeG7kWkgY8O5bmcsICJQQyIgbMOgIHZp4bq/dCB04bqvdCBj4bunYSAicGVyIGNhcGl0YSIgKHRyw6puIG3hu5dpIG5nxrDhu51pKSwgY2jhu4kgcmEgcuG6sW5nIGNo4buJIHPhu5EgbsOgeSDEkcaw4bujYyB0w61uaCB0aGVvIHPhu5EgbGnhu4d1IGTDom4gc+G7kS48L3A+DQoNCjxoMj5JSS4gVOG7lW5nIHF1YW48L2gyPg0KPHA+ROG7ryBsaeG7h3UgRU4uQVRNLkNPMkUuUEMgKFRvdGFsIENPMiBlbWlzc2lvbnMgcGVyIGNhcGl0YSkgY3VuZyBj4bqlcCB0aMO0bmcgdGluIHbhu4EgbMaw4bujbmcga2jDrSB0aOG6o2kgQ08yIHRydW5nIGLDrG5oIG3DoCBt4buXaSBuZ8aw4budaSBkw6JuIHRyb25nIG3hu5l0IHF14buRYyBnaWEgZ8OieSByYS4gxJDDonkgbMOgIG3hu5l0IGNo4buJIHPhu5EgcXVhbiB0cuG7jW5nIMSR4buDIMSRw6FuaCBnacOhIG3hu6ljIMSR4buZIMO0IG5oaeG7hW0ga2jDtG5nIGtow60gdsOgIMSRw7NuZyBnw7NwIGPhu6dhIG3hu5dpIHF14buRYyBnaWEgdsOgbyBiaeG6v24gxJHhu5VpIGtow60gaOG6rXUgdG/DoG4gY+G6p3UuTsOzIMSRxrDhu6NjIHTDrW5oIHRvw6FuIGLhurFuZyBjw6FjaCBjaGlhIHThu5VuZyBsxrDhu6NuZyBraMOtIHRo4bqjaSBDTzIgY+G7p2EgbeG7mXQgcXXhu5FjIGdpYSB0cm9uZyBt4buZdCBuxINtIGNobyBkw6JuIHPhu5EgY+G7p2EgcXXhu5FjIGdpYSDEkcOzLiBL4bq/dCBxdeG6oyDEkcaw4bujYyBiaeG7g3UgdGjhu4sgZMaw4bubaSBk4bqhbmcgdOG6pW4gQ08yIHRyw6puIG3hu5dpIG5nxrDhu51pLjwvcD4NCg0KPHA+ROG7ryBsaeG7h3UgbsOgeSBjdW5nIGPhuqVwIG3hu5l0IGPDoWkgbmjDrG4gdOG7lW5nIHF1YW4gduG7gSBt4bupYyDEkeG7mSDDtCBuaGnhu4VtIGtow60gdGjhuqNpIENPMiBj4bunYSBjw6FjIHF14buRYyBnaWEgdsOgIGPDsyB0aOG7gyDEkcaw4bujYyBz4butIGThu6VuZyDEkeG7gyBzbyBzw6FuaCBt4bupYyDEkeG7mSDDtCBuaGnhu4VtIGdp4buvYSBjw6FjIHF14buRYyBnaWEga2jDoWMgbmhhdSB2w6AgdGhlbyB0aOG7nWkgZ2lhbi4gTsOzIGPFqW5nIGNobyBwaMOpcCBwaMOibiB0w61jaCB4dSBoxrDhu5tuZyB0xINuZyBob+G6t2MgZ2nhuqNtIGzGsOG7o25nIGtow60gdGjhuqNpIENPMiB0aGVvIGTDom4gc+G7kS48L3A+DQoNCjxwPkThu68gbGnhu4d1IEVOLkFUTS5DTzJFLlBDIHRoxrDhu51uZyDEkcaw4bujYyB0aHUgdGjhuq1wIHbDoCBjw7RuZyBi4buRIGLhu59pIGPDoWMgdOG7lSBjaOG7qWMgbmjGsCBXb3JsZCBCYW5rLCBVbml0ZWQgTmF0aW9ucyBGcmFtZXdvcmsgQ29udmVudGlvbiBvbiBDbGltYXRlIENoYW5nZSAoVU5GQ0NDKSB2w6AgY8OhYyBjxqEgcXVhbiBtw7RpIHRyxrDhu51uZyBxdeG7kWMgZ2lhLiDEkGnhu4F1IG7DoHkgZ2nDunAgY3VuZyBj4bqlcCB0aMO0bmcgdGluIHF1YW4gdHLhu41uZyB2w6AgY8ahIHPhu58gxJHhu4MgdGhlbyBkw7VpIHbDoCDEkcOhbmggZ2nDoSBoaeG7h3UgcXXhuqMgY8OhYyBiaeG7h24gcGjDoXAgZ2nhuqNtIHRoaeG7g3Uga2jDrSB0aOG6o2kgdsOgIHF14bqjbiBsw70gbcO0aSB0csaw4budbmcuPC9wPg0KDQo8aDI+SUlJLiBQaMOibiB0w61jaDwvaDI+DQo8aDM+MS4gR2lhaSDEkW/huqFuIDIwMTAtMjAyMDwvaDM+DQpgYGB7cn0NCmxpYnJhcnkoV0RJKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KGdncGxvdDIpDQpsaWJyYXJ5KGRwbHlyKQ0KZDEgPC0gV0RJKGluZGljYXRvciA9ICdFTi5BVE0uQ08yRS5QQycsIGNvdW50cnkgPSBjKCdWTk0nKSwgc3RhcnQgPSAyMDExLCBlbmQgPSAyMDIwKQ0KICBnZ3Bsb3QoZDEsIGFlcyh4ID0geWVhciwgeSA9IEVOLkFUTS5DTzJFLlBDKSkgKw0KICBnZW9tX2JhcihzdGF0ID0gImlkZW50aXR5IiwgZmlsbCA9ICJwaW5rIikgKw0KICBsYWJzKHggPSAiTsSDbSIsIHkgPSAiTMaw4bujbmcgdGjhuqNpIENPMiAodOG6pW4vbmfGsOG7nWkpIiwNCiAgICAgICB0aXRsZSA9ICJCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIGzGsOG7o25nIHRo4bqjaSBDTzIgY+G7p2EgbeG7l2kgbmfGsOG7nWkgdOG6oWkgVmnhu4d0IE5hbSBnaWFpIMSRb+G6oW4gMjAxMS0yMDIwIikNCmBgYA0KDQo8aDQ+ROG7sWEgdHLDqm4gYuG7mSBk4buvIGxp4buHdSBsxrDhu6NuZyBDTzIgdHJ1bmcgYsOsbmggbeG7l2kgbmfGsOG7nWkgdGjhuqNpIHJhIG3DtGkgdHLGsOG7nW5nIHRyb25nIGdpYWkgxJFv4bqhbiB04burIDIwMTEgxJHhur9uIDIwMjAsIHRhIGPDsyB0aOG7gyBuaOG6rW4gdGjhuqV5IG3hu5l0IHPhu5EgxJFp4buDbSBuaOG6pW4gdsOgIHh1IGjGsOG7m25nOjwvaDQ+DQoNCi0gVMSDbmcgZOG6p24gdGhlbyB0aOG7nWkgZ2lhbjogWHUgaMaw4bubbmcgY2h1bmcgbMOgIGzGsOG7o25nIENPMiB0cnVuZyBiw6xuaCBt4buXaSBuZ8aw4budaSB0aOG6o2kgcmEgbcO0aSB0csaw4budbmcgxJHDoyB0xINuZyB04burIG7Eg20gMjAxMSDEkeG6v24gbsSDbSAyMDIwLiDEkGnhu4F1IG7DoHkgY2hvIHRo4bqleSBz4buxIGdpYSB0xINuZyB0cm9uZyBz4buxIMO0IG5oaeG7hW0gbcO0aSB0csaw4budbmcgdOG7qyBraMOtIHRo4bqjaSBDTzIgdHJvbmcgc3Xhu5F0IGdpYWkgxJFv4bqhbiBuw6B5Lg0KDQotIEJp4bq/biDEkeG7lWkga2jDtG5nIMSR4buBdTogTeG6t2MgZMO5IGPDsyBz4buxIHTEg25nIGThuqduIGNodW5nIHRoZW8gdGjhu51pIGdpYW4sIGPDsyBuaOG7r25nIG7Eg20gduG7m2kgc+G7sSB0xINuZyDEkeG7mXQgYmnhur9uIHbDoCBuaOG7r25nIG7Eg20gduG7m2kgc+G7sSB0xINuZyBjaOG6rW0gaMahbi4gVsOtIGThu6UsIHThu6sgbsSDbSAyMDExIMSR4bq/biAyMDEzLCBsxrDhu6NuZyBDTzIgdHJ1bmcgYsOsbmggbeG7l2kgbmfGsOG7nWkgdMSDbmcgdOG7qyBraG/huqNuZyAxLjc2IGzDqm4gMS44MiwgdMSDbmcgY2jhuq1tIGjGoW4gc28gduG7m2kgbmjhu69uZyBuxINtIHNhdSDEkcOzLg0KDQotIFTEg25nIMSR4buZdCBiaeG6v24gdsOgbyBuxINtIDIwMjA6IEPDsyBt4buZdCBz4buxIGdpYSB0xINuZyDEkcOhbmcga+G7gyB0cm9uZyBsxrDhu6NuZyBDTzIgdHJ1bmcgYsOsbmggbeG7l2kgbmfGsOG7nWkgdsOgbyBuxINtIDIwMjAsIHbhu5tpIGdpw6EgdHLhu4sgbMOgIDMuNjguIMSQaeG7gXUgbsOgeSBjw7MgdGjhu4MgxJHGsOG7o2MgZ2nhuqNpIHRow61jaCBi4bufaSBuaOG7r25nIHnhur91IHThu5EgbmjGsCB0xINuZyB0csaw4bufbmcga2luaCB04bq/LCBz4buxIHRoYXkgxJHhu5VpIHRyb25nIG3DtCBow6xuaCBz4bqjbiB4deG6pXQgdsOgIHRpw6p1IGTDuW5nLCBob+G6t2MgY8OhYyBz4buxIGtp4buHbiDEkeG6t2MgYmnhu4d0IG5oxrAgxJHhuqFpIGThu4tjaCBDT1ZJRC0xOS4NCg0KLSDDnSBuZ2jEqWEgxJHhu5FpIHbhu5tpIGJp4bq/biDEkeG7lWkga2jDrSBo4bqtdTogTMaw4bujbmcgQ08yIHRydW5nIGLDrG5oIG3hu5dpIG5nxrDhu51pIHRo4bqjaSByYSBtw7RpIHRyxrDhu51uZyBsw6AgbeG7mXQgY2jhu4kgc+G7kSBxdWFuIHRy4buNbmcgxJHhu4MgxJHDoW5oIGdpw6EgdMOhYyDEkeG7mW5nIGPhu6dhIGNvbiBuZ8aw4budaSDEkeG7kWkgduG7m2kgYmnhur9uIMSR4buVaSBraMOtIGjhuq11LiBT4buxIHTEg25nIMSRw6FuZyBr4buDIHbDoCBsacOqbiB04bulYyB0cm9uZyBsxrDhu6NuZyBDTzIgdGjhuqNpIHJhIG3DtGkgdHLGsOG7nW5nIHRyb25nIGdpYWkgxJFv4bqhbiAyMDExLTIwMjAgxJHDsmkgaOG7j2kgY8OhYyBiaeG7h24gcGjDoXAgaOG6oW4gY2jhur8gdGjhuqNpIGtow60gbmjDoCBrw61uaCB2w6AgY2h1eeG7g24gxJHhu5VpIHNhbmcgY8OhYyBuZ3Xhu5NuIG7Eg25nIGzGsOG7o25nIHTDoWkgdOG6oW8gdsOgIHRow6JuIHRoaeG7h24gbcO0aSB0csaw4budbmcuDQoNCg0KDQo8aDM+Mi4gR2lhaSDEkW/huqFuICJDb3ZpZCAxOSI8L2gzPg0KYGBge3J9DQpkMiA8LSBXREkoaW5kaWNhdG9yID0gJ0VOLkFUTS5DTzJFLlBDJywgY291bnRyeSA9IGMoJ1ZOTScsJ0NITicsJ1VTQScsJ0lORCcsJ1JVUycsJ0tPUicsJ0pQTicpLCBzdGFydCA9IDIwMTgsIGVuZCA9IDIwMjApDQpnZ3Bsb3QoZDIsIGFlcyh4ID0geWVhciwgeSA9IEVOLkFUTS5DTzJFLlBDLCBjb2xvciA9IGNvdW50cnkpKSArDQogIGdlb21fbGluZSgpICsNCiAgZ2VvbV9wb2ludCgpICsNCiAgbGFicyh4ID0gIk7Eg20iLCB5ID0gIkzGsOG7o25nIGtow60gdGjhuqNpIENPMiB0csOqbiBt4buXaSBuZ8aw4budaSAodOG6pW4pIiwNCiAgICAgICB0aXRsZSA9ICJCaeG7g3UgxJHhu5MgeHUgaMaw4bubbmcgcGjDoXQgdGjhuqNpIGtow60gQ08yIHRyw6puIG3hu5dpIG5nxrDhu51pIGdpYWkgxJFv4bqhbiBDb3ZpZDE5IiwNCiAgICAgICBjb2xvciA9ICJRdeG7kWMgZ2lhIikgDQpgYGANCjxoND5E4buxYSB0csOqbiBk4buvIGxp4buHdSB24buBIGzGsOG7o25nIENPMiB0cnVuZyBiw6xuaCBt4buXaSBuZ8aw4budaSB0aOG6o2kgcmEgbcO0aSB0csaw4budbmcgdHJvbmcgZ2lhaSDEkW/huqFuIDIwMTgtMjAyMCBjaG8gNyBxdeG7kWMgZ2lhIChUcnVuZyBRdeG7kWMsIOG6pG4gxJDhu5ksIE5o4bqtdCBC4bqjbiwgSMOgbiBRdeG7kWMsIExpw6puIGJhbmcgTmdhLCBIb2EgS+G7syB2w6AgVmnhu4d0IE5hbSksIHRhIGPDsyB0aOG7gyBuaOG6rW4geMOpdCBuaMawIHNhdTo8L2g0Pg0KDQotIFRydW5nIFF14buRYzogVHJ1bmcgUXXhu5FjIGPDsyBt4bupYyDEkeG7mSB0aOG6o2kgQ08yIHRydW5nIGLDrG5oIG3hu5dpIG5nxrDhu51pIGNhbywgduG7m2kgZ2nDoSB0cuG7iyB04burIDcuNTMzMTkzIMSR4bq/biA3Ljc1NjEzOCB0cm9uZyBnaWFpIMSRb+G6oW4gMjAxOC0yMDIwLiDEkMOieSBsw6AgZG8gVHJ1bmcgUXXhu5FjIGPDsyBkw6JuIHPhu5EgxJHDtG5nIHbDoCBsw6AgbeG7mXQgdHJvbmcgbmjhu69uZyBu4buBbiBraW5oIHThur8gbOG7m24gbmjhuqV0IHRo4bq/IGdp4bubaS4NCg0KLSDhuqRuIMSQ4buZOiDhuqRuIMSQ4buZIGPFqW5nIGPDsyBt4bupYyDEkeG7mSB0aOG6o2kgQ08yIHRydW5nIGLDrG5oIG3hu5dpIG5nxrDhu51pIHTGsMahbmcgxJHhu5FpIGNhbywgdOG7qyAxLjU3NjA5MyDEkeG6v24gMS43OTU1OTUgdHJvbmcgZ2lhaSDEkW/huqFuIDIwMTgtMjAyMC4gxJDDonkgbMOgIGRvIOG6pG4gxJDhu5kgY8WpbmcgY8OzIGTDom4gc+G7kSDEkcO0bmcgdsOgIMSRYW5nIHBow6F0IHRyaeG7g24ga2luaCB04bq/IG5oYW5oIGNow7NuZy4NCg0KLSBOaOG6rXQgQuG6o246IE5o4bqtdCBC4bqjbiBjw7MgbeG7qWMgxJHhu5kgdGjhuqNpIENPMiB0cnVuZyBiw6xuaCBt4buXaSBuZ8aw4budaSBjYW8sIHThu6sgOC4wMzE0OTYgxJHhur9uIDguNzYxOTc5IHRyb25nIGdpYWkgxJFv4bqhbiAyMDE4LTIwMjAuIMSQw6J5IGPDsyB0aOG7gyBsw6AgZG8gTmjhuq10IELhuqNuIGPDsyBt4buZdCBu4buBbiBjw7RuZyBuZ2hp4buHcCBs4bubbiB2w6Agc+G7rSBk4bulbmcgbmhp4buBdSBuZ3Xhu5NuIG7Eg25nIGzGsOG7o25nIGjDs2EgdGjhuqFjaC4NCg0KLSBIw6BuIFF14buRYzogSMOgbiBRdeG7kWMgY8OzIG3hu6ljIMSR4buZIHRo4bqjaSBDTzIgdHJ1bmcgYsOsbmggbeG7l2kgbmfGsOG7nWkgY2FvLCB04burIDEwLjk5MDAzMCDEkeG6v24gMTIuMjE2NDU2IHRyb25nIGdpYWkgxJFv4bqhbiAyMDE4LTIwMjAuIMSQw6J5IGPDsyB0aOG7gyBsw6AgZG8gSMOgbiBRdeG7kWMgY8WpbmcgY8OzIG3hu5l0IG7hu4FuIGPDtG5nIG5naGnhu4dwIHBow6F0IHRyaeG7g24gdsOgIHPhu60gZOG7pW5nIG5oaeG7gXUgbmd14buTbiBuxINuZyBsxrDhu6NuZyBow7NhIHRo4bqhY2guDQoNCi0gTGnDqm4gYmFuZyBOZ2E6IExpw6puIGJhbmcgTmdhIGPDsyBt4bupYyDEkeG7mSB0aOG6o2kgQ08yIHRydW5nIGLDrG5oIG3hu5dpIG5nxrDhu51pIHTGsMahbmcgxJHhu5FpIGNhbywgdOG7qyAxMS4yMzIyODggxJHhur9uIDExLjc5NzE5NCB0cm9uZyBnaWFpIMSRb+G6oW4gMjAxOC0yMDIwLiDEkMOieSBjw7MgdGjhu4MgbMOgIGRvIG7GsOG7m2MgbsOgeSBjw7MgbeG7mXQgbuG7gW4ga2luaCB04bq/IHBo4bulIHRodeG7mWMgdsOgbyBuZ8OgbmggY8O0bmcgbmdoaeG7h3AgbuG6t25nIHbDoCB0w6BpIG5ndXnDqm4gaMOzYSB0aOG6oWNoLg0KDQotIEhvYSBL4buzOiBIb2EgS+G7syBjw7MgbeG7qWMgxJHhu5kgdGjhuqNpIENPMiB0cnVuZyBiw6xuaCBt4buXaSBuZ8aw4budaSBjYW8gbmjhuqV0IHRyb25nIHPhu5EgY8OhYyBxdeG7kWMgZ2lhIG7DoHksIHThu6sgMTMuMDMyODI4IMSR4bq/biAxNS4yMjI1MTggdHJvbmcgZ2lhaSDEkW/huqFuIDIwMTgtMjAyMC4gxJDDonkgbMOgIGRvIEhvYSBL4buzIGPDsyBt4buZdCBu4buBbiBjw7RuZyBuZ2hp4buHcCBwaMOhdCB0cmnhu4NuIHbDoCBz4butIGThu6VuZyBuaGnhu4F1IG5ndeG7k24gbsSDbmcgbMaw4bujbmcgaMOzYSB0aOG6oWNoLg0KDQotIFZp4buHdCBOYW06IFZp4buHdCBOYW0gY8OzIG3hu6ljIMSR4buZIHRo4bqjaSBDTzIgdHJ1bmcgYsOsbmggbeG7l2kgbmfGsOG7nWkgdGjhuqVwIGjGoW4gc28gduG7m2kgY8OhYyBxdeG7kWMgZ2lhIGtow6FjLCB04burIDMuMDE0NzExIMSR4bq/biAzLjY3NjQ0MCB0cm9uZyBnaWFpIMSRb+G6oW4gMjAxOC0yMDIwLiDEkMOieSBjw7MgdGjhu4MgbMOgIGRvIFZp4buHdCBOYW0gduG6q24gxJFhbmcgcGjDoXQgdHJp4buDbiBraW5oIHThur8gdsOgIHPhu60gZOG7pW5nIG5oaeG7gXUgbmd14buTbiBuxINuZyBsxrDhu6NuZyB0w6FpIHThuqFvLg0KDQo8aDQ+VOG7lW5nIHF1YW4sIGPDoWMgcXXhu5FjIGdpYSBjw7MgbeG7qWMgxJHhu5kgcGjDoXQgdGjhuqNpIENPMiBjYW8gaMahbiB0aMaw4budbmcgY8OzIGTDom4gc+G7kSDEkcO0bmcsIG7hu4FuIGtpbmggdOG6vyBs4bubbiB2w6Agc+G7rSBk4bulbmcgbmhp4buBdSBuZ3Xhu5NuIG7Eg25nIGzGsOG7o25nIGjDs2EgdGjhuqFjaC4gVHJvbmcga2hpIMSRw7MsIGPDoWMgcXXhu5FjIGdpYSBjw7MgbeG7qWMgxJHhu5kgcGjDoXQgdGjhuqNpIENPMiB0aOG6pXAgaMahbiB0aMaw4budbmcgY8OzIGTDom4gc+G7kSDDrXQgaMahbiwgxJFhbmcgcGjDoXQgdHJp4buDbiBraW5oIHThur8gdsOgIHPhu60gZOG7pW5nIG5oaeG7gXUgbmd14buTbiBuxINuZyBsxrDhu6NuZyB0w6FpIHThuqFvIGjGoW48L2g0Pg0KDQoNCjxoMT5JTUY8L2gxPg0KDQpgYGB7cn0NCg0KbGlicmFyeShpbWYuZGF0YSkNCmxpYnJhcnkodGlkeXZlcnNlKQ0KbGlicmFyeSh0aWR5cikNCmRhdGFzZXQgPC0gbGlzdF9kYXRhc2V0cygpDQpiIDwtIGxvYWRfZGF0YXNldHMoIkFQRFJFTyIpDQpsaWJyYXJ5KERUKQ0KbGlicmFyeShmbGV4dGFibGUpDQpWaWV3KGIkZGltZW5zaW9ucyRpbmRpY2F0b3IpDQpiMSA8LSBiJGdldF9zZXJpZXMoZnJlcSA9ICdBJywgcmVmX2FyZWEgPSAnVk4nLCBpbmRpY2F0b3IgPSAnUENQSUVfUENIJykNCmRhdGF0YWJsZShiMSkNCmBgYA0KPGgyPkkuIEdp4bubaSB0aGnhu4d1PC9oMj4NCjxwPkLhu5kgZOG7ryBsaeG7h3UgUENQSUVfUENIICh0w6puIMSR4bqneSDEkeG7pzogUGVyIENhcGl0YSBJbmNvbWUsIFByaWNlIExldmVsLCBhbmQgR0RQIHBlciBDYXBpdGEgaW4gUmVhbCBUZXJtcykgbMOgIG3hu5l0IHThuq1wIGThu68gbGnhu4d1IMSRxrDhu6NjIGN1bmcgY+G6pXAgYuG7n2kgUXXhu7kgVGnhu4FuIHThu4cgUXXhu5FjIHThur8gKElNRikgYmFvIGfhu5NtIHRow7RuZyB0aW4gduG7gSB0aHUgbmjhuq1wIGLDrG5oIHF1w6JuIMSR4bqndSBuZ8aw4budaSwgbeG7qWMgZ2nDoSB2w6AgR0RQIGLDrG5oIHF1w6JuIMSR4bqndSBuZ8aw4budaSB0aGVvIGdpw6EgdGjhu7FjIGPhu6dhIGPDoWMgcXXhu5FjIGdpYSB0csOqbiB0aOG6vyBnaeG7m2kuIEThu68gbGnhu4d1IMSRxrDhu6NjIGPhuq1wIG5o4bqtdCB0aMaw4budbmcgeHV5w6puIHbDoCBjw7MgdGjhu4MgdHJ1eSBj4bqtcCBtaeG7hW4gcGjDrSB0csOqbiB0cmFuZyB3ZWIgY+G7p2EgSU1GLg0KDQpC4buZIGThu68gbGnhu4d1IFBDUElFX1BDSCBiYW8gZ+G7k20gY8OhYyBj4buZdCBzYXU6DQoNCi0gTcOjIHF14buRYyBnaWE6IE3DoyBJU08gMzE2Ni0xIGFscGhhLTMgY+G7p2EgcXXhu5FjIGdpYQ0KDQotIE7Eg206IE7Eg20gZOG7ryBsaeG7h3UgxJHGsOG7o2MgZ2hpIG5o4bqtbg0KDQotIFRodSBuaOG6rXAgYsOsbmggcXXDom4gxJHhuqd1IG5nxrDhu51pIChkYW5oIG5naMSpYSk6IEdEUCBiw6xuaCBxdcOibiDEkeG6p3UgbmfGsOG7nWkgdGhlbyBnacOhIHRy4buLIGRhbmggbmdoxKlhIChVU0QpDQoNCi0gTeG7qWMgZ2nDoTogTeG7qWMgZ2nDoSB0acOqdSBkw7luZyAoQ1BJKQ0KDQotIEdEUCBiw6xuaCBxdcOibiDEkeG6p3UgbmfGsOG7nWkgKHRo4buxYyB04bq/KTogR0RQIGLDrG5oIHF1w6JuIMSR4bqndSBuZ8aw4budaSB0aGVvIGdpw6EgdGjhu7FjIChVU0QpPC9wPg0KDQo8aDI+SUkuIFThu5VuZyBxdWFuPC9oMj4NCjxoMz4xLiBHaWFpIMSRb+G6oW4gcXXDoSBraOG7qSAyMDE0LTIwMTg8L2gzPg0KYGBge3J9DQpuYW1lcyhiMSkgPC0gYygiWWVhciIsIlBlckFudWFsIikNCmIyIDwtIGIxICU+JSBmaWx0ZXIoWWVhciA9PSAyMDE0fFllYXIgPT0gMjAxNXxZZWFyID09IDIwMTZ8WWVhciA9PSAyMDE3fCBZZWFyID09IDIwMTgpDQpnZ3Bsb3QoYjIsYWVzKHggPSAJWWVhciwgeSA9IFBlckFudWFsKSkgKw0KICBnZW9tX2NvbCgpICsNCiAgbGFicyh0aXRsZSA9ICJCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIGNo4buJIHPhu5EgZ2nDoSBnaWFpIMSRb+G6oW4gMjAxNC0yMDE4IiwNCiAgICAgICB4ID0gIk7Eg20iLA0KICAgICAgIHkgPSAiQ2jhu4kgc+G7kSBnacOhKCUpIikNCmBgYA0KDQo8cD5U4buVbmcgcXVhbiwgZ2lhaSDEkW/huqFuIHThu6sgMjAxNCDEkeG6v24gMjAxOCDEkcOjIGNo4bupbmcga2nhur9uIHPhu7EgYmnhur9uIMSR4buZbmcgbeG6oW5oIG3hur0gY+G7p2EgY2jhu4kgc+G7kSBnacOhIHRydW5nIGLDrG5oLjwvcD4NCjxwPkNo4buJIHPhu5EgZ2nDoSB0cnVuZyBiw6xuaCBjw7Mgc+G7sSBiaeG6v24gxJHhu5luZyBt4bqhbmggdHJvbmcgZ2lhaSDEkW/huqFuIG7DoHksIHbhu5tpIG3hu6ljIHTEg25nIGNhbyBuaOG6pXQgdsOgbyBuxINtIDIwMTYgKDQsNyUpIHbDoCBt4bupYyBnaeG6o20gdGjhuqVwIG5o4bqldCB2w6BvIG7Eg20gMjAxNSAoMCw1OTclKS48L3A+DQo8cD5DaOG7iSBz4buRIGdpw6EgdHJ1bmcgYsOsbmggY8OzIHh1IGjGsOG7m25nIHTEg25nIHRyb25nIGdpYWkgxJFv4bqhbiBuw6B5LCB24bubaSBt4bupYyB0xINuZyB04buVbmcgY+G7mW5nIGzDoCAxMiw3NSUgdOG7qyBuxINtIDIwMTQgxJHhur9uIG7Eg20gMjAxOC48L3A+DQo8cD5N4bupYyB0xINuZyB0cnVuZyBiw6xuaCBj4bunYSBjaOG7iSBz4buRIGdpw6EgdHJvbmcgZ2lhaSDEkW/huqFuIG7DoHkgbMOgIDIsNTUlIG3hu5dpIG7Eg20uPC9wPg0KDQpgYGB7cn0NCmIxMSA8LSBjKDEuODM5MTYyMDk5MzMzMzMsIDAuNTk3MDk3MzI5OTI1Njk1LCA0LjczNzI0NzUzNDUxODY3LCAyLjU5NzM1NTE2NDUxOTM5LCAyLjk4Mjk2NTE0ODI2MDgxKQ0KbWVhbihiMTEpDQpzdW0oYjExKQ0KYGBgDQo8aDM+Mi4gR2lhaSDEkW/huqFuIGhp4buHbiB04bqhaSAyMDE5LTIwMjM8L2gzPg0KDQpgYGB7cn0NCmIzIDwtIGZpbHRlcihiMSwgWWVhciA9PSAyMDE5IHwgWWVhciA9PSAyMDIwIHwgWWVhciA9PSAyMDIxIHwgWWVhciA9PSAyMDIyIHwgWWVhciA9PSAyMDIzKQ0KZ2dwbG90KGIzLCBhZXMoeCA9IFllYXIsIHkgPSBQZXJBbnVhbCwgZ3JvdXAgPSAxKSkgKw0KICBnZW9tX2xpbmUoY29sb3IgPSAiZGFya2dyZWVuIiwgbGluZXdpZHRoID0gMSkgKw0KICBnZW9tX3BvaW50KGNvbG9yPSAiYmxhY2siKSArDQogIGdlb21fc21vb3RoKG1ldGhvZCA9ICJsbSIsIHNlID0gRkFMU0UsIGNvbG9yID0gInJlZCIpICsNCiAgbGFicyh0aXRsZSA9ICJCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIGNo4buJIHPhu5EgZ2nDoSAyMDE5LTIwMjMiLCB4ID0gIk7Eg20iLCB5ID0gIkNQSSglKSIpDQpgYGANCjxwPkNQSSBjw7Mgc+G7sSBiaeG6v24gxJHhu5luZyBt4bqhbmggdHJvbmcgZ2lhaSDEkW/huqFuIG7DoHksIHbhu5tpIG3hu6ljIHTEg25nIGNhbyBuaOG6pXQgbMOgIDUsMjQlIChuxINtIDIwMTkpIHbDoCBt4bupYyBnaeG6o20gc8OidSBuaOG6pXQgbMOgIDAsMTklIChuxINtIDIwMjApLg0KTmjDrG4gY2h1bmcsIENQSSBjw7MgeHUgaMaw4bubbmcgdMSDbmcgdHJvbmcgZ2lhaSDEkW/huqFuIG7DoHksIHbhu5tpIG3hu6ljIHTEg25nIHThu5VuZyBj4buZbmcgbMOgIDE2LDk4JSB04burIG7Eg20gMjAxOSDEkeG6v24gbsSDbSAyMDIzLg0KTeG7qWMgdMSDbmcgdHJ1bmcgYsOsbmggY+G7p2EgQ1BJIGzDoCAzLDIlIG3hu5dpIG7Eg20uPC9wPg0KYGBge3J9DQpiMzEgPC0gYyg1LjIzNjY0NzAxMDY2ODIzLDAuMTg3MjM0MDcyMzE1NzczLDEuODA4MzQ1MDE2MDQ1NDcsNC42MDc1MjExNjAxOTYyNiw0LjEzOTk5OTk5OTk5OTg4KQ0KbWVhbihiMzEpDQpzdW0oYjMxKQ0KYGBgDQo8cD5CaeG6v24gxJHhu5luZyBuw6B5IGPDsyB0aOG7gyBkbyBuaGnhu4F1IHnhur91IHThu5Eg4bqjbmggaMaw4bufbmcsIGJhbyBn4buTbToNCkdpw6EgY+G6oyBow6BuZyBow7NhIHRo4bq/IGdp4bubaSBiaeG6v24gxJHhu5luZywgxJHhurdjIGJp4buHdCBsw6AgZ2nDoSBk4bqndSBt4buPLg0KTmh1IGPhuqd1IHRpw6p1IGTDuW5nIHRyb25nIG7GsOG7m2MgdMSDbmcgY2FvLg0KQ2jDrW5oIHPDoWNoIHRp4buBbiB04buHIHbDoCB0w6BpIGtow7NhIGPhu6dhIENow61uaCBwaOG7py48L3A+DQoNCjxoMz4zLiBHaWFpIMSRb+G6oW4gdMawxqFuZyBsYWkgMjAyNC0yMDI4PC9oMz4NCmBgYHtyfQ0KYjQgPC0gZmlsdGVyKGIxLCBZZWFyID09IDIwMjQgfCBZZWFyID09IDIwMjUgfCBZZWFyID09IDIwMjYgfCBZZWFyID09IDIwMjcgfCBZZWFyID09IDIwMjgpDQpnZ3Bsb3QoYjQsIGFlcyh4ID0gIlllYXIiICwgeSA9IFBlckFudWFsLCBmaWxsPSBhcy5mYWN0b3IoWWVhcikpKSArDQogIGdlb21fYmFyKHdpZHRoID0gMSwgc3RhdCA9ICJpZGVudGl0eSIpICsNCiAgY29vcmRfcG9sYXIoInkiLCBzdGFydCA9IDApICsNCiAgbGFicyhmaWxsID0gIlllYXIiLCB4ID0gTlVMTCwgeSA9IE5VTEwsIHRpdGxlID0gIkJp4buDdSDEkeG7kyB0aOG7gyBoaeG7h24gY2jhu4kgc+G7kSBnacOhIDIwMjQtMjAyOCIpIA0KYGBgDQoNCjxwPkNo4buJIHPhu5EgZ2nDoSBjw7Mgc+G7sSBiaeG6v24gxJHhu5luZyB0cm9uZyBnaWFpIMSRb+G6oW4gbsOgeSwgduG7m2kgbeG7qWMgY2FvIG5o4bqldCBsw6AgNSwyNCUgKG7Eg20gMjAxOSkgdsOgIG3hu6ljIHRo4bqlcCBuaOG6pXQgbMOgIDMsMzUlIChuxINtIDIwMjQpLg0KWHUgaMaw4bubbmc6IE5ow6xuIGNodW5nLCBjaOG7iSBz4buRIGdpw6EgY8OzIHh1IGjGsOG7m25nIHTEg25nIG5o4bq5IHF1YSBjw6FjIG7Eg20uIE3hurdjIGTDuSBjw7Mgc+G7sSBiaeG6v24gxJHhu5luZyBuaOG7jywgbmjGsG5nIGdpw6EgY+G6oyBuaMOsbiBjaHVuZyBjw7MgY2hp4buBdSBoxrDhu5tuZyDEkWkgbMOqbiB0cm9uZyBnaWFpIMSRb+G6oW4gMjAyNC0yMDI4Lg0KxJDhu5kgYmnhur9uIMSR4buZbmc6IFPhu7EgdGhheSDEkeG7lWkgY+G7p2EgY2jhu4kgc+G7kSBnacOhIGdp4buvYSBjw6FjIG7Eg20gbMOgIHTGsMahbmcgxJHhu5FpIG5o4buPLiDEkGnhu4F1IG7DoHkgY8OzIHRo4buDIGNobyB0aOG6pXkgbuG7gW4ga2luaCB04bq/IHTGsMahbmcgxJHhu5FpIOG7lW4gxJHhu4tuaCB24buBIG3hurd0IGdpw6EgY+G6oy48L3A+DQoNCg0KDQo=