library(tidyverse)
## Warning: package 'tidyverse' 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.4.4     ✔ 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(WDI)

1 Mô tả về bộ dữ liệu từ WORLD BANK

  • Tên indicator: Literacy rate, adult total (% of people ages 15 and above) - Tỷ lệ biết chữ, tổng số người trưởng thành (% số người từ 15 tuổi trở lên)

  • Code: SE.ADT.LITR.ZS

  • Gồm 16758 quan sát và 5 biến.

  • Định nghĩa dài: Tỷ lệ người lớn biết chữ là phần trăm số người từ 15 tuổi trở lên có thể đọc và viết và hiểu một câu nói ngắn gọn, đơn giản về cuộc sống hàng ngày của họ.

  • Khái niệm và phương pháp thống kê: Thống kê về mù chữ ở hầu hết các quốc gia bao gồm dân số từ 15 tuổi trở lên, nhưng một số quốc gia bao gồm các độ tuổi trẻ hơn hoặc bị giới hạn ở các độ tuổi có xu hướng làm tăng tỷ lệ biết chữ. Tỷ lệ biết chữ của thanh niên trong độ tuổi 15-24 phản ánh những tiến bộ gần đây trong giáo dục. Nó đo lường kết quả tích lũy của giáo dục tiểu học trong khoảng 10 năm trước đó bằng cách chỉ ra tỷ lệ dân số đã học qua hệ thống giáo dục tiểu học và có được các kỹ năng đọc viết và tính toán cơ bản. Nói chung, khả năng đọc viết cũng bao gồm khả năng tính toán, khả năng thực hiện các phép tính số học đơn giản. Dữ liệu về tỷ lệ biết chữ được Viện Thống kê UNESCO tổng hợp dựa trên các cuộc điều tra dân số quốc gia và khảo sát hộ gia đình, đồng thời đối với các quốc gia không có dữ liệu về tỷ lệ biết chữ gần đây, sử dụng Mô hình dự báo tỷ lệ biết chữ theo từng độ tuổi toàn cầu (GALP).

  • Mức độ phù hợp với phát triển: Tỷ lệ biết chữ là một chỉ số kết quả để đánh giá trình độ học vấn. Dữ liệu này có thể dự đoán chất lượng lực lượng lao động trong tương lai và có thể được sử dụng trong việc đảm bảo các chính sách về kỹ năng sống cho nam giới và phụ nữ. Nó cũng có thể được sử dụng như một công cụ đại diện để xem xét tính hiệu quả của hệ thống giáo dục; tỷ lệ biết đọc biết viết cao cho thấy khả năng của một hệ thống giáo dục trong việc cung cấp cơ hội cho một lượng lớn dân số có được kỹ năng đọc viết. Thành tích tích lũy được của giáo dục là nền tảng cho sự phát triển trí tuệ và phát triển kinh tế xã hội hơn nữa, mặc dù nó không nhất thiết đảm bảo chất lượng giáo dục. Phụ nữ biết chữ ngụ ý rằng họ có thể tìm kiếm và sử dụng thông tin để cải thiện sức khỏe, dinh dưỡng và giáo dục của các thành viên trong gia đình. Phụ nữ biết chữ cũng được trao quyền để đóng một vai trò có ý nghĩa.

  • Những hạn chế và ngoại lệ: Trong thực tế, khả năng đọc viết rất khó đo lường. Việc ước tính tỷ lệ biết chữ đòi hỏi phải thực hiện các cuộc điều tra dân số hoặc đo đạc khảo sát trong những điều kiện được kiểm soát. Nhiều quốc gia báo cáo số người biết chữ từ dữ liệu tự báo cáo. Một số sử dụng dữ liệu về trình độ học vấn làm đại diện nhưng áp dụng thời gian đi học hoặc mức độ hoàn thành khác nhau. Ant có xu hướng trong các cuộc khảo sát quốc gia và quốc tế gần đây là sử dụng bài kiểm tra đọc trực tiếp về kỹ năng đọc viết. Do các định nghĩa và phương pháp thu thập dữ liệu khác nhau giữa các quốc gia nên dữ liệu cần được sử dụng một cách thận trọng.

adt <- WDI(indicator = 'SE.ADT.LITR.ZS')
library(DT)
## Warning: package 'DT' was built under R version 4.3.3
datatable(adt)
## Warning in instance$preRenderHook(instance): It seems your data is too big for
## client-side DataTables. You may consider server-side processing:
## https://rstudio.github.io/DT/server.html

1.1 Phân tích dữ liệu theo thời gian

  • Giả sử chọn nước VIỆT NAM để phân tích.
se <- WDI(indicator = 'SE.ADT.LITR.ZS', country = c('VNM'))
datatable(se)
d <- se %>% select(year,SE.ADT.LITR.ZS)
d <- na.omit(d)
names(d) <- c('year','Phantram')
datatable(d)

1.1.1 Biểu đồ thể hiện tỷ lệ phần trăm biết chữ giai đoạn 1979 - 1999.

library(dplyr)
d1 <- d %>% filter( year >= 1979 & year <= 1999 )
library(ggplot2)
d1 %>% ggplot(aes(x = year, y = Phantram)) +
  geom_line(color = "black") +
  geom_point(color = "red") +
  labs(title = "Biểu đồ thể hiện tỷ lệ phần trăm biết chữ giai đoạn 1979 - 1999", x = "Năm", y = "Phần trăm")

Nhận xét:

  • Tỷ lệ biết chữ năm 1979: 83.8%

  • Tỷ lệ biết chữ năm 1989: 87.6%

  • Tỷ lệ biết chữ năm 1999: 90.3%

  • Tỷ lệ biết chữ tăng dần qua các năm trong giai đoạn 1979-1999.

  • Mức tăng trung bình khoảng 3% mỗi năm.

  • Sự gia tăng này thể hiện nỗ lực của Đảng và Nhà nước trong việc xóa mù chữ:

    • Mở rộng mạng lưới trường học

    • Nâng cao chất lượng giáo dục

    • Phổ cập giáo dục cho mọi lứa tuổi

    • Coi trọng công tác xóa mù chữ

=> Kết luận: Tỷ lệ biết chữ của Việt Nam trong giai đoạn 1979-1999 có sự gia tăng đáng kể là kết quả của nhiều yếu tố, bao gồm chính sách giáo dục hiệu quả, nhu cầu học tập cao của người dân, sự hỗ trợ của các tổ chức xã hội và sự phát triển kinh tế.

1.1.2 Biểu đồ thể hiện tỷ lệ phần trăm biết chữ giai đoạn 1999 - 2019.

d2 <- d %>% filter( year >= 1999 & year <= 2019)
d2 %>% ggplot(aes(x = year, y = Phantram)) +
  geom_line(color = "black") +
  geom_point(color = "red") +
  labs(title = "Biểu đồ thể hiện tỷ lệ phần trăm biết chữ giai đoạn 1999 - 2019", x = "Năm", y = "Phần trăm")

Nhận xét:

  • Tỷ lệ biết chữ năm 1999: 90.3%

  • Tỷ lệ biết chữ năm 2000: 90.1%

  • Tỷ lệ biết chữ năm 2009: 93.5%

  • Tỷ lệ biết chữ năm 2019: 95.8%

  • Sự chênh lệch nhẹ giữa các năm: tốc độ tăng không đồng đều.

=> Kết luận: Tỷ lệ biết chữ của Việt Nam đã tăng đáng kể trong giai đoạn 1999-2019, thể hiện sự nỗ lực của Chính phủ trong việc xóa mù chữ và nâng cao trình độ dân trí.Và tốc độ tăng nhanh hơn sau năm 2009 cho thấy những chính sách giáo dục hiệu quả và sự quan tâm của xã hội đối với vấn đề giáo dục.

1.2 Các yếu tố ảnh hưởng.

  • Chính sách giáo dục:

    • Chính sách xóa mù chữ: Nhà nước đề ra nhiều chính sách khuyến khích xóa mù chữ, tập trung vào các đối tượng như phụ nữ, người già, người dân tộc thiểu số.

    • Mở rộng mạng lưới trường học: Số lượng trường học được mở rộng, đặc biệt là ở khu vực nông thôn, miền núi.

    • Nâng cao chất lượng giáo dục: Nâng cao trình độ giáo viên, cải thiện cơ sở vật chất trường học, đổi mới phương pháp giảng dạy.

  • Nhu cầu học tập:

    • Nhu cầu học tập của người dân ngày càng tăng cao do nhận thức được tầm quan trọng của giáo dục đối với sự phát triển bản thân và xã hội.

    • Cha mẹ quan tâm hơn đến việc cho con cái học tập.

  • Vai trò của các tổ chức xã hội:

    • Các tổ chức xã hội như Hội Chữ thập đỏ, Đoàn Thanh niên, Hội Phụ nữ tích cực tham gia vào công tác xóa mù chữ.

    • Mạnh dạn đóng góp kinh phí, hỗ trợ cho các hoạt động giáo dục.

  • Ảnh hưởng của kinh tế:

    • Kinh tế phát triển tạo điều kiện cho việc đầu tư vào giáo dục, nâng cao chất lượng giáo dục.

    • Nâng cao đời sống người dân, tạo điều kiện cho việc học tập.

