Nội dung nhiệm vụ
Chọn 2 indicator (1 từ World Bank và 1 từ IMF)
Phân tích 2 indicator này theo thời gian, tìm các yếu tố ảnh
hưởng đến 2 indicator đã chọn và phân tích sự ảnh hưởng đó.
1. Indicartion từ World Bank
1.1 Tổng quan về indicartion
library(tidyverse)
library(WDI)
## Warning: package 'WDI' was built under R version 4.3.3
ind <- WDIsearch('GDP')
view(ind)
ndq <- WDI(indicator = 'BN.KLT.PRVT.GD.ZS')
GDP là viết tắt của Tổng sản phẩm quốc nội, hay còn gọi là Tổng
sản phẩm nội địa.
Đây là một chỉ số kinh tế quan trọng được sử dụng để đo lường giá
trị thị trường của tất cả các hàng hóa và dịch vụ cuối cùng được sản
xuất trong một quốc gia trong một khoảng thời gian nhất định (thường là
một năm).
Ý nghĩa của GDP:
GDP là thước đo tổng thể về sức khỏe của nền kinh tế.
GDP được sử dụng để so sánh mức độ phát triển kinh tế giữa các
quốc gia.
GDP cũng được sử dụng để theo dõi sự tăng trưởng kinh tế của một
quốc gia theo thời gian.
BN.KLT.PRVT.GD.ZS (Private capital flows, total (% of GDP)) là:
Tổng dòng vốn tư nhân (% của GDP)
Đây là một thuật ngữ kinh tế dùng để chỉ tổng giá trị ròng của
các khoản đầu tư tư nhân từ nước ngoài chảy vào một quốc gia, tính theo
tỷ lệ phần trăm của Tổng sản phẩm quốc nội (GDP).
Phân tích chi tiết:
Private capital flows (Dòng vốn tư nhân): Đây là các khoản đầu tư
được thực hiện bởi các cá nhân, doanh nghiệp và tổ chức tư nhân bên
ngoài chính phủ.
Total (Tổng): Bao gồm tất cả các loại hình đầu tư tư nhân, chẳng
hạn như: Đầu tư trực tiếp nước ngoài (FDI): Đầu tư dài hạn của một doanh
nghiệp ở nước này vào một doanh nghiệp ở nước khác.
% of GDP (Tỷ lệ phần trăm của GDP): Con số này cho biết tổng dòng
vốn tư nhân chiếm bao nhiêu phần trăm trong tổng giá trị sản phẩm và
dịch vụ cuối cùng được sản xuất trong nền kinh tế của một quốc gia (GDP)
trong một năm.
Dưới đây là phân tích từng phần của mã
“BN.KLT.PRVT.GD.ZS”:
BN: Có thể là mã cho một khu vực hoặc quốc gia cụ thể. Ví dụ,
trong hệ thống mã của WB, “BN” đại diện cho “Brunei
Darussalam”.
KLT: Có thể là mã cho một ngành hoặc loại tài khoản cụ thể. Ví
dụ, trong hệ thống mã của IMF, “KLT” đại diện cho “Tài khoản vốn và tài
khoản tài chính”.
PRVT: Có thể là mã cho một loại hình sở hữu cụ thể. Ví dụ, “PRVT”
có thể đại diện cho “Tư nhân”. GD: Có thể là mã cho một loại giao dịch
hoặc hoạt động cụ thể. Ví dụ, “GD” có thể đại diện cho “Gói đầu
tư”.
ZS: Có thể là mã bổ sung để phân biệt các loại con hoặc chi tiết
hơn trong mã.
ndq <- WDI(indicator = 'BN.KLT.PRVT.GD.ZS')
d <- ndq %>% select(country,year,BN.KLT.PRVT.GD.ZS)
d <- na.omit(d)
names(d) <- c('country','year','BN.KLT.PRVT.GD.ZS')
head(d)
55 |
Algeria |
2011 |
1.0701750 |
56 |
Algeria |
2010 |
0.3759736 |
57 |
Algeria |
2009 |
1.8433253 |
58 |
Algeria |
2008 |
1.3310777 |
59 |
Algeria |
2007 |
1.0102828 |
60 |
Algeria |
2006 |
1.5038066 |
#1.2 Phân tích bộ dữ liệu bằng biểu đồ
Bộ dữ liệu cho ta dữ liệu từ năm 2005 đến năm 2011
d %>% ggplot(aes(x = BN.KLT.PRVT.GD.ZS )) +
geom_histogram(binwidth = 5, fill = 'blue', color = 'red')
- Biểu đồ này thể hiện tổng dòng vốn đầu tư ( BN.KLT.PRVT.GD.ZS ) theo
từng bước nhảy
d %>% ggplot(aes(x = year )) +
geom_histogram(binwidth = 1, fill = 'blue', color = 'red') +
facet_wrap(~year)
- Biểu đồ thể hiện số lượng các quốc gia có dòng vốn đầu tư trong từng
năm từ 2005-2011
Năm 2011 có số lượng quốc gia thấp nhất trong 7 năm
Năm 2005 có số lượng quốc gia cao nhất
Các năm từ 2006-2010 có số lượng là như nhau
view(d)
d <- d %>% filter(country == 'Angola' )
d %>% group_by(year) %>% summarise(n = n()) %>%
ggplot(aes(x = 1, y = n, fill = factor(year))) +
geom_col(color = 'black', width = 1) +
coord_polar('y') +
geom_text(aes(x = 1.3, label = n, hjust = 1)) +
labs(title = "Biểu đồ thể hiện tổng dòng vốn đầu tư từ năm 2005 đến năm 2011 của nước ANGOLA") +
theme_void()

- Ví dụ như nước Angola thì qua các năm tổng dòng vốn đầu tư tương đối
đều và không có sự chênh lệch lớn
d %>% ggplot(aes(x = year, y = BN.KLT.PRVT.GD.ZS, color = country)) +
labs(title = "Biểu đồ thể hiện tổng dòng vốn đầu tư của nước Angola ở Châu Phi từ năm 2005 đến 2011") +
labs(x = 'Năm', y = 'Tổng dòng vốn đầu tư') +
geom_point()