2 Mô tả về bộ dữ liệu từ IMF

  • Tên bộ dữ liệu: Fiscal Monitor (FM)

    • Cơ quan Giám sát Tài chính khảo sát và phân tích những diễn biến mới nhất về tài chính công, cập nhật các tác động tài chính của cuộc khủng hoảng và các dự báo tài chính trung hạn, đồng thời đánh giá các chính sách nhằm đưa tài chính công vào một nền tảng bền vững.

    • Phạm vi tạm thời: Dữ liệu Giám sát Tài chính được trình bày theo tần suất hàng năm.

    • Phạm vi địa lý: Cơ sở dữ liệu của Fiscal Monitor bao gồm 115 quốc gia và một số khu vực tổng hợp.

    • Phạm vi ngành: Chính phủ nói chung và khu vực công

    • Tính kịp thời: Cơ sở dữ liệu Giám sát Tài chính được Vụ Tài chính của IMF cập nhật hai lần một năm.

    • Phương pháp luận: Cơ quan Giám sát Tài chính khảo sát và phân tích những diễn biến tài chính công mới nhất, cập nhật các tác động tài chính của cuộc khủng hoảng và các dự báo tài chính trung hạn, đồng thời đánh giá các chính sách nhằm đưa tài chính công vào một nền tảng bền vững.

    • Dữ liệu và dự báo cụ thể theo quốc gia về các biến số tài chính chính được dựa trên cơ sở dữ liệu Triển vọng Kinh tế Thế giới tháng 4 năm 2020, trừ khi có quy định khác và do nhân viên IMF tổng hợp. Dữ liệu lịch sử và các dự báo dựa trên thông tin được thu thập bởi các quan chức bộ phận quốc gia của IMF trong bối cảnh nhiệm vụ của họ và thông qua phân tích liên tục của họ về tình hình đang phát triển ở mỗi quốc gia; chúng được cập nhật liên tục khi có thêm thông tin. Sự phá vỡ cấu trúc trong dữ liệu có thể được điều chỉnh để tạo ra chuỗi trơn tru thông qua ghép nối và các kỹ thuật khác. Các ước tính của nhân viên IMF đóng vai trò là đại diện khi không có thông tin đầy đủ. Do đó, dữ liệu Giám sát tài chính có thể khác với dữ liệu chính thức ở các nguồn khác, bao gồm cả Thống kê tài chính quốc tế của IMF.

    • Việc phân loại quốc gia trong Giám sát tài chính chia thế giới thành ba nhóm chính: 35 nền kinh tế tiên tiến, 40 nền kinh tế thị trường mới nổi và thu nhập trung bình, và 40 quốc gia đang phát triển có thu nhập thấp. Bảy nền kinh tế tiên tiến lớn nhất được đo bằng GDP (Canada, Pháp, Đức, Ý, Nhật Bản, Vương quốc Anh, Hoa Kỳ) tạo thành nhóm nhỏ của các nền kinh tế tiên tiến lớn, thường được gọi là Nhóm Bảy (G7). Các thành viên của khu vực đồng euro cũng được phân biệt thành một nhóm nhỏ. Dữ liệu tổng hợp trình bày trong các bảng dành cho khu vực đồng euro bao gồm các thành viên hiện tại trong tất cả các năm, mặc dù số lượng thành viên đã tăng lên theo thời gian. Dữ liệu của hầu hết các quốc gia thành viên Liên minh Châu Âu đã được sửa đổi sau khi áp dụng Hệ thống Tài khoản Quốc gia và Khu vực Châu Âu mới (ESA 2010). Các quốc gia đang phát triển có thu nhập thấp (LIDC) là các quốc gia có mức thu nhập bình quân đầu người dưới một ngưỡng nhất định (hiện được đặt ở mức 2.700 USD vào năm 2016 được đo bằng phương pháp Atlas của Ngân hàng Thế giới), các đặc điểm cơ cấu phù hợp với trình độ phát triển hạn chế và chuyển đổi cơ cấu, và các yếu tố bên ngoài. các mối liên kết tài chính chưa đủ chặt chẽ để được coi là nền kinh tế thị trường mới nổi. Zimbabwe được đưa vào nhóm. Các nền kinh tế thị trường mới nổi và thu nhập trung bình bao gồm những nền kinh tế không được phân loại là nền kinh tế tiên tiến hoặc các nước đang phát triển có thu nhập thấp.

    • Hầu hết dữ liệu tài chính đề cập đến chính phủ nói chung ở các nền kinh tế tiên tiến, trong khi đối với các thị trường mới nổi và các nền kinh tế đang phát triển, dữ liệu thường chỉ đề cập đến chính phủ trung ương hoặc chính quyền trung ương chịu trách nhiệm về ngân sách (để biết chi tiết cụ thể, xem Bảng B–D). Tất cả dữ liệu tài chính đều được tính theo năm dương lịch, ngoại trừ trường hợp của Bangladesh, Ai Cập, Ethiopia, Haiti, Đặc khu hành chính Hồng Kông, Ấn Độ, Cộng hòa Hồi giáo Iran, Myanmar, Nepal, Pakistan, Singapore và Thái Lan. đề cập đến năm tài chính.

    • Dữ liệu tổng hợp cho các nhóm quốc gia là giá trị trung bình có trọng số của dữ liệu từng quốc gia, trừ khi có quy định khác. Dữ liệu được tính trọng số theo GDP danh nghĩa hàng năm được chuyển đổi sang đô la Mỹ theo tỷ giá hối đoái trung bình trên thị trường tính theo tỷ lệ trong GDP của nhóm.

    • Ở nhiều quốc gia, dữ liệu tài chính tuân theo Cẩm nang Thống kê Tài chính Chính phủ năm 2014 của IMF. Cán cân tài chính tổng thể đề cập đến cho vay ròng (+) và vay (-) của chính phủ nói chung. Tuy nhiên, trong một số trường hợp, cán cân tổng thể đề cập đến tổng doanh thu và viện trợ trừ đi tổng chi tiêu và cho vay ròng.

    • Dữ liệu tổng nợ tài chính và nợ ròng được báo cáo trong Giám sát tài chính được lấy từ các nguồn dữ liệu chính thức và ước tính của nhân viên IMF. Mặc dù chúng tôi nỗ lực điều chỉnh dữ liệu tổng nợ và nợ ròng với các định nghĩa trong Cẩm nang Thống kê Tài chính Chính phủ của IMF, do hạn chế về dữ liệu hoặc hoàn cảnh cụ thể của quốc gia, những dữ liệu này đôi khi có thể đi chệch khỏi các định nghĩa chính thức. Mặc dù mọi nỗ lực đều được thực hiện để đảm bảo dữ liệu về nợ phù hợp và có thể so sánh được trên phạm vi quốc tế,

  • Tên indicator: GGR_G01_GDP_PT

  • Bộ dữ liệu “Revenue (% of GDP)” (GGR_G01_GDP_PT) thuộc Quỹ Tiền tệ Quốc tế (IMF) cung cấp thông tin về tỷ lệ doanh thu so với GDP của một quốc gia, được đo bằng phần trăm.

  • Ứng dụng:

    • Phân tích hiệu quả hoạt động của chính phủ trong việc huy động nguồn thu.

    • So sánh khả năng tài chính của các quốc gia khác nhau.

    • Đánh giá tác động của các chính sách thuế và chi tiêu của chính phủ.

    • Dự báo xu hướng thu nhập của chính phủ trong tương lai.

library(tidyverse)
library(imf.data)
## Warning: package 'imf.data' was built under R version 4.3.3
tna <- load_datasets('FM')
tn <- tna$get_series(freq = 'A', ref_area = 'VN', indicator = 'GGR_G01_GDP_PT')
names(tn) <- c('Năm','Phantram')
tn <- na.omit(tn)
datatable(tn)

2.1 Phân tích dữ liệu theo thời gian

2.1.1 Biểu đồ thể hiện tỷ lệ doanh thu so với GDP của nước Việt Nam giai đoạn 1999-2008

tn1 <- tn %>% filter( Năm >= 1999 & Năm <= 2008)
ggplot(data = tn1, aes(x = Năm, y = Phantram)) +
  geom_col(fill = "pink", color = "black") +
  labs(x = "Năm",y = "Phần trăm") +
  ggtitle("Tỷ lệ doanh thu so với GDP của nước Việt Nam giai đoạn 1999-2008") +
  theme_minimal() + theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust=1))

  • Nhận xét:

    • Tăng trưởng: Tỷ lệ doanh thu so với GDP có xu hướng tăng trong giai đoạn 1999-2008, từ 15.45% năm 1999 lên 20.93% năm 2008.

    • Biến động: Tuy nhiên, xu hướng này không đồng đều mà có biến động theo từng năm.

      • Tăng trưởng mạnh trong giai đoạn 1999-2003 (từ 15.45% lên 19.64%).

      • Giảm nhẹ trong giai đoạn 2004-2005 (từ 19.64% xuống 19.29%).

      • Tăng trở lại và đạt đỉnh cao nhất trong giai đoạn 2006-2008 (từ 19.67% lên 20.93%).

=> Kết luận: Tỷ lệ doanh thu so với GDP của Việt Nam đã tăng đáng kể trong giai đoạn 1999-2008, phản ánh sự phát triển kinh tế và hiệu quả thu ngân sách được cải thiện. Tuy nhiên, cần tiếp tục hoàn thiện hệ thống thuế, tăng cường quản lý thu thuế để đảm bảo nguồn thu cho ngân sách nhà nước phục vụ cho phát triển kinh tế - xã hội.

2.1.2 Biểu đồ thể hiện tỷ lệ doanh thu so với GDP của nước Việt Nam giai đoạn 2009-2018

tn2 <- tn %>% filter( Năm >= 2009 & Năm <= 2018)
ggplot(data = tn2, aes(x = Năm, y = Phantram)) +
  geom_col(fill = "pink", color = "black") +
  labs(x = "Năm",y = "Phần trăm") +
  ggtitle("Tỷ lệ doanh thu so với GDP của nước Việt Nam giai đoạn 2009-2018") +
  theme_minimal() + theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust=1))

Nhận xét:

  • Xu hướng chung:

    • Tỷ lệ doanh thu so với GDP của Việt Nam có xu hướng giảm trong giai đoạn 2009-2018.

    • Mức giảm nhẹ từ năm 2009 (20.15%) đến năm 2018 (19.46%).

  • Giai đoạn cụ thể:

    • 2009-2011: Tỷ lệ doanh thu giảm nhẹ do ảnh hưởng của khủng hoảng kinh tế toàn cầu.

    • 2012-2013: Tỷ lệ doanh thu ổn định do chính phủ thực hiện các biện pháp thu hút đầu tư, thúc đẩy kinh tế.

    • 2014-2016: Tỷ lệ doanh thu giảm tiếp do giá dầu thô giảm mạnh, ảnh hưởng đến xuất khẩu và thu ngân sách nhà nước.

    • 2017-2018: Tỷ lệ doanh thu tăng nhẹ do kinh tế vĩ mô ổn định, thu hút đầu tư nước ngoài gia tăng.

=> Kết luận:

  • Tỷ lệ doanh thu so với GDP của Việt Nam có xu hướng giảm trong giai đoạn 2009-2018.

  • Nhiều yếu tố ảnh hưởng đến tỷ lệ này, bao gồm yếu tố vĩ mô, chính sách và thể chế.

  • Cần tiếp tục cải thiện môi trường kinh tế, hoàn thiện hệ thống pháp luật, và nâng cao hiệu quả quản lý để tăng thu ngân sách nhà nước.

2.1.3 Biểu đồ thể hiện tỷ lệ doanh thu so với GDP của nước Việt Nam giai đoạn 2019-2028

tn3 <- tn %>% filter( Năm >= 2019 & Năm <= 2028)
ggplot(data = tn3, aes(x = Năm, y = Phantram)) +
  geom_col(fill = "pink", color = "black") +
  labs(x = "Năm",y = "Phần trăm") +
  ggtitle("Tỷ lệ doanh thu so với GDP của nước Việt Nam giai đoạn 2019-2028") +
  theme_minimal() + theme(axis.text.x = element_text(angle = 45, vjust = 1, hjust=1))

Nhận xét:

  • Xu hướng chung:

    • Tỷ lệ doanh thu so với GDP của Việt Nam có xu hướng giảm trong giai đoạn 2019-2023, từ 19.41% năm 2019 xuống 18.39% năm 2023.

    • Tuy nhiên, dự kiến tỷ lệ này sẽ tăng nhẹ trong giai đoạn 2024-2028, đạt 19.43% vào năm 2028.

  • Phân tích giai đoạn:

    • 2019: Tỷ lệ doanh thu đạt 19.41%, cao nhất trong giai đoạn.

    • 2020-2023:

      • 2020: Giảm xuống 18.39% do ảnh hưởng của đại dịch COVID-19.

      • 2021: Tăng nhẹ lên 18.71%.

      • 2022: Tăng tiếp tục lên 19.03%.

      • 2023: Giảm nhẹ xuống 18.39%.

    • 2024-2028: Dự kiến tăng nhẹ, đạt 19.43% vào năm 2028.

=> Kết luận:

  • Tỷ lệ doanh thu so với GDP của Việt Nam có xu hướng giảm trong giai đoạn 2019-2023 do ảnh hưởng của nhiều yếu tố.

  • Dự kiến tỷ lệ này sẽ tăng nhẹ trong giai đoạn 2024-2028.

  • Cần tiếp tục thực hiện các giải pháp để nâng cao hiệu quả thu thuế, cắt giảm chi tiêu, phát triển kinh tế, từ đó gia tăng nguồn thu cho ngân sách nhà nước.

2.2 Các yếu tố ảnh hưởng.

  • Yếu tố vĩ mô:

    • Tăng trưởng kinh tế: Tăng trưởng GDP cao trong giai đoạn này (trung bình 7.5%/năm) là yếu tố chính thúc đẩy tăng trưởng doanh thu.

    • Cải cách thuế: Việc cải cách hệ thống thuế, đơn giản hóa thủ tục hành chính, tăng cường quản lý thu thuế đã góp phần nâng cao hiệu quả thu ngân sách.

    • Mở rộng hội nhập kinh tế: Việt Nam gia nhập WTO năm 2007, thúc đẩy xuất khẩu, thu hút đầu tư nước ngoài, từ đó gia tăng nguồn thu cho ngân sách.

  • Yếu tố vi mô:

    • Nâng cao thu nhập: Thu nhập bình quân đầu người của Việt Nam tăng đáng kể trong giai đoạn này, dẫn đến tăng thu thuế thu nhập cá nhân.

    • Mở rộng hoạt động kinh tế: Nền kinh tế tư nhân phát triển mạnh mẽ, đóng góp lớn vào nguồn thu thuế. Chống tham nhũng: Nỗ lực chống tham nhũng, thất thu thuế giúp cải thiện hiệu quả thu ngân sách.

  • Yếu tố thể chế:

    • Hệ thống pháp luật: Hệ thống pháp luật hoàn thiện tạo môi trường thuận lợi cho hoạt động kinh tế và thu thuế.

    • Mức độ tham nhũng: Tham nhũng cao ảnh hưởng đến hiệu quả thu thuế.