Tổng dòng vốn đầu tư ở Angola có sự lên xuống liên tục từ năm
2005 đến 2011
Tổng dòng vốn đầu tư ở năm 2009 là cao nhất, thấp nhất là năm
2010
1.3 Phân tích yếu tố ảnh hưởng
- Ngành nghề đầu tư
+ Ngành công nghiệp: Ngành công nghiệp có tiềm năng phát triển, lợi nhuận cao thu hút đầu tư.
+ Dịch vụ: Ngành dịch vụ phát triển thu hút đầu tư nước ngoài.
- Doanh nghiệp:
+ Năng lực tài chính: Doanh nghiệp có năng lực tài chính mạnh thu hút đầu tư.
+ Uy tín thương hiệu: Doanh nghiệp có uy tín thương hiệu tốt thu hút đầu tư.
+ Khả năng quản lý: Doanh nghiệp có khả năng quản lý tốt thu hút đầu tư.
Ngoài ra, còn có các yếu tố khác như:
Tình hình chính trị: Tình hình chính trị ổn định thu hút đầu tư
nước ngoài.
Văn hóa: Văn hóa kinh doanh cởi mở, thân thiện thu hút đầu tư
nước ngoài.
Ví dụ cụ thể:
Angola: Nhờ giá dầu cao và tăng trưởng kinh tế mạnh mẽ, Angola
thu hút lượng lớn FDI vào lĩnh vực khai thác dầu khí trong giai đoạn
2005-2011.
Mauritius(tên đầy đủ là Cộng hòa Mauritius) : Với môi trường kinh
tế vĩ mô ổn định, chính sách thu hút đầu tư hiệu quả, Mauritius thu hút
nhiều FDI vào lĩnh vực du lịch, dịch vụ tài chính.
Ethiopia(Tên đầy đủ: Cộng hòa Dân chủ Liên bang Ethiopia) : Nhờ
cải thiện môi trường đầu tư, Ethiopia thu hút nhiều FDI vào lĩnh vực sản
xuất, dệt may.
Kết luận:
Tổng dòng vốn đầu tư vào châu Phi trong giai đoạn 2005-2011 chịu ảnh
hưởng bởi nhiều yếu tố, bao gồm kinh tế vĩ mô, chính sách, xã hội và khu
vực. Các quốc gia cần cải thiện môi trường đầu tư, nâng cao năng lực
cạnh tranh để thu hút vốn đầu tư hiệu quả, thúc đẩy phát triển kinh
tế.
Lưu ý:
Mức độ ảnh hưởng của các yếu tố trên có thể khác nhau tùy theo từng
quốc gia và từng giai đoạn phát triển.
Các yếu tố vĩ mô và vi mô có thể tác động lẫn nhau và ảnh hưởng đến
tổng dòng vốn đầu tư.
2. Indicartion từ IMF
2.1 Tổng quan về indicartion
library(tidyverse)
library(imf.data)
## Warning: package 'imf.data' was built under R version 4.3.3
quynh <- load_datasets('CPI')
view(quynh$dimensions$indicator)
CPI là gì? - CPI là viết tắt của Chỉ số Giá Tiêu
dùng (tiếng Anh: Consumer Price Index). - Đây là thước đo mức độ thay
đổi trung bình của giá cả hàng hóa và dịch vụ tiêu dùng theo thời gian.
Nói cách khác, CPI phản ánh xu hướng lạm phát trong nền kinh tế.
CPI là một chỉ báo kinh tế quan trọng được sử dụng cho nhiều mục
đích, bao gồm:
Đo lường mức độ lạm phát: CPI giúp chính phủ và các nhà kinh tế
đánh giá mức độ tăng giá chung trong nền kinh tế.
Điều chỉnh chính sách kinh tế: CPI được sử dụng để điều chỉnh các
khoản thanh toán như lương hưu, trợ cấp xã hội và thuế theo mức độ lạm
phát.
Đánh giá hiệu quả hoạt động của chính phủ: CPI là một thước đo
hiệu quả của các chính sách kinh tế của chính phủ trong việc kiểm soát
lạm phát.
Giúp các doanh nghiệp đưa ra quyết định đầu tư: CPI giúp doanh
nghiệp dự đoán xu hướng giá cả trong tương lai và đưa ra quyết định đầu
tư phù hợp.
cpi <- quynh$get_series(freq = 'M', ref_area = 'VN', indicator = 'PCPIH_WT')
cpi <- na.omit(cpi)
head(cpi)
2001-01 |
15.73 |
2001-02 |
15.73 |
2001-03 |
15.73 |
2001-04 |
15.73 |
2001-05 |
15.73 |
2001-06 |
15.73 |
PCPIH_WT; Housing, Water, Electricity, Gas and Other Fuels,
Weight (hay PCPIH_WT - Nhà ở, Nước, Điện, Khí đốt và Nhiên liệu khác,
Trọng số) đại diện cho một khía cạnh cụ thể của dữ liệu Chỉ số Giá Tiêu
dùng (CPI) do Quỹ Tiền tệ Quốc tế (IMF) cung cấp.
Giải thích từng phần:
PCPIH_WT:
PCPIH: Có thể là viết tắt của “Consumer Price Index - Harmonized
Weights” (Chỉ số Giá Tiêu dùng - Trọng số Hài hòa).
WT: Thường được hiểu là “Weight” (Trọng số).
Housing, Water, Electricity, Gas and Other Fuels (Nhà ở, Nước,
Điện, Khí đốt và Nhiên liệu khác):
Đây là một nhóm (category) theo dõi giá cả của các mặt hàng thiết
yếu trong giỏ hàng tiêu dùng.
Weight (Trọng số):
- Giá trị số đại diện cho tầm quan trọng tương đối của nhóm “Nhà ở,
Nước, Điện, Khí đốt và Nhiên liệu khác” so với các nhóm khác trong tính
toán CPI tổng thể.
Trọng số phản ánh mức chi tiêu trung bình của các hộ gia đình cho
nhóm này.
Nói một cách đơn giản:
PCPIH_WT Housing, Water, Electricity, Gas and Other Fuels,
Weight cho biết tỷ lệ phần trăm chi tiêu trung bình của người dân
cho nhóm hàng Nhà ở, Nước, Điện, Khí đốt và Nhiên liệu khác ảnh hưởng
như thế nào đến mức biến động tổng thể của giá cả (được đo bằng
PCPIH_WT).
2.2 Phân tích bộ dữ liệu bằng biểu đồ
Dữ liệu phân tích theo tháng, thời gian từ tháng 1 năm 2001 đến tháng
2 năm 2024
cpi %>% ggplot(aes(x = TIME_PERIOD, y = M.VN.PCPIH_WT)) +
geom_point(color='red') +
xlab('Thời gian từ 2001 đến 2024') +
ylab('Tỷ lệ % chi tiêu trung bình')
- Nhận xét: Tỷ lệ % chi tiêu trung bình từ tháng 01 năm 2001 đến tháng
07 năm 2022 là 15.73
- Còn từ tháng 08 năm 2022 đến tháng 02 năm 2024 là 18.82
2.3 Giải thích sự thay đổi bất thường từ tháng 7 (15.73) sang tháng
8 (18.82) năm 2022
1. Biến động giá cả:
Giá xăng dầu tăng mạnh: Đây là nguyên nhân chính dẫn đến sự tăng
đột biến của M.VN.PCPIH_WT trong tháng 8.
Giá xăng RON 95 tăng từ 29.820 đồng/lít (tháng 7) lên 32.080
đồng/lít (tháng 8).
Giá xăng E5 RON 92 tăng từ 28.720 đồng/lít (tháng 7) lên 30.870
đồng/lít (tháng 8).
Giá dầu diesel 0.05S tăng từ 25.230 đồng/lít (tháng 7) lên 27.510
đồng/lít (tháng 8).
Giá thực phẩm cũng có biến động:
Giá thịt lợn hơi tăng từ 71.000 đồng/kg (tháng 7) lên 74.000
đồng/kg (tháng 8).
Giá rau xanh tăng do ảnh hưởng của mưa lũ, nhất là các loại rau
ăn lá như rau muống, rau cải, xà lách,…
Giá dịch vụ:
Giá vé máy bay tăng do nhu cầu đi lại tăng cao trong mùa du
lịch.
Giá dịch vụ y tế tăng do chi phí khám chữa bệnh và giá thuốc
tăng.
2. Ví dụ cụ thể:
Giá xăng dầu tăng:
Theo báo cáo của Bộ Công Thương, giá xăng dầu nhập khẩu bình quân
tháng 8/2022 tăng 11,5% so với tháng 7/2022.
Giá xăng dầu tăng cao ảnh hưởng trực tiếp đến chi phí vận tải,
sản xuất, kinh doanh, dẫn đến giá cả hàng hóa và dịch vụ tăng
theo.
Cập nhật phương pháp tính toán:
Cục Thống kê Việt Nam đã cập nhật rổ hàng hóa M.VN.PCPIH_WT từ
tháng 8/2022, bao gồm thêm một số mặt hàng mới như điện thoại thông
minh, máy tính bảng,…
-Việc cập nhật rổ hàng hóa có thể ảnh hưởng đến giá trị
M.VN.PCPIH_WT, đặc biệt là trong thời gian đầu sau khi áp dụng.
2.4 Các yếu tố ảnh hưởng
1. Giá cả hàng hóa và dịch vụ:
Giá thực phẩm: Biến động giá thực phẩm, đặc biệt là các mặt hàng
thiết yếu như gạo, thịt, rau,… ảnh hưởng trực tiếp đến
M.VN.PCPIH_WT.
Giá dịch vụ: Giá dịch vụ y tế, giáo dục, giao thông, nhà ở,… cũng
đóng vai trò quan trọng trong việc quyết định M.VN.PCPIH_WT.
2. Thu nhập của người lao động và viên chức:
Mức lương: Mức lương tăng hay giảm sẽ ảnh hưởng đến khả năng chi
tiêu của người lao động và viên chức, từ đó tác động đến
M.VN.PCPIH_WT.
Chính sách hỗ trợ: Các chính sách hỗ trợ của Chính phủ như trợ
cấp, miễn thuế,… cũng có thể ảnh hưởng đến M.VN.PCPIH_WT.
3. Yếu tố kinh tế vĩ mô:
Tăng trưởng GDP: Tăng trưởng GDP cao thường dẫn đến nhu cầu tiêu
dùng tăng, tạo áp lực lên giá cả và M.VN.PCPIH_WT.
Mức độ lạm phát: Lạm phát cao khiến giá cả hàng hóa và dịch vụ
tăng, dẫn đến M.VN.PCPIH_WT tăng theo.
Lãi suất ngân hàng: Lãi suất ngân hàng cao có thể khiến người dân
hạn chế chi tiêu, dẫn đến M.VN.PCPIH_WT giảm.
4. Chính sách của Chính phủ:
Chính sách tiền tệ: Chính sách tiền tệ của Ngân hàng Nhà nước có
thể ảnh hưởng đến lãi suất ngân hàng, từ đó tác động đến
M.VN.PCPIH_WT.
Chính sách thuế: Chính sách thuế có thể ảnh hưởng đến giá cả hàng
hóa và dịch vụ, từ đó tác động đến M.VN.PCPIH_WT.
5. Yếu tố khác:
Thời tiết: Bão lũ, hạn hán,… có thể ảnh hưởng đến giá cả thực
phẩm và các mặt hàng thiết yếu khác, dẫn đến M.VN.PCPIH_WT
tăng.
Dịch bệnh: Dịch bệnh có thể ảnh hưởng đến chuỗi cung ứng, giá cả
hàng hóa và dịch vụ, từ đó tác động đến M.VN.PCPIH_WT.
Ví dụ:
Giá xăng dầu tăng: Giá xăng dầu tăng cao ảnh hưởng trực tiếp đến
chi phí vận tải, sản xuất, kinh doanh, dẫn đến giá cả hàng hóa và dịch
vụ tăng theo, từ đó M.VN.PCPIH_WT cũng tăng.
Mức lương tăng: Mức lương tăng khiến người lao động và viên chức
có khả năng chi tiêu cao hơn, dẫn đến nhu cầu tiêu dùng tăng, từ đó
M.VN.PCPIH_WT cũng có thể tăng.
Kết luận:
- M.VN.PCPIH_WT chịu ảnh hưởng bởi nhiều yếu tố khác nhau, bao gồm giá
cả hàng hóa và dịch vụ, thu nhập của người lao động và viên chức, yếu tố
kinh tế vĩ mô, chính sách của Chính phủ và yếu tố khác.
LS0tDQp0aXRsZTogIk5oaeG7h20gduG7pSA2LiINCmF1dGhvcjogIk5ndXnhu4VuIERp4buFbSBRdeG7s25oIg0KZGF0ZTogImByIGZvcm1hdChTeXMudGltZSgpLCAnJUg6JU06JVMsICVkIC0gJW0gLSAlWScpYCINCm91dHB1dDoNCiAgaHRtbF9kb2N1bWVudDogDQogICAgdG9jOiB0cnVlDQogICAgdG9jX2Zsb2F0OiB0cnVlDQogICAgY29kZV9kb3dubG9hZDogdHJ1ZQ0KICAgIGRmX3ByaW50OiBrYWJsZQ0KICAgIGhpZ2hsaWdodDogdGFuZ28NCiAgcGRmX2RvY3VtZW50Og0KICAgIGV4dHJhX2RlcGVuZGVuY2llczoNCiAgICAgIHZpZXRuYW06IHV0ZjgNCiAgICB0b2M6IHRydWUNCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUNCi0tLQ0KDQpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0NCmtuaXRyOjpvcHRzX2NodW5rJHNldCgNCiAgY2xhc3Muc291cmNlID0gIm51bWJlckxpbmVzIGxpbmVBbmNob3JzIiwgDQogIGNsYXNzLm91dHB1dCA9IGMoIm51bWJlckxpbmVzIGxpbmVBbmNob3JzIGNodW5rb3V0IikgDQopDQpsaWJyYXJ5KGRwbHlyKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KHNjYWxlcykNCmxpYnJhcnkoRFQpDQoNCmBgYA0KDQpgYGB7Y3NzLCBlY2hvID0gRkFMU0V9DQpkaXYuc291cmNlQ29kZSBwcmUuY2h1bmtvdXQgew0KICBiYWNrZ3JvdW5kOiB3aGl0ZTsNCn0NCmBgYA0KIA0KDQojIE7hu5lpIGR1bmcgbmhp4buHbSB24bulDQotIENo4buNbiAyIGluZGljYXRvciAoMSB04burIFdvcmxkIEJhbmsgdsOgIDEgdOG7qyBJTUYpDQoNCi0gUGjDom4gdMOtY2ggMiBpbmRpY2F0b3IgbsOgeSB0aGVvIHRo4budaSBnaWFuLCB0w6xtIGPDoWMgeeG6v3UgdOG7kSDhuqNuaCBoxrDhu59uZyDEkeG6v24gMiBpbmRpY2F0b3IgxJHDoyBjaOG7jW4gdsOgIHBow6JuIHTDrWNoIHPhu7Eg4bqjbmggaMaw4bufbmcgxJHDsy4NCg0KIyAxLiBJbmRpY2FydGlvbiB04burIFdvcmxkIEJhbmsNCg0KIyAxLjEgVOG7lW5nIHF1YW4gduG7gSBpbmRpY2FydGlvbg0KDQpgYGB7cn0NCmxpYnJhcnkodGlkeXZlcnNlKQ0KbGlicmFyeShXREkpDQppbmQgPC0gV0RJc2VhcmNoKCdHRFAnKQ0KdmlldyhpbmQpDQpuZHEgPC0gV0RJKGluZGljYXRvciA9ICdCTi5LTFQuUFJWVC5HRC5aUycpDQpgYGANCg0KLSBHRFAgbMOgIHZp4bq/dCB04bqvdCBj4bunYSBU4buVbmcgc+G6o24gcGjhuqltIHF14buRYyBu4buZaSwgaGF5IGPDsm4gZ+G7jWkgbMOgIFThu5VuZyBz4bqjbiBwaOG6qW0gbuG7mWkgxJHhu4thLiANCg0KLSDEkMOieSBsw6AgbeG7mXQgY2jhu4kgc+G7kSBraW5oIHThur8gcXVhbiB0cuG7jW5nIMSRxrDhu6NjIHPhu60gZOG7pW5nIMSR4buDIMSRbyBsxrDhu51uZyBnacOhIHRy4buLIHRo4buLIHRyxrDhu51uZyBj4bunYSB04bqldCBj4bqjIGPDoWMgaMOgbmcgaMOzYSB2w6AgZOG7i2NoIHbhu6UgY3Xhu5FpIGPDuW5nIMSRxrDhu6NjIHPhuqNuIHh14bqldCB0cm9uZyBt4buZdCBxdeG7kWMgZ2lhIHRyb25nIG3hu5l0IGtob+G6o25nIHRo4budaSBnaWFuIG5o4bqldCDEkeG7i25oICh0aMaw4budbmcgbMOgIG3hu5l0IG7Eg20pLg0KDQotIMOdIG5naMSpYSBj4bunYSBHRFA6DQoNCiAgICArIEdEUCBsw6AgdGjGsOG7m2MgxJFvIHThu5VuZyB0aOG7gyB24buBIHPhu6ljIGto4buPZSBj4bunYSBu4buBbiBraW5oIHThur8uDQogICAgDQogICAgKyBHRFAgxJHGsOG7o2Mgc+G7rSBk4bulbmcgxJHhu4Mgc28gc8OhbmggbeG7qWMgxJHhu5kgcGjDoXQgdHJp4buDbiBraW5oIHThur8gZ2nhu69hIGPDoWMgcXXhu5FjIGdpYS4NCiAgICANCiAgICArIEdEUCBjxaluZyDEkcaw4bujYyBz4butIGThu6VuZyDEkeG7gyB0aGVvIGTDtWkgc+G7sSB0xINuZyB0csaw4bufbmcga2luaCB04bq/IGPhu6dhIG3hu5l0IHF14buRYyBnaWEgdGhlbyB0aOG7nWkgZ2lhbi4NCg0KLSAgIEJOLktMVC5QUlZULkdELlpTIChQcml2YXRlIGNhcGl0YWwgZmxvd3MsIHRvdGFsICglIG9mIEdEUCkpIGzDoDogICBU4buVbmcgZMOybmcgduG7kW4gdMawIG5ow6JuICglIGPhu6dhIEdEUCkNCg0KLSAgIMSQw6J5IGzDoCBt4buZdCB0aHXhuq10IG5n4buvIGtpbmggdOG6vyBkw7luZyDEkeG7gyBjaOG7iSB04buVbmcgZ2nDoSB0cuG7iyByw7JuZyBj4bunYSBjw6FjIGtob+G6o24gxJHhuqd1IHTGsCB0xrAgbmjDom4gdOG7qyBuxrDhu5tjIG5nb8OgaSBjaOG6o3kgdsOgbyBt4buZdCBxdeG7kWMgZ2lhLCB0w61uaCB0aGVvIHThu7cgbOG7hyBwaOG6p24gdHLEg20gY+G7p2EgVOG7lW5nIHPhuqNuIHBo4bqpbSBxdeG7kWMgbuG7mWkgKEdEUCkuDQoNClBow6JuIHTDrWNoIGNoaSB0aeG6v3Q6DQoNCi0gICBQcml2YXRlIGNhcGl0YWwgZmxvd3MgKETDsm5nIHbhu5FuIHTGsCBuaMOibik6IMSQw6J5IGzDoCBjw6FjIGtob+G6o24gxJHhuqd1IHTGsCDEkcaw4bujYyB0aOG7sWMgaGnhu4duIGLhu59pIGPDoWMgY8OhIG5ow6JuLCBkb2FuaCBuZ2hp4buHcCB2w6AgdOG7lSBjaOG7qWMgdMawIG5ow6JuIGLDqm4gbmdvw6BpIGNow61uaCBwaOG7py4NCg0KLSAgIFRvdGFsIChU4buVbmcpOiBCYW8gZ+G7k20gdOG6pXQgY+G6oyBjw6FjIGxv4bqhaSBow6xuaCDEkeG6p3UgdMawIHTGsCBuaMOibiwgY2jhurNuZyBo4bqhbiBuaMawOg0KxJDhuqd1IHTGsCB0cuG7sWMgdGnhur9wIG7GsOG7m2Mgbmdvw6BpIChGREkpOiDEkOG6p3UgdMawIGTDoGkgaOG6oW4gY+G7p2EgbeG7mXQgZG9hbmggbmdoaeG7h3Ag4bufIG7GsOG7m2MgbsOgeSB2w6BvIG3hu5l0IGRvYW5oIG5naGnhu4dwIOG7nyBuxrDhu5tjIGtow6FjLg0KDQotICAgJSBvZiBHRFAgKFThu7cgbOG7hyBwaOG6p24gdHLEg20gY+G7p2EgR0RQKTogQ29uIHPhu5EgbsOgeSBjaG8gYmnhur90IHThu5VuZyBkw7JuZyB24buRbiB0xrAgbmjDom4gY2hp4bq/bSBiYW8gbmhpw6p1IHBo4bqnbiB0csSDbSB0cm9uZyB04buVbmcgZ2nDoSB0cuG7iyBz4bqjbiBwaOG6qW0gdsOgIGThu4tjaCB24bulIGN14buRaSBjw7luZyDEkcaw4bujYyBz4bqjbiB4deG6pXQgdHJvbmcgbuG7gW4ga2luaCB04bq/IGPhu6dhIG3hu5l0IHF14buRYyBnaWEgKEdEUCkgdHJvbmcgbeG7mXQgbsSDbS4NCg0KLSAgIETGsOG7m2kgxJHDonkgbMOgIHBow6JuIHTDrWNoIHThu6tuZyBwaOG6p24gY+G7p2EgbcOjICJCTi5LTFQuUFJWVC5HRC5aUyI6DQoNCi0gICBCTjogQ8OzIHRo4buDIGzDoCBtw6MgY2hvIG3hu5l0IGtodSB24buxYyBob+G6t2MgcXXhu5FjIGdpYSBj4bulIHRo4buDLiBWw60gZOG7pSwgdHJvbmcgaOG7hyB0aOG7kW5nIG3DoyBj4bunYSBXQiwgIkJOIiDEkeG6oWkgZGnhu4duIGNobyAiQnJ1bmVpIERhcnVzc2FsYW0iLg0KDQotICAgS0xUOiBDw7MgdGjhu4MgbMOgIG3DoyBjaG8gbeG7mXQgbmfDoG5oIGhv4bq3YyBsb+G6oWkgdMOgaSBraG/huqNuIGPhu6UgdGjhu4MuIFbDrSBk4bulLCB0cm9uZyBo4buHIHRo4buRbmcgbcOjIGPhu6dhIElNRiwgIktMVCIgxJHhuqFpIGRp4buHbiBjaG8gIlTDoGkga2hv4bqjbiB24buRbiB2w6AgdMOgaSBraG/huqNuIHTDoGkgY2jDrW5oIi4NCg0KLSAgIFBSVlQ6IEPDsyB0aOG7gyBsw6AgbcOjIGNobyBt4buZdCBsb+G6oWkgaMOsbmggc+G7nyBo4buvdSBj4bulIHRo4buDLiBWw60gZOG7pSwgIlBSVlQiIGPDsyB0aOG7gyDEkeG6oWkgZGnhu4duIGNobyAiVMawIG5ow6JuIi4NCkdEOiBDw7MgdGjhu4MgbMOgIG3DoyBjaG8gbeG7mXQgbG/huqFpIGdpYW8gZOG7i2NoIGhv4bq3YyBob+G6oXQgxJHhu5luZyBj4bulIHRo4buDLiBWw60gZOG7pSwgIkdEIiBjw7MgdGjhu4MgxJHhuqFpIGRp4buHbiBjaG8gIkfDs2kgxJHhuqd1IHTGsCIuDQoNCi0gICBaUzogQ8OzIHRo4buDIGzDoCBtw6MgYuG7lSBzdW5nIMSR4buDIHBow6JuIGJp4buHdCBjw6FjIGxv4bqhaSBjb24gaG/hurdjIGNoaSB0aeG6v3QgaMahbiB0cm9uZyBtw6MuDQoNCg0KYGBge3J9DQoNCm5kcSA8LSBXREkoaW5kaWNhdG9yID0gJ0JOLktMVC5QUlZULkdELlpTJykNCmQgPC0gbmRxICU+JSBzZWxlY3QoY291bnRyeSx5ZWFyLEJOLktMVC5QUlZULkdELlpTKQ0KZCA8LSBuYS5vbWl0KGQpDQpuYW1lcyhkKSA8LSBjKCdjb3VudHJ5JywneWVhcicsJ0JOLktMVC5QUlZULkdELlpTJykNCmhlYWQoZCkNCmBgYA0KLSAgIFRhIGPDsyBi4buZIGThu68gbGnhu4d1IGJhbyBn4buTbSAqMyBiaeG6v24qIHbDoCAqMjc3IHF1YW4gc8OhdCog4bufIMSRw6J5IGNo4buJIGhp4buHbiB0aOG7iyAqNiBxdWFuIHPDoXQqIMSR4bqndSB0acOqbg0KDQotICAgKmNvdW50cnkqIDogTsaw4bubYw0KDQotICAgKnllYXIqIDogbsSDbQ0KDQotICAgKkJOLktMVC5QUlZULkdELlpTKiAgOiBU4buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCAodOG7tyBs4buHICUgY+G7p2EgR0RQKQ0KDQojMS4yIFBow6JuIHTDrWNoIGLhu5kgZOG7ryBsaeG7h3UgYuG6sW5nIGJp4buDdSDEkeG7kw0KDQoNCiAgQuG7mSBk4buvIGxp4buHdSBjaG8gdGEgZOG7ryBsaeG7h3UgdOG7qyBuxINtIDIwMDUgxJHhur9uIG7Eg20gMjAxMQ0KDQoNCg0KYGBge3J9DQoNCmQgJT4lIGdncGxvdChhZXMoeCA9IEJOLktMVC5QUlZULkdELlpTICkpICsNCiAgZ2VvbV9oaXN0b2dyYW0oYmlud2lkdGggPSA1LCBmaWxsID0gJ2JsdWUnLCBjb2xvciA9ICdyZWQnKSANCiAgDQpgYGANCiAgLSAgIEJp4buDdSDEkeG7kyBuw6B5IHRo4buDIGhp4buHbiB04buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCAoIEJOLktMVC5QUlZULkdELlpTICkgdGhlbyB04burbmcgYsaw4bubYyBuaOG6o3kgDQogIA0KICAtICAgUXVhIGJp4buDdSDEkeG7kyB0YSB0aOG6pXk6DQogICAgICANCiAgICAgICsgTeG6rXQgxJHhu5kgZMOybmcgduG7kW4gdOG6rXAgdHJ1bmcgbmhp4buBdSDhu58ga2hv4bqjbmcgdOG7qyAwIMSR4bq/biAzMCANCiAgICAgIA0KICAgICAgKyBU4buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCBj4bunYSBjw6FjIHF14buRYyBnaWEg4bufIG7Eg20gMjAwNSDEkeG6v24gMjAxMSBjw7Mgc+G7kSBsxrDhu6NuZyBuaGnhu4F1IG5o4bqldCB0cm9uZyBraG/huqNuZyAwIC0gMTAgDQpgYGB7cn0NCg0KIGQgJT4lIGdncGxvdChhZXMoeCA9IHllYXIgKSkgKw0KICBnZW9tX2hpc3RvZ3JhbShiaW53aWR0aCA9IDEsIGZpbGwgPSAnYmx1ZScsIGNvbG9yID0gJ3JlZCcpICsNCiAgZmFjZXRfd3JhcCh+eWVhcikNCmBgYA0KICAtICAgQmnhu4N1IMSR4buTIHRo4buDIGhp4buHbiBz4buRIGzGsOG7o25nIGPDoWMgcXXhu5FjIGdpYSBjw7MgZMOybmcgduG7kW4gxJHhuqd1IHTGsCB0cm9uZyB04burbmcgbsSDbSB04burIDIwMDUtMjAxMQ0KICANCiAgLSAgIE7Eg20gMjAxMSBjw7Mgc+G7kSBsxrDhu6NuZyBxdeG7kWMgZ2lhIHRo4bqlcCBuaOG6pXQgdHJvbmcgNyBuxINtDQogIA0KICAtICAgTsSDbSAyMDA1IGPDsyBz4buRIGzGsOG7o25nIHF14buRYyBnaWEgY2FvIG5o4bqldA0KICANCiAgLSAgIEPDoWMgbsSDbSB04burIDIwMDYtMjAxMCBjw7Mgc+G7kSBsxrDhu6NuZyBsw6AgbmjGsCBuaGF1DQogIA0KDQogICAgICAgIA0KYGBge3J9DQp2aWV3KGQpDQpkIDwtIGQgJT4lIGZpbHRlcihjb3VudHJ5ID09ICdBbmdvbGEnICkNCmQgJT4lIGdyb3VwX2J5KHllYXIpICU+JSBzdW1tYXJpc2UobiA9IG4oKSkgJT4lDQogIGdncGxvdChhZXMoeCA9IDEsIHkgPSBuLCBmaWxsID0gZmFjdG9yKHllYXIpKSkgKyAgDQogIGdlb21fY29sKGNvbG9yID0gJ2JsYWNrJywgd2lkdGggPSAxKSArDQogIGNvb3JkX3BvbGFyKCd5JykgKw0KICBnZW9tX3RleHQoYWVzKHggPSAxLjMsIGxhYmVsID0gbiwgaGp1c3QgPSAxKSkgKyANCiAgbGFicyh0aXRsZSA9ICJCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIHThu5VuZyBkw7JuZyB24buRbiDEkeG6p3UgdMawIHThu6sgbsSDbSAyMDA1IMSR4bq/biBuxINtIDIwMTEgY+G7p2Egbsaw4bubYyBBTkdPTEEiKSArDQogIHRoZW1lX3ZvaWQoKQ0KYGBgDQoNCiAgLSBWw60gZOG7pSBuaMawIG7GsOG7m2MgQW5nb2xhIHRow6wgcXVhIGPDoWMgbsSDbSB04buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCB0xrDGoW5nIMSR4buRaSDEkeG7gXUgdsOgIGtow7RuZyBjw7Mgc+G7sSBjaMOqbmggbOG7h2NoIGzhu5tuIA0KICANCmBgYHtyfQ0KDQpkICU+JSBnZ3Bsb3QoYWVzKHggPSB5ZWFyLCB5ID0gQk4uS0xULlBSVlQuR0QuWlMsIGNvbG9yID0gY291bnRyeSkpICsNCg0KICBsYWJzKHRpdGxlID0gIkJp4buDdSDEkeG7kyB0aOG7gyBoaeG7h24gdOG7lW5nIGTDsm5nIHbhu5FuIMSR4bqndSB0xrAgY+G7p2Egbsaw4bubYyBBbmdvbGEgIOG7nyBDaMOidSBQaGkgdOG7qyBuxINtIDIwMDUgxJHhur9uIDIwMTEiKSArDQogIGxhYnMoeCA9ICdOxINtJywgeSA9ICdU4buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCcpICsNCiAgZ2VvbV9wb2ludCgpDQpgYGANCg0KLSAgIFThu5VuZyBkw7JuZyB24buRbiDEkeG6p3UgdMawIOG7nyBBbmdvbGEgY8OzIHPhu7EgbMOqbiB4deG7kW5nIGxpw6puIHThu6VjIHThu6sgbsSDbSAyMDA1IMSR4bq/biAyMDExDQoNCi0gICBU4buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCDhu58gbsSDbSAyMDA5IGzDoCBjYW8gbmjhuqV0LCB0aOG6pXAgbmjhuqV0IGzDoCBuxINtIDIwMTANCg0KIyAgIDEuMyBQaMOibiB0w61jaCB54bq/dSB04buRIOG6o25oIGjGsOG7n25nDQoNCg0KICAtICAgQ8OhYyB54bq/dSB04buRIOG6o25oIGjGsOG7n25nIMSR4bq/biB04buVbmcgZMOybmcgduG7kW4gxJHhuqd1IHTGsCBuxINtIDIwMDUgxJHhur9uIDIwMTE6DQogIA0KICAtICAgWeG6v3UgdOG7kSB2xKkgbcO0Og0KDQogICAgICAtICAgVMOsbmggaMOsbmgga2luaCB04bq/IHbEqSBtw7Q6DQogICAgICANCiAgICAgICsgICBUxINuZyB0csaw4bufbmcgR0RQOiBUxINuZyB0csaw4bufbmcgR0RQIGNhbyB0aHUgaMO6dCDEkeG6p3UgdMawIG7GsOG7m2Mgbmdvw6BpIHbDrSBk4bulIG5oxrAgQW5nb2xhLCBOaWdlcmlhLg0KICAgICAgDQogICAgICArICAgTOG6oW0gcGjDoXQ6IEzhuqFtIHBow6F0IGNhbyBsw6BtIGdp4bqjbSBz4bupYyBo4bqlcCBk4bqrbiBj4bunYSB0aOG7iyB0csaw4budbmcgxJHhuqd1IHTGsC4NCiAgICAgIA0KICAgICAgKyAgIEzDo2kgc3XhuqV0OiBMw6NpIHN14bqldCBjYW8gY8OzIHRo4buDIHRodSBow7p0IMSR4bqndSB0xrAgbmfhuq9uIGjhuqFuLCBuaMawbmcgY8WpbmcgY8OzIHRo4buDIGPhuqNuIHRy4bufIMSR4bqndSB0xrAgZMOgaSBo4bqhbi4NCiAgICAgIA0KICAgICAgKyAgIFThu7cgZ2nDoSBo4buRaSDEkW/DoWk6IFThu7cgZ2nDoSBo4buRaSDEkW/DoWkg4buVbiDEkeG7i25oIHThuqFvIMSRaeG7gXUga2nhu4duIHRodeG6rW4gbOG7o2kgY2hvIMSR4bqndSB0xrAgbsaw4bubYyBuZ2/DoGkuDQogICAgICANCiAgLSAgIENow61uaCBzw6FjaCDEkeG6p3UgdMawOg0KDQogICAgICArICAgTeG7qWMgxJHhu5kgxrB1IMSRw6NpIMSR4bqndSB0xrA6IEPDoWMgxrB1IMSRw6NpIHbhu4EgdGh14bq/LCDEkeG6pXQgxJFhaSwgbGFvIMSR4buZbmcuLi4gdGh1IGjDunQgxJHhuqd1IHTGsCBuxrDhu5tjIG5nb8OgaS4NCiAgICAgIA0KICAgICAgKyAgIE3DtGkgdHLGsOG7nW5nIMSR4bqndSB0xrA6IE3DtGkgdHLGsOG7nW5nIMSR4bqndSB0xrAgbWluaCBi4bqhY2gsIGFuIHRvw6BuLCB0aHXhuq1uIGzhu6NpIHRodSBow7p0IMSR4bqndSB0xrAgbsaw4bubYyBuZ2/DoGkuDQogICAgICANCiAgICAgICsgICBI4bqhIHThuqduZzogSOG7hyB0aOG7kW5nIGjhuqEgdOG6p25nIGdpYW8gdGjDtG5nLCBuxINuZyBsxrDhu6NuZywgdGjDtG5nIHRpbiBsacOqbiBs4bqhYy4uLiBwaMOhdCB0cmnhu4NuIHRodSBow7p0IMSR4bqndSB0xrAgbsaw4bubYyBuZ2/DoGkuDQogICAgICANCiAgLSAgIFnhur91IHThu5EgdmkgbcO0Og0KDQogICAgLSAgIE5nw6BuaCBuZ2jhu4EgxJHhuqd1IHTGsA0KICAgIA0KICAgICAgKyAgIE5nw6BuaCBjw7RuZyBuZ2hp4buHcDogTmfDoG5oIGPDtG5nIG5naGnhu4dwIGPDsyB0aeG7gW0gbsSDbmcgcGjDoXQgdHJp4buDbiwgbOG7o2kgbmh14bqtbiBjYW8gdGh1IGjDunQgxJHhuqd1IHTGsC4NCiAgICAgIA0KICAgICAgKyAgIEThu4tjaCB24bulOiBOZ8OgbmggZOG7i2NoIHbhu6UgcGjDoXQgdHJp4buDbiB0aHUgaMO6dCDEkeG6p3UgdMawIG7GsOG7m2Mgbmdvw6BpLg0KICAgICAgDQogICAgLSAgIERvYW5oIG5naGnhu4dwOg0KICAgIA0KICAgICAgKyAgIE7Eg25nIGzhu7FjIHTDoGkgY2jDrW5oOiBEb2FuaCBuZ2hp4buHcCBjw7MgbsSDbmcgbOG7sWMgdMOgaSBjaMOtbmggbeG6oW5oIHRodSBow7p0IMSR4bqndSB0xrAuDQogICAgICANCiAgICAgICsgICBVeSB0w61uIHRoxrDGoW5nIGhp4buHdTogRG9hbmggbmdoaeG7h3AgY8OzIHV5IHTDrW4gdGjGsMahbmcgaGnhu4d1IHThu5F0IHRodSBow7p0IMSR4bqndSB0xrAuDQogICAgICANCiAgICAgICsgICBLaOG6oyBuxINuZyBxdeG6o24gbMO9OiBEb2FuaCBuZ2hp4buHcCBjw7Mga2jhuqMgbsSDbmcgcXXhuqNuIGzDvSB04buRdCB0aHUgaMO6dCDEkeG6p3UgdMawLg0KICAgICAgDQoNCiAgLSAgIE5nb8OgaSByYSwgY8OybiBjw7MgY8OhYyB54bq/dSB04buRIGtow6FjIG5oxrA6DQoNCiAgICAgICsgICBUw6xuaCBow6xuaCBjaMOtbmggdHLhu4s6IFTDrG5oIGjDrG5oIGNow61uaCB0cuG7iyDhu5VuIMSR4buLbmggdGh1IGjDunQgxJHhuqd1IHTGsCBuxrDhu5tjIG5nb8OgaS4NCiAgICAgIA0KICAgICAgKyAgIFbEg24gaMOzYTogVsSDbiBow7NhIGtpbmggZG9hbmggY+G7n2kgbeG7nywgdGjDom4gdGhp4buHbiB0aHUgaMO6dCDEkeG6p3UgdMawIG7GsOG7m2Mgbmdvw6BpLg0KICAgICAgDQogICAgICAqKlbDrSBk4bulIGPhu6UgdGjhu4M6KioNCg0KICAtICAgQW5nb2xhOiBOaOG7nSBnacOhIGThuqd1IGNhbyB2w6AgdMSDbmcgdHLGsOG7n25nIGtpbmggdOG6vyBt4bqhbmggbeG6vSwgQW5nb2xhIHRodSBow7p0IGzGsOG7o25nIGzhu5tuIEZESSB2w6BvIGzEqW5oIHbhu7FjIGtoYWkgdGjDoWMgZOG6p3Uga2jDrSB0cm9uZyBnaWFpIMSRb+G6oW4gMjAwNS0yMDExLg0KICANCiAgLSAgIE1hdXJpdGl1cyh0w6puIMSR4bqneSDEkeG7pyBsw6AgQ+G7mW5nIGjDsmEgTWF1cml0aXVzKSA6IFbhu5tpIG3DtGkgdHLGsOG7nW5nIGtpbmggdOG6vyB2xKkgbcO0IOG7lW4gxJHhu4tuaCwgY2jDrW5oIHPDoWNoIHRodSBow7p0IMSR4bqndSB0xrAgaGnhu4d1IHF14bqjLCBNYXVyaXRpdXMgdGh1IGjDunQgbmhp4buBdSBGREkgdsOgbyBsxKluaCB24buxYyBkdSBs4buLY2gsIGThu4tjaCB24bulIHTDoGkgY2jDrW5oLg0KICANCiAgLSAgIEV0aGlvcGlhKFTDqm4gxJHhuqd5IMSR4bunOiBD4buZbmcgaMOyYSBEw6JuIGNo4bunIExpw6puIGJhbmcgRXRoaW9waWEpIDogTmjhu50gY+G6o2kgdGhp4buHbiBtw7RpIHRyxrDhu51uZyDEkeG6p3UgdMawLCBFdGhpb3BpYSB0aHUgaMO6dCBuaGnhu4F1IEZESSB2w6BvIGzEqW5oIHbhu7FjIHPhuqNuIHh14bqldCwgZOG7h3QgbWF5Lg0KICANCioqS+G6v3QgbHXhuq1uOioqDQoNClThu5VuZyBkw7JuZyB24buRbiDEkeG6p3UgdMawIHbDoG8gY2jDonUgUGhpIHRyb25nIGdpYWkgxJFv4bqhbiAyMDA1LTIwMTEgY2jhu4t1IOG6o25oIGjGsOG7n25nIGLhu59pIG5oaeG7gXUgeeG6v3UgdOG7kSwgYmFvIGfhu5NtIGtpbmggdOG6vyB2xKkgbcO0LCBjaMOtbmggc8OhY2gsIHjDoyBo4buZaSB2w6Aga2h1IHbhu7FjLiBDw6FjIHF14buRYyBnaWEgY+G6p24gY+G6o2kgdGhp4buHbiBtw7RpIHRyxrDhu51uZyDEkeG6p3UgdMawLCBuw6JuZyBjYW8gbsSDbmcgbOG7sWMgY+G6oW5oIHRyYW5oIMSR4buDIHRodSBow7p0IHbhu5FuIMSR4bqndSB0xrAgaGnhu4d1IHF14bqjLCB0aMO6YyDEkeG6qXkgcGjDoXQgdHJp4buDbiBraW5oIHThur8uDQogICAgICANCioqTMawdSDDvToqKg0KDQpN4bupYyDEkeG7mSDhuqNuaCBoxrDhu59uZyBj4bunYSBjw6FjIHnhur91IHThu5EgdHLDqm4gY8OzIHRo4buDIGtow6FjIG5oYXUgdMO5eSB0aGVvIHThu6tuZyBxdeG7kWMgZ2lhIHbDoCB04burbmcgZ2lhaSDEkW/huqFuIHBow6F0IHRyaeG7g24uDQoNCkPDoWMgeeG6v3UgdOG7kSB2xKkgbcO0IHbDoCB2aSBtw7QgY8OzIHRo4buDIHTDoWMgxJHhu5luZyBs4bqrbiBuaGF1IHbDoCDhuqNuaCBoxrDhu59uZyDEkeG6v24gdOG7lW5nIGTDsm5nIHbhu5FuIMSR4bqndSB0xrAuDQoNCiMgMi4gSW5kaWNhcnRpb24gdOG7qyBJTUYNCg0KIyAyLjEgVOG7lW5nIHF1YW4gduG7gSBpbmRpY2FydGlvbg0KDQpgYGB7cn0NCmxpYnJhcnkodGlkeXZlcnNlKQ0KbGlicmFyeShpbWYuZGF0YSkNCnF1eW5oIDwtIGxvYWRfZGF0YXNldHMoJ0NQSScpDQp2aWV3KHF1eW5oJGRpbWVuc2lvbnMkaW5kaWNhdG9yKQ0KYGBgDQoqKkNQSSBsw6AgZ8OsPyoqDQotICAgQ1BJIGzDoCB2aeG6v3QgdOG6r3QgY+G7p2EgQ2jhu4kgc+G7kSBHacOhIFRpw6p1IGTDuW5nICh0aeG6v25nIEFuaDogQ29uc3VtZXIgUHJpY2UgSW5kZXgpLg0KLSAgIMSQw6J5IGzDoCB0aMaw4bubYyDEkW8gbeG7qWMgxJHhu5kgdGhheSDEkeG7lWkgdHJ1bmcgYsOsbmggY+G7p2EgZ2nDoSBj4bqjIGjDoG5nIGjDs2EgdsOgIGThu4tjaCB24bulIHRpw6p1IGTDuW5nIHRoZW8gdGjhu51pIGdpYW4uIE7Ds2kgY8OhY2gga2jDoWMsIENQSSBwaOG6o24gw6FuaCB4dSBoxrDhu5tuZyBs4bqhbSBwaMOhdCB0cm9uZyBu4buBbiBraW5oIHThur8uDQoNCipDUEkgbMOgIG3hu5l0IGNo4buJIGLDoW8ga2luaCB04bq/IHF1YW4gdHLhu41uZyDEkcaw4bujYyBz4butIGThu6VuZyBjaG8gbmhp4buBdSBt4bulYyDEkcOtY2gsIGJhbyBn4buTbToqDQoNCi0gICDEkG8gbMaw4budbmcgbeG7qWMgxJHhu5kgbOG6oW0gcGjDoXQ6IENQSSBnacO6cCBjaMOtbmggcGjhu6cgdsOgIGPDoWMgbmjDoCBraW5oIHThur8gxJHDoW5oIGdpw6EgbeG7qWMgxJHhu5kgdMSDbmcgZ2nDoSBjaHVuZyB0cm9uZyBu4buBbiBraW5oIHThur8uDQoNCi0gICDEkGnhu4F1IGNo4buJbmggY2jDrW5oIHPDoWNoIGtpbmggdOG6vzogQ1BJIMSRxrDhu6NjIHPhu60gZOG7pW5nIMSR4buDIMSRaeG7gXUgY2jhu4luaCBjw6FjIGtob+G6o24gdGhhbmggdG/DoW4gbmjGsCBsxrDGoW5nIGjGsHUsIHRy4bujIGPhuqVwIHjDoyBo4buZaSB2w6AgdGh14bq/IHRoZW8gbeG7qWMgxJHhu5kgbOG6oW0gcGjDoXQuDQoNCi0gICDEkMOhbmggZ2nDoSBoaeG7h3UgcXXhuqMgaG/huqF0IMSR4buZbmcgY+G7p2EgY2jDrW5oIHBo4bunOiBDUEkgbMOgIG3hu5l0IHRoxrDhu5tjIMSRbyBoaeG7h3UgcXXhuqMgY+G7p2EgY8OhYyBjaMOtbmggc8OhY2gga2luaCB04bq/IGPhu6dhIGNow61uaCBwaOG7pyB0cm9uZyB2aeG7h2Mga2nhu4NtIHNvw6F0IGzhuqFtIHBow6F0Lg0KDQotICAgR2nDunAgY8OhYyBkb2FuaCBuZ2hp4buHcCDEkcawYSByYSBxdXnhur90IMSR4buLbmggxJHhuqd1IHTGsDogQ1BJIGdpw7pwIGRvYW5oIG5naGnhu4dwIGThu7EgxJFvw6FuIHh1IGjGsOG7m25nIGdpw6EgY+G6oyB0cm9uZyB0xrDGoW5nIGxhaSB2w6AgxJHGsGEgcmEgcXV54bq/dCDEkeG7i25oIMSR4bqndSB0xrAgcGjDuSBo4bujcC4NCg0KYGBge3J9DQoNCmNwaSA8LSBxdXluaCRnZXRfc2VyaWVzKGZyZXEgPSAnTScsIHJlZl9hcmVhID0gJ1ZOJywgaW5kaWNhdG9yID0gJ1BDUElIX1dUJykNCmNwaSA8LSBuYS5vbWl0KGNwaSkNCmhlYWQoY3BpKQ0KDQpgYGANCi0gICBQQ1BJSF9XVDsgSG91c2luZywgV2F0ZXIsIEVsZWN0cmljaXR5LCBHYXMgYW5kIE90aGVyIEZ1ZWxzLCBXZWlnaHQgKGhheSBQQ1BJSF9XVCAtIE5ow6Ag4bufLCBOxrDhu5tjLCDEkGnhu4duLCBLaMOtIMSR4buRdCB2w6AgTmhpw6puIGxp4buHdSBraMOhYywgVHLhu41uZyBz4buRKSDEkeG6oWkgZGnhu4duIGNobyBt4buZdCBraMOtYSBj4bqhbmggY+G7pSB0aOG7gyBj4bunYSBk4buvIGxp4buHdSBDaOG7iSBz4buRIEdpw6EgVGnDqnUgZMO5bmcgKENQSSkgZG8gUXXhu7kgVGnhu4FuIHThu4cgUXXhu5FjIHThur8gKElNRikgY3VuZyBj4bqlcC4NCg0KLSAgIEdp4bqjaSB0aMOtY2ggdOG7q25nIHBo4bqnbjoNCg0KKlBDUElIX1dUOioNCg0KICAtICAgUENQSUg6IEPDsyB0aOG7gyBsw6Agdmnhur90IHThuq90IGPhu6dhICJDb25zdW1lciBQcmljZSBJbmRleCAtIEhhcm1vbml6ZWQgV2VpZ2h0cyIgKENo4buJIHPhu5EgR2nDoSBUacOqdSBkw7luZyAtIFRy4buNbmcgc+G7kSBIw6BpIGjDsmEpLg0KICANCiAgLSAgIFdUOiBUaMaw4budbmcgxJHGsOG7o2MgaGnhu4N1IGzDoCAiV2VpZ2h0IiAoVHLhu41uZyBz4buRKS4NCg0KICAtICAgSG91c2luZywgV2F0ZXIsIEVsZWN0cmljaXR5LCBHYXMgYW5kIE90aGVyIEZ1ZWxzIChOaMOgIOG7nywgTsaw4bubYywgxJBp4buHbiwgS2jDrSDEkeG7kXQgdsOgIE5oacOqbiBsaeG7h3Uga2jDoWMpOg0KDQogIA0KICAtICAgxJDDonkgbMOgIG3hu5l0IG5ow7NtIChjYXRlZ29yeSkgdGhlbyBkw7VpIGdpw6EgY+G6oyBj4bunYSBjw6FjIG3hurd0IGjDoG5nIHRoaeG6v3QgeeG6v3UgdHJvbmcgZ2nhu48gaMOgbmcgdGnDqnUgZMO5bmcuDQoNCipXZWlnaHQgKFRy4buNbmcgc+G7kSk6Kg0KDQogIC0gICBHacOhIHRy4buLIHPhu5EgxJHhuqFpIGRp4buHbiBjaG8gdOG6p20gcXVhbiB0cuG7jW5nIHTGsMahbmcgxJHhu5FpIGPhu6dhIG5ow7NtICJOaMOgIOG7nywgTsaw4bubYywgxJBp4buHbiwgS2jDrSDEkeG7kXQgdsOgIE5oacOqbiBsaeG7h3Uga2jDoWMiIHNvIHbhu5tpIGPDoWMgbmjDs20ga2jDoWMgdHJvbmcgdMOtbmggdG/DoW4gQ1BJIHThu5VuZyB0aOG7gy4NCiAgDQogIFRy4buNbmcgc+G7kSBwaOG6o24gw6FuaCBt4bupYyBjaGkgdGnDqnUgdHJ1bmcgYsOsbmggY+G7p2EgY8OhYyBo4buZIGdpYSDEkcOsbmggY2hvIG5ow7NtIG7DoHkuDQogIA0KTsOzaSBt4buZdCBjw6FjaCDEkcahbiBnaeG6o246DQoNCiAgKlBDUElIX1dUIEhvdXNpbmcsIFdhdGVyLCBFbGVjdHJpY2l0eSwgR2FzIGFuZCBPdGhlciBGdWVscywgV2VpZ2h0KiBjaG8gYmnhur90IHThu7cgbOG7hyBwaOG6p24gdHLEg20gY2hpIHRpw6p1IHRydW5nIGLDrG5oIGPhu6dhIG5nxrDhu51pIGTDom4gY2hvIG5ow7NtIGjDoG5nIE5ow6Ag4bufLCBOxrDhu5tjLCDEkGnhu4duLCBLaMOtIMSR4buRdCB2w6AgTmhpw6puIGxp4buHdSBraMOhYyDhuqNuaCBoxrDhu59uZyBuaMawIHRo4bq/IG7DoG8gxJHhur9uIG3hu6ljIGJp4bq/biDEkeG7mW5nIHThu5VuZyB0aOG7gyBj4bunYSBnacOhIGPhuqMgKMSRxrDhu6NjIMSRbyBi4bqxbmcgUENQSUhfV1QpLg0KICANCiMgMi4yIFBow6JuIHTDrWNoIGLhu5kgZOG7ryBsaeG7h3UgYuG6sW5nIGJp4buDdSDEkeG7kw0KDQpE4buvIGxp4buHdSBwaMOibiB0w61jaCB0aGVvIHRow6FuZywgdGjhu51pIGdpYW4gdOG7qyB0aMOhbmcgMSBuxINtIDIwMDEgxJHhur9uIHRow6FuZyAyIG7Eg20gMjAyNA0KDQoNCmBgYHtyfQ0KDQpjcGkgJT4lIGdncGxvdChhZXMoeCA9IFRJTUVfUEVSSU9ELCB5ID0gTS5WTi5QQ1BJSF9XVCkpICsNCiAgZ2VvbV9wb2ludChjb2xvcj0ncmVkJykgKw0KICB4bGFiKCdUaOG7nWkgZ2lhbiB04burIDIwMDEgxJHhur9uIDIwMjQnKSArIA0KICB5bGFiKCdU4bu3IGzhu4cgJSBjaGkgdGnDqnUgdHJ1bmcgYsOsbmgnKQ0KYGBgDQotICAgTmjhuq1uIHjDqXQ6IFThu7cgbOG7hyAlIGNoaSB0acOqdSB0cnVuZyBiw6xuaCB04burIHRow6FuZyAwMSBuxINtIDIwMDEgxJHhur9uIHRow6FuZyAwNyBuxINtIDIwMjIgbMOgIDE1LjczDQoNCi0gICAgQ8OybiB04burIHRow6FuZyAwOCBuxINtIDIwMjIgxJHhur9uIHRow6FuZyAwMiBuxINtIDIwMjQgbMOgIDE4LjgyDQoNCiMgMi4zIEdp4bqjaSB0aMOtY2ggc+G7sSB0aGF5IMSR4buVaSBi4bqldCB0aMaw4budbmcgdOG7qyB0aMOhbmcgNyAoMTUuNzMpIHNhbmcgdGjDoW5nIDggKDE4LjgyKSBuxINtIDIwMjINCg0KKjEuIEJp4bq/biDEkeG7mW5nIGdpw6EgY+G6ozoqDQoNCiAgLSAgIEdpw6EgeMSDbmcgZOG6p3UgdMSDbmcgbeG6oW5oOiDEkMOieSBsw6Agbmd1ecOqbiBuaMOibiBjaMOtbmggZOG6q24gxJHhur9uIHPhu7EgdMSDbmcgxJHhu5l0IGJp4bq/biBj4bunYSBNLlZOLlBDUElIX1dUIHRyb25nIHRow6FuZyA4Lg0KDQogIC0gICBHacOhIHjEg25nIFJPTiA5NSB0xINuZyB04burIDI5LjgyMCDEkeG7k25nL2zDrXQgKHRow6FuZyA3KSBsw6puIDMyLjA4MCDEkeG7k25nL2zDrXQgKHRow6FuZyA4KS4NCiAgDQogIC0gICBHacOhIHjEg25nIEU1IFJPTiA5MiB0xINuZyB04burIDI4LjcyMCDEkeG7k25nL2zDrXQgKHRow6FuZyA3KSBsw6puIDMwLjg3MCDEkeG7k25nL2zDrXQgKHRow6FuZyA4KS4NCiAgDQogIC0gICBHacOhIGThuqd1IGRpZXNlbCAwLjA1UyB0xINuZyB04burIDI1LjIzMCDEkeG7k25nL2zDrXQgKHRow6FuZyA3KSBsw6puIDI3LjUxMCDEkeG7k25nL2zDrXQgKHRow6FuZyA4KS4NCiAgDQogIC0gICBHacOhIHRo4buxYyBwaOG6qW0gY8WpbmcgY8OzIGJp4bq/biDEkeG7mW5nOg0KDQogIC0gICBHacOhIHRo4buLdCBs4bujbiBoxqFpIHTEg25nIHThu6sgNzEuMDAwIMSR4buTbmcva2cgKHRow6FuZyA3KSBsw6puIDc0LjAwMCDEkeG7k25nL2tnICh0aMOhbmcgOCkuDQogIA0KICAtICAgR2nDoSByYXUgeGFuaCB0xINuZyBkbyDhuqNuaCBoxrDhu59uZyBj4bunYSBtxrBhIGzFqSwgbmjhuqV0IGzDoCBjw6FjIGxv4bqhaSByYXUgxINuIGzDoSBuaMawIHJhdSBtdeG7kW5nLCByYXUgY+G6o2ksIHjDoCBsw6FjaCwuLi4NCiAgDQogIC0gICBHacOhIGThu4tjaCB24bulOg0KDQogIC0gICBHacOhIHbDqSBtw6F5IGJheSB0xINuZyBkbyBuaHUgY+G6p3UgxJFpIGzhuqFpIHTEg25nIGNhbyB0cm9uZyBtw7lhIGR1IGzhu4tjaC4NCiAgDQogIC0gICBHacOhIGThu4tjaCB24bulIHkgdOG6vyB0xINuZyBkbyBjaGkgcGjDrSBraMOhbSBjaOG7r2EgYuG7h25oIHbDoCBnacOhIHRodeG7kWMgdMSDbmcuDQoNCioyLiBWw60gZOG7pSBj4bulIHRo4buDOioNCg0KICAtICAgR2nDoSB4xINuZyBk4bqndSB0xINuZzoNCg0KICAtICAgVGhlbyBiw6FvIGPDoW8gY+G7p2EgQuG7mSBDw7RuZyBUaMawxqFuZywgZ2nDoSB4xINuZyBk4bqndSBuaOG6rXAga2jhuql1IGLDrG5oIHF1w6JuIHRow6FuZyA4LzIwMjIgdMSDbmcgMTEsNSUgc28gduG7m2kgdGjDoW5nIDcvMjAyMi4NCiAgDQogIC0gICBHacOhIHjEg25nIGThuqd1IHTEg25nIGNhbyDhuqNuaCBoxrDhu59uZyB0cuG7sWMgdGnhur9wIMSR4bq/biBjaGkgcGjDrSB24bqtbiB04bqjaSwgc+G6o24geHXhuqV0LCBraW5oIGRvYW5oLCBk4bqrbiDEkeG6v24gZ2nDoSBj4bqjIGjDoG5nIGjDs2EgdsOgIGThu4tjaCB24bulIHTEg25nIHRoZW8uDQogIA0KICAtICAgQ+G6rXAgbmjhuq10IHBoxrDGoW5nIHBow6FwIHTDrW5oIHRvw6FuOg0KDQogIC0gICBD4bulYyBUaOG7kW5nIGvDqiBWaeG7h3QgTmFtIMSRw6MgY+G6rXAgbmjhuq10IHLhu5UgaMOgbmcgaMOzYSBNLlZOLlBDUElIX1dUIHThu6sgdGjDoW5nIDgvMjAyMiwgYmFvIGfhu5NtIHRow6ptIG3hu5l0IHPhu5EgbeG6t3QgaMOgbmcgbeG7m2kgbmjGsCDEkWnhu4duIHRob+G6oWkgdGjDtG5nIG1pbmgsIG3DoXkgdMOtbmggYuG6o25nLC4uLg0KICANCiAgLVZp4buHYyBj4bqtcCBuaOG6rXQgcuG7lSBow6BuZyBow7NhIGPDsyB0aOG7gyDhuqNuaCBoxrDhu59uZyDEkeG6v24gZ2nDoSB0cuG7iyBNLlZOLlBDUElIX1dULCDEkeG6t2MgYmnhu4d0IGzDoCB0cm9uZyB0aOG7nWkgZ2lhbiDEkeG6p3Ugc2F1IGtoaSDDoXAgZOG7pW5nLg0KICANCiMgMi40IEPDoWMgeeG6v3UgdOG7kSDhuqNuaCBoxrDhu59uZyANCg0KKjEuIEdpw6EgY+G6oyBow6BuZyBow7NhIHbDoCBk4buLY2ggduG7pToqDQoNCiAgLSAgIEdpw6EgdGjhu7FjIHBo4bqpbTogQmnhur9uIMSR4buZbmcgZ2nDoSB0aOG7sWMgcGjhuqltLCDEkeG6t2MgYmnhu4d0IGzDoCBjw6FjIG3hurd0IGjDoG5nIHRoaeG6v3QgeeG6v3UgbmjGsCBn4bqhbywgdGjhu4t0LCByYXUsLi4uIOG6o25oIGjGsOG7n25nIHRy4buxYyB0aeG6v3AgxJHhur9uIE0uVk4uUENQSUhfV1QuDQogIA0KICAtICAgR2nDoSBk4buLY2ggduG7pTogR2nDoSBk4buLY2ggduG7pSB5IHThur8sIGdpw6FvIGThu6VjLCBnaWFvIHRow7RuZywgbmjDoCDhu58sLi4uIGPFqW5nIMSRw7NuZyB2YWkgdHLDsiBxdWFuIHRy4buNbmcgdHJvbmcgdmnhu4djIHF1eeG6v3QgxJHhu4tuaCBNLlZOLlBDUElIX1dULg0KICANCioyLiBUaHUgbmjhuq1wIGPhu6dhIG5nxrDhu51pIGxhbyDEkeG7mW5nIHbDoCB2acOqbiBjaOG7qWM6Kg0KDQogIC0gICBN4bupYyBsxrDGoW5nOiBN4bupYyBsxrDGoW5nIHTEg25nIGhheSBnaeG6o20gc+G6vSDhuqNuaCBoxrDhu59uZyDEkeG6v24ga2jhuqMgbsSDbmcgY2hpIHRpw6p1IGPhu6dhIG5nxrDhu51pIGxhbyDEkeG7mW5nIHbDoCB2acOqbiBjaOG7qWMsIHThu6sgxJHDsyB0w6FjIMSR4buZbmcgxJHhur9uIE0uVk4uUENQSUhfV1QuDQogIA0KICAtICAgQ2jDrW5oIHPDoWNoIGjhu5cgdHLhu6M6IEPDoWMgY2jDrW5oIHPDoWNoIGjhu5cgdHLhu6MgY+G7p2EgQ2jDrW5oIHBo4bunIG5oxrAgdHLhu6MgY+G6pXAsIG1p4buFbiB0aHXhur8sLi4uIGPFqW5nIGPDsyB0aOG7gyDhuqNuaCBoxrDhu59uZyDEkeG6v24gTS5WTi5QQ1BJSF9XVC4NCg0KKjMuIFnhur91IHThu5Ega2luaCB04bq/IHbEqSBtw7Q6Kg0KDQogIC0gICBUxINuZyB0csaw4bufbmcgR0RQOiBUxINuZyB0csaw4bufbmcgR0RQIGNhbyB0aMaw4budbmcgZOG6q24gxJHhur9uIG5odSBj4bqndSB0acOqdSBkw7luZyB0xINuZywgdOG6oW8gw6FwIGzhu7FjIGzDqm4gZ2nDoSBj4bqjIHbDoCBNLlZOLlBDUElIX1dULg0KDQogIC0gICBN4bupYyDEkeG7mSBs4bqhbSBwaMOhdDogTOG6oW0gcGjDoXQgY2FvIGtoaeG6v24gZ2nDoSBj4bqjIGjDoG5nIGjDs2EgdsOgIGThu4tjaCB24bulIHTEg25nLCBk4bqrbiDEkeG6v24gTS5WTi5QQ1BJSF9XVCB0xINuZyB0aGVvLg0KDQogIC0gICBMw6NpIHN14bqldCBuZ8OibiBow6BuZzogTMOjaSBzdeG6pXQgbmfDom4gaMOgbmcgY2FvIGPDsyB0aOG7gyBraGnhur9uIG5nxrDhu51pIGTDom4gaOG6oW4gY2jhur8gY2hpIHRpw6p1LCBk4bqrbiDEkeG6v24gTS5WTi5QQ1BJSF9XVCBnaeG6o20uDQoNCio0LiBDaMOtbmggc8OhY2ggY+G7p2EgQ2jDrW5oIHBo4bunOioNCg0KICAtICAgQ2jDrW5oIHPDoWNoIHRp4buBbiB04buHOiBDaMOtbmggc8OhY2ggdGnhu4FuIHThu4cgY+G7p2EgTmfDom4gaMOgbmcgTmjDoCBuxrDhu5tjIGPDsyB0aOG7gyDhuqNuaCBoxrDhu59uZyDEkeG6v24gbMOjaSBzdeG6pXQgbmfDom4gaMOgbmcsIHThu6sgxJHDsyB0w6FjIMSR4buZbmcgxJHhur9uIE0uVk4uUENQSUhfV1QuDQoNCiAgLSAgIENow61uaCBzw6FjaCB0aHXhur86IENow61uaCBzw6FjaCB0aHXhur8gY8OzIHRo4buDIOG6o25oIGjGsOG7n25nIMSR4bq/biBnacOhIGPhuqMgaMOgbmcgaMOzYSB2w6AgZOG7i2NoIHbhu6UsIHThu6sgxJHDsyB0w6FjIMSR4buZbmcgxJHhur9uIE0uVk4uUENQSUhfV1QuDQoNCio1LiBZ4bq/dSB04buRIGtow6FjOioNCg0KICAtICAgVGjhu51pIHRp4bq/dDogQsOjbyBsxaksIGjhuqFuIGjDoW4sLi4uIGPDsyB0aOG7gyDhuqNuaCBoxrDhu59uZyDEkeG6v24gZ2nDoSBj4bqjIHRo4buxYyBwaOG6qW0gdsOgIGPDoWMgbeG6t3QgaMOgbmcgdGhp4bq/dCB54bq/dSBraMOhYywgZOG6q24gxJHhur9uIE0uVk4uUENQSUhfV1QgdMSDbmcuDQoNCiAgLSAgIEThu4tjaCBi4buHbmg6IEThu4tjaCBi4buHbmggY8OzIHRo4buDIOG6o25oIGjGsOG7n25nIMSR4bq/biBjaHXhu5dpIGN1bmcg4bupbmcsIGdpw6EgY+G6oyBow6BuZyBow7NhIHbDoCBk4buLY2ggduG7pSwgdOG7qyDEkcOzIHTDoWMgxJHhu5luZyDEkeG6v24gTS5WTi5QQ1BJSF9XVC4NCg0KKipWw60gZOG7pToqKg0KDQogIC0gICBHacOhIHjEg25nIGThuqd1IHTEg25nOiBHacOhIHjEg25nIGThuqd1IHTEg25nIGNhbyDhuqNuaCBoxrDhu59uZyB0cuG7sWMgdGnhur9wIMSR4bq/biBjaGkgcGjDrSB24bqtbiB04bqjaSwgc+G6o24geHXhuqV0LCBraW5oIGRvYW5oLCBk4bqrbiDEkeG6v24gZ2nDoSBj4bqjIGjDoG5nIGjDs2EgdsOgIGThu4tjaCB24bulIHTEg25nIHRoZW8sIHThu6sgxJHDsyBNLlZOLlBDUElIX1dUIGPFqW5nIHTEg25nLg0KDQogIC0gICBN4bupYyBsxrDGoW5nIHTEg25nOiBN4bupYyBsxrDGoW5nIHTEg25nIGtoaeG6v24gbmfGsOG7nWkgbGFvIMSR4buZbmcgdsOgIHZpw6puIGNo4bupYyBjw7Mga2jhuqMgbsSDbmcgY2hpIHRpw6p1IGNhbyBoxqFuLCBk4bqrbiDEkeG6v24gbmh1IGPhuqd1IHRpw6p1IGTDuW5nIHTEg25nLCB04burIMSRw7MgTS5WTi5QQ1BJSF9XVCBjxaluZyBjw7MgdGjhu4MgdMSDbmcuDQoNCioqS+G6v3QgbHXhuq1uOioqDQoNCiAgLSAgIE0uVk4uUENQSUhfV1QgY2jhu4t1IOG6o25oIGjGsOG7n25nIGLhu59pIG5oaeG7gXUgeeG6v3UgdOG7kSBraMOhYyBuaGF1LCBiYW8gZ+G7k20gZ2nDoSBj4bqjIGjDoG5nIGjDs2EgdsOgIGThu4tjaCB24bulLCB0aHUgbmjhuq1wIGPhu6dhIG5nxrDhu51pIGxhbyDEkeG7mW5nIHbDoCB2acOqbiBjaOG7qWMsIHnhur91IHThu5Ega2luaCB04bq/IHbEqSBtw7QsIGNow61uaCBzw6FjaCBj4bunYSBDaMOtbmggcGjhu6cgdsOgIHnhur91IHThu5Ega2jDoWMuDQo=