LS0tDQp0aXRsZTogIk5ISeG7hk0gVuG7pCA2Ig0KYXV0aG9yOiAiVHLhuqduIE5o4bqtdCBMaW5oIg0KZGF0ZTogIlwiYHIgZm9ybWF0KFN5cy50aW1lKCksICclSDolTTolUywgJWQgLSAlbSAtICVZJylgXCIiDQpvdXRwdXQ6IA0KICBodG1sX2RvY3VtZW50OiANCiAgICBjb2RlX2Rvd25sb2FkOiB0cnVlDQogICAgY29kZV9mb2xkaW5nOiBoaWRlDQogICAgdG9jOiB0cnVlDQogICAgdG9jX2Zsb2F0OiB0cnVlDQogICAgdG9jX2Zsb2F0X3BsYWNlbWVudDogcmlnaHQNCiAgICBudW1iZXJfc2VjdGlvbnM6IHRydWUNCi0tLQ0KDQpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0NCmtuaXRyOjpvcHRzX2NodW5rJHNldChlY2hvID0gVFJVRSkNCmBgYA0KDQpgYGAge3J9DQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkoV0RJKQ0KYGBgDQoNCiMgKipNw7QgdOG6oyB24buBIGLhu5kgZOG7ryBsaeG7h3UgdOG7qyBXT1JMRCBCQU5LKioNCg0KKiBUw6puIGluZGljYXRvcjogTGl0ZXJhY3kgcmF0ZSwgYWR1bHQgdG90YWwgKCUgb2YgcGVvcGxlIGFnZXMgMTUgYW5kIGFib3ZlKSAtIFThu7cgbOG7hyBiaeG6v3QgY2jhu68sIHThu5VuZyBz4buRIG5nxrDhu51pIHRyxrDhu59uZyB0aMOgbmggKCUgc+G7kSBuZ8aw4budaSB04burIDE1IHR14buVaSB0cuG7nyBsw6puKQ0KDQoqIENvZGU6IFNFLkFEVC5MSVRSLlpTDQoNCiogR+G7k20gMTY3NTggcXVhbiBzw6F0IHbDoCA1IGJp4bq/bi4NCg0KKiDEkOG7i25oIG5naMSpYSBkw6BpOiBU4bu3IGzhu4cgbmfGsOG7nWkgbOG7m24gYmnhur90IGNo4buvIGzDoCBwaOG6p24gdHLEg20gc+G7kSBuZ8aw4budaSB04burIDE1IHR14buVaSB0cuG7nyBsw6puIGPDsyB0aOG7gyDEkeG7jWMgdsOgIHZp4bq/dCB2w6AgaGnhu4N1IG3hu5l0IGPDonUgbsOzaSBuZ+G6r24gZ+G7jW4sIMSRxqFuIGdp4bqjbiB24buBIGN14buZYyBz4buRbmcgaMOgbmcgbmfDoHkgY+G7p2EgaOG7jS4NCg0KKiBLaMOhaSBuaeG7h20gdsOgIHBoxrDGoW5nIHBow6FwIHRo4buRbmcga8OqOiBUaOG7kW5nIGvDqiB24buBIG3DuSBjaOG7ryDhu58gaOG6p3UgaOG6v3QgY8OhYyBxdeG7kWMgZ2lhIGJhbyBn4buTbSBkw6JuIHPhu5EgdOG7qyAxNSB0deG7lWkgdHLhu58gbMOqbiwgbmjGsG5nIG3hu5l0IHPhu5EgcXXhu5FjIGdpYSBiYW8gZ+G7k20gY8OhYyDEkeG7mSB0deG7lWkgdHLhursgaMahbiBob+G6t2MgYuG7iyBnaeG7m2kgaOG6oW4g4bufIGPDoWMgxJHhu5kgdHXhu5VpIGPDsyB4dSBoxrDhu5tuZyBsw6BtIHTEg25nIHThu7cgbOG7hyBiaeG6v3QgY2jhu68uIFThu7cgbOG7hyBiaeG6v3QgY2jhu68gY+G7p2EgdGhhbmggbmnDqm4gdHJvbmcgxJHhu5kgdHXhu5VpIDE1LTI0IHBo4bqjbiDDoW5oIG5o4buvbmcgdGnhur9uIGLhu5kgZ+G6p24gxJHDonkgdHJvbmcgZ2nDoW8gZOG7pWMuIE7DsyDEkW8gbMaw4budbmcga+G6v3QgcXXhuqMgdMOtY2ggbMWpeSBj4bunYSBnacOhbyBk4bulYyB0aeG7g3UgaOG7jWMgdHJvbmcga2hv4bqjbmcgMTAgbsSDbSB0csaw4bubYyDEkcOzIGLhurFuZyBjw6FjaCBjaOG7iSByYSB04bu3IGzhu4cgZMOibiBz4buRIMSRw6MgaOG7jWMgcXVhIGjhu4cgdGjhu5FuZyBnacOhbyBk4bulYyB0aeG7g3UgaOG7jWMgdsOgIGPDsyDEkcaw4bujYyBjw6FjIGvhu7kgbsSDbmcgxJHhu41jIHZp4bq/dCB2w6AgdMOtbmggdG/DoW4gY8ahIGLhuqNuLiBOw7NpIGNodW5nLCBraOG6oyBuxINuZyDEkeG7jWMgdmnhur90IGPFqW5nIGJhbyBn4buTbSBraOG6oyBuxINuZyB0w61uaCB0b8Ohbiwga2jhuqMgbsSDbmcgdGjhu7FjIGhp4buHbiBjw6FjIHBow6lwIHTDrW5oIHPhu5EgaOG7jWMgxJHGoW4gZ2nhuqNuLiBE4buvIGxp4buHdSB24buBIHThu7cgbOG7hyBiaeG6v3QgY2jhu68gxJHGsOG7o2MgVmnhu4duIFRo4buRbmcga8OqIFVORVNDTyB04buVbmcgaOG7o3AgZOG7sWEgdHLDqm4gY8OhYyBjdeG7mWMgxJFp4buBdSB0cmEgZMOibiBz4buRIHF14buRYyBnaWEgdsOgIGto4bqjbyBzw6F0IGjhu5kgZ2lhIMSRw6xuaCwgxJHhu5NuZyB0aOG7nWkgxJHhu5FpIHbhu5tpIGPDoWMgcXXhu5FjIGdpYSBraMO0bmcgY8OzIGThu68gbGnhu4d1IHbhu4EgdOG7tyBs4buHIGJp4bq/dCBjaOG7ryBn4bqnbiDEkcOieSwgc+G7rSBk4bulbmcgTcO0IGjDrG5oIGThu7EgYsOhbyB04bu3IGzhu4cgYmnhur90IGNo4buvIHRoZW8gdOG7q25nIMSR4buZIHR14buVaSB0b8OgbiBj4bqndSAoR0FMUCkuDQoNCiogTeG7qWMgxJHhu5kgcGjDuSBo4bujcCB24bubaSBwaMOhdCB0cmnhu4NuOiBU4bu3IGzhu4cgYmnhur90IGNo4buvIGzDoCBt4buZdCBjaOG7iSBz4buRIGvhur90IHF14bqjIMSR4buDIMSRw6FuaCBnacOhIHRyw6xuaCDEkeG7mSBo4buNYyB24bqlbi4gROG7ryBsaeG7h3UgbsOgeSBjw7MgdGjhu4MgZOG7sSDEkW/DoW4gY2jhuqV0IGzGsOG7o25nIGzhu7FjIGzGsOG7o25nIGxhbyDEkeG7mW5nIHRyb25nIHTGsMahbmcgbGFpIHbDoCBjw7MgdGjhu4MgxJHGsOG7o2Mgc+G7rSBk4bulbmcgdHJvbmcgdmnhu4djIMSR4bqjbSBi4bqjbyBjw6FjIGNow61uaCBzw6FjaCB24buBIGvhu7kgbsSDbmcgc+G7kW5nIGNobyBuYW0gZ2nhu5tpIHbDoCBwaOG7pSBu4buvLiBOw7MgY8WpbmcgY8OzIHRo4buDIMSRxrDhu6NjIHPhu60gZOG7pW5nIG5oxrAgbeG7mXQgY8O0bmcgY+G7pSDEkeG6oWkgZGnhu4duIMSR4buDIHhlbSB4w6l0IHTDrW5oIGhp4buHdSBxdeG6oyBj4bunYSBo4buHIHRo4buRbmcgZ2nDoW8gZOG7pWM7IHThu7cgbOG7hyBiaeG6v3QgxJHhu41jIGJp4bq/dCB2aeG6v3QgY2FvIGNobyB0aOG6pXkga2jhuqMgbsSDbmcgY+G7p2EgbeG7mXQgaOG7hyB0aOG7kW5nIGdpw6FvIGThu6VjIHRyb25nIHZp4buHYyBjdW5nIGPhuqVwIGPGoSBo4buZaSBjaG8gbeG7mXQgbMaw4bujbmcgbOG7m24gZMOibiBz4buRIGPDsyDEkcaw4bujYyBr4bu5IG7Eg25nIMSR4buNYyB2aeG6v3QuIFRow6BuaCB0w61jaCB0w61jaCBsxal5IMSRxrDhu6NjIGPhu6dhIGdpw6FvIGThu6VjIGzDoCBu4buBbiB04bqjbmcgY2hvIHPhu7EgcGjDoXQgdHJp4buDbiB0csOtIHR14buHIHbDoCBwaMOhdCB0cmnhu4NuIGtpbmggdOG6vyB4w6MgaOG7mWkgaMahbiBu4buvYSwgbeG6t2MgZMO5IG7DsyBraMO0bmcgbmjhuqV0IHRoaeG6v3QgxJHhuqNtIGLhuqNvIGNo4bqldCBsxrDhu6NuZyBnacOhbyBk4bulYy4gUGjhu6UgbuG7ryBiaeG6v3QgY2jhu68gbmfhu6Ugw70gcuG6sW5nIGjhu40gY8OzIHRo4buDIHTDrG0ga2nhur9tIHbDoCBz4butIGThu6VuZyB0aMO0bmcgdGluIMSR4buDIGPhuqNpIHRoaeG7h24gc+G7qWMga2jhu49lLCBkaW5oIGTGsOG7oW5nIHbDoCBnacOhbyBk4bulYyBj4bunYSBjw6FjIHRow6BuaCB2acOqbiB0cm9uZyBnaWEgxJHDrG5oLiBQaOG7pSBu4buvIGJp4bq/dCBjaOG7ryBjxaluZyDEkcaw4bujYyB0cmFvIHF1eeG7gW4gxJHhu4MgxJHDs25nIG3hu5l0IHZhaSB0csOyIGPDsyDDvSBuZ2jEqWEuDQoNCiogTmjhu69uZyBo4bqhbiBjaOG6vyB2w6Agbmdv4bqhaSBs4buHOiBUcm9uZyB0aOG7sWMgdOG6vywga2jhuqMgbsSDbmcgxJHhu41jIHZp4bq/dCBy4bqldCBraMOzIMSRbyBsxrDhu51uZy4gVmnhu4djIMaw4bubYyB0w61uaCB04bu3IGzhu4cgYmnhur90IGNo4buvIMSRw7JpIGjhu49pIHBo4bqjaSB0aOG7sWMgaGnhu4duIGPDoWMgY3Xhu5ljIMSRaeG7gXUgdHJhIGTDom4gc+G7kSBob+G6t2MgxJFvIMSR4bqhYyBraOG6o28gc8OhdCB0cm9uZyBuaOG7r25nIMSRaeG7gXUga2nhu4duIMSRxrDhu6NjIGtp4buDbSBzb8OhdC4gTmhp4buBdSBxdeG7kWMgZ2lhIGLDoW8gY8OhbyBz4buRIG5nxrDhu51pIGJp4bq/dCBjaOG7ryB04burIGThu68gbGnhu4d1IHThu7EgYsOhbyBjw6FvLiBN4buZdCBz4buRIHPhu60gZOG7pW5nIGThu68gbGnhu4d1IHbhu4EgdHLDrG5oIMSR4buZIGjhu41jIHbhuqVuIGzDoG0gxJHhuqFpIGRp4buHbiBuaMawbmcgw6FwIGThu6VuZyB0aOG7nWkgZ2lhbiDEkWkgaOG7jWMgaG/hurdjIG3hu6ljIMSR4buZIGhvw6BuIHRow6BuaCBraMOhYyBuaGF1LiBBbnQgY8OzIHh1IGjGsOG7m25nIHRyb25nIGPDoWMgY3Xhu5ljIGto4bqjbyBzw6F0IHF14buRYyBnaWEgdsOgIHF14buRYyB04bq/IGfhuqduIMSRw6J5IGzDoCBz4butIGThu6VuZyBiw6BpIGtp4buDbSB0cmEgxJHhu41jIHRy4buxYyB0aeG6v3AgduG7gSBr4bu5IG7Eg25nIMSR4buNYyB2aeG6v3QuIERvIGPDoWMgxJHhu4tuaCBuZ2jEqWEgdsOgIHBoxrDGoW5nIHBow6FwIHRodSB0aOG6rXAgZOG7ryBsaeG7h3Uga2jDoWMgbmhhdSBnaeG7r2EgY8OhYyBxdeG7kWMgZ2lhIG7Dqm4gZOG7ryBsaeG7h3UgY+G6p24gxJHGsOG7o2Mgc+G7rSBk4bulbmcgbeG7mXQgY8OhY2ggdGjhuq1uIHRy4buNbmcuDQoNCmBgYCB7cn0NCmFkdCA8LSBXREkoaW5kaWNhdG9yID0gJ1NFLkFEVC5MSVRSLlpTJykNCmxpYnJhcnkoRFQpDQpkYXRhdGFibGUoYWR0KQ0KYGBgDQoNCiMjICoqUGjDom4gdMOtY2ggZOG7ryBsaeG7h3UgdGhlbyB0aOG7nWkgZ2lhbioqDQoNCiogR2nhuqMgc+G7rSBjaOG7jW4gbsaw4bubYyBWSeG7hlQgTkFNIMSR4buDIHBow6JuIHTDrWNoLg0KDQpgYGAge3J9DQpzZSA8LSBXREkoaW5kaWNhdG9yID0gJ1NFLkFEVC5MSVRSLlpTJywgY291bnRyeSA9IGMoJ1ZOTScpKQ0KZGF0YXRhYmxlKHNlKQ0KYGBgDQoNCmBgYCB7cn0NCmQgPC0gc2UgJT4lIHNlbGVjdCh5ZWFyLFNFLkFEVC5MSVRSLlpTKQ0KZCA8LSBuYS5vbWl0KGQpDQpuYW1lcyhkKSA8LSBjKCd5ZWFyJywnUGhhbnRyYW0nKQ0KZGF0YXRhYmxlKGQpDQpgYGANCg0KIyMjICoqQmnhu4N1IMSR4buTIHRo4buDIGhp4buHbiB04bu3IGzhu4cgcGjhuqduIHRyxINtIGJp4bq/dCBjaOG7ryBnaWFpIMSRb+G6oW4gMTk3OSAtIDE5OTkuKioNCg0KYGBgIHtyfQ0KbGlicmFyeShkcGx5cikNCmQxIDwtIGQgJT4lIGZpbHRlciggeWVhciA+PSAxOTc5ICYgeWVhciA8PSAxOTk5ICkNCmxpYnJhcnkoZ2dwbG90MikNCmQxICU+JSBnZ3Bsb3QoYWVzKHggPSB5ZWFyLCB5ID0gUGhhbnRyYW0pKSArDQogIGdlb21fbGluZShjb2xvciA9ICJibGFjayIpICsNCiAgZ2VvbV9wb2ludChjb2xvciA9ICJyZWQiKSArDQogIGxhYnModGl0bGUgPSAiQmnhu4N1IMSR4buTIHRo4buDIGhp4buHbiB04bu3IGzhu4cgcGjhuqduIHRyxINtIGJp4bq/dCBjaOG7ryBnaWFpIMSRb+G6oW4gMTk3OSAtIDE5OTkiLCB4ID0gIk7Eg20iLCB5ID0gIlBo4bqnbiB0csSDbSIpDQpgYGANCg0KKipOaOG6rW4geMOpdDoqKg0KICANCiogVOG7tyBs4buHIGJp4bq/dCBjaOG7ryBuxINtIDE5Nzk6IDgzLjglDQogIA0KKiBU4bu3IGzhu4cgYmnhur90IGNo4buvIG7Eg20gMTk4OTogODcuNiUNCiAgDQoqIFThu7cgbOG7hyBiaeG6v3QgY2jhu68gbsSDbSAxOTk5OiA5MC4zJQ0KICANCiogVOG7tyBs4buHIGJp4bq/dCBjaOG7ryB0xINuZyBk4bqnbiBxdWEgY8OhYyBuxINtIHRyb25nIGdpYWkgxJFv4bqhbiAxOTc5LTE5OTkuDQogIA0KKiBN4bupYyB0xINuZyB0cnVuZyBiw6xuaCBraG/huqNuZyAzJSBt4buXaSBuxINtLg0KICANCiogU+G7sSBnaWEgdMSDbmcgbsOgeSB0aOG7gyBoaeG7h24gbuG7lyBs4buxYyBj4bunYSDEkOG6o25nIHbDoCBOaMOgIG7GsOG7m2MgdHJvbmcgdmnhu4djIHjDs2EgbcO5IGNo4buvOg0KICANCiAgKiBN4bufIHLhu5luZyBt4bqhbmcgbMaw4bubaSB0csaw4budbmcgaOG7jWMNCiAgICANCiAgKiBOw6JuZyBjYW8gY2jhuqV0IGzGsOG7o25nIGdpw6FvIGThu6VjDQogICAgIA0KICAqIFBo4buVIGPhuq1wIGdpw6FvIGThu6VjIGNobyBt4buNaSBs4bupYSB0deG7lWkNCiAgICANCiAgKiBDb2kgdHLhu41uZyBjw7RuZyB0w6FjIHjDs2EgbcO5IGNo4buvDQoNCioqPT4gS+G6v3QgbHXhuq1uOioqIFThu7cgbOG7hyBiaeG6v3QgY2jhu68gY+G7p2EgVmnhu4d0IE5hbSB0cm9uZyBnaWFpIMSRb+G6oW4gMTk3OS0xOTk5IGPDsyBz4buxIGdpYSB0xINuZyDEkcOhbmcga+G7gyBsw6Aga+G6v3QgcXXhuqMgY+G7p2Egbmhp4buBdSB54bq/dSB04buRLCBiYW8gZ+G7k20gY2jDrW5oIHPDoWNoIGdpw6FvIGThu6VjIGhp4buHdSBxdeG6oywgbmh1IGPhuqd1IGjhu41jIHThuq1wIGNhbyBj4bunYSBuZ8aw4budaSBkw6JuLCBz4buxIGjhu5cgdHLhu6MgY+G7p2EgY8OhYyB04buVIGNo4bupYyB4w6MgaOG7mWkgdsOgIHPhu7EgcGjDoXQgdHJp4buDbiBraW5oIHThur8uDQoNCiMjIyAqKkJp4buDdSDEkeG7kyB0aOG7gyBoaeG7h24gdOG7tyBs4buHIHBo4bqnbiB0csSDbSBiaeG6v3QgY2jhu68gZ2lhaSDEkW/huqFuIDE5OTkgLSAyMDE5LioqDQoNCmBgYCB7cn0NCmQyIDwtIGQgJT4lIGZpbHRlciggeWVhciA+PSAxOTk5ICYgeWVhciA8PSAyMDE5KQ0KZDIgJT4lIGdncGxvdChhZXMoeCA9IHllYXIsIHkgPSBQaGFudHJhbSkpICsNCiAgZ2VvbV9saW5lKGNvbG9yID0gImJsYWNrIikgKw0KICBnZW9tX3BvaW50KGNvbG9yID0gInJlZCIpICsNCiAgbGFicyh0aXRsZSA9ICJCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIHThu7cgbOG7hyBwaOG6p24gdHLEg20gYmnhur90IGNo4buvIGdpYWkgxJFv4bqhbiAxOTk5IC0gMjAxOSIsIHggPSAiTsSDbSIsIHkgPSAiUGjhuqduIHRyxINtIikNCmBgYA0KDQoqKk5o4bqtbiB4w6l0OioqDQoNCiogVOG7tyBs4buHIGJp4bq/dCBjaOG7ryBuxINtIDE5OTk6IDkwLjMlDQogIA0KKiBU4bu3IGzhu4cgYmnhur90IGNo4buvIG7Eg20gMjAwMDogOTAuMSUNCiAgDQoqIFThu7cgbOG7hyBiaeG6v3QgY2jhu68gbsSDbSAyMDA5OiA5My41JQ0KICANCiogVOG7tyBs4buHIGJp4bq/dCBjaOG7ryBuxINtIDIwMTk6IDk1LjglDQogIA0KKiBT4buxIGNow6puaCBs4buHY2ggbmjhurkgZ2nhu69hIGPDoWMgbsSDbTogdOG7kWMgxJHhu5kgdMSDbmcga2jDtG5nIMSR4buTbmcgxJHhu4F1Lg0KDQoqKj0+IEvhur90IGx14bqtbjoqKiBU4bu3IGzhu4cgYmnhur90IGNo4buvIGPhu6dhIFZp4buHdCBOYW0gxJHDoyB0xINuZyDEkcOhbmcga+G7gyB0cm9uZyBnaWFpIMSRb+G6oW4gMTk5OS0yMDE5LCB0aOG7gyBoaeG7h24gc+G7sSBu4buXIGzhu7FjIGPhu6dhIENow61uaCBwaOG7pyB0cm9uZyB2aeG7h2MgeMOzYSBtw7kgY2jhu68gdsOgIG7Dom5nIGNhbyB0csOsbmggxJHhu5kgZMOibiB0csOtLlbDoCB04buRYyDEkeG7mSB0xINuZyBuaGFuaCBoxqFuIHNhdSBuxINtIDIwMDkgY2hvIHRo4bqleSBuaOG7r25nIGNow61uaCBzw6FjaCBnacOhbyBk4bulYyBoaeG7h3UgcXXhuqMgdsOgIHPhu7EgcXVhbiB0w6JtIGPhu6dhIHjDoyBo4buZaSDEkeG7kWkgduG7m2kgduG6pW4gxJHhu4EgZ2nDoW8gZOG7pWMuDQoNCiMjICoqQ8OhYyB54bq/dSB04buRIOG6o25oIGjGsOG7n25nLioqDQoNCiogQ2jDrW5oIHPDoWNoIGdpw6FvIGThu6VjOg0KICANCiAgICAqIENow61uaCBzw6FjaCB4w7NhIG3DuSBjaOG7rzogTmjDoCBuxrDhu5tjIMSR4buBIHJhIG5oaeG7gXUgY2jDrW5oIHPDoWNoIGtodXnhur9uIGtow61jaCB4w7NhIG3DuSBjaOG7rywgdOG6rXAgdHJ1bmcgdsOgbyBjw6FjIMSR4buRaSB0xrDhu6NuZyBuaMawIHBo4bulIG7hu68sIG5nxrDhu51pIGdpw6AsIG5nxrDhu51pIGTDom4gdOG7mWMgdGhp4buDdSBz4buRLg0KICAgIA0KICAgICogTeG7nyBy4buZbmcgbeG6oW5nIGzGsOG7m2kgdHLGsOG7nW5nIGjhu41jOiBT4buRIGzGsOG7o25nIHRyxrDhu51uZyBo4buNYyDEkcaw4bujYyBt4bufIHLhu5luZywgxJHhurdjIGJp4buHdCBsw6Ag4bufIGtodSB24buxYyBuw7RuZyB0aMO0biwgbWnhu4FuIG7DumkuDQogICAgDQogICAgKiBOw6JuZyBjYW8gY2jhuqV0IGzGsOG7o25nIGdpw6FvIGThu6VjOiBOw6JuZyBjYW8gdHLDrG5oIMSR4buZIGdpw6FvIHZpw6puLCBj4bqjaSB0aGnhu4duIGPGoSBz4bufIHbhuq10IGNo4bqldCB0csaw4budbmcgaOG7jWMsIMSR4buVaSBt4bubaSBwaMawxqFuZyBwaMOhcCBnaeG6o25nIGThuqF5Lg0KICANCiogTmh1IGPhuqd1IGjhu41jIHThuq1wOg0KICAgDQogICAgKiBOaHUgY+G6p3UgaOG7jWMgdOG6rXAgY+G7p2EgbmfGsOG7nWkgZMOibiBuZ8OgeSBjw6BuZyB0xINuZyBjYW8gZG8gbmjhuq1uIHRo4bupYyDEkcaw4bujYyB04bqnbSBxdWFuIHRy4buNbmcgY+G7p2EgZ2nDoW8gZOG7pWMgxJHhu5FpIHbhu5tpIHPhu7EgcGjDoXQgdHJp4buDbiBi4bqjbiB0aMOibiB2w6AgeMOjIGjhu5lpLg0KICAgICANCiAgICAqIENoYSBt4bq5IHF1YW4gdMOibSBoxqFuIMSR4bq/biB2aeG7h2MgY2hvIGNvbiBjw6FpIGjhu41jIHThuq1wLg0KICAgIA0KKiBWYWkgdHLDsiBj4bunYSBjw6FjIHThu5UgY2jhu6ljIHjDoyBo4buZaToNCiAgDQogICAgKiBDw6FjIHThu5UgY2jhu6ljIHjDoyBo4buZaSBuaMawIEjhu5lpIENo4buvIHRo4bqtcCDEkeG7jywgxJBvw6BuIFRoYW5oIG5pw6puLCBI4buZaSBQaOG7pSBu4buvIHTDrWNoIGPhu7FjIHRoYW0gZ2lhIHbDoG8gY8O0bmcgdMOhYyB4w7NhIG3DuSBjaOG7ry4NCiAgICANCiAgICAqIE3huqFuaCBk4bqhbiDEkcOzbmcgZ8OzcCBraW5oIHBow60sIGjhu5cgdHLhu6MgY2hvIGPDoWMgaG/huqF0IMSR4buZbmcgZ2nDoW8gZOG7pWMuDQogICAgDQoqIOG6om5oIGjGsOG7n25nIGPhu6dhIGtpbmggdOG6vzoNCiAgDQogICAgKiBLaW5oIHThur8gcGjDoXQgdHJp4buDbiB04bqhbyDEkWnhu4F1IGtp4buHbiBjaG8gdmnhu4djIMSR4bqndSB0xrAgdsOgbyBnacOhbyBk4bulYywgbsOibmcgY2FvIGNo4bqldCBsxrDhu6NuZyBnacOhbyBk4bulYy4NCg0KICAgICogTsOibmcgY2FvIMSR4budaSBz4buRbmcgbmfGsOG7nWkgZMOibiwgdOG6oW8gxJFp4buBdSBraeG7h24gY2hvIHZp4buHYyBo4buNYyB04bqtcC4NCg0KIyAqKk3DtCB04bqjIHbhu4EgYuG7mSBk4buvIGxp4buHdSB04burIElNRioqDQoNCiogVMOqbiBi4buZIGThu68gbGnhu4d1OiBGaXNjYWwgTW9uaXRvciAoRk0pDQoNCiAgKiBDxqEgcXVhbiBHacOhbSBzw6F0IFTDoGkgY2jDrW5oIGto4bqjbyBzw6F0IHbDoCBwaMOibiB0w61jaCBuaOG7r25nIGRp4buFbiBiaeG6v24gbeG7m2kgbmjhuqV0IHbhu4EgdMOgaSBjaMOtbmggY8O0bmcsIGPhuq1wIG5o4bqtdCBjw6FjIHTDoWMgxJHhu5luZyB0w6BpIGNow61uaCBj4bunYSBjdeG7mWMga2jhu6duZyBob+G6o25nIHbDoCBjw6FjIGThu7EgYsOhbyB0w6BpIGNow61uaCB0cnVuZyBo4bqhbiwgxJHhu5NuZyB0aOG7nWkgxJHDoW5oIGdpw6EgY8OhYyBjaMOtbmggc8OhY2ggbmjhurFtIMSRxrBhIHTDoGkgY2jDrW5oIGPDtG5nIHbDoG8gbeG7mXQgbuG7gW4gdOG6o25nIGLhu4FuIHbhu69uZy4NCiAgDQogICogUGjhuqFtIHZpIHThuqFtIHRo4budaTogROG7ryBsaeG7h3UgR2nDoW0gc8OhdCBUw6BpIGNow61uaCDEkcaw4bujYyB0csOsbmggYsOgeSB0aGVvIHThuqduIHN14bqldCBow6BuZyBuxINtLg0KICANCiAgKiBQaOG6oW0gdmkgxJHhu4thIGzDvTogQ8ahIHPhu58gZOG7ryBsaeG7h3UgY+G7p2EgRmlzY2FsIE1vbml0b3IgYmFvIGfhu5NtIDExNSBxdeG7kWMgZ2lhIHbDoCBt4buZdCBz4buRIGtodSB24buxYyB04buVbmcgaOG7o3AuDQogIA0KICAqIFBo4bqhbSB2aSBuZ8Ogbmg6IENow61uaCBwaOG7pyBuw7NpIGNodW5nIHbDoCBraHUgduG7sWMgY8O0bmcNCiAgDQogICogVMOtbmgga+G7i3AgdGjhu51pOiBDxqEgc+G7nyBk4buvIGxp4buHdSBHacOhbSBzw6F0IFTDoGkgY2jDrW5oIMSRxrDhu6NjIFbhu6UgVMOgaSBjaMOtbmggY+G7p2EgSU1GIGPhuq1wIG5o4bqtdCBoYWkgbOG6p24gbeG7mXQgbsSDbS4NCiAgDQogICogUGjGsMahbmcgcGjDoXAgbHXhuq1uOiBDxqEgcXVhbiBHacOhbSBzw6F0IFTDoGkgY2jDrW5oIGto4bqjbyBzw6F0IHbDoCBwaMOibiB0w61jaCBuaOG7r25nIGRp4buFbiBiaeG6v24gdMOgaSBjaMOtbmggY8O0bmcgbeG7m2kgbmjhuqV0LCBj4bqtcCBuaOG6rXQgY8OhYyB0w6FjIMSR4buZbmcgdMOgaSBjaMOtbmggY+G7p2EgY3Xhu5ljIGto4bunbmcgaG/huqNuZyB2w6AgY8OhYyBk4buxIGLDoW8gdMOgaSBjaMOtbmggdHJ1bmcgaOG6oW4sIMSR4buTbmcgdGjhu51pIMSRw6FuaCBnacOhIGPDoWMgY2jDrW5oIHPDoWNoIG5o4bqxbSDEkcawYSB0w6BpIGNow61uaCBjw7RuZyB2w6BvIG3hu5l0IG7hu4FuIHThuqNuZyBi4buBbiB24buvbmcuDQogIA0KICAqIEThu68gbGnhu4d1IHbDoCBk4buxIGLDoW8gY+G7pSB0aOG7gyB0aGVvIHF14buRYyBnaWEgduG7gSBjw6FjIGJp4bq/biBz4buRIHTDoGkgY2jDrW5oIGNow61uaCDEkcaw4bujYyBk4buxYSB0csOqbiBjxqEgc+G7nyBk4buvIGxp4buHdSBUcmnhu4NuIHbhu41uZyBLaW5oIHThur8gVGjhur8gZ2nhu5tpIHRow6FuZyA0IG7Eg20gMjAyMCwgdHLhu6sga2hpIGPDsyBxdXkgxJHhu4tuaCBraMOhYyB2w6AgZG8gbmjDom4gdmnDqm4gSU1GIHThu5VuZyBo4bujcC4gROG7ryBsaeG7h3UgbOG7i2NoIHPhu60gdsOgIGPDoWMgZOG7sSBiw6FvIGThu7FhIHRyw6puIHRow7RuZyB0aW4gxJHGsOG7o2MgdGh1IHRo4bqtcCBi4bufaSBjw6FjIHF1YW4gY2jhu6ljIGLhu5kgcGjhuq1uIHF14buRYyBnaWEgY+G7p2EgSU1GIHRyb25nIGLhu5FpIGPhuqNuaCBuaGnhu4dtIHbhu6UgY+G7p2EgaOG7jSB2w6AgdGjDtG5nIHF1YSBwaMOibiB0w61jaCBsacOqbiB04bulYyBj4bunYSBo4buNIHbhu4EgdMOsbmggaMOsbmggxJFhbmcgcGjDoXQgdHJp4buDbiDhu58gbeG7l2kgcXXhu5FjIGdpYTsgY2jDum5nIMSRxrDhu6NjIGPhuq1wIG5o4bqtdCBsacOqbiB04bulYyBraGkgY8OzIHRow6ptIHRow7RuZyB0aW4uIFPhu7EgcGjDoSB24buhIGPhuqV1IHRyw7pjIHRyb25nIGThu68gbGnhu4d1IGPDsyB0aOG7gyDEkcaw4bujYyDEkWnhu4F1IGNo4buJbmggxJHhu4MgdOG6oW8gcmEgY2h14buXaSB0csahbiB0cnUgdGjDtG5nIHF1YSBnaMOpcCBu4buRaSB2w6AgY8OhYyBr4bu5IHRodeG6rXQga2jDoWMuIEPDoWMgxrDhu5tjIHTDrW5oIGPhu6dhIG5ow6JuIHZpw6puIElNRiDEkcOzbmcgdmFpIHRyw7IgbMOgIMSR4bqhaSBkaeG7h24ga2hpIGtow7RuZyBjw7MgdGjDtG5nIHRpbiDEkeG6p3kgxJHhu6cuIERvIMSRw7MsIGThu68gbGnhu4d1IEdpw6FtIHPDoXQgdMOgaSBjaMOtbmggY8OzIHRo4buDIGtow6FjIHbhu5tpIGThu68gbGnhu4d1IGNow61uaCB0aOG7qWMg4bufIGPDoWMgbmd14buTbiBraMOhYywgYmFvIGfhu5NtIGPhuqMgVGjhu5FuZyBrw6ogdMOgaSBjaMOtbmggcXXhu5FjIHThur8gY+G7p2EgSU1GLg0KICANCiAgKiBWaeG7h2MgcGjDom4gbG/huqFpIHF14buRYyBnaWEgdHJvbmcgR2nDoW0gc8OhdCB0w6BpIGNow61uaCBjaGlhIHRo4bq/IGdp4bubaSB0aMOgbmggYmEgbmjDs20gY2jDrW5oOiAzNSBu4buBbiBraW5oIHThur8gdGnDqm4gdGnhur9uLCA0MCBu4buBbiBraW5oIHThur8gdGjhu4sgdHLGsOG7nW5nIG3hu5tpIG7hu5VpIHbDoCB0aHUgbmjhuq1wIHRydW5nIGLDrG5oLCB2w6AgNDAgcXXhu5FjIGdpYSDEkWFuZyBwaMOhdCB0cmnhu4NuIGPDsyB0aHUgbmjhuq1wIHRo4bqlcC4gQuG6o3kgbuG7gW4ga2luaCB04bq/IHRpw6puIHRp4bq/biBs4bubbiBuaOG6pXQgxJHGsOG7o2MgxJFvIGLhurFuZyBHRFAgKENhbmFkYSwgUGjDoXAsIMSQ4bupYywgw50sIE5o4bqtdCBC4bqjbiwgVsawxqFuZyBxdeG7kWMgQW5oLCBIb2EgS+G7sykgdOG6oW8gdGjDoG5oIG5ow7NtIG5o4buPIGPhu6dhIGPDoWMgbuG7gW4ga2luaCB04bq/IHRpw6puIHRp4bq/biBs4bubbiwgdGjGsOG7nW5nIMSRxrDhu6NjIGfhu41pIGzDoCBOaMOzbSBC4bqjeSAoRzcpLiBDw6FjIHRow6BuaCB2acOqbiBj4bunYSBraHUgduG7sWMgxJHhu5NuZyBldXJvIGPFqW5nIMSRxrDhu6NjIHBow6JuIGJp4buHdCB0aMOgbmggbeG7mXQgbmjDs20gbmjhu48uIEThu68gbGnhu4d1IHThu5VuZyBo4bujcCB0csOsbmggYsOgeSB0cm9uZyBjw6FjIGLhuqNuZyBkw6BuaCBjaG8ga2h1IHbhu7FjIMSR4buTbmcgZXVybyBiYW8gZ+G7k20gY8OhYyB0aMOgbmggdmnDqm4gaGnhu4duIHThuqFpIHRyb25nIHThuqV0IGPhuqMgY8OhYyBuxINtLCBt4bq3YyBkw7kgc+G7kSBsxrDhu6NuZyB0aMOgbmggdmnDqm4gxJHDoyB0xINuZyBsw6puIHRoZW8gdGjhu51pIGdpYW4uIEThu68gbGnhu4d1IGPhu6dhIGjhuqd1IGjhur90IGPDoWMgcXXhu5FjIGdpYSB0aMOgbmggdmnDqm4gTGnDqm4gbWluaCBDaMOidSDDgnUgxJHDoyDEkcaw4bujYyBz4butYSDEkeG7lWkgc2F1IGtoaSDDoXAgZOG7pW5nIEjhu4cgdGjhu5FuZyBUw6BpIGtob+G6o24gUXXhu5FjIGdpYSB2w6AgS2h1IHbhu7FjIENow6J1IMOCdSBt4bubaSAoRVNBIDIwMTApLiBDw6FjIHF14buRYyBnaWEgxJFhbmcgcGjDoXQgdHJp4buDbiBjw7MgdGh1IG5o4bqtcCB0aOG6pXAgKExJREMpIGzDoCBjw6FjIHF14buRYyBnaWEgY8OzIG3hu6ljIHRodSBuaOG6rXAgYsOsbmggcXXDom4gxJHhuqd1IG5nxrDhu51pIGTGsOG7m2kgbeG7mXQgbmfGsOG7oW5nIG5o4bqldCDEkeG7i25oIChoaeG7h24gxJHGsOG7o2MgxJHhurd0IOG7nyBt4bupYyAyLjcwMCBVU0QgdsOgbyBuxINtIDIwMTYgxJHGsOG7o2MgxJFvIGLhurFuZyBwaMawxqFuZyBwaMOhcCBBdGxhcyBj4bunYSBOZ8OibiBow6BuZyBUaOG6vyBnaeG7m2kpLCBjw6FjIMSR4bq3YyDEkWnhu4NtIGPGoSBj4bqldSBwaMO5IGjhu6NwIHbhu5tpIHRyw6xuaCDEkeG7mSBwaMOhdCB0cmnhu4NuIGjhuqFuIGNo4bq/IHbDoCBjaHV54buDbiDEkeG7lWkgY8ahIGPhuqV1LCB2w6AgY8OhYyB54bq/dSB04buRIGLDqm4gbmdvw6BpLiBjw6FjIG3hu5FpIGxpw6puIGvhur90IHTDoGkgY2jDrW5oIGNoxrBhIMSR4bunIGNo4bq3dCBjaOG6vSDEkeG7gyDEkcaw4bujYyBjb2kgbMOgIG7hu4FuIGtpbmggdOG6vyB0aOG7iyB0csaw4budbmcgbeG7m2kgbuG7lWkuIFppbWJhYndlIMSRxrDhu6NjIMSRxrBhIHbDoG8gbmjDs20uIEPDoWMgbuG7gW4ga2luaCB04bq/IHRo4buLIHRyxrDhu51uZyBt4bubaSBu4buVaSB2w6AgdGh1IG5o4bqtcCB0cnVuZyBiw6xuaCBiYW8gZ+G7k20gbmjhu69uZyBu4buBbiBraW5oIHThur8ga2jDtG5nIMSRxrDhu6NjIHBow6JuIGxv4bqhaSBsw6AgbuG7gW4ga2luaCB04bq/IHRpw6puIHRp4bq/biBob+G6t2MgY8OhYyBuxrDhu5tjIMSRYW5nIHBow6F0IHRyaeG7g24gY8OzIHRodSBuaOG6rXAgdGjhuqVwLg0KICANCiAgKiBI4bqndSBo4bq/dCBk4buvIGxp4buHdSB0w6BpIGNow61uaCDEkeG7gSBj4bqtcCDEkeG6v24gY2jDrW5oIHBo4bunIG7Ds2kgY2h1bmcg4bufIGPDoWMgbuG7gW4ga2luaCB04bq/IHRpw6puIHRp4bq/biwgdHJvbmcga2hpIMSR4buRaSB24bubaSBjw6FjIHRo4buLIHRyxrDhu51uZyBt4bubaSBu4buVaSB2w6AgY8OhYyBu4buBbiBraW5oIHThur8gxJFhbmcgcGjDoXQgdHJp4buDbiwgZOG7ryBsaeG7h3UgdGjGsOG7nW5nIGNo4buJIMSR4buBIGPhuq1wIMSR4bq/biBjaMOtbmggcGjhu6cgdHJ1bmcgxrDGoW5nIGhv4bq3YyBjaMOtbmggcXV54buBbiB0cnVuZyDGsMahbmcgY2jhu4t1IHRyw6FjaCBuaGnhu4dtIHbhu4EgbmfDom4gc8OhY2ggKMSR4buDIGJp4bq/dCBjaGkgdGnhur90IGPhu6UgdGjhu4MsIHhlbSBC4bqjbmcgQuKAk0QpLiBU4bqldCBj4bqjIGThu68gbGnhu4d1IHTDoGkgY2jDrW5oIMSR4buBdSDEkcaw4bujYyB0w61uaCB0aGVvIG7Eg20gZMawxqFuZyBs4buLY2gsIG5nb+G6oWkgdHLhu6sgdHLGsOG7nW5nIGjhu6NwIGPhu6dhIEJhbmdsYWRlc2gsIEFpIEPhuq1wLCBFdGhpb3BpYSwgSGFpdGksIMSQ4bq3YyBraHUgaMOgbmggY2jDrW5oIEjhu5NuZyBLw7RuZywg4bqkbiDEkOG7mSwgQ+G7mW5nIGjDsmEgSOG7k2kgZ2nDoW8gSXJhbiwgTXlhbm1hciwgTmVwYWwsIFBha2lzdGFuLCBTaW5nYXBvcmUgdsOgIFRow6FpIExhbi4gxJHhu4EgY+G6rXAgxJHhur9uIG7Eg20gdMOgaSBjaMOtbmguDQogIA0KICAqIEThu68gbGnhu4d1IHThu5VuZyBo4bujcCBjaG8gY8OhYyBuaMOzbSBxdeG7kWMgZ2lhIGzDoCBnacOhIHRy4buLIHRydW5nIGLDrG5oIGPDsyB0cuG7jW5nIHPhu5EgY+G7p2EgZOG7ryBsaeG7h3UgdOG7q25nIHF14buRYyBnaWEsIHRy4burIGtoaSBjw7MgcXV5IMSR4buLbmgga2jDoWMuIEThu68gbGnhu4d1IMSRxrDhu6NjIHTDrW5oIHRy4buNbmcgc+G7kSB0aGVvIEdEUCBkYW5oIG5naMSpYSBow6BuZyBuxINtIMSRxrDhu6NjIGNodXnhu4NuIMSR4buVaSBzYW5nIMSRw7QgbGEgTeG7uSB0aGVvIHThu7cgZ2nDoSBo4buRaSDEkW/DoWkgdHJ1bmcgYsOsbmggdHLDqm4gdGjhu4sgdHLGsOG7nW5nIHTDrW5oIHRoZW8gdOG7tyBs4buHIHRyb25nIEdEUCBj4bunYSBuaMOzbS4NCiAgDQogICog4bueIG5oaeG7gXUgcXXhu5FjIGdpYSwgZOG7ryBsaeG7h3UgdMOgaSBjaMOtbmggdHXDom4gdGhlbyBD4bqpbSBuYW5nIFRo4buRbmcga8OqIFTDoGkgY2jDrW5oIENow61uaCBwaOG7pyBuxINtIDIwMTQgY+G7p2EgSU1GLiBDw6FuIGPDom4gdMOgaSBjaMOtbmggdOG7lW5nIHRo4buDIMSR4buBIGPhuq1wIMSR4bq/biBjaG8gdmF5IHLDsm5nICgrKSB2w6AgdmF5ICgtKSBj4bunYSBjaMOtbmggcGjhu6cgbsOzaSBjaHVuZy4gVHV5IG5oacOqbiwgdHJvbmcgbeG7mXQgc+G7kSB0csaw4budbmcgaOG7o3AsIGPDoW4gY8OibiB04buVbmcgdGjhu4MgxJHhu4EgY+G6rXAgxJHhur9uIHThu5VuZyBkb2FuaCB0aHUgdsOgIHZp4buHbiB0cuG7oyB0cuG7qyDEkWkgdOG7lW5nIGNoaSB0acOqdSB2w6AgY2hvIHZheSByw7JuZy4NCiAgDQogICogROG7ryBsaeG7h3UgdOG7lW5nIG7hu6MgdMOgaSBjaMOtbmggdsOgIG7hu6MgcsOybmcgxJHGsOG7o2MgYsOhbyBjw6FvIHRyb25nIEdpw6FtIHPDoXQgdMOgaSBjaMOtbmggxJHGsOG7o2MgbOG6pXkgdOG7qyBjw6FjIG5ndeG7k24gZOG7ryBsaeG7h3UgY2jDrW5oIHRo4bupYyB2w6AgxrDhu5tjIHTDrW5oIGPhu6dhIG5ow6JuIHZpw6puIElNRi4gTeG6t2MgZMO5IGNow7puZyB0w7RpIG7hu5cgbOG7sWMgxJFp4buBdSBjaOG7iW5oIGThu68gbGnhu4d1IHThu5VuZyBu4bujIHbDoCBu4bujIHLDsm5nIHbhu5tpIGPDoWMgxJHhu4tuaCBuZ2jEqWEgdHJvbmcgQ+G6qW0gbmFuZyBUaOG7kW5nIGvDqiBUw6BpIGNow61uaCBDaMOtbmggcGjhu6cgY+G7p2EgSU1GLCBkbyBo4bqhbiBjaOG6vyB24buBIGThu68gbGnhu4d1IGhv4bq3YyBob8OgbiBj4bqjbmggY+G7pSB0aOG7gyBj4bunYSBxdeG7kWMgZ2lhLCBuaOG7r25nIGThu68gbGnhu4d1IG7DoHkgxJHDtGkga2hpIGPDsyB0aOG7gyDEkWkgY2jhu4djaCBraOG7j2kgY8OhYyDEkeG7i25oIG5naMSpYSBjaMOtbmggdGjhu6ljLiBN4bq3YyBkw7kgbeG7jWkgbuG7lyBs4buxYyDEkeG7gXUgxJHGsOG7o2MgdGjhu7FjIGhp4buHbiDEkeG7gyDEkeG6o20gYuG6o28gZOG7ryBsaeG7h3UgduG7gSBu4bujIHBow7kgaOG7o3AgdsOgIGPDsyB0aOG7gyBzbyBzw6FuaCDEkcaw4bujYyB0csOqbiBwaOG6oW0gdmkgcXXhu5FjIHThur8sDQoNCiogVMOqbiBpbmRpY2F0b3I6ICoqR0dSX0cwMV9HRFBfUFQqKg0KDQoqIELhu5kgZOG7ryBsaeG7h3UgIlJldmVudWUgKCUgb2YgR0RQKSIgKEdHUl9HMDFfR0RQX1BUKSB0aHXhu5ljIFF14bu5IFRp4buBbiB04buHIFF14buRYyB04bq/IChJTUYpIGN1bmcgY+G6pXAgdGjDtG5nIHRpbiB24buBIHThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPhu6dhIG3hu5l0IHF14buRYyBnaWEsIMSRxrDhu6NjIMSRbyBi4bqxbmcgcGjhuqduIHRyxINtLg0KDQoqIOG7qG5nIGThu6VuZzoNCg0KICAqIFBow6JuIHTDrWNoIGhp4buHdSBxdeG6oyBob+G6oXQgxJHhu5luZyBj4bunYSBjaMOtbmggcGjhu6cgdHJvbmcgdmnhu4djIGh1eSDEkeG7mW5nIG5ndeG7k24gdGh1Lg0KICANCiAgKiBTbyBzw6FuaCBraOG6oyBuxINuZyB0w6BpIGNow61uaCBj4bunYSBjw6FjIHF14buRYyBnaWEga2jDoWMgbmhhdS4NCiAgDQogICogxJDDoW5oIGdpw6EgdMOhYyDEkeG7mW5nIGPhu6dhIGPDoWMgY2jDrW5oIHPDoWNoIHRodeG6vyB2w6AgY2hpIHRpw6p1IGPhu6dhIGNow61uaCBwaOG7py4NCiAgDQogICogROG7sSBiw6FvIHh1IGjGsOG7m25nIHRodSBuaOG6rXAgY+G7p2EgY2jDrW5oIHBo4bunIHRyb25nIHTGsMahbmcgbGFpLg0KDQpgYGAge3J9DQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkoaW1mLmRhdGEpDQpgYGANCg0KYGBgIHtyfQ0KdG5hIDwtIGxvYWRfZGF0YXNldHMoJ0ZNJykNCnRuIDwtIHRuYSRnZXRfc2VyaWVzKGZyZXEgPSAnQScsIHJlZl9hcmVhID0gJ1ZOJywgaW5kaWNhdG9yID0gJ0dHUl9HMDFfR0RQX1BUJykNCm5hbWVzKHRuKSA8LSBjKCdOxINtJywnUGhhbnRyYW0nKQ0KdG4gPC0gbmEub21pdCh0bikNCmRhdGF0YWJsZSh0bikNCmBgYA0KDQojIyAqKlBow6JuIHTDrWNoIGThu68gbGnhu4d1IHRoZW8gdGjhu51pIGdpYW4qKg0KDQojIyMgKipCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIHThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPhu6dhIG7GsOG7m2MgVmnhu4d0IE5hbSBnaWFpIMSRb+G6oW4gMTk5OS0yMDA4KioNCg0KYGBgIHtyfQ0KdG4xIDwtIHRuICU+JSBmaWx0ZXIoIE7Eg20gPj0gMTk5OSAmIE7Eg20gPD0gMjAwOCkNCmdncGxvdChkYXRhID0gdG4xLCBhZXMoeCA9IE7Eg20sIHkgPSBQaGFudHJhbSkpICsNCiAgZ2VvbV9jb2woZmlsbCA9ICJwaW5rIiwgY29sb3IgPSAiYmxhY2siKSArDQogIGxhYnMoeCA9ICJOxINtIix5ID0gIlBo4bqnbiB0csSDbSIpICsNCiAgZ2d0aXRsZSgiVOG7tyBs4buHIGRvYW5oIHRodSBzbyB24bubaSBHRFAgY+G7p2Egbsaw4bubYyBWaeG7h3QgTmFtIGdpYWkgxJFv4bqhbiAxOTk5LTIwMDgiKSArDQogIHRoZW1lX21pbmltYWwoKSArIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gNDUsIHZqdXN0ID0gMSwgaGp1c3Q9MSkpDQpgYGANCg0KKiAqKk5o4bqtbiB4w6l0OioqDQoNCiAgKiBUxINuZyB0csaw4bufbmc6IFThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPDsyB4dSBoxrDhu5tuZyB0xINuZyB0cm9uZyBnaWFpIMSRb+G6oW4gMTk5OS0yMDA4LCB04burIDE1LjQ1JSBuxINtIDE5OTkgbMOqbiAyMC45MyUgbsSDbSAyMDA4Lg0KICANCiAgKiBCaeG6v24gxJHhu5luZzogVHV5IG5oacOqbiwgeHUgaMaw4bubbmcgbsOgeSBraMO0bmcgxJHhu5NuZyDEkeG7gXUgbcOgIGPDsyBiaeG6v24gxJHhu5luZyB0aGVvIHThu6tuZyBuxINtLg0KICANCiAgICAqIFTEg25nIHRyxrDhu59uZyBt4bqhbmggdHJvbmcgZ2lhaSDEkW/huqFuIDE5OTktMjAwMyAodOG7qyAxNS40NSUgbMOqbiAxOS42NCUpLg0KICAgIA0KICAgICogR2nhuqNtIG5o4bq5IHRyb25nIGdpYWkgxJFv4bqhbiAyMDA0LTIwMDUgKHThu6sgMTkuNjQlIHh14buRbmcgMTkuMjklKS4NCiAgICANCiAgICAqIFTEg25nIHRy4bufIGzhuqFpIHbDoCDEkeG6oXQgxJHhu4luaCBjYW8gbmjhuqV0IHRyb25nIGdpYWkgxJFv4bqhbiAyMDA2LTIwMDggKHThu6sgMTkuNjclIGzDqm4gMjAuOTMlKS4NCg0KKio9PiBL4bq/dCBsdeG6rW46KiogVOG7tyBs4buHIGRvYW5oIHRodSBzbyB24bubaSBHRFAgY+G7p2EgVmnhu4d0IE5hbSDEkcOjIHTEg25nIMSRw6FuZyBr4buDIHRyb25nIGdpYWkgxJFv4bqhbiAxOTk5LTIwMDgsIHBo4bqjbiDDoW5oIHPhu7EgcGjDoXQgdHJp4buDbiBraW5oIHThur8gdsOgIGhp4buHdSBxdeG6oyB0aHUgbmfDom4gc8OhY2ggxJHGsOG7o2MgY+G6o2kgdGhp4buHbi4gVHV5IG5oacOqbiwgY+G6p24gdGnhur9wIHThu6VjIGhvw6BuIHRoaeG7h24gaOG7hyB0aOG7kW5nIHRodeG6vywgdMSDbmcgY8aw4budbmcgcXXhuqNuIGzDvSB0aHUgdGh14bq/IMSR4buDIMSR4bqjbSBi4bqjbyBuZ3Xhu5NuIHRodSBjaG8gbmfDom4gc8OhY2ggbmjDoCBuxrDhu5tjIHBo4bulYyB24bulIGNobyBwaMOhdCB0cmnhu4NuIGtpbmggdOG6vyAtIHjDoyBo4buZaS4NCg0KIyMjICoqQmnhu4N1IMSR4buTIHRo4buDIGhp4buHbiB04bu3IGzhu4cgZG9hbmggdGh1IHNvIHbhu5tpIEdEUCBj4bunYSBuxrDhu5tjIFZp4buHdCBOYW0gZ2lhaSDEkW/huqFuIDIwMDktMjAxOCoqDQoNCmBgYCB7cn0NCnRuMiA8LSB0biAlPiUgZmlsdGVyKCBOxINtID49IDIwMDkgJiBOxINtIDw9IDIwMTgpDQpnZ3Bsb3QoZGF0YSA9IHRuMiwgYWVzKHggPSBOxINtLCB5ID0gUGhhbnRyYW0pKSArDQogIGdlb21fY29sKGZpbGwgPSAicGluayIsIGNvbG9yID0gImJsYWNrIikgKw0KICBsYWJzKHggPSAiTsSDbSIseSA9ICJQaOG6p24gdHLEg20iKSArDQogIGdndGl0bGUoIlThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPhu6dhIG7GsOG7m2MgVmnhu4d0IE5hbSBnaWFpIMSRb+G6oW4gMjAwOS0yMDE4IikgKw0KICB0aGVtZV9taW5pbWFsKCkgKyB0aGVtZShheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDQ1LCB2anVzdCA9IDEsIGhqdXN0PTEpKQ0KYGBgDQoNCioqTmjhuq1uIHjDqXQ6KioNCg0KICogWHUgaMaw4bubbmcgY2h1bmc6DQogDQogICAqIFThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPhu6dhIFZp4buHdCBOYW0gY8OzIHh1IGjGsOG7m25nIGdp4bqjbSB0cm9uZyBnaWFpIMSRb+G6oW4gMjAwOS0yMDE4Lg0KICAgDQogICAqIE3hu6ljIGdp4bqjbSBuaOG6uSB04burIG7Eg20gMjAwOSAoMjAuMTUlKSDEkeG6v24gbsSDbSAyMDE4ICgxOS40NiUpLg0KICAgDQogKiBHaWFpIMSRb+G6oW4gY+G7pSB0aOG7gzoNCiANCiAgICogMjAwOS0yMDExOiBU4bu3IGzhu4cgZG9hbmggdGh1IGdp4bqjbSBuaOG6uSBkbyDhuqNuaCBoxrDhu59uZyBj4bunYSBraOG7p25nIGhv4bqjbmcga2luaCB04bq/IHRvw6BuIGPhuqd1Lg0KICAgDQogICAqIDIwMTItMjAxMzogVOG7tyBs4buHIGRvYW5oIHRodSDhu5VuIMSR4buLbmggZG8gY2jDrW5oIHBo4bunIHRo4buxYyBoaeG7h24gY8OhYyBiaeG7h24gcGjDoXAgdGh1IGjDunQgxJHhuqd1IHTGsCwgdGjDumMgxJHhuql5IGtpbmggdOG6vy4NCiAgIA0KICAgKiAyMDE0LTIwMTY6IFThu7cgbOG7hyBkb2FuaCB0aHUgZ2nhuqNtIHRp4bq/cCBkbyBnacOhIGThuqd1IHRow7QgZ2nhuqNtIG3huqFuaCwg4bqjbmggaMaw4bufbmcgxJHhur9uIHh14bqldCBraOG6qXUgdsOgIHRodSBuZ8OibiBzw6FjaCBuaMOgIG7GsOG7m2MuDQogICANCiAgICogMjAxNy0yMDE4OiBU4bu3IGzhu4cgZG9hbmggdGh1IHTEg25nIG5o4bq5IGRvIGtpbmggdOG6vyB2xKkgbcO0IOG7lW4gxJHhu4tuaCwgdGh1IGjDunQgxJHhuqd1IHTGsCBuxrDhu5tjIG5nb8OgaSBnaWEgdMSDbmcuDQoNCioqPT4gS+G6v3QgbHXhuq1uOioqDQoNCiogVOG7tyBs4buHIGRvYW5oIHRodSBzbyB24bubaSBHRFAgY+G7p2EgVmnhu4d0IE5hbSBjw7MgeHUgaMaw4bubbmcgZ2nhuqNtIHRyb25nIGdpYWkgxJFv4bqhbiAyMDA5LTIwMTguDQoNCiogTmhp4buBdSB54bq/dSB04buRIOG6o25oIGjGsOG7n25nIMSR4bq/biB04bu3IGzhu4cgbsOgeSwgYmFvIGfhu5NtIHnhur91IHThu5EgdsSpIG3DtCwgY2jDrW5oIHPDoWNoIHbDoCB0aOG7gyBjaOG6vy4NCg0KKiBD4bqnbiB0aeG6v3AgdOG7pWMgY+G6o2kgdGhp4buHbiBtw7RpIHRyxrDhu51uZyBraW5oIHThur8sIGhvw6BuIHRoaeG7h24gaOG7hyB0aOG7kW5nIHBow6FwIGx14bqtdCwgdsOgIG7Dom5nIGNhbyBoaeG7h3UgcXXhuqMgcXXhuqNuIGzDvSDEkeG7gyB0xINuZyB0aHUgbmfDom4gc8OhY2ggbmjDoCBuxrDhu5tjLg0KDQojIyMgKipCaeG7g3UgxJHhu5MgdGjhu4MgaGnhu4duIHThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPhu6dhIG7GsOG7m2MgVmnhu4d0IE5hbSBnaWFpIMSRb+G6oW4gMjAxOS0yMDI4KioNCg0KYGBgIHtyfQ0KdG4zIDwtIHRuICU+JSBmaWx0ZXIoIE7Eg20gPj0gMjAxOSAmIE7Eg20gPD0gMjAyOCkNCmdncGxvdChkYXRhID0gdG4zLCBhZXMoeCA9IE7Eg20sIHkgPSBQaGFudHJhbSkpICsNCiAgZ2VvbV9jb2woZmlsbCA9ICJwaW5rIiwgY29sb3IgPSAiYmxhY2siKSArDQogIGxhYnMoeCA9ICJOxINtIix5ID0gIlBo4bqnbiB0csSDbSIpICsNCiAgZ2d0aXRsZSgiVOG7tyBs4buHIGRvYW5oIHRodSBzbyB24bubaSBHRFAgY+G7p2Egbsaw4bubYyBWaeG7h3QgTmFtIGdpYWkgxJFv4bqhbiAyMDE5LTIwMjgiKSArDQogIHRoZW1lX21pbmltYWwoKSArIHRoZW1lKGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KGFuZ2xlID0gNDUsIHZqdXN0ID0gMSwgaGp1c3Q9MSkpDQpgYGANCg0KKipOaOG6rW4geMOpdDoqKg0KDQoqIFh1IGjGsOG7m25nIGNodW5nOg0KIA0KICAqIFThu7cgbOG7hyBkb2FuaCB0aHUgc28gduG7m2kgR0RQIGPhu6dhIFZp4buHdCBOYW0gY8OzIHh1IGjGsOG7m25nIGdp4bqjbSB0cm9uZyBnaWFpIMSRb+G6oW4gMjAxOS0yMDIzLCB04burIDE5LjQxJSBuxINtIDIwMTkgeHXhu5FuZyAxOC4zOSUgbsSDbSAyMDIzLg0KICAgDQogICogVHV5IG5oacOqbiwgZOG7sSBraeG6v24gdOG7tyBs4buHIG7DoHkgc+G6vSB0xINuZyBuaOG6uSB0cm9uZyBnaWFpIMSRb+G6oW4gMjAyNC0yMDI4LCDEkeG6oXQgMTkuNDMlIHbDoG8gbsSDbSAyMDI4Lg0KICAgDQoqIFBow6JuIHTDrWNoIGdpYWkgxJFv4bqhbjoNCiANCiAgKiAyMDE5OiBU4bu3IGzhu4cgZG9hbmggdGh1IMSR4bqhdCAxOS40MSUsIGNhbyBuaOG6pXQgdHJvbmcgZ2lhaSDEkW/huqFuLg0KICAgDQogICogMjAyMC0yMDIzOg0KICAgDQogICAgKiAyMDIwOiBHaeG6o20geHXhu5FuZyAxOC4zOSUgZG8g4bqjbmggaMaw4bufbmcgY+G7p2EgxJHhuqFpIGThu4tjaCBDT1ZJRC0xOS4NCiAgICAgDQogICAgKiAyMDIxOiBUxINuZyBuaOG6uSBsw6puIDE4LjcxJS4NCiAgICANCiAgICAqIDIwMjI6IFTEg25nIHRp4bq/cCB04bulYyBsw6puIDE5LjAzJS4NCiAgICAgDQogICAgKiAyMDIzOiBHaeG6o20gbmjhurkgeHXhu5FuZyAxOC4zOSUuDQogICAgIA0KICAqIDIwMjQtMjAyODogROG7sSBraeG6v24gdMSDbmcgbmjhurksIMSR4bqhdCAxOS40MyUgdsOgbyBuxINtIDIwMjguDQoNCioqPT4gS+G6v3QgbHXhuq1uOioqDQoNCiogVOG7tyBs4buHIGRvYW5oIHRodSBzbyB24bubaSBHRFAgY+G7p2EgVmnhu4d0IE5hbSBjw7MgeHUgaMaw4bubbmcgZ2nhuqNtIHRyb25nIGdpYWkgxJFv4bqhbiAyMDE5LTIwMjMgZG8g4bqjbmggaMaw4bufbmcgY+G7p2Egbmhp4buBdSB54bq/dSB04buRLg0KDQoqIEThu7Ega2nhur9uIHThu7cgbOG7hyBuw6B5IHPhur0gdMSDbmcgbmjhurkgdHJvbmcgZ2lhaSDEkW/huqFuIDIwMjQtMjAyOC4NCg0KKiBD4bqnbiB0aeG6v3AgdOG7pWMgdGjhu7FjIGhp4buHbiBjw6FjIGdp4bqjaSBwaMOhcCDEkeG7gyBuw6JuZyBjYW8gaGnhu4d1IHF14bqjIHRodSB0aHXhur8sIGPhuq90IGdp4bqjbSBjaGkgdGnDqnUsIHBow6F0IHRyaeG7g24ga2luaCB04bq/LCB04burIMSRw7MgZ2lhIHTEg25nIG5ndeG7k24gdGh1IGNobyBuZ8OibiBzw6FjaCBuaMOgIG7GsOG7m2MuDQoNCiMjICoqQ8OhYyB54bq/dSB04buRIOG6o25oIGjGsOG7n25nLioqDQoNCiogWeG6v3UgdOG7kSB2xKkgbcO0Og0KDQogICogVMSDbmcgdHLGsOG7n25nIGtpbmggdOG6vzogVMSDbmcgdHLGsOG7n25nIEdEUCBjYW8gdHJvbmcgZ2lhaSDEkW/huqFuIG7DoHkgKHRydW5nIGLDrG5oIDcuNSUvbsSDbSkgbMOgIHnhur91IHThu5EgY2jDrW5oIHRow7pjIMSR4bqpeSB0xINuZyB0csaw4bufbmcgZG9hbmggdGh1Lg0KICANCiAgKiBD4bqjaSBjw6FjaCB0aHXhur86IFZp4buHYyBj4bqjaSBjw6FjaCBo4buHIHRo4buRbmcgdGh14bq/LCDEkcahbiBnaeG6o24gaMOzYSB0aOG7pyB04bulYyBow6BuaCBjaMOtbmgsIHTEg25nIGPGsOG7nW5nIHF14bqjbiBsw70gdGh1IHRodeG6vyDEkcOjIGfDs3AgcGjhuqduIG7Dom5nIGNhbyBoaeG7h3UgcXXhuqMgdGh1IG5nw6JuIHPDoWNoLg0KICANCiAgKiBN4bufIHLhu5luZyBo4buZaSBuaOG6rXAga2luaCB04bq/OiBWaeG7h3QgTmFtIGdpYSBuaOG6rXAgV1RPIG7Eg20gMjAwNywgdGjDumMgxJHhuql5IHh14bqldCBraOG6qXUsIHRodSBow7p0IMSR4bqndSB0xrAgbsaw4bubYyBuZ2/DoGksIHThu6sgxJHDsyBnaWEgdMSDbmcgbmd14buTbiB0aHUgY2hvIG5nw6JuIHPDoWNoLg0KICANCiogWeG6v3UgdOG7kSB2aSBtw7Q6DQoNCiAgKiBOw6JuZyBjYW8gdGh1IG5o4bqtcDogVGh1IG5o4bqtcCBiw6xuaCBxdcOibiDEkeG6p3UgbmfGsOG7nWkgY+G7p2EgVmnhu4d0IE5hbSB0xINuZyDEkcOhbmcga+G7gyB0cm9uZyBnaWFpIMSRb+G6oW4gbsOgeSwgZOG6q24gxJHhur9uIHTEg25nIHRodSB0aHXhur8gdGh1IG5o4bqtcCBjw6EgbmjDom4uDQogIA0KICAqIE3hu58gcuG7mW5nIGhv4bqhdCDEkeG7mW5nIGtpbmggdOG6vzogTuG7gW4ga2luaCB04bq/IHTGsCBuaMOibiBwaMOhdCB0cmnhu4NuIG3huqFuaCBt4bq9LCDEkcOzbmcgZ8OzcCBs4bubbiB2w6BvIG5ndeG7k24gdGh1IHRodeG6vy4NCkNo4buRbmcgdGhhbSBuaMWpbmc6IE7hu5cgbOG7sWMgY2jhu5FuZyB0aGFtIG5oxaluZywgdGjhuqV0IHRodSB0aHXhur8gZ2nDunAgY+G6o2kgdGhp4buHbiBoaeG7h3UgcXXhuqMgdGh1IG5nw6JuIHPDoWNoLg0KDQoqIFnhur91IHThu5EgdGjhu4MgY2jhur86DQoNCiAgKiBI4buHIHRo4buRbmcgcGjDoXAgbHXhuq10OiBI4buHIHRo4buRbmcgcGjDoXAgbHXhuq10IGhvw6BuIHRoaeG7h24gdOG6oW8gbcO0aSB0csaw4budbmcgdGh14bqtbiBs4bujaSBjaG8gaG/huqF0IMSR4buZbmcga2luaCB04bq/IHbDoCB0aHUgdGh14bq/Lg0KICANCiAgKiBN4bupYyDEkeG7mSB0aGFtIG5oxaluZzogVGhhbSBuaMWpbmcgY2FvIOG6o25oIGjGsOG7n25nIMSR4bq/biBoaeG7h3UgcXXhuqMgdGh1IHRodeG6vy4=