GVHD: ThS. Trần Mạnh Tường

Nhóm sinh viên thực hiện:

1. Mai Thị Hoài Thương - 2121001546

2. Nguyễn Thị Ngọc Hà - 2121012474

PHÂN TÍCH NHỮNG YẾU TỐ ẢNH HƯỞNG ĐẾN MỨC ĐỘ TIÊU THỤ RƯỢU CAO CỦA SINH VIÊN

Bộ dữ liệu “Student Alcohol Consumption EDA” từ Kaggle cung cấp thông tin chi tiết về việc sinh viên tiêu thụ rượu tại các trường đại học ở Bồ Đào Nha. Bộ dữ liệu này không chỉ tập trung vào hành vi tiêu thụ rượu mà còn bao gồm các thông tin về môi trường, gia đình và xã hội của sinh viên. Mục đích của nghiên cứu là để hiểu rõ hơn về mối liên hệ giữa các yếu tố này và thói quen tiêu thụ rượu của sinh viên trong 1 ngày. Dữ liệu được thu thập từ các cuộc khảo sát trong cộng đồng học đường, mang lại cơ hội để nghiên cứu tác động của môi trường và gia đình đối với hành vi tiêu thụ rượu ở độ tuổi sinh viên.

LỜI CẢM ƠN

Lời đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến Giảng viên - ThS. Trần Mạnh Tường. Trong quá trình học tập và tìm hiểu môn “Phân tích dữ liệu định tính”, chúng em đã nhận được sự quan tâm giúp đỡ, hướng dẫn và chỉ bảo tận tình của thầy. Thầy đã giúp chúng em tích lũy thêm nhiều kiến thức để có cái nhìn khái quát và hiểu hơn về môn này. Từ những kiến thức được thầy truyền tải, chúng em dần hiểu được tầm quan trọng của môn học mà bấy lâu nay còn nhiều thắc mắc. Thông qua bài tiểu luận này, chúng em xin trình bày những gì chúng em đã tìm hiểu về môn học, và cụ thể là chúng em lựa chọn đề tài “Phân tích những yếu tố ảnh hưởng đến mức độ tiêu thụ rượu của sinh viên”.

Kiến thức là vô hạn nhưng sự tiếp nhận kiến thức của bản thân mỗi chúng em luôn hạn chế một cách nhất định. Do đó, trong quá trình hoàn thành bài tiểu luận, chắc chắn chúng em không tránh khỏi những thiếu sót, vậy nên chúng em rất mong nhận được những đóng góp đến từ thầy để bài tiểu luận của nhóm được hoàn thiện hơn.

Chúng em kính chúc thầy sức khỏe, hạnh phúc và thành công trên con đường sự nghiệp của mình.

CHƯƠNG 1: TỔNG QUAN NGHIÊN CỨU

1.1 Lí do chọn đề tài

Hiện nay, hành vi tiêu thụ rượu là một hiện tượng phổ biến trong đời sống sinh viên. Nhiều sinh viên tham gia các hoạt động xã hội như tiệc tùng, dã ngoại và các sự kiện của trường học, những nơi rượu thường được phục vụ và tiêu thụ. Nhiều sinh viên không chỉ uống rượu mà còn lạm dụng nó, uống đến mức say xỉn thường xuyên. Tình trạng này đặc biệt phổ biến trong các dịp lễ, kỳ nghỉ và các buổi tiệc lớn. Việc uống rượu say xỉn có thể dẫn đến mất kiểm soát hành vi và gây ra nhiều hậu quả tiêu cực như tai nạn, bạo lực và các vấn đề về sức khỏe. Rượu không chỉ để dùng cho những cuộc vui chơi, tiệc tùng, giao lưu bạn bè mà sinh viên hiện nay còn dùng rượu để giải tỏa nỗi buồn, những áp lực trong học tập, bạn bè, gia đình, tình cảm nên việc tiêu thụ rượu của sinh viên hiện nay rất đáng báo động. Rượu rất dễ dàng được tiếp cận và những chỗ lưu thông rượu không được giám sát chặt chẽ nên ngày càng làm gia tăng mức độ tiêu thụ rượu.Thực trạng tiêu thụ rượu của sinh viên hiện nay là một vấn đề nghiêm trọng cần được quan tâm. Việc nghiên cứu và hiểu rõ hơn về hành vi tiêu thụ rượu của sinh viên trong hai trường đại học ở Bồ Đào Nha sẽ giúp đưa ra được một vài biện pháp giáo dục, phòng ngừa và hỗ trợ thích hợp, nhằm giảm thiểu những hậu quả tiêu cực nhằm bảo vệ sức khỏe và tương lai của sinh viên.

1.2 Mục tiêu nghiên cứu

Mục tiêu của chúng tôi là phân tích các yếu tố ảnh hưởng đến mức độ tiêu thụ rượu của sinh viên là thấp hay cao. Nghiên cứu nhằm tìm ra các thông tin và đưa ra một vài biện pháp giúp gia đình và nhà trường quản lý con cái, sinh viên của mình được tốt hơn.

1.3 Đối tượng và phạm vi nghiên cứu

Tập dữ liệu chứa thông tin từ cuộc khảo sát sinh viên của 2 trường đại học ở Bồ Đào Nha. Bộ dữ liệu chứa các thông tin liên quan đến sinh viên bao gồm 395 quan sát trên tổng 9 biến.

1.4 Phương pháp nghiên cứu

Bài nghiên cứu sử dụng phương pháp thống kê và các mô hình hồi quy để phân tích dữ liệu và cho thấy tác động của các yếu tố ảnh hưởng đến mức độ tiêu thụ rượu của sinh viên.

1.5 Kết cấu bài nghiên cứu

  • Chương 1: Tổng quan nghiên cứu.

  • Chương 2: Dữ liệu nghiên cứu.

  • Chương 3: Phân tích và đưa ra kết quả.

Chương 2: DỮ LIỆU NGHIÊN CỨU

2.1 Giới thiệu bộ dữ liệu

Bộ dữ liệu bao gồm 395 quan sát trên tổng 9 biến về sinh viên của 2 trường đại học ở Bồ Đào Nha. Dưới đây là bảng chi tiết từng biến trên từng quan sát khác nhau.

std <- read.csv("student-math.csv", header = T)
library(data.table)
## Warning: package 'data.table' was built under R version 4.3.1
data.table(std)

2.2 Mô tả các biến trong bộ dữ liệu

  • school: ngôi trường sinh viên đang theo học (GP: Gabriel Pereira; MS: Mousinho da Silveria)

  • sex: giới tính của sinh viên (F: nữ; M: nam)

  • address: nơi ở của sinh viên (U: thành thị; R: nông thôn)

  • schoolsup: hỗ trợ giáo dục bổ sung (yes: có; no: không)

  • famsup: hỗ trợ giáo dục gia đình (yes: có; no: không)

  • activities: hoạt động ngoại khóa (yes: có; no: không)

  • internet: truy cập mạng tại nhà (yes: có; no: không)

  • romantic: mối quan hệ tình cảm (yes: có; no: không)

  • Dalc: mức tiêu thụ rượu trong 1 ngày (1: rất thấp; 2: thấp; 3: trung bình; 4: cao; 5: rất cao)

Chương 3: PHÂN TÍCH VÀ ĐƯA RA KẾT QUẢ

Trong bài luận này, biến phụ thuộc được chọn là biến Dalc (mức độ tiêu thụ rượu của sinh viên trong 1 ngày), do biến Dalc là dữ liệu định lượng với các mức độ 1, 2, 3, 4, 5 nên nhóm biến nó thành dữ liệu định tính là Dalc_2 với 2 biểu hiện cụ thể là thấp và cao. Ở các mức độ 1, 2 và 3 sẽ biến đổi thành biểu hiện tiêu thụ rượu “thấp”, còn mức độ 4 và 5 sẽ biến đổi thành biểu hiện tiêu thụ rượu “cao” như bảng dưới đây:

std <- read.csv("student-math.csv", header = T)
std$Dalc_2 <- ifelse(std$Dalc <= 2, "thấp", "cao")
print(std)
##     school sex address schoolsup famsup activities internet romantic Dalc
## 1       GP   F       U       yes     no         no       no       no    1
## 2       GP   F       U        no    yes         no      yes       no    1
## 3       GP   F       U       yes     no         no      yes       no    2
## 4       GP   F       U        no    yes        yes      yes      yes    1
## 5       GP   F       U        no    yes         no       no       no    1
## 6       GP   M       U        no    yes        yes      yes       no    1
## 7       GP   M       U        no     no         no      yes       no    1
## 8       GP   F       U       yes    yes         no       no       no    1
## 9       GP   M       U        no    yes         no      yes       no    1
## 10      GP   M       U        no    yes        yes      yes       no    1
## 11      GP   F       U        no    yes         no      yes       no    1
## 12      GP   F       U        no    yes        yes      yes       no    1
## 13      GP   M       U        no    yes        yes      yes       no    1
## 14      GP   M       U        no    yes         no      yes       no    1
## 15      GP   M       U        no    yes         no      yes      yes    1
## 16      GP   F       U        no    yes         no      yes       no    1
## 17      GP   F       U        no    yes        yes      yes       no    1
## 18      GP   F       U       yes    yes        yes       no       no    1
## 19      GP   M       U        no    yes        yes      yes       no    2
## 20      GP   M       U        no     no        yes      yes       no    1
## 21      GP   M       U        no     no         no      yes       no    1
## 22      GP   M       U        no    yes         no      yes       no    1
## 23      GP   M       U        no     no        yes      yes       no    1
## 24      GP   M       U        no    yes        yes      yes       no    2
## 25      GP   F       R       yes    yes        yes      yes       no    1
## 26      GP   F       U        no    yes         no      yes       no    1
## 27      GP   M       U        no    yes         no      yes       no    1
## 28      GP   M       U        no     no         no      yes       no    2
## 29      GP   M       U       yes    yes        yes      yes       no    1
## 30      GP   M       U        no    yes        yes      yes      yes    5
## 31      GP   M       U        no    yes         no      yes       no    3
## 32      GP   M       U        no    yes        yes      yes       no    1
## 33      GP   M       R        no    yes        yes      yes      yes    1
## 34      GP   M       U        no     no        yes      yes       no    1
## 35      GP   M       U        no    yes         no      yes       no    1
## 36      GP   F       U        no    yes        yes       no       no    1
## 37      GP   M       U        no    yes        yes      yes       no    1
## 38      GP   M       R        no    yes        yes      yes      yes    1
## 39      GP   F       R       yes    yes        yes      yes       no    1
## 40      GP   F       R       yes    yes        yes       no       no    1
## 41      GP   F       U        no    yes        yes      yes      yes    1
## 42      GP   M       U        no    yes         no      yes      yes    2
## 43      GP   M       U        no    yes        yes      yes       no    1
## 44      GP   M       U       yes    yes         no      yes       no    1
## 45      GP   F       U       yes     no        yes      yes       no    2
## 46      GP   F       U       yes    yes        yes      yes      yes    1
## 47      GP   F       U        no    yes         no      yes       no    1
## 48      GP   M       U        no     no        yes      yes       no    1
## 49      GP   M       U        no    yes         no       no       no    2
## 50      GP   F       U       yes    yes        yes      yes       no    1
## 51      GP   F       U        no    yes         no      yes       no    2
## 52      GP   F       U        no    yes         no      yes       no    1
## 53      GP   M       U        no     no         no       no       no    3
## 54      GP   F       U       yes    yes         no      yes       no    2
## 55      GP   F       U        no     no         no      yes       no    4
## 56      GP   F       U        no     no        yes      yes      yes    1
## 57      GP   F       U        no    yes        yes      yes       no    1
## 58      GP   M       U        no    yes        yes       no       no    1
## 59      GP   M       U       yes    yes        yes      yes       no    1
## 60      GP   F       U        no    yes         no      yes       no    1
## 61      GP   F       R        no    yes        yes       no       no    2
## 62      GP   F       U       yes    yes        yes      yes      yes    5
## 63      GP   F       U       yes     no        yes      yes       no    1
## 64      GP   F       U       yes    yes        yes      yes       no    2
## 65      GP   F       U       yes     no        yes      yes      yes    2
## 66      GP   F       U        no    yes        yes      yes       no    1
## 67      GP   M       U        no    yes        yes      yes      yes    5
## 68      GP   F       U       yes    yes         no      yes       no    1
## 69      GP   F       R       yes    yes         no      yes       no    1
## 70      GP   F       R        no    yes         no      yes       no    2
## 71      GP   M       U        no    yes         no      yes       no    1
## 72      GP   M       U        no     no         no      yes       no    1
## 73      GP   F       R       yes    yes         no      yes      yes    2
## 74      GP   M       U        no     no        yes       no       no    2
## 75      GP   F       U       yes    yes        yes      yes       no    2
## 76      GP   M       U        no    yes        yes      yes       no    2
## 77      GP   M       U        no     no        yes      yes       no    1
## 78      GP   F       U        no     no         no      yes      yes    1
## 79      GP   M       U       yes    yes        yes      yes       no    1
## 80      GP   F       U        no    yes         no      yes       no    1
## 81      GP   M       U       yes    yes        yes      yes      yes    1
## 82      GP   M       U       yes     no         no      yes       no    1
## 83      GP   F       U        no    yes         no      yes       no    1
## 84      GP   M       U        no     no        yes      yes       no    1
## 85      GP   F       U        no    yes        yes      yes       no    2
## 86      GP   F       U        no     no         no      yes      yes    2
## 87      GP   F       U        no    yes         no       no       no    1
## 88      GP   F       U        no    yes        yes      yes       no    1
## 89      GP   M       U        no     no        yes      yes       no    1
## 90      GP   M       U        no    yes         no       no       no    3
## 91      GP   F       U        no    yes         no      yes      yes    1
## 92      GP   F       U        no     no        yes      yes       no    1
## 93      GP   F       U       yes    yes         no       no       no    2
## 94      GP   F       U        no    yes        yes      yes       no    1
## 95      GP   M       U        no    yes        yes      yes       no    1
## 96      GP   F       R       yes    yes        yes      yes       no    1
## 97      GP   M       R       yes    yes        yes      yes       no    1
## 98      GP   F       U        no    yes         no       no      yes    1
## 99      GP   F       U        no     no        yes      yes       no    1
## 100     GP   F       U       yes    yes         no      yes       no    1
## 101     GP   M       U       yes    yes        yes      yes       no    5
## 102     GP   M       U        no    yes        yes      yes      yes    1
## 103     GP   M       U        no    yes        yes      yes       no    1
## 104     GP   F       U       yes    yes         no      yes       no    1
## 105     GP   M       U        no    yes        yes      yes       no    1
## 106     GP   F       U       yes     no         no       no       no    1
## 107     GP   F       U       yes    yes         no      yes       no    1
## 108     GP   M       U        no    yes        yes      yes       no    1
## 109     GP   M       R        no    yes        yes      yes      yes    3
## 110     GP   F       U        no    yes        yes      yes      yes    1
## 111     GP   M       U        no     no        yes      yes       no    1
## 112     GP   F       R       yes    yes        yes      yes       no    1
## 113     GP   F       U       yes     no        yes      yes       no    1
## 114     GP   M       U        no     no         no      yes       no    1
## 115     GP   M       R        no     no        yes      yes      yes    1
## 116     GP   M       U        no    yes        yes      yes       no    1
## 117     GP   M       U        no    yes        yes       no       no    1
## 118     GP   M       U        no     no        yes      yes       no    1
## 119     GP   M       R        no    yes        yes      yes       no    1
## 120     GP   M       U        no     no         no      yes       no    1
## 121     GP   F       U        no     no         no      yes       no    1
## 122     GP   M       U        no    yes        yes      yes       no    1
## 123     GP   F       U        no    yes        yes      yes      yes    1
## 124     GP   M       U        no    yes        yes      yes       no    1
## 125     GP   F       U        no     no         no      yes      yes    1
## 126     GP   M       U       yes     no         no      yes       no    3
## 127     GP   F       U       yes     no        yes      yes      yes    1
## 128     GP   F       U        no    yes         no       no       no    1
## 129     GP   M       R        no    yes        yes      yes       no    1
## 130     GP   M       R        no     no        yes      yes       no    2
## 131     GP   F       R        no    yes         no      yes      yes    2
## 132     GP   F       U        no    yes        yes      yes      yes    1
## 133     GP   F       U        no    yes         no      yes      yes    1
## 134     GP   F       U        no     no         no      yes       no    1
## 135     GP   M       R        no    yes         no       no      yes    1
## 136     GP   F       U        no    yes        yes      yes      yes    1
## 137     GP   M       R        no     no         no       no       no    2
## 138     GP   F       U        no    yes        yes      yes      yes    1
## 139     GP   M       U        no     no         no       no      yes    1
## 140     GP   F       U        no     no        yes      yes       no    1
## 141     GP   M       U       yes    yes         no      yes       no    1
## 142     GP   M       U        no    yes        yes      yes       no    2
## 143     GP   F       U        no    yes        yes      yes       no    1
## 144     GP   F       U        no     no         no      yes       no    3
## 145     GP   M       U        no    yes         no      yes       no    1
## 146     GP   F       U        no    yes         no      yes       no    1
## 147     GP   F       U        no    yes         no      yes       no    1
## 148     GP   F       U        no    yes         no      yes       no    1
## 149     GP   M       U        no    yes         no      yes      yes    2
## 150     GP   M       U        no     no         no      yes       no    2
## 151     GP   M       U        no     no         no      yes      yes    2
## 152     GP   M       U        no     no        yes       no      yes    3
## 153     GP   F       R        no    yes        yes      yes      yes    2
## 154     GP   M       U        no    yes         no      yes      yes    1
## 155     GP   F       U       yes    yes         no       no      yes    1
## 156     GP   M       R       yes     no        yes       no       no    1
## 157     GP   M       R        no     no         no       no       no    3
## 158     GP   F       R        no    yes        yes       no       no    1
## 159     GP   M       R        no     no         no       no       no    1
## 160     GP   M       U        no    yes         no      yes      yes    4
## 161     GP   M       R        no     no        yes      yes      yes    2
## 162     GP   M       R       yes    yes         no      yes      yes    1
## 163     GP   M       U        no     no        yes       no       no    2
## 164     GP   M       U        no     no         no      yes       no    1
## 165     GP   M       R        no     no        yes       no      yes    1
## 166     GP   M       U        no    yes        yes       no       no    1
## 167     GP   M       U        no     no         no      yes       no    2
## 168     GP   F       U        no     no         no      yes      yes    1
## 169     GP   F       U        no    yes         no      yes       no    1
## 170     GP   F       U        no    yes         no      yes      yes    1
## 171     GP   M       U        no    yes        yes      yes       no    2
## 172     GP   M       U        no    yes        yes      yes      yes    1
## 173     GP   M       U        no    yes        yes      yes       no    1
## 174     GP   F       U        no     no        yes      yes      yes    1
## 175     GP   F       U        no    yes        yes      yes       no    1
## 176     GP   M       U        no     no        yes      yes       no    4
## 177     GP   F       U        no     no        yes      yes       no    1
## 178     GP   M       U        no     no        yes      yes       no    1
## 179     GP   M       R        no    yes        yes      yes      yes    3
## 180     GP   M       U        no    yes        yes      yes      yes    1
## 181     GP   M       U        no    yes        yes      yes       no    2
## 182     GP   M       U        no     no        yes      yes      yes    1
## 183     GP   F       U        no    yes        yes       no       no    2
## 184     GP   F       U        no    yes        yes      yes      yes    2
## 185     GP   F       U        no    yes         no      yes       no    1
## 186     GP   M       U        no    yes        yes      yes      yes    2
## 187     GP   M       U        no    yes        yes      yes      yes    1
## 188     GP   M       U        no     no        yes      yes      yes    1
## 189     GP   F       U        no    yes         no      yes      yes    1
## 190     GP   M       R        no     no         no       no       no    1
## 191     GP   F       U        no     no         no      yes       no    1
## 192     GP   F       U        no     no        yes      yes       no    1
## 193     GP   M       U        no     no        yes      yes       no    4
## 194     GP   M       R        no    yes        yes      yes       no    3
## 195     GP   M       U        no     no         no      yes       no    1
## 196     GP   F       U        no     no        yes      yes      yes    1
## 197     GP   M       U        no     no         no      yes       no    1
## 198     GP   M       R        no    yes        yes      yes       no    3
## 199     GP   F       U        no    yes         no      yes       no    2
## 200     GP   F       U        no    yes         no      yes       no    1
## 201     GP   F       U        no    yes        yes      yes       no    1
## 202     GP   F       U       yes    yes        yes       no       no    1
## 203     GP   F       U        no    yes         no       no       no    1
## 204     GP   F       R        no    yes         no      yes       no    1
## 205     GP   F       R        no    yes        yes      yes       no    1
## 206     GP   F       U        no    yes         no      yes      yes    3
## 207     GP   F       U        no    yes         no      yes       no    2
## 208     GP   F       U        no     no        yes      yes      yes    1
## 209     GP   F       U        no    yes         no       no       no    1
## 210     GP   F       R        no    yes        yes      yes      yes    1
## 211     GP   F       U        no    yes        yes      yes       no    1
## 212     GP   M       U        no    yes         no      yes      yes    4
## 213     GP   F       U       yes    yes         no      yes       no    1
## 214     GP   M       U        no    yes        yes      yes       no    2
## 215     GP   F       R        no    yes         no       no       no    1
## 216     GP   F       U        no     no         no      yes       no    1
## 217     GP   F       U        no     no         no      yes      yes    2
## 218     GP   M       U        no    yes         no      yes       no    2
## 219     GP   F       U        no    yes         no       no       no    1
## 220     GP   F       U        no    yes        yes      yes       no    1
## 221     GP   F       R        no    yes        yes      yes       no    1
## 222     GP   F       U        no    yes        yes       no      yes    1
## 223     GP   F       U       yes     no         no      yes       no    1
## 224     GP   M       U        no    yes         no      yes       no    5
## 225     GP   F       U        no    yes        yes      yes       no    1
## 226     GP   F       R        no     no        yes      yes      yes    1
## 227     GP   F       U        no     no        yes      yes       no    1
## 228     GP   M       U        no    yes         no      yes       no    1
## 229     GP   M       U       yes    yes        yes      yes      yes    4
## 230     GP   F       U        no     no        yes      yes      yes    1
## 231     GP   F       U        no     no        yes      yes      yes    1
## 232     GP   M       R        no    yes        yes      yes       no    1
## 233     GP   M       U       yes    yes        yes      yes      yes    1
## 234     GP   M       U        no    yes        yes      yes       no    2
## 235     GP   M       U        no    yes         no      yes       no    1
## 236     GP   M       U        no     no        yes      yes      yes    1
## 237     GP   M       U        no     no        yes      yes      yes    5
## 238     GP   F       U        no     no         no      yes      yes    1
## 239     GP   F       R        no     no        yes       no       no    1
## 240     GP   M       U        no     no         no      yes       no    3
## 241     GP   M       U        no     no        yes      yes      yes    1
## 242     GP   M       R        no    yes         no      yes       no    2
## 243     GP   M       U        no     no        yes      yes       no    1
## 244     GP   M       U        no     no        yes      yes       no    1
## 245     GP   F       U        no    yes         no      yes      yes    1
## 246     GP   M       U        no     no         no      yes       no    1
## 247     GP   M       U        no     no         no      yes       no    1
## 248     GP   M       U        no     no         no      yes      yes    5
## 249     GP   M       R        no    yes         no      yes      yes    1
## 250     GP   M       U        no     no         no      yes       no    2
## 251     GP   M       U        no     no         no      yes       no    2
## 252     GP   M       U       yes    yes         no      yes       no    1
## 253     GP   M       U        no     no         no      yes       no    2
## 254     GP   M       R        no     no        yes       no       no    1
## 255     GP   M       R        no     no         no      yes       no    2
## 256     GP   M       U        no    yes        yes      yes       no    1
## 257     GP   F       U        no    yes        yes      yes       no    1
## 258     GP   M       U        no    yes         no      yes       no    1
## 259     GP   M       U        no     no        yes      yes       no    1
## 260     GP   F       U        no     no        yes      yes      yes    1
## 261     GP   F       U        no    yes         no      yes      yes    1
## 262     GP   M       U        no    yes         no      yes       no    1
## 263     GP   M       R        no     no        yes       no       no    1
## 264     GP   F       U        no     no        yes       no       no    1
## 265     GP   F       U        no    yes        yes      yes      yes    1
## 266     GP   M       R        no    yes        yes      yes       no    3
## 267     GP   M       U        no     no        yes      yes      yes    3
## 268     GP   F       R        no     no        yes      yes       no    2
## 269     GP   M       U        no    yes        yes      yes      yes    1
## 270     GP   F       R        no    yes         no      yes      yes    1
## 271     GP   F       U        no    yes        yes      yes       no    3
## 272     GP   F       U        no    yes        yes      yes      yes    1
## 273     GP   F       U        no    yes         no       no       no    1
## 274     GP   M       R        no    yes        yes       no      yes    2
## 275     GP   F       U        no    yes         no      yes      yes    1
## 276     GP   F       U       yes    yes         no      yes      yes    2
## 277     GP   F       R        no     no         no      yes      yes    1
## 278     GP   M       U        no     no        yes      yes       no    1
## 279     GP   F       U       yes    yes        yes      yes      yes    1
## 280     GP   M       U        no     no        yes      yes       no    1
## 281     GP   M       U        no     no        yes      yes      yes    2
## 282     GP   M       U        no     no         no      yes       no    3
## 283     GP   F       R        no    yes        yes       no       no    1
## 284     GP   F       U       yes     no        yes      yes       no    1
## 285     GP   F       U        no    yes         no      yes       no    1
## 286     GP   M       U        no     no         no      yes       no    1
## 287     GP   F       U        no    yes         no      yes       no    1
## 288     GP   F       U        no    yes         no      yes       no    1
## 289     GP   M       U        no     no        yes      yes       no    1
## 290     GP   M       U        no    yes        yes      yes       no    1
## 291     GP   M       U        no    yes        yes      yes      yes    1
## 292     GP   F       U        no    yes         no      yes       no    1
## 293     GP   F       U        no     no         no      yes      yes    1
## 294     GP   F       R        no    yes         no       no       no    1
## 295     GP   M       R        no    yes        yes      yes       no    1
## 296     GP   M       U        no    yes         no      yes       no    1
## 297     GP   F       U        no    yes        yes      yes       no    2
## 298     GP   F       U        no    yes         no      yes      yes    1
## 299     GP   F       U        no    yes         no      yes       no    1
## 300     GP   M       U        no    yes         no      yes      yes    2
## 301     GP   F       U        no    yes         no      yes      yes    1
## 302     GP   M       U        no     no         no      yes       no    2
## 303     GP   F       U        no    yes         no      yes       no    1
## 304     GP   F       U        no    yes        yes      yes       no    1
## 305     GP   M       U        no    yes        yes      yes      yes    1
## 306     GP   F       U        no    yes        yes      yes       no    1
## 307     GP   M       U        no     no        yes       no       no    1
## 308     GP   M       U        no    yes         no      yes      yes    1
## 309     GP   M       R        no     no        yes       no      yes    1
## 310     GP   F       U       yes    yes        yes      yes       no    1
## 311     GP   F       U        no     no        yes       no      yes    2
## 312     GP   F       U        no    yes         no      yes      yes    1
## 313     GP   M       U        no     no         no      yes       no    2
## 314     GP   F       U        no    yes         no      yes      yes    1
## 315     GP   F       U        no     no         no      yes      yes    1
## 316     GP   F       R        no     no         no      yes      yes    1
## 317     GP   F       U        no    yes        yes      yes       no    1
## 318     GP   F       U        no    yes        yes      yes      yes    1
## 319     GP   F       R        no    yes        yes      yes       no    2
## 320     GP   F       U        no    yes         no      yes       no    3
## 321     GP   F       U        no    yes         no      yes      yes    1
## 322     GP   F       U        no    yes         no       no      yes    1
## 323     GP   F       R        no    yes        yes      yes       no    2
## 324     GP   F       U        no    yes         no      yes       no    2
## 325     GP   F       U        no     no         no      yes       no    2
## 326     GP   M       U        no     no        yes      yes       no    2
## 327     GP   M       U        no     no        yes      yes       no    3
## 328     GP   M       R        no    yes         no      yes       no    5
## 329     GP   F       U        no    yes        yes      yes       no    1
## 330     GP   F       U        no    yes         no      yes      yes    1
## 331     GP   M       U        no    yes        yes      yes       no    2
## 332     GP   F       R        no    yes         no      yes      yes    1
## 333     GP   F       U        no     no        yes      yes       no    1
## 334     GP   F       U        no     no        yes      yes      yes    1
## 335     GP   F       R        no     no        yes       no       no    1
## 336     GP   F       U        no     no         no      yes       no    1
## 337     GP   F       R        no     no         no       no       no    1
## 338     GP   F       U        no    yes         no      yes      yes    2
## 339     GP   F       U        no    yes         no      yes       no    1
## 340     GP   F       R        no    yes         no      yes       no    2
## 341     GP   F       U        no     no        yes      yes      yes    1
## 342     GP   M       U        no    yes        yes      yes       no    2
## 343     GP   M       U        no     no        yes      yes      yes    1
## 344     GP   F       U        no    yes         no      yes      yes    1
## 345     GP   F       U        no    yes         no      yes       no    1
## 346     GP   F       U        no     no         no      yes      yes    2
## 347     GP   M       R        no     no         no      yes      yes    1
## 348     GP   M       U        no    yes         no      yes      yes    2
## 349     GP   F       U        no    yes        yes      yes      yes    1
## 350     MS   M       R        no    yes         no      yes       no    5
## 351     MS   M       R        no     no         no      yes       no    3
## 352     MS   M       U        no    yes         no      yes       no    2
## 353     MS   M       U        no     no         no      yes      yes    2
## 354     MS   M       R        no    yes         no      yes       no    3
## 355     MS   M       R        no    yes        yes      yes      yes    1
## 356     MS   F       U        no    yes         no       no      yes    1
## 357     MS   F       R        no    yes        yes      yes       no    1
## 358     MS   F       U        no     no         no       no      yes    1
## 359     MS   M       U        no     no         no      yes      yes    1
## 360     MS   F       U        no     no         no      yes       no    1
## 361     MS   F       R        no     no         no       no      yes    1
## 362     MS   M       R        no     no        yes       no       no    2
## 363     MS   F       U        no    yes         no      yes      yes    1
## 364     MS   F       U        no    yes        yes      yes      yes    1
## 365     MS   F       R        no     no         no       no       no    1
## 366     MS   M       R        no    yes         no       no       no    2
## 367     MS   M       U        no     no         no      yes      yes    2
## 368     MS   F       R        no    yes         no      yes      yes    1
## 369     MS   F       U        no    yes         no      yes      yes    1
## 370     MS   F       R        no    yes         no      yes      yes    4
## 371     MS   F       U        no     no        yes       no      yes    1
## 372     MS   M       R        no    yes        yes      yes      yes    2
## 373     MS   F       U        no     no        yes       no      yes    1
## 374     MS   F       R        no     no        yes      yes       no    1
## 375     MS   F       R        no     no         no      yes       no    1
## 376     MS   F       R        no     no         no      yes       no    1
## 377     MS   F       U        no    yes         no      yes      yes    1
## 378     MS   F       R        no     no        yes      yes       no    3
## 379     MS   F       U        no     no         no      yes      yes    1
## 380     MS   F       R        no    yes        yes      yes       no    2
## 381     MS   M       U        no     no        yes      yes       no    1
## 382     MS   M       R        no     no        yes      yes      yes    1
## 383     MS   M       U        no     no        yes      yes       no    1
## 384     MS   M       R        no     no         no       no       no    1
## 385     MS   M       R        no     no         no       no       no    4
## 386     MS   F       R        no     no         no       no       no    1
## 387     MS   F       R        no    yes        yes      yes      yes    2
## 388     MS   F       R        no     no        yes      yes       no    1
## 389     MS   F       U        no    yes         no      yes       no    1
## 390     MS   F       U        no     no        yes       no       no    1
## 391     MS   M       U        no    yes         no       no       no    4
## 392     MS   M       U        no     no         no      yes       no    3
## 393     MS   M       R        no     no         no       no       no    3
## 394     MS   M       R        no     no         no      yes       no    3
## 395     MS   M       U        no     no         no      yes       no    3
##     Dalc_2
## 1     thấp
## 2     thấp
## 3     thấp
## 4     thấp
## 5     thấp
## 6     thấp
## 7     thấp
## 8     thấp
## 9     thấp
## 10    thấp
## 11    thấp
## 12    thấp
## 13    thấp
## 14    thấp
## 15    thấp
## 16    thấp
## 17    thấp
## 18    thấp
## 19    thấp
## 20    thấp
## 21    thấp
## 22    thấp
## 23    thấp
## 24    thấp
## 25    thấp
## 26    thấp
## 27    thấp
## 28    thấp
## 29    thấp
## 30     cao
## 31     cao
## 32    thấp
## 33    thấp
## 34    thấp
## 35    thấp
## 36    thấp
## 37    thấp
## 38    thấp
## 39    thấp
## 40    thấp
## 41    thấp
## 42    thấp
## 43    thấp
## 44    thấp
## 45    thấp
## 46    thấp
## 47    thấp
## 48    thấp
## 49    thấp
## 50    thấp
## 51    thấp
## 52    thấp
## 53     cao
## 54    thấp
## 55     cao
## 56    thấp
## 57    thấp
## 58    thấp
## 59    thấp
## 60    thấp
## 61    thấp
## 62     cao
## 63    thấp
## 64    thấp
## 65    thấp
## 66    thấp
## 67     cao
## 68    thấp
## 69    thấp
## 70    thấp
## 71    thấp
## 72    thấp
## 73    thấp
## 74    thấp
## 75    thấp
## 76    thấp
## 77    thấp
## 78    thấp
## 79    thấp
## 80    thấp
## 81    thấp
## 82    thấp
## 83    thấp
## 84    thấp
## 85    thấp
## 86    thấp
## 87    thấp
## 88    thấp
## 89    thấp
## 90     cao
## 91    thấp
## 92    thấp
## 93    thấp
## 94    thấp
## 95    thấp
## 96    thấp
## 97    thấp
## 98    thấp
## 99    thấp
## 100   thấp
## 101    cao
## 102   thấp
## 103   thấp
## 104   thấp
## 105   thấp
## 106   thấp
## 107   thấp
## 108   thấp
## 109    cao
## 110   thấp
## 111   thấp
## 112   thấp
## 113   thấp
## 114   thấp
## 115   thấp
## 116   thấp
## 117   thấp
## 118   thấp
## 119   thấp
## 120   thấp
## 121   thấp
## 122   thấp
## 123   thấp
## 124   thấp
## 125   thấp
## 126    cao
## 127   thấp
## 128   thấp
## 129   thấp
## 130   thấp
## 131   thấp
## 132   thấp
## 133   thấp
## 134   thấp
## 135   thấp
## 136   thấp
## 137   thấp
## 138   thấp
## 139   thấp
## 140   thấp
## 141   thấp
## 142   thấp
## 143   thấp
## 144    cao
## 145   thấp
## 146   thấp
## 147   thấp
## 148   thấp
## 149   thấp
## 150   thấp
## 151   thấp
## 152    cao
## 153   thấp
## 154   thấp
## 155   thấp
## 156   thấp
## 157    cao
## 158   thấp
## 159   thấp
## 160    cao
## 161   thấp
## 162   thấp
## 163   thấp
## 164   thấp
## 165   thấp
## 166   thấp
## 167   thấp
## 168   thấp
## 169   thấp
## 170   thấp
## 171   thấp
## 172   thấp
## 173   thấp
## 174   thấp
## 175   thấp
## 176    cao
## 177   thấp
## 178   thấp
## 179    cao
## 180   thấp
## 181   thấp
## 182   thấp
## 183   thấp
## 184   thấp
## 185   thấp
## 186   thấp
## 187   thấp
## 188   thấp
## 189   thấp
## 190   thấp
## 191   thấp
## 192   thấp
## 193    cao
## 194    cao
## 195   thấp
## 196   thấp
## 197   thấp
## 198    cao
## 199   thấp
## 200   thấp
## 201   thấp
## 202   thấp
## 203   thấp
## 204   thấp
## 205   thấp
## 206    cao
## 207   thấp
## 208   thấp
## 209   thấp
## 210   thấp
## 211   thấp
## 212    cao
## 213   thấp
## 214   thấp
## 215   thấp
## 216   thấp
## 217   thấp
## 218   thấp
## 219   thấp
## 220   thấp
## 221   thấp
## 222   thấp
## 223   thấp
## 224    cao
## 225   thấp
## 226   thấp
## 227   thấp
## 228   thấp
## 229    cao
## 230   thấp
## 231   thấp
## 232   thấp
## 233   thấp
## 234   thấp
## 235   thấp
## 236   thấp
## 237    cao
## 238   thấp
## 239   thấp
## 240    cao
## 241   thấp
## 242   thấp
## 243   thấp
## 244   thấp
## 245   thấp
## 246   thấp
## 247   thấp
## 248    cao
## 249   thấp
## 250   thấp
## 251   thấp
## 252   thấp
## 253   thấp
## 254   thấp
## 255   thấp
## 256   thấp
## 257   thấp
## 258   thấp
## 259   thấp
## 260   thấp
## 261   thấp
## 262   thấp
## 263   thấp
## 264   thấp
## 265   thấp
## 266    cao
## 267    cao
## 268   thấp
## 269   thấp
## 270   thấp
## 271    cao
## 272   thấp
## 273   thấp
## 274   thấp
## 275   thấp
## 276   thấp
## 277   thấp
## 278   thấp
## 279   thấp
## 280   thấp
## 281   thấp
## 282    cao
## 283   thấp
## 284   thấp
## 285   thấp
## 286   thấp
## 287   thấp
## 288   thấp
## 289   thấp
## 290   thấp
## 291   thấp
## 292   thấp
## 293   thấp
## 294   thấp
## 295   thấp
## 296   thấp
## 297   thấp
## 298   thấp
## 299   thấp
## 300   thấp
## 301   thấp
## 302   thấp
## 303   thấp
## 304   thấp
## 305   thấp
## 306   thấp
## 307   thấp
## 308   thấp
## 309   thấp
## 310   thấp
## 311   thấp
## 312   thấp
## 313   thấp
## 314   thấp
## 315   thấp
## 316   thấp
## 317   thấp
## 318   thấp
## 319   thấp
## 320    cao
## 321   thấp
## 322   thấp
## 323   thấp
## 324   thấp
## 325   thấp
## 326   thấp
## 327    cao
## 328    cao
## 329   thấp
## 330   thấp
## 331   thấp
## 332   thấp
## 333   thấp
## 334   thấp
## 335   thấp
## 336   thấp
## 337   thấp
## 338   thấp
## 339   thấp
## 340   thấp
## 341   thấp
## 342   thấp
## 343   thấp
## 344   thấp
## 345   thấp
## 346   thấp
## 347   thấp
## 348   thấp
## 349   thấp
## 350    cao
## 351    cao
## 352   thấp
## 353   thấp
## 354    cao
## 355   thấp
## 356   thấp
## 357   thấp
## 358   thấp
## 359   thấp
## 360   thấp
## 361   thấp
## 362   thấp
## 363   thấp
## 364   thấp
## 365   thấp
## 366   thấp
## 367   thấp
## 368   thấp
## 369   thấp
## 370    cao
## 371   thấp
## 372   thấp
## 373   thấp
## 374   thấp
## 375   thấp
## 376   thấp
## 377   thấp
## 378    cao
## 379   thấp
## 380   thấp
## 381   thấp
## 382   thấp
## 383   thấp
## 384   thấp
## 385    cao
## 386   thấp
## 387   thấp
## 388   thấp
## 389   thấp
## 390   thấp
## 391    cao
## 392    cao
## 393    cao
## 394    cao
## 395    cao

3.1 Thống kê mô tả biến phụ thuộc

Lập bảng tần số và bảng tần suất

table(std$Dalc_2)
## 
##  cao thấp 
##   44  351
table(std$Dalc_2)/length(std$Dalc_2)
## 
##       cao      thấp 
## 0.1113924 0.8886076

Lập biểu đồ

library(dplyr)
## Warning: package 'dplyr' was built under R version 4.3.1
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:data.table':
## 
##     between, first, last
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.3.1
## Warning: package 'ggplot2' was built under R version 4.3.3
## Warning: package 'tibble' was built under R version 4.3.1
## Warning: package 'tidyr' was built under R version 4.3.1
## Warning: package 'readr' was built under R version 4.3.1
## Warning: package 'purrr' was built under R version 4.3.1
## Warning: package 'forcats' was built under R version 4.3.1
## Warning: package 'lubridate' was built under R version 4.3.1
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ forcats   1.0.0     ✔ readr     2.1.4
## ✔ ggplot2   3.5.1     ✔ stringr   1.5.0
## ✔ lubridate 1.9.2     ✔ tibble    3.2.1
## ✔ purrr     1.0.1     ✔ tidyr     1.3.0
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::between()     masks data.table::between()
## ✖ dplyr::filter()      masks stats::filter()
## ✖ dplyr::first()       masks data.table::first()
## ✖ lubridate::hour()    masks data.table::hour()
## ✖ lubridate::isoweek() masks data.table::isoweek()
## ✖ dplyr::lag()         masks stats::lag()
## ✖ dplyr::last()        masks data.table::last()
## ✖ lubridate::mday()    masks data.table::mday()
## ✖ lubridate::minute()  masks data.table::minute()
## ✖ lubridate::month()   masks data.table::month()
## ✖ lubridate::quarter() masks data.table::quarter()
## ✖ lubridate::second()  masks data.table::second()
## ✖ purrr::transpose()   masks data.table::transpose()
## ✖ lubridate::wday()    masks data.table::wday()
## ✖ lubridate::week()    masks data.table::week()
## ✖ lubridate::yday()    masks data.table::yday()
## ✖ lubridate::year()    masks data.table::year()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
std %>% group_by(Dalc_2) %>%  summarise(n = n()) %>% 
    ggplot(aes(x=Dalc_2,y=n)) + 
    geom_col(fill = "#89CFF0")+
    geom_text(aes(label =n),vjust = 1, color = "white")+
    theme_bw()

Nhận xét: Biểu đồ cột và bảng ở trên thể hiện mức độ tiêu thụ rượu của sinh viên trong 1 ngày. Theo khảo sát, độ tiêu thụ rượu của sinh viên trong 1 ngày với mức độ tiêu thụ rượu cao chỉ có 44 sinh viên chiếm tỷ lệ 11.14%, còn lại 351 sinh viên với mức độ tiêu thụ rượu thấp chiếm tỷ lệ 88.86%. Như kết quả cho thấy, tại 2 ngôi trường này thì sinh viên tiêu thụ rượu cao trong 1 ngày rất là ít.

3.2 Thống kê suy diễn

3.2.1 Kiểm định tính độc lập

Phương pháp Chi bình phương

\[\chi^2 = \sum_{i,j} \frac{(n_{ij} -\hat{\mu}_{ij})^2}{\hat{\mu}_{ij}}\]

Với \(n_{i,j}\) là giá trị của ô \(i,j,\hat{\mu}_{ij}=\frac{n_{i+} \cdot n_{+j}}{n}\)

Biến Dalc_2 và school

Giả thuyết:

\(H_0\): Dalc_2 và school độc lập

\(H_1\): Dalc_2 và school không độc lập

mtht <- table(std$Dalc_2, std$school)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 7.1839, df = 1, p-value = 0.007356

Nhận xét: Qua kết quả kiểm định cho thấy p−value = 0.007356 < 0.05, bác bỏ \(H_0\), nghĩa là giữa việc sinh viên học ở trường nào và mức độ tiêu thụ rượu là có liên quan với nhau.

Biến Dalc_2 và sex

Giả thuyết:

\(H_0\): Dalc_2 và sex độc lập

\(H_1\): Dalc_2 và sex không độc lập

mtht <- table(std$Dalc_2, std$sex)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 22.078, df = 1, p-value = 2.618e-06

Nhận xét: Qua kết quả kiểm định cho thấy p−value = 2.618e-06 < 0.05, bác bỏ \(H_0\), nghĩa là giữa giới tính của sinh viên và mức độ tiêu thụ rượu là có liên quan với nhau.

Biến Dalc_2 và address

Giả thuyết:

\(H_0\): Dalc_2 và address độc lập

\(H_1\): Dalc_2 và address không độc lập

mtht <- table(std$Dalc_2, std$address)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 3.2594, df = 1, p-value = 0.07101

Nhận xét: Qua kết quả kiểm định cho thấy p−value = 0.07101 > 0.05, chưa đủ cơ sở bác bỏ \(H_0\), nghĩa là giữa nơi ở của sinh viên và mức độ tiêu thụ rượu không có liên quan với nhau.

Biến Dalc_2 và schoolsup

Giả thuyết:

\(H_0\): Dalc_2 và schoolsup độc lập

\(H_1\): Dalc_2 và schoolsup không độc lập

mtht <- table(std$Dalc_2, std$schoolsup)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 0.31726, df = 1, p-value = 0.5733

Nhận xét: Qua kết quả kiểm định cho thấy p−value = 0.5733 > 0.05, chưa đủ cơ sở bác bỏ \(H_0\), nghĩa là giữa việc hỗ trợ giáo dục bổ sung cho sinh viên và mức độ tiêu thụ rượu không có liên quan với nhau.

Biến Dalc_2 và famsup

Giả thuyết:

\(H_0\): Dalc_2 và famsup độc lập

\(H_1\): Dalc_2 và famsup không độc lập

mtht <- table(std$Dalc_2, std$famsup)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 1.288, df = 1, p-value = 0.2564

Nhận xét: Qua kết quả kiểm định cho ta p−value = 0.2564 > 0.05, chưa đủ cơ sở bác bỏ \(H_0\), nghĩa là giữa việc hỗ trợ giáo dục gia đình và mức độ tiêu thụ rượu không có liên quan với nhau.

Biến Dalc_2 và activities

Giả thuyết:

\(H_0\): Dalc_2 và activities độc lập

\(H_1\): Dalc_2 và activities không độc lập

mtht <- table(std$Dalc_2, std$activities)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 1.5485, df = 1, p-value = 0.2134

Nhận xét: Qua kết quả kiểm định cho ta p−value = 0.2134 > 0.05, chưa đủ cơ sở bác bỏ \(H_0\), nghĩa là giữa việc hoạt động ngoại khóa của sinh viên và mức độ tiêu thụ rượu không có liên quan với nhau.

Biến Dalc_2 và internet

Giả thuyết:

\(H_0\): Dalc_2 và internet độc lập

\(H_1\): Dalc_2 và internet không độc lập

mtht <- table(std$Dalc_2, std$internet)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 1.7168e-30, df = 1, p-value = 1

Nhận xét: Qua kết quả kiểm định cho ta p−value = 1 > 0.05, chưa đủ cơ sở bác bỏ \(H_0\), nghĩa là giữa việc sử dụng mạng tại nhà của sinh viên và mức độ tiêu thụ rượu không có liên quan với nhau.

Biến Dalc_2 và romantic

Giả thuyết:

\(H_0\): Dalc_2 và romantic độc lập

\(H_1\): Dalc_2 và sex romantic độc lập

mtht <- table(std$Dalc_2, std$romantic)
chisq.test(mtht)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  mtht
## X-squared = 0.0047742, df = 1, p-value = 0.9449

Nhận xét: Qua kết quả kiểm định cho ta p−value = 0.9449 > 0.05, chưa đủ cơ sở bác bỏ \(H_0\), nghĩa là giữa mối quan hệ tình cảm của sinh viên và mức độ tiêu thụ rượu không có liên quan với nhau.

Kết luận: Chỉ có biến school (trường học) và sex (giới tính) là có ảnh hưởng tới biến Dalc_2. Tiếp theo, nhóm tiến hành mô tả 2 biến, từ đó đưa ra cái nhìn khái quát hơn về mức độ ảnh hưởng lên biến Dalc_2.

3.3 Thống kê mô tả 2 biến

3.3.1 Biến Dalc_2 và school

Lập bảng tần số và bảng tần suất

htnh <- table(std$Dalc_2,std$school)
addmargins(htnh)
##       
##         GP  MS Sum
##   cao   33  11  44
##   thấp 316  35 351
##   Sum  349  46 395
htnh <- prop.table(htnh)
addmargins(htnh)
##       
##                GP         MS        Sum
##   cao  0.08354430 0.02784810 0.11139241
##   thấp 0.80000000 0.08860759 0.88860759
##   Sum  0.88354430 0.11645570 1.00000000

Lập biểu đồ

std %>% 
  group_by(Dalc_2, school) %>% 
  summarise(n = n()) %>% 
  ggplot(aes(x = Dalc_2, y = n, fill = school)) + 
  geom_col(position = 'dodge') + 
  geom_text(aes(label = scales::percent(n / sum(n), accuracy = 0.01), y = n + 0.5), position = position_dodge(width = 0.9), vjust = 0) +
  theme_bw()
## `summarise()` has grouped output by 'Dalc_2'. You can override using the
## `.groups` argument.

Nhận xét: Bảng và biểu đồ trên cho thấy ở trường GP có 33 sinh viên có mức tiêu thụ rượu cao chiếm tỷ lệ 8.35%, còn lại 316 sinh viên có mức tiêu thụ rượu thấp chiếm tỷ lệ 80%; ở trường MS có 11 sinh viên có mức tiêu thụ rượu cao chiếm tỷ lệ 2.78%, còn lại 35 sinh viên có mức tiêu thụ rượu thấp chiếm 8.86%. Tóm lại thì cả hai trường đều có số lượng ít sinh viên có mức tiêu thụ rượu cao, đa số đều tiêu thụ rượu thấp hoặc hầu như là không tiêu thụ.

3.3.2 Biến Dalc_2 và sex

Lập bảng tần số và bảng tần suất

htnh <- table(std$Dalc_2,std$sex)
addmargins(htnh)
##       
##          F   M Sum
##   cao    8  36  44
##   thấp 200 151 351
##   Sum  208 187 395
htnh <- prop.table(htnh)
addmargins(htnh)
##       
##                 F          M        Sum
##   cao  0.02025316 0.09113924 0.11139241
##   thấp 0.50632911 0.38227848 0.88860759
##   Sum  0.52658228 0.47341772 1.00000000

Lập biểu đồ

std %>% 
  group_by(Dalc_2, sex) %>% 
  summarise(n = n()) %>% 
  ggplot(aes(x = Dalc_2, y = n, fill = sex)) + 
  geom_col(position = 'dodge') + 
  geom_text(aes(label = scales::percent(n / sum(n), accuracy = 0.01), y = n + 0.5), position = position_dodge(width = 0.9), vjust = 0) +
  theme_bw()
## `summarise()` has grouped output by 'Dalc_2'. You can override using the
## `.groups` argument.

Nhận xét: Bảng và biểu đồ trên cho thấy ở giới tính nữ có 8 sinh viên có mức tiêu thụ rượu cao chiếm tỷ lệ 2.03%, còn lại 200 sinh viên nữ có mức tiêu thụ rượu thấp chiếm tỷ lệ 50.63%%; ở giới tính nam có 36 sinh viên có mức tiêu thụ rượu cao chiếm tỷ lệ 9.11%, còn lại 151 sinh viên nam có mức tiêu thụ rượu thấp chiếm 38.23%. Tóm lại thì cả hai giới tính đều có số lượng ít sinh viên có mức tiêu thụ rượu cao, đa số đều tiêu thụ rượu thấp hoặc hầu như là không tiêu thụ.

3.4 Relative Risk và khoảng ước lượng cho Relative Risk

3.4.1 Biến Dalc_2 và school

library(DescTools)
## Warning: package 'DescTools' was built under R version 4.3.3
## 
## Attaching package: 'DescTools'
## The following object is masked from 'package:data.table':
## 
##     %like%
table(std$Dalc_2,std$school)
##       
##         GP  MS
##   cao   33  11
##   thấp 316  35
mtht <- table(std$Dalc_2,std$school)
RelRisk(mtht, conf.level = .95)
## rel. risk    lwr.ci    upr.ci 
## 0.8330696 0.6711519 0.9549721

Nhận xét:

  • Relative Risk của Dalc_2 và school là 0.8330696 nhỏ hơn 1. Điều này có nghĩa là sinh viên trường GP có mức độ tiêu thụ rượu cao nhiều hơn so với trường MS (mức độ tiêu thụ rượu cao ở trường GP bằng 0.833 lần so với trường MS).

  • Khoảng tin cậy này cho thấy rằng, với mức độ tin cậy (thường là 95%), mức độ tiêu thụ rượu thực sự nằm trong khoảng từ 0.6711519 đến 0.9549721. Kết quả này cho thấy có ý nghĩa thống kê về mức độ tiêu thụ rượu cao ở cả hai trường.

3.4.2 Biến Dalc_2 và sex

library(DescTools)
table(std$Dalc_2,std$sex)
##       
##          F   M
##   cao    8  36
##   thấp 200 151
mtht <- table(std$Dalc_2,std$sex)
RelRisk(mtht, conf.level = .95)
## rel. risk    lwr.ci    upr.ci 
## 0.3190909 0.1659926 0.5656633

Nhận xét:

  • Relative Risk của Dalc_2 và sex là 0.3190909 nhỏ hơn 1. Điều này có nghĩa là sinh viên nữ có mức độ tiêu thụ rượu cao ít hơn so với sinh viên nam (mức độ tiêu thụ rượu cao ở sinh viên nữ bằng 0.319 lần so với sinh viên nam).

  • Khoảng tin cậy này cho thấy rằng, với mức độ tin cậy (thường là 95%), mức độ tiêu thụ rượu thực sự nằm trong khoảng từ 0.1659926 đến 0.5656633. Kết quả này cho thấy có ý nghĩa thống kê về mức độ tiêu thụ rượu cao ở giới tính nữ và nam.

3.5 Odds ratio và khoảng ước lượng cho Odds ratio

3.5.1 Biến Dalc_2 và school

table(std$Dalc_2,std$school)
##       
##         GP  MS
##   cao   33  11
##   thấp 316  35
ntnh <- table(std$Dalc_2,std$school)
OddsRatio(ntnh,conf.level = .95)
## odds ratio     lwr.ci     upr.ci 
##  0.3322785  0.1543865  0.7151466

Nhận xét:

  • Odds ratio của Dalc_2 và school là 0.3322785 nhỏ hơn 1. Điều này có nghĩa là tỷ lệ chênh của sinh viên tiêu thụ rượu cao tại trường GP so với trường MS là 0.332, tức là sinh viên tại trường GP có tỷ lệ tiêu thụ rượu cao thấp hơn so với sinh viên tại trường MS.

  • Khoảng tin cậy này cho thấy rằng, với mức độ tin cậy (thường là 95%), odds ratio thực sự nằm trong khoảng từ 0.1543865 đến 0.7151466. Kết quả này có ý nghĩa thống kê.

3.5.2 Biến Dalc_2 và sex

table(std$Dalc_2,std$sex)
##       
##          F   M
##   cao    8  36
##   thấp 200 151
ntnh <- table(std$Dalc_2,std$sex)
OddsRatio(ntnh,conf.level = .95)
## odds ratio     lwr.ci     upr.ci 
## 0.16777778 0.07578856 0.37141995

Nhận xét:

  • Odds ratio của Dalc_2 và sex là 0.16777778 nhỏ hơn 1. Điều này có nghĩa là tỷ lệ chênh của sinh viên tiêu thụ rượu cao là nữ so với nam là 0.167, tức là sinh viên nữ có tỷ lệ tiêu thụ rượu cao thấp hơn so với sinh viên nam.

  • Khoảng tin cậy này cho thấy rằng, với mức độ tin cậy (thường là 95%), odds ratio thực sự nằm trong khoảng từ 0.07578856 đến 0.37141995. Kết quả này có ý nghĩa thống kê.

3.6 Khoảng ước lượng tỷ lệ

library(tidyverse)
tn <- std %>% select(Dalc_2, school, sex)
tn <- tn %>% mutate(Dalc_c = if_else(Dalc_2 =="cao", 1, 0))
print(tn)
##     Dalc_2 school sex Dalc_c
## 1     thấp     GP   F      0
## 2     thấp     GP   F      0
## 3     thấp     GP   F      0
## 4     thấp     GP   F      0
## 5     thấp     GP   F      0
## 6     thấp     GP   M      0
## 7     thấp     GP   M      0
## 8     thấp     GP   F      0
## 9     thấp     GP   M      0
## 10    thấp     GP   M      0
## 11    thấp     GP   F      0
## 12    thấp     GP   F      0
## 13    thấp     GP   M      0
## 14    thấp     GP   M      0
## 15    thấp     GP   M      0
## 16    thấp     GP   F      0
## 17    thấp     GP   F      0
## 18    thấp     GP   F      0
## 19    thấp     GP   M      0
## 20    thấp     GP   M      0
## 21    thấp     GP   M      0
## 22    thấp     GP   M      0
## 23    thấp     GP   M      0
## 24    thấp     GP   M      0
## 25    thấp     GP   F      0
## 26    thấp     GP   F      0
## 27    thấp     GP   M      0
## 28    thấp     GP   M      0
## 29    thấp     GP   M      0
## 30     cao     GP   M      1
## 31     cao     GP   M      1
## 32    thấp     GP   M      0
## 33    thấp     GP   M      0
## 34    thấp     GP   M      0
## 35    thấp     GP   M      0
## 36    thấp     GP   F      0
## 37    thấp     GP   M      0
## 38    thấp     GP   M      0
## 39    thấp     GP   F      0
## 40    thấp     GP   F      0
## 41    thấp     GP   F      0
## 42    thấp     GP   M      0
## 43    thấp     GP   M      0
## 44    thấp     GP   M      0
## 45    thấp     GP   F      0
## 46    thấp     GP   F      0
## 47    thấp     GP   F      0
## 48    thấp     GP   M      0
## 49    thấp     GP   M      0
## 50    thấp     GP   F      0
## 51    thấp     GP   F      0
## 52    thấp     GP   F      0
## 53     cao     GP   M      1
## 54    thấp     GP   F      0
## 55     cao     GP   F      1
## 56    thấp     GP   F      0
## 57    thấp     GP   F      0
## 58    thấp     GP   M      0
## 59    thấp     GP   M      0
## 60    thấp     GP   F      0
## 61    thấp     GP   F      0
## 62     cao     GP   F      1
## 63    thấp     GP   F      0
## 64    thấp     GP   F      0
## 65    thấp     GP   F      0
## 66    thấp     GP   F      0
## 67     cao     GP   M      1
## 68    thấp     GP   F      0
## 69    thấp     GP   F      0
## 70    thấp     GP   F      0
## 71    thấp     GP   M      0
## 72    thấp     GP   M      0
## 73    thấp     GP   F      0
## 74    thấp     GP   M      0
## 75    thấp     GP   F      0
## 76    thấp     GP   M      0
## 77    thấp     GP   M      0
## 78    thấp     GP   F      0
## 79    thấp     GP   M      0
## 80    thấp     GP   F      0
## 81    thấp     GP   M      0
## 82    thấp     GP   M      0
## 83    thấp     GP   F      0
## 84    thấp     GP   M      0
## 85    thấp     GP   F      0
## 86    thấp     GP   F      0
## 87    thấp     GP   F      0
## 88    thấp     GP   F      0
## 89    thấp     GP   M      0
## 90     cao     GP   M      1
## 91    thấp     GP   F      0
## 92    thấp     GP   F      0
## 93    thấp     GP   F      0
## 94    thấp     GP   F      0
## 95    thấp     GP   M      0
## 96    thấp     GP   F      0
## 97    thấp     GP   M      0
## 98    thấp     GP   F      0
## 99    thấp     GP   F      0
## 100   thấp     GP   F      0
## 101    cao     GP   M      1
## 102   thấp     GP   M      0
## 103   thấp     GP   M      0
## 104   thấp     GP   F      0
## 105   thấp     GP   M      0
## 106   thấp     GP   F      0
## 107   thấp     GP   F      0
## 108   thấp     GP   M      0
## 109    cao     GP   M      1
## 110   thấp     GP   F      0
## 111   thấp     GP   M      0
## 112   thấp     GP   F      0
## 113   thấp     GP   F      0
## 114   thấp     GP   M      0
## 115   thấp     GP   M      0
## 116   thấp     GP   M      0
## 117   thấp     GP   M      0
## 118   thấp     GP   M      0
## 119   thấp     GP   M      0
## 120   thấp     GP   M      0
## 121   thấp     GP   F      0
## 122   thấp     GP   M      0
## 123   thấp     GP   F      0
## 124   thấp     GP   M      0
## 125   thấp     GP   F      0
## 126    cao     GP   M      1
## 127   thấp     GP   F      0
## 128   thấp     GP   F      0
## 129   thấp     GP   M      0
## 130   thấp     GP   M      0
## 131   thấp     GP   F      0
## 132   thấp     GP   F      0
## 133   thấp     GP   F      0
## 134   thấp     GP   F      0
## 135   thấp     GP   M      0
## 136   thấp     GP   F      0
## 137   thấp     GP   M      0
## 138   thấp     GP   F      0
## 139   thấp     GP   M      0
## 140   thấp     GP   F      0
## 141   thấp     GP   M      0
## 142   thấp     GP   M      0
## 143   thấp     GP   F      0
## 144    cao     GP   F      1
## 145   thấp     GP   M      0
## 146   thấp     GP   F      0
## 147   thấp     GP   F      0
## 148   thấp     GP   F      0
## 149   thấp     GP   M      0
## 150   thấp     GP   M      0
## 151   thấp     GP   M      0
## 152    cao     GP   M      1
## 153   thấp     GP   F      0
## 154   thấp     GP   M      0
## 155   thấp     GP   F      0
## 156   thấp     GP   M      0
## 157    cao     GP   M      1
## 158   thấp     GP   F      0
## 159   thấp     GP   M      0
## 160    cao     GP   M      1
## 161   thấp     GP   M      0
## 162   thấp     GP   M      0
## 163   thấp     GP   M      0
## 164   thấp     GP   M      0
## 165   thấp     GP   M      0
## 166   thấp     GP   M      0
## 167   thấp     GP   M      0
## 168   thấp     GP   F      0
## 169   thấp     GP   F      0
## 170   thấp     GP   F      0
## 171   thấp     GP   M      0
## 172   thấp     GP   M      0
## 173   thấp     GP   M      0
## 174   thấp     GP   F      0
## 175   thấp     GP   F      0
## 176    cao     GP   M      1
## 177   thấp     GP   F      0
## 178   thấp     GP   M      0
## 179    cao     GP   M      1
## 180   thấp     GP   M      0
## 181   thấp     GP   M      0
## 182   thấp     GP   M      0
## 183   thấp     GP   F      0
## 184   thấp     GP   F      0
## 185   thấp     GP   F      0
## 186   thấp     GP   M      0
## 187   thấp     GP   M      0
## 188   thấp     GP   M      0
## 189   thấp     GP   F      0
## 190   thấp     GP   M      0
## 191   thấp     GP   F      0
## 192   thấp     GP   F      0
## 193    cao     GP   M      1
## 194    cao     GP   M      1
## 195   thấp     GP   M      0
## 196   thấp     GP   F      0
## 197   thấp     GP   M      0
## 198    cao     GP   M      1
## 199   thấp     GP   F      0
## 200   thấp     GP   F      0
## 201   thấp     GP   F      0
## 202   thấp     GP   F      0
## 203   thấp     GP   F      0
## 204   thấp     GP   F      0
## 205   thấp     GP   F      0
## 206    cao     GP   F      1
## 207   thấp     GP   F      0
## 208   thấp     GP   F      0
## 209   thấp     GP   F      0
## 210   thấp     GP   F      0
## 211   thấp     GP   F      0
## 212    cao     GP   M      1
## 213   thấp     GP   F      0
## 214   thấp     GP   M      0
## 215   thấp     GP   F      0
## 216   thấp     GP   F      0
## 217   thấp     GP   F      0
## 218   thấp     GP   M      0
## 219   thấp     GP   F      0
## 220   thấp     GP   F      0
## 221   thấp     GP   F      0
## 222   thấp     GP   F      0
## 223   thấp     GP   F      0
## 224    cao     GP   M      1
## 225   thấp     GP   F      0
## 226   thấp     GP   F      0
## 227   thấp     GP   F      0
## 228   thấp     GP   M      0
## 229    cao     GP   M      1
## 230   thấp     GP   F      0
## 231   thấp     GP   F      0
## 232   thấp     GP   M      0
## 233   thấp     GP   M      0
## 234   thấp     GP   M      0
## 235   thấp     GP   M      0
## 236   thấp     GP   M      0
## 237    cao     GP   M      1
## 238   thấp     GP   F      0
## 239   thấp     GP   F      0
## 240    cao     GP   M      1
## 241   thấp     GP   M      0
## 242   thấp     GP   M      0
## 243   thấp     GP   M      0
## 244   thấp     GP   M      0
## 245   thấp     GP   F      0
## 246   thấp     GP   M      0
## 247   thấp     GP   M      0
## 248    cao     GP   M      1
## 249   thấp     GP   M      0
## 250   thấp     GP   M      0
## 251   thấp     GP   M      0
## 252   thấp     GP   M      0
## 253   thấp     GP   M      0
## 254   thấp     GP   M      0
## 255   thấp     GP   M      0
## 256   thấp     GP   M      0
## 257   thấp     GP   F      0
## 258   thấp     GP   M      0
## 259   thấp     GP   M      0
## 260   thấp     GP   F      0
## 261   thấp     GP   F      0
## 262   thấp     GP   M      0
## 263   thấp     GP   M      0
## 264   thấp     GP   F      0
## 265   thấp     GP   F      0
## 266    cao     GP   M      1
## 267    cao     GP   M      1
## 268   thấp     GP   F      0
## 269   thấp     GP   M      0
## 270   thấp     GP   F      0
## 271    cao     GP   F      1
## 272   thấp     GP   F      0
## 273   thấp     GP   F      0
## 274   thấp     GP   M      0
## 275   thấp     GP   F      0
## 276   thấp     GP   F      0
## 277   thấp     GP   F      0
## 278   thấp     GP   M      0
## 279   thấp     GP   F      0
## 280   thấp     GP   M      0
## 281   thấp     GP   M      0
## 282    cao     GP   M      1
## 283   thấp     GP   F      0
## 284   thấp     GP   F      0
## 285   thấp     GP   F      0
## 286   thấp     GP   M      0
## 287   thấp     GP   F      0
## 288   thấp     GP   F      0
## 289   thấp     GP   M      0
## 290   thấp     GP   M      0
## 291   thấp     GP   M      0
## 292   thấp     GP   F      0
## 293   thấp     GP   F      0
## 294   thấp     GP   F      0
## 295   thấp     GP   M      0
## 296   thấp     GP   M      0
## 297   thấp     GP   F      0
## 298   thấp     GP   F      0
## 299   thấp     GP   F      0
## 300   thấp     GP   M      0
## 301   thấp     GP   F      0
## 302   thấp     GP   M      0
## 303   thấp     GP   F      0
## 304   thấp     GP   F      0
## 305   thấp     GP   M      0
## 306   thấp     GP   F      0
## 307   thấp     GP   M      0
## 308   thấp     GP   M      0
## 309   thấp     GP   M      0
## 310   thấp     GP   F      0
## 311   thấp     GP   F      0
## 312   thấp     GP   F      0
## 313   thấp     GP   M      0
## 314   thấp     GP   F      0
## 315   thấp     GP   F      0
## 316   thấp     GP   F      0
## 317   thấp     GP   F      0
## 318   thấp     GP   F      0
## 319   thấp     GP   F      0
## 320    cao     GP   F      1
## 321   thấp     GP   F      0
## 322   thấp     GP   F      0
## 323   thấp     GP   F      0
## 324   thấp     GP   F      0
## 325   thấp     GP   F      0
## 326   thấp     GP   M      0
## 327    cao     GP   M      1
## 328    cao     GP   M      1
## 329   thấp     GP   F      0
## 330   thấp     GP   F      0
## 331   thấp     GP   M      0
## 332   thấp     GP   F      0
## 333   thấp     GP   F      0
## 334   thấp     GP   F      0
## 335   thấp     GP   F      0
## 336   thấp     GP   F      0
## 337   thấp     GP   F      0
## 338   thấp     GP   F      0
## 339   thấp     GP   F      0
## 340   thấp     GP   F      0
## 341   thấp     GP   F      0
## 342   thấp     GP   M      0
## 343   thấp     GP   M      0
## 344   thấp     GP   F      0
## 345   thấp     GP   F      0
## 346   thấp     GP   F      0
## 347   thấp     GP   M      0
## 348   thấp     GP   M      0
## 349   thấp     GP   F      0
## 350    cao     MS   M      1
## 351    cao     MS   M      1
## 352   thấp     MS   M      0
## 353   thấp     MS   M      0
## 354    cao     MS   M      1
## 355   thấp     MS   M      0
## 356   thấp     MS   F      0
## 357   thấp     MS   F      0
## 358   thấp     MS   F      0
## 359   thấp     MS   M      0
## 360   thấp     MS   F      0
## 361   thấp     MS   F      0
## 362   thấp     MS   M      0
## 363   thấp     MS   F      0
## 364   thấp     MS   F      0
## 365   thấp     MS   F      0
## 366   thấp     MS   M      0
## 367   thấp     MS   M      0
## 368   thấp     MS   F      0
## 369   thấp     MS   F      0
## 370    cao     MS   F      1
## 371   thấp     MS   F      0
## 372   thấp     MS   M      0
## 373   thấp     MS   F      0
## 374   thấp     MS   F      0
## 375   thấp     MS   F      0
## 376   thấp     MS   F      0
## 377   thấp     MS   F      0
## 378    cao     MS   F      1
## 379   thấp     MS   F      0
## 380   thấp     MS   F      0
## 381   thấp     MS   M      0
## 382   thấp     MS   M      0
## 383   thấp     MS   M      0
## 384   thấp     MS   M      0
## 385    cao     MS   M      1
## 386   thấp     MS   F      0
## 387   thấp     MS   F      0
## 388   thấp     MS   F      0
## 389   thấp     MS   F      0
## 390   thấp     MS   F      0
## 391    cao     MS   M      1
## 392    cao     MS   M      1
## 393    cao     MS   M      1
## 394    cao     MS   M      1
## 395    cao     MS   M      1

3.6.1 Ước lượng tỷ lệ cho biến school

Nhóm trường GP

GP <- table(tn[tn$school == "GP",] $Dalc_c)
GP
## 
##   0   1 
## 316  33
prop.test(GP["1"],sum(GP), p = 0.5)
## 
##  1-sample proportions test with continuity correction
## 
## data:  GP["1"] out of sum(GP), null probability 0.5
## X-squared = 227.86, df = 1, p-value < 2.2e-16
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
##  0.06690885 0.13143677
## sample estimates:
##          p 
## 0.09455587

Nhận xét: Tỷ lệ cho thấy mức độ tiêu thụ rượu cao trong nhóm trường GP khoảng 9.45%. Khoảng ước lượng tỷ lệ với độ tin cậy 95% là 6.69% đến 13.14%.

Nhóm trường MS

MS <- table(tn[tn$school == "MS",] $Dalc_c)
MS
## 
##  0  1 
## 35 11
prop.test(MS["1"],sum(MS), p = 0.5)
## 
##  1-sample proportions test with continuity correction
## 
## data:  MS["1"] out of sum(MS), null probability 0.5
## X-squared = 11.5, df = 1, p-value = 0.000696
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
##  0.1308166 0.3910163
## sample estimates:
##         p 
## 0.2391304

Nhận xét: Tỷ lệ cho thấy mức độ tiêu thụ rượu cao trong nhóm trường MS khoảng 23.91%. Khoảng ước lượng tỷ lệ với độ tin cậy 95% là 13.08% đến 39.1%.

3.6.2 Ước lượng tỷ lệ cho biến sex

Nhóm giới tính nam

M <- table(tn[tn$sex == "M",] $Dalc_c)
M
## 
##   0   1 
## 151  36
prop.test(M["1"],sum(M), p = 0.5)
## 
##  1-sample proportions test with continuity correction
## 
## data:  M["1"] out of sum(M), null probability 0.5
## X-squared = 69.497, df = 1, p-value < 2.2e-16
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
##  0.1400932 0.2578887
## sample estimates:
##         p 
## 0.1925134

Nhận xét: Tỷ lệ cho thấy mức độ tiêu thụ rượu cao trong nhóm giới tính nam khoảng 19.25%. Khoảng ước lượng tỷ lệ với độ tin cậy 95% là 14% đến 25.79%.

Nhóm giới tính nữ

F <- table(tn[tn$sex == "F",] $Dalc_c)
F
## 
##   0   1 
## 200   8
prop.test(F["1"],sum(F), p = 0.5)
## 
##  1-sample proportions test with continuity correction
## 
## data:  F["1"] out of sum(F), null probability 0.5
## X-squared = 175.39, df = 1, p-value < 2.2e-16
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
##  0.01799314 0.07712098
## sample estimates:
##          p 
## 0.03846154

Nhận xét: Tỷ lệ cho thấy mức độ tiêu thụ rượu cao trong nhóm giới tính nữ khoảng 3.85%. Khoảng ước lượng tỷ lệ với độ tin cậy 95% là 1.8% đến 7.71%.

3.7 Mô hình hồi quy đơn

3.7.1 Mô hình xác suất tuyến tính

Biến school

lpm.ML <- glm(Dalc_c ~ school, data = tn)
summary(lpm.ML)
## 
## Call:
## glm(formula = Dalc_c ~ school, data = tn)
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.09456    0.01670   5.662 2.89e-08 ***
## schoolMS     0.14457    0.04894   2.954  0.00332 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 0.09732626)
## 
##     Null deviance: 39.099  on 394  degrees of freedom
## Residual deviance: 38.249  on 393  degrees of freedom
## AIC: 204.73
## 
## Number of Fisher Scoring iterations: 2

Nhận xét: \[\hat{\pi}=0.09456 + 0.14457 \cdot schoolMS\] Có thể nhận thấy, với giá trị \(\beta_1 = 0.14457\) cho biết xác suất để có mức tiêu thụ rượu cao của sinh viên học trường MS cao hơn sinh viên học trường GP là 0.14457. Từ đó kết luận trường học có ảnh hưởng đến mức độ tiêu thụ rượu cao.

Biến sex

lpm.ML <- glm(Dalc_c ~ sex, data = tn)
summary(lpm.ML)
## 
## Call:
## glm(formula = Dalc_c ~ sex, data = tn)
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.03846    0.02121   1.814   0.0705 .  
## sexM         0.15405    0.03082   4.998 8.73e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 0.09354154)
## 
##     Null deviance: 39.099  on 394  degrees of freedom
## Residual deviance: 36.762  on 393  degrees of freedom
## AIC: 189.06
## 
## Number of Fisher Scoring iterations: 2

Nhận xét: \[\hat{\pi}=0.03846 + 0.15405 \cdot sexM\] Có thể nhận thấy, với \(\beta_1 = 0.15405\) cho biết xác suất để có mức tiêu thụ rượu cao của người có giới tính là nam cao hơn người có giới tính nữ là 0.15405. Từ đó kết luận giới tính có ảnh hưởng đến mức độ tiêu thụ rượu cao.

3.7.2 Mô hình Logit

Biến school

reglogit_school <- glm (Dalc_c ~ school, data = tn, family = binomial(link = 'logit'))
summary(reglogit_school)
## 
## Call:
## glm(formula = Dalc_c ~ school, family = binomial(link = "logit"), 
##     data = tn)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  -2.2592     0.1829 -12.349  < 2e-16 ***
## schoolMS      1.1018     0.3911   2.817  0.00484 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 276.04  on 394  degrees of freedom
## Residual deviance: 269.05  on 393  degrees of freedom
## AIC: 273.05
## 
## Number of Fisher Scoring iterations: 5

Nhận xét: \[ln\left[\frac{\hat\pi}{1-\hat\pi}\right]=-2.2592+ 1.1018 \cdot schoolMS\] Có thể nhận thấy, với giá trị \(\beta_0 = -2.2592\), có nghĩa là \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) của sinh viên học trường GP có mức độ tiêu thụ rượu cao là -2.2592. Với \(\beta_1 = 1.1018\), hệ số này có nghĩa là đối với việc tiêu thụ rượu cao thì chênh lệch \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) của trường Ms và trường GP là 1.1018.

Khoảng tin cậy cho các hệ số trong mô hình được tính như sau:

confint(reglogit_school)
## Waiting for profiling to be done...
##                  2.5 %    97.5 %
## (Intercept) -2.6363966 -1.916932
## schoolMS     0.3007992  1.846827

Nhận xét: Với độ tin cậy 95%, giá trị thực của Intercept nằm trong khoảng từ -2.6363966 đến -1.916932, giá trị thực của tham số schoolMS nằm trong khoảng từ 0.3007992 đến 1.846827, cho thấy biến school có thể có ảnh hưởng đáng kể và có ý nghĩa thống kê trong mô hình. Và với khoảng tin cậy âm cho thấy ở trường GP có sinh viên tiêu thụ rượu cao ít hơn so với trường MS.

Biến sex

reglogit_sex <- glm (Dalc_c ~ sex, data = tn, family = binomial(link = 'logit'))
summary(reglogit_sex)
## 
## Call:
## glm(formula = Dalc_c ~ sex, family = binomial(link = "logit"), 
##     data = tn)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  -3.2189     0.3606  -8.928  < 2e-16 ***
## sexM          1.7851     0.4055   4.403 1.07e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 276.04  on 394  degrees of freedom
## Residual deviance: 251.02  on 393  degrees of freedom
## AIC: 255.02
## 
## Number of Fisher Scoring iterations: 6

Nhận xét: \[ln\left[\frac{\hat\pi}{1-\hat\pi}\right]=-3.2189+ 1.7851 \cdot sexM\] Có thể nhận thấy, với giá trị \(\beta_0 = -3.2189\), có nghĩa là \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) của sinh viên giới tính nữ có mức độ tiêu thụ rượu cao là -3.2189. Với \(\beta_1 = 1.7851\), hệ số này có nghĩa là đối với việc tiêu thụ rượu cao thì chênh lệch \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) của sinh viên giới tính nam và sinh viên giới tính nữ là 1.7851.

Khoảng tin cậy cho các hệ số trong mô hình được tính như sau:

confint(reglogit_sex)
## Waiting for profiling to be done...
##                 2.5 %    97.5 %
## (Intercept) -4.012745 -2.580534
## sexM         1.039153  2.649010

Nhận xét: Với độ tin cậy 95%, giá trị thực của Intercept nằm trong khoảng từ -4.012745 đến -2.580534, giá trị thực của tham số sexM nằm trong khoảng từ 1.039153 đến 2.649010, cho thấy biến sex có thể có ảnh hưởng đáng kể và có ý nghĩa thống kê trong mô hình. Và với khoảng tin cậy âm cho thấy ở giới tính nữ có sinh viên tiêu thụ rượu cao ít hơn so với giới tính nam.

3.7.3 Mô hình Probit

Biến school

regprobit_school <- glm (Dalc_c ~ school, data = tn, family = binomial(link = 'probit'))
summary(regprobit_school)
## 
## Call:
## glm(formula = Dalc_c ~ school, family = binomial(link = "probit"), 
##     data = tn)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept) -1.31321    0.09299 -14.123  < 2e-16 ***
## schoolMS     0.60411    0.22302   2.709  0.00675 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 276.04  on 394  degrees of freedom
## Residual deviance: 269.05  on 393  degrees of freedom
## AIC: 273.05
## 
## Number of Fisher Scoring iterations: 4

Nhận xét: \[\hat\pi= \Phi(-1.31321+0.60411 \cdot schoolMS)\] Có thể nhận thấy, với giá trị \(\beta_0 = -1.31321\), có nghĩa là xác suất để sinh viên học trường GP có mức tiêu thụ rượu cao là \(\Phi(-1.31321)\). Với \(\beta_1 = 0.60411\), hệ số này có nghĩa là đối với trường MS, xác suất để sinh viên tiêu thụ rượu cao là \(\Phi(0.60411)\).

Khoảng tin cậy cho các hệ số trong mô hình được tính như sau:

confint(regprobit_school)
## Waiting for profiling to be done...
##                  2.5 %    97.5 %
## (Intercept) -1.4998092 -1.134926
## schoolMS     0.1593379  1.035108

Nhận xét: Với độ tin cậy 95%, giá trị thực của Intercept nằm trong khoảng từ -1.4998092 đến -1.134926, giá trị thực của tham số schoolMS nằm trong khoảng từ 0.1593379 đến 1.035108, cho thấy biến school có thể có ảnh hưởng đáng kể và có ý nghĩa thống kê trong mô hình. Và với khoảng tin cậy âm cho thấy ở trường GP có sinh viên tiêu thụ rượu cao ít hơn so với trường MS.

Biến sex

regprobit_sex <- glm (Dalc_c ~ sex, data = tn, family = binomial(link = 'probit'))
summary(regprobit_sex)
## 
## Call:
## glm(formula = Dalc_c ~ sex, family = binomial(link = "probit"), 
##     data = tn)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  -1.7688     0.1597 -11.073  < 2e-16 ***
## sexM          0.9002     0.1914   4.703 2.56e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 276.04  on 394  degrees of freedom
## Residual deviance: 251.02  on 393  degrees of freedom
## AIC: 255.02
## 
## Number of Fisher Scoring iterations: 5

Nhận xét: \[\hat\pi= \Phi(-1.7688+ 0.9002 \cdot sexM)\] Có thể nhận thấy, với giá trị \(\beta_0 = -1.7688\), có nghĩa là xác suất để sinh viên nữ có mức tiêu thụ rượu cao là \(\Phi(-1.7688)\). Với \(\beta_1 = 0.9002\), hệ số này có nghĩa là đối với giới tính nam, xác suất để sinh viên tiêu thụ rượu cao là \(\Phi(0.9002)\).

Khoảng tin cậy cho các hệ số trong mô hình được tính như sau:

confint(regprobit_sex)
## Waiting for profiling to be done...
##                  2.5 %    97.5 %
## (Intercept) -2.1023322 -1.472758
## sexM         0.5356466  1.288952

Nhận xét: Với độ tin cậy 95%, giá trị thực của Intercept nằm trong khoảng từ -2.1023322 đến -1.472758, giá trị thực của tham số sexM nằm trong khoảng từ 0.5356466 đến 1.288952, cho thấy biến sex có thể có ảnh hưởng đáng kể và có ý nghĩa thống kê trong mô hình. Và với khoảng tin cậy âm cho thấy ở giới tính nữ có sinh viên tiêu thụ rượu cao ít hơn so với giới tính nam.

3.8 Mô hình hồi quy bội

3.8.1 Mô hình xác suất tuyến tính

mm <-glm(Dalc_c ~ school + sex, data = tn)
summary(mm)
## 
## Call:
## glm(formula = Dalc_c ~ school + sex, data = tn)
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  0.02073    0.02174   0.954  0.34091    
## schoolMS     0.14754    0.04746   3.109  0.00201 ** 
## sexM         0.15522    0.03049   5.091 5.54e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for gaussian family taken to be 0.09152349)
## 
##     Null deviance: 39.099  on 394  degrees of freedom
## Residual deviance: 35.877  on 392  degrees of freedom
## AIC: 181.44
## 
## Number of Fisher Scoring iterations: 2

Nhận xét: Từ bảng kết quả ta có hàm hồi quy: \[\hat\pi=0.02073 +0.14754 \cdot schoolMS +0.15522 \cdot sexM \] Hệ số \(\beta_1=0.14754\) thể hiện chênh lệch mức tiêu thụ rượu cao giữa sinh viên trường MS so với sinh viên trường GP, trong điều kiện giới tính không đổi. Nếu sinh viênh học tại trường MS thay vì trường GP, mức tiêu thụ rượu hàng ngày dự đoán sẽ tăng thêm 0.14754, vì vậy sinh viên trường MS tiêu thụ nhiều rượu hơn so với sinh viên trường GP. Hệ số \(\beta_1= 0.15522\) thể hiện chênh lệch mức tiêu thụ rượu cao giữa sinh viên nam và sinh viên nữ, trong điều kiện trường học không đổi. Nếu sinh viên là nam thay vì nữ, mức tiêu thụ rượu hàng ngày dự đoán sẽ tăng thêm 0.15522. vì vậy sinh viên nam tiêu thụ nhiều rượu hơn so với sinh viên nữ.

3.8.2 Mô hình Logit

mp <- glm(Dalc_c ~ school + sex, data = tn, family = binomial (link="logit"))
summary(mp)
## 
## Call:
## glm(formula = Dalc_c ~ school + sex, family = binomial(link = "logit"), 
##     data = tn)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  -3.4644     0.3828  -9.051  < 2e-16 ***
## schoolMS      1.2437     0.4182   2.974  0.00294 ** 
## sexM          1.8455     0.4118   4.482 7.41e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 276.04  on 394  degrees of freedom
## Residual deviance: 243.04  on 392  degrees of freedom
## AIC: 249.04
## 
## Number of Fisher Scoring iterations: 6

Nhận xét: Ta có mô hình logit: \[ln\left[\frac{\hat\pi}{1-\hat\pi}\right]=-3.4644 +1.2437 \cdot schoolMS +1.8455 \cdot sexM\] Hệ số \(\beta_0=-3.4644\) cho thấy chênh lệch \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) mức tiêu thụ rượu trong nhóm tham chiếu (học trường FP và giới tính nữ) là -3.4644. Hệ số \(\beta_1=1.2437\) cho thấy chênh lệch \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) sinh viên ở trường MS có mức độ tiêu thụ rượu cao nhiều hơn so với sinh viên trường GP là 1.2437. Hệ số \(\beta_2=1.8455\) cho thấy chênh lệch \(ln\left[\frac{\hat\pi}{1-\hat\pi}\right]\) có mức tiêu thụ rượu cao giữa giới tính nam và giới tính nữ là 1.8455.

3.8.3 Mô hình Probit

mt <- glm(Dalc_c ~ school + sex, data = tn, family=binomial(link="probit"))
summary(mt)
## 
## Call:
## glm(formula = Dalc_c ~ school + sex, family = binomial(link = "probit"), 
##     data = tn)
## 
## Coefficients:
##             Estimate Std. Error z value Pr(>|z|)    
## (Intercept)  -1.8909     0.1724 -10.967  < 2e-16 ***
## schoolMS      0.6702     0.2361   2.838  0.00453 ** 
## sexM          0.9274     0.1959   4.734  2.2e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 276.04  on 394  degrees of freedom
## Residual deviance: 243.40  on 392  degrees of freedom
## AIC: 249.4
## 
## Number of Fisher Scoring iterations: 5

Nhận xét: Ta có hàm Probit: \[\hat\pi= \Phi(-1.8909+ 0.6702 \cdot schoolMS +0.9274 \cdot sexM)\] Hệ số \(\beta_0=-1.8909\) thể hiện xác suất để sinh viên nữ học trường GP là \(\Phi(-1.8909)\). Hệ số \(\beta_1=0.6702\) thể hiện xác suất sinh viên học ở trường MS có mức tiêu thụ rượu cao hơn so với sinh viên học ở trường GP là \(\Phi(0.6702)\). Hệ số \(\beta_2=0.9279\) thể hiện xác suất sinh viên nam có mức tiêu thụ rượu cao hơn so với sinh viên nữ là \(\Phi(0.9279)\).

3.9 Đánh giá mô hình hồi quy bội

3.9.1 Chỉ số AIC

AIC(mm)
## [1] 181.4419
AIC(mp)
## [1] 249.0359
AIC(mt)
## [1] 249.3972

Nhận xét: Mô hình Logit và Probit đều không tốt bằng mô hình xác suất tuyến tính trong việc giải thích mối quan hệ giữa các yếu tố ảnh hưởng đến mức độ tiêu thụ rượu cao của sinh viên. Vì chỉ số AIC của hai mô hình này cao hơn chỉ số AIC của mô hình xác suất tuyến tính nên mô hình xác suất tuyến tính là mô hình tốt hơn.

3.9.2 Hệ số Brier Score

Chỉ số Brier Score được sử dụng để đo lường độ chính xác của các dự đoán xác suất. Nó tính toán độ lệch bình phương giữa dự đoán xác suất và giá trị thực tế. Một giá trị Brier Score thấp cho thấy mô hình dự đoán tốt hơn. Vì thế sẽ tính và so sánh giá trị này ở hai mô hình hồi quy logit và probit.

library(DescTools)
BrierScore(mp)
## [1] 0.08965676
BrierScore(mt)
## [1] 0.0897864

Nhận xét: Kết quả bên trên cho thấy Brier Score cho logit và probit đều gần bằng nhau là 0.08965676 và 0.0897864. Điều này có nghĩa là cả hai mô hình đều có hiệu suất tương đương khi dự đoán xác suất cho biến mục tiêu. Brier Score khá thấp (gần bằng 0), cho thấy rằng cả hai mô hình đều dự đoán khá tốt và không sai lệch nhiều so với giá trị thực tế.

3.10 Kết luận

Trong bài tiểu luận này, chúng tôi đã thực hiện một phân tích sâu rộng và chi tiết trên bộ dữ liệu bao gồm 9 biến với 395 quan sát. Chúng tôi đã chọn biến định tính “Dalc” làm biến phụ thuộc và tiến hành phân tích thống kê mô tả cho từng biến độc lập khác để có cái nhìn toàn diện hơn về bộ dữ liệu. Việc này giúp chúng tôi hiểu rõ hơn về đặc điểm của từng biến và mối quan hệ giữa chúng, tạo tiền đề cho các phân tích sâu hơn.

Đầu tiên, chúng tôi thực hiện thống kê mô tả để hiểu rõ phân bố của các biến độc lập. Điều này cung cấp cái nhìn tổng quan về cách mà các yếu tố như giới tính, nơi ở, trường học, và các yếu tố khác phân bổ trong dữ liệu. Chúng tôi đã phân tích biến phụ thuộc “Dalc” với các biến định tính khác để kiểm tra giả thiết rằng các yếu tố này có thể ảnh hưởng đáng kể đến mức độ tiêu thụ rượu của sinh viên hay không.

Sau đó, chúng tôi tiến hành các phân tích định lượng chuyên sâu hơn, sử dụng mô hình hồi quy xác suất tuyến tính, logit và probit để xác định mức độ ảnh hưởng của từng biến độc lập đến biến phụ thuộc “Dalc”. Kết quả phân tích cho thấy rằng có 2 biến độc lập chính, bao gồm sex (giới tính) và school (trường học), có ảnh hưởng đáng kể đến mức độ tiêu thụ rượu của sinh viên. Sự tác động này được xác định qua các tiêu chí như AIC, và Brier Score, cho thấy rằng mô hình hồi quy xác suất tuyến tính là phương pháp tối ưu để phân tích dữ liệu này.

Phân tích của chúng tôi không chỉ cung cấp cái nhìn sâu sắc về mối quan hệ giữa các yếu tố định tính và mức tiêu thụ rượu mà còn có những ứng dụng thực tiễn quan trọng. Các phát hiện này có thể giúp các các bậc phụ huynh và nhà trường quản lý con cái, sinh viên của mình thật tốt, tránh xảy ra những sự cố không mong muốn.

LS0tDQp0aXRsZTogIlRJ4buCVSBMVeG6rE4gTcOUTiBQSMOCTiBUw41DSCBE4buuIExJ4buGVSDEkOG7ik5IIFTDjU5IIg0Kb3V0cHV0Og0KICBodG1sX2RvY3VtZW50Og0KICAgIHRvYzogVFJVRQ0KICAgIHRvY19mbG9hdDogVFJVRQ0KICAgIGRmX3ByaW50OiBwYWdlZA0KICAgIGNvZGVfZG93bmxvYWQ6IHRydWUNCiAgICBjb2RlX2ZvbGRpbmc6IGhpZGUNCiAgcGRmX2RvY3VtZW50Og0KICAgIGV4dHJhX2RlcGVuZGVuY2llczoNCiAgICAgIHZpZXRuYW06IHV0ZjgNCiAgICB0b2M6IHllcw0KICAgIG51bWJlcl9zZWN0aW9uczogeWVzDQogIHdvcmRfZG9jdW1lbnQ6DQogICAgdG9jOiB5ZXMNCiAgICBudW1iZXJfc2VjdGlvbnM6IHllcw0KZ2VvbWV0cnk6DQogICAgICAtIGlubmVyPTNjbQ0KICAgICAgLSBvdXRlcj00Y20NCiAgICAgIC0gdG9wPTNjbQ0KICAgICAgLSBib3R0b209NGNtDQogICAgICAtIGhlYWRzZXA9MjJwdA0KICAgICAgLSBoZWFkaGVpZ2h0PTExcHQNCiAgICAgIC0gZm9vdHNraXA9MzNwdA0KICAgICAgLSBpZ25vcmVoZWFkDQogICAgICAtIGlnbm9yZWZvb3QNCiAgICAgIC0gaGVpZ2h0cm91bmRlZA0KLS0tDQoqKkdWSEQ6IFRoUy4gVHLhuqduIE3huqFuaCBUxrDhu51uZyoqDQoNCioqTmjDs20gc2luaCB2acOqbiB0aOG7sWMgaGnhu4duOioqIA0KDQpfMS4gTWFpIFRo4buLIEhvw6BpIFRoxrDGoW5nIC0gMjEyMTAwMTU0Nl8NCg0KXzIuIE5ndXnhu4VuIFRo4buLIE5n4buNYyBIw6AgLSAyMTIxMDEyNDc0Xw0KDQojIFBIw4JOIFTDjUNIIE5I4buuTkcgWeG6vlUgVOG7kCDhuqJOSCBIxq/hu55ORyDEkOG6vk4gTeG7qEMgxJDhu5ggVEnDilUgVEjhu6QgUsav4buiVSBDQU8gQ+G7pkEgU0lOSCBWScOKTg0KDQpC4buZIGThu68gbGnhu4d1ICJTdHVkZW50IEFsY29ob2wgQ29uc3VtcHRpb24gRURBIiB04burIEthZ2dsZSBjdW5nIGPhuqVwIHRow7RuZyB0aW4gY2hpIHRp4bq/dCB24buBIHZp4buHYyBzaW5oIHZpw6puIHRpw6p1IHRo4bulIHLGsOG7o3UgdOG6oWkgY8OhYyB0csaw4budbmcgxJHhuqFpIGjhu41jIOG7nyBC4buTIMSQw6BvIE5oYS4gQuG7mSBk4buvIGxp4buHdSBuw6B5IGtow7RuZyBjaOG7iSB04bqtcCB0cnVuZyB2w6BvIGjDoG5oIHZpIHRpw6p1IHRo4bulIHLGsOG7o3UgbcOgIGPDsm4gYmFvIGfhu5NtIGPDoWMgdGjDtG5nIHRpbiB24buBIG3DtGkgdHLGsOG7nW5nLCBnaWEgxJHDrG5oIHbDoCB4w6MgaOG7mWkgY+G7p2Egc2luaCB2acOqbi4gTeG7pWMgxJHDrWNoIGPhu6dhIG5naGnDqm4gY+G7qXUgbMOgIMSR4buDIGhp4buDdSByw7UgaMahbiB24buBIG3hu5FpIGxpw6puIGjhu4cgZ2nhu69hIGPDoWMgeeG6v3UgdOG7kSBuw6B5IHbDoCB0aMOzaSBxdWVuIHRpw6p1IHRo4bulIHLGsOG7o3UgY+G7p2Egc2luaCB2acOqbiB0cm9uZyAxIG5nw6B5LiBE4buvIGxp4buHdSDEkcaw4bujYyB0aHUgdGjhuq1wIHThu6sgY8OhYyBjdeG7mWMga2jhuqNvIHPDoXQgdHJvbmcgY+G7mW5nIMSR4buTbmcgaOG7jWMgxJHGsOG7nW5nLCBtYW5nIGzhuqFpIGPGoSBo4buZaSDEkeG7gyBuZ2hpw6puIGPhu6l1IHTDoWMgxJHhu5luZyBj4bunYSBtw7RpIHRyxrDhu51uZyB2w6AgZ2lhIMSRw6xuaCDEkeG7kWkgduG7m2kgaMOgbmggdmkgdGnDqnUgdGjhu6Ugcsaw4bujdSDhu58gxJHhu5kgdHXhu5VpIHNpbmggdmnDqm4uDQoNCiMgTOG7nEkgQ+G6ok0gxqBODQoNCkzhu51pIMSR4bqndSB0acOqbiwgY2jDum5nIGVtIHhpbiBn4butaSBs4budaSBj4bqjbSDGoW4gY2jDom4gdGjDoG5oIMSR4bq/biBHaeG6o25nIHZpw6puIC0gVGhTLiBUcuG6p24gTeG6oW5oIFTGsOG7nW5nLiBUcm9uZyBxdcOhIHRyw6xuaCBo4buNYyB04bqtcCB2w6AgdMOsbSBoaeG7g3UgbcO0biAiUGjDom4gdMOtY2ggZOG7ryBsaeG7h3UgxJHhu4tuaCB0w61uaCIsIGNow7puZyBlbSDEkcOjIG5o4bqtbiDEkcaw4bujYyBz4buxIHF1YW4gdMOibSBnacO6cCDEkeG7oSwgaMaw4bubbmcgZOG6q24gdsOgIGNo4buJIGLhuqNvIHThuq1uIHTDrG5oIGPhu6dhIHRo4bqneS4gVGjhuqd5IMSRw6MgZ2nDunAgY2jDum5nIGVtIHTDrWNoIGzFqXkgdGjDqm0gbmhp4buBdSBraeG6v24gdGjhu6ljIMSR4buDIGPDsyBjw6FpIG5ow6xuIGtow6FpIHF1w6F0IHbDoCBoaeG7g3UgaMahbiB24buBIG3DtG4gbsOgeS4gVOG7qyBuaOG7r25nIGtp4bq/biB0aOG7qWMgxJHGsOG7o2MgdGjhuqd5IHRydXnhu4FuIHThuqNpLCBjaMO6bmcgZW0gZOG6p24gaGnhu4N1IMSRxrDhu6NjIHThuqdtIHF1YW4gdHLhu41uZyBj4bunYSBtw7RuIGjhu41jIG3DoCBi4bqleSBsw6J1IG5heSBjw7JuIG5oaeG7gXUgdGjhuq9jIG3huq9jLiBUaMO0bmcgcXVhIGLDoGkgdGnhu4N1IGx14bqtbiBuw6B5LCBjaMO6bmcgZW0geGluIHRyw6xuaCBiw6B5IG5o4buvbmcgZ8OsIGNow7puZyBlbSDEkcOjIHTDrG0gaGnhu4N1IHbhu4EgbcO0biBo4buNYywgdsOgIGPhu6UgdGjhu4MgbMOgIGNow7puZyBlbSBs4buxYSBjaOG7jW4gxJHhu4EgdMOgaSAiUGjDom4gdMOtY2ggbmjhu69uZyB54bq/dSB04buRIOG6o25oIGjGsOG7n25nIMSR4bq/biBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGPhu6dhIHNpbmggdmnDqm4iLg0KDQpLaeG6v24gdGjhu6ljIGzDoCB2w7QgaOG6oW4gbmjGsG5nIHPhu7EgdGnhur9wIG5o4bqtbiBraeG6v24gdGjhu6ljIGPhu6dhIGLhuqNuIHRow6JuIG3hu5dpIGNow7puZyBlbSBsdcO0biBo4bqhbiBjaOG6vyBt4buZdCBjw6FjaCBuaOG6pXQgxJHhu4tuaC4gRG8gxJHDsywgdHJvbmcgcXXDoSB0csOsbmggaG/DoG4gdGjDoG5oIGLDoGkgdGnhu4N1IGx14bqtbiwgY2jhuq9jIGNo4bqvbiBjaMO6bmcgZW0ga2jDtG5nIHRyw6FuaCBraOG7j2kgbmjhu69uZyB0aGnhur91IHPDs3QsIHbhuq15IG7Dqm4gY2jDum5nIGVtIHLhuqV0IG1vbmcgbmjhuq1uIMSRxrDhu6NjIG5o4buvbmcgxJHDs25nIGfDs3AgxJHhur9uIHThu6sgdGjhuqd5IMSR4buDIGLDoGkgdGnhu4N1IGx14bqtbiBj4bunYSBuaMOzbSDEkcaw4bujYyBob8OgbiB0aGnhu4duIGjGoW4uDQoNCkNow7puZyBlbSBrw61uaCBjaMO6YyB0aOG6p3kgc+G7qWMga2jhu49lLCBo4bqhbmggcGjDumMgdsOgIHRow6BuaCBjw7RuZyB0csOqbiBjb24gxJHGsOG7nW5nIHPhu7EgbmdoaeG7h3AgY+G7p2EgbcOsbmguDQoNCiMgQ0jGr8agTkcgMTogVOG7lE5HIFFVQU4gTkdIScOKTiBD4buoVQ0KDQojIyAxLjEgTMOtIGRvIGNo4buNbiDEkeG7gSB0w6BpDQoNCkhp4buHbiBuYXksIGjDoG5oIHZpIHRpw6p1IHRo4bulIHLGsOG7o3UgbMOgIG3hu5l0IGhp4buHbiB0xrDhu6NuZyBwaOG7lSBiaeG6v24gdHJvbmcgxJHhu51pIHPhu5FuZyBzaW5oIHZpw6puLiBOaGnhu4F1IHNpbmggdmnDqm4gdGhhbSBnaWEgY8OhYyBob+G6oXQgxJHhu5luZyB4w6MgaOG7mWkgbmjGsCB0aeG7h2MgdMO5bmcsIGTDoyBuZ2/huqFpIHbDoCBjw6FjIHPhu7Ega2nhu4duIGPhu6dhIHRyxrDhu51uZyBo4buNYywgbmjhu69uZyBuxqFpIHLGsOG7o3UgdGjGsOG7nW5nIMSRxrDhu6NjIHBo4bulYyB24bulIHbDoCB0acOqdSB0aOG7pS4gTmhp4buBdSBzaW5oIHZpw6puIGtow7RuZyBjaOG7iSB14buRbmcgcsaw4bujdSBtw6AgY8OybiBs4bqhbSBk4bulbmcgbsOzLCB14buRbmcgxJHhur9uIG3hu6ljIHNheSB44buJbiB0aMaw4budbmcgeHV5w6puLiBUw6xuaCB0cuG6oW5nIG7DoHkgxJHhurdjIGJp4buHdCBwaOG7lSBiaeG6v24gdHJvbmcgY8OhYyBk4buLcCBs4buFLCBr4buzIG5naOG7iSB2w6AgY8OhYyBideG7lWkgdGnhu4djIGzhu5tuLiBWaeG7h2MgdeG7kW5nIHLGsOG7o3Ugc2F5IHjhu4luIGPDsyB0aOG7gyBk4bqrbiDEkeG6v24gbeG6pXQga2nhu4NtIHNvw6F0IGjDoG5oIHZpIHbDoCBnw6J5IHJhIG5oaeG7gXUgaOG6rXUgcXXhuqMgdGnDqnUgY+G7sWMgbmjGsCB0YWkgbuG6oW4sIGLhuqFvIGzhu7FjIHbDoCBjw6FjIHbhuqVuIMSR4buBIHbhu4Egc+G7qWMga2jhu49lLiBSxrDhu6N1IGtow7RuZyBjaOG7iSDEkeG7gyBkw7luZyBjaG8gbmjhu69uZyBjdeG7mWMgdnVpIGNoxqFpLCB0aeG7h2MgdMO5bmcsIGdpYW8gbMawdSBi4bqhbiBiw6ggbcOgIHNpbmggdmnDqm4gaGnhu4duIG5heSBjw7JuIGTDuW5nIHLGsOG7o3UgxJHhu4MgZ2nhuqNpIHThu49hIG7hu5dpIGJ14buTbiwgbmjhu69uZyDDoXAgbOG7sWMgdHJvbmcgaOG7jWMgdOG6rXAsIGLhuqFuIGLDqCwgZ2lhIMSRw6xuaCwgdMOsbmggY+G6o20gbsOqbiB2aeG7h2MgdGnDqnUgdGjhu6Ugcsaw4bujdSBj4bunYSBzaW5oIHZpw6puIGhp4buHbiBuYXkgcuG6pXQgxJHDoW5nIGLDoW8gxJHhu5luZy4gUsaw4bujdSBy4bqldCBk4buFIGTDoG5nIMSRxrDhu6NjIHRp4bq/cCBj4bqtbiB2w6Agbmjhu69uZyBjaOG7lyBsxrB1IHRow7RuZyByxrDhu6N1IGtow7RuZyDEkcaw4bujYyBnacOhbSBzw6F0IGNo4bq3dCBjaOG6vSBuw6puIG5nw6B5IGPDoG5nIGzDoG0gZ2lhIHTEg25nIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UuVGjhu7FjIHRy4bqhbmcgdGnDqnUgdGjhu6Ugcsaw4bujdSBj4bunYSBzaW5oIHZpw6puIGhp4buHbiBuYXkgbMOgIG3hu5l0IHbhuqVuIMSR4buBIG5naGnDqm0gdHLhu41uZyBj4bqnbiDEkcaw4bujYyBxdWFuIHTDom0uIFZp4buHYyBuZ2hpw6puIGPhu6l1IHbDoCBoaeG7g3UgcsO1IGjGoW4gduG7gSBow6BuaCB2aSB0acOqdSB0aOG7pSByxrDhu6N1IGPhu6dhIHNpbmggdmnDqm4gdHJvbmcgaGFpIHRyxrDhu51uZyDEkeG6oWkgaOG7jWMg4bufIELhu5MgxJDDoG8gTmhhIHPhur0gZ2nDunAgxJHGsGEgcmEgxJHGsOG7o2MgbeG7mXQgdsOgaSBiaeG7h24gcGjDoXAgZ2nDoW8gZOG7pWMsIHBow7JuZyBuZ+G7q2EgdsOgIGjhu5cgdHLhu6MgdGjDrWNoIGjhu6NwLCBuaOG6sW0gZ2nhuqNtIHRoaeG7g3Ugbmjhu69uZyBo4bqtdSBxdeG6oyB0acOqdSBj4buxYyBuaOG6sW0gYuG6o28gduG7hyBz4bupYyBraOG7j2UgdsOgIHTGsMahbmcgbGFpIGPhu6dhIHNpbmggdmnDqm4uDQoNCiMjIDEuMiBN4bulYyB0acOqdSBuZ2hpw6puIGPhu6l1DQoNCk3hu6VjIHRpw6p1IGPhu6dhIGNow7puZyB0w7RpIGzDoCBwaMOibiB0w61jaCBjw6FjIHnhur91IHThu5Eg4bqjbmggaMaw4bufbmcgxJHhur9uIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY+G7p2Egc2luaCB2acOqbiBsw6AgdGjhuqVwIGhheSBjYW8uIE5naGnDqm4gY+G7qXUgbmjhurFtIHTDrG0gcmEgY8OhYyB0aMO0bmcgdGluIHbDoCDEkcawYSByYSBt4buZdCB2w6BpIGJp4buHbiBwaMOhcCBnacO6cCBnaWEgxJHDrG5oIHbDoCBuaMOgIHRyxrDhu51uZyBxdeG6o24gbMO9IGNvbiBjw6FpLCBzaW5oIHZpw6puIGPhu6dhIG3DrG5oIMSRxrDhu6NjIHThu5F0IGjGoW4uDQoNCiMjIDEuMyDEkOG7kWkgdMaw4bujbmcgdsOgIHBo4bqhbSB2aSBuZ2hpw6puIGPhu6l1DQoNClThuq1wIGThu68gbGnhu4d1IGNo4bupYSB0aMO0bmcgdGluIHThu6sgY3Xhu5ljIGto4bqjbyBzw6F0IHNpbmggdmnDqm4gY+G7p2EgMiB0csaw4budbmcgxJHhuqFpIGjhu41jIOG7nyBC4buTIMSQw6BvIE5oYS4gQuG7mSBk4buvIGxp4buHdSBjaOG7qWEgY8OhYyB0aMO0bmcgdGluIGxpw6puIHF1YW4gxJHhur9uIHNpbmggdmnDqm4gYmFvIGfhu5NtIDM5NSBxdWFuIHPDoXQgdHLDqm4gdOG7lW5nIDkgYmnhur9uLg0KDQojIyAxLjQgUGjGsMahbmcgcGjDoXAgbmdoacOqbiBj4bupdQ0KDQpCw6BpIG5naGnDqm4gY+G7qXUgc+G7rSBk4bulbmcgcGjGsMahbmcgcGjDoXAgdGjhu5FuZyBrw6ogdsOgIGPDoWMgbcO0IGjDrG5oIGjhu5NpIHF1eSDEkeG7gyBwaMOibiB0w61jaCBk4buvIGxp4buHdSB2w6AgY2hvIHRo4bqleSB0w6FjIMSR4buZbmcgY+G7p2EgY8OhYyB54bq/dSB04buRIOG6o25oIGjGsOG7n25nIMSR4bq/biBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGPhu6dhIHNpbmggdmnDqm4uDQoNCiMjIDEuNSBL4bq/dCBj4bqldSBiw6BpIG5naGnDqm4gY+G7qXUNCg0KLSBDaMawxqFuZyAxOiBU4buVbmcgcXVhbiBuZ2hpw6puIGPhu6l1Lg0KDQotIENoxrDGoW5nIDI6IEThu68gbGnhu4d1IG5naGnDqm4gY+G7qXUuDQoNCi0gQ2jGsMahbmcgMzogUGjDom4gdMOtY2ggdsOgIMSRxrBhIHJhIGvhur90IHF14bqjLg0KDQojIENoxrDGoW5nIDI6IEThu64gTEnhu4ZVIE5HSEnDik4gQ+G7qFUNCg0KIyMgMi4xIEdp4bubaSB0aGnhu4d1IGLhu5kgZOG7ryBsaeG7h3UNCg0KQuG7mSBk4buvIGxp4buHdSBiYW8gZ+G7k20gMzk1IHF1YW4gc8OhdCB0csOqbiB04buVbmcgOSBiaeG6v24gduG7gSBzaW5oIHZpw6puIGPhu6dhIDIgdHLGsOG7nW5nIMSR4bqhaSBo4buNYyDhu58gQuG7kyDEkMOgbyBOaGEuIETGsOG7m2kgxJHDonkgbMOgIGLhuqNuZyBjaGkgdGnhur90IHThu6tuZyBiaeG6v24gdHLDqm4gdOG7q25nIHF1YW4gc8OhdCBraMOhYyBuaGF1Lg0KYGBge3J9DQpzdGQgPC0gcmVhZC5jc3YoInN0dWRlbnQtbWF0aC5jc3YiLCBoZWFkZXIgPSBUKQ0KbGlicmFyeShkYXRhLnRhYmxlKQ0KZGF0YS50YWJsZShzdGQpDQpgYGANCg0KIyMgMi4yIE3DtCB04bqjIGPDoWMgYmnhur9uIHRyb25nIGLhu5kgZOG7ryBsaeG7h3UNCg0KLSBzY2hvb2w6IG5nw7RpIHRyxrDhu51uZyBzaW5oIHZpw6puIMSRYW5nIHRoZW8gaOG7jWMgKEdQOiBHYWJyaWVsIFBlcmVpcmE7IE1TOiBNb3VzaW5obyBkYSBTaWx2ZXJpYSkNCg0KLSBzZXg6IGdp4bubaSB0w61uaCBj4bunYSBzaW5oIHZpw6puIChGOiBu4buvOyBNOiBuYW0pDQoNCi0gYWRkcmVzczogbsahaSDhu58gY+G7p2Egc2luaCB2acOqbiAoVTogdGjDoG5oIHRo4buLOyBSOiBuw7RuZyB0aMO0bikNCg0KLSBzY2hvb2xzdXA6IGjhu5cgdHLhu6MgZ2nDoW8gZOG7pWMgYuG7lSBzdW5nICh5ZXM6IGPDszsgbm86IGtow7RuZykNCg0KLSBmYW1zdXA6IGjhu5cgdHLhu6MgZ2nDoW8gZOG7pWMgZ2lhIMSRw6xuaCAoeWVzOiBjw7M7IG5vOiBraMO0bmcpDQoNCi0gYWN0aXZpdGllczogaG/huqF0IMSR4buZbmcgbmdv4bqhaSBraMOzYSAoeWVzOiBjw7M7IG5vOiBraMO0bmcpDQoNCi0gaW50ZXJuZXQ6IHRydXkgY+G6rXAgbeG6oW5nIHThuqFpIG5ow6AgKHllczogY8OzOyBubzoga2jDtG5nKQ0KDQotIHJvbWFudGljOiBt4buRaSBxdWFuIGjhu4cgdMOsbmggY+G6o20gKHllczogY8OzOyBubzoga2jDtG5nKQ0KDQotIERhbGM6IG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgdHJvbmcgMSBuZ8OgeSAoMTogcuG6pXQgdGjhuqVwOyAyOiB0aOG6pXA7IDM6IHRydW5nIGLDrG5oOyA0OiBjYW87IDU6IHLhuqV0IGNhbykNCg0KIyBDaMawxqFuZyAzOiBQSMOCTiBUw41DSCBWw4AgxJDGr0EgUkEgS+G6vlQgUVXhuqINCg0KVHJvbmcgYsOgaSBsdeG6rW4gbsOgeSwgYmnhur9uIHBo4bulIHRodeG7mWMgxJHGsOG7o2MgY2jhu41uIGzDoCBiaeG6v24gRGFsYyAobeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBj4bunYSBzaW5oIHZpw6puIHRyb25nIDEgbmfDoHkpLCBkbyBiaeG6v24gRGFsYyBsw6AgZOG7ryBsaeG7h3UgxJHhu4tuaCBsxrDhu6NuZyB24bubaSBjw6FjIG3hu6ljIMSR4buZIDEsIDIsIDMsIDQsIDUgbsOqbiBuaMOzbSBiaeG6v24gbsOzIHRow6BuaCBk4buvIGxp4buHdSDEkeG7i25oIHTDrW5oIGzDoCBEYWxjXzIgduG7m2kgMiBiaeG7g3UgaGnhu4duIGPhu6UgdGjhu4MgbMOgIHRo4bqlcCB2w6AgY2FvLiDhu54gY8OhYyBt4bupYyDEkeG7mSAxLCAyIHbDoCAzIHPhur0gYmnhur9uIMSR4buVaSB0aMOgbmggYmnhu4N1IGhp4buHbiB0acOqdSB0aOG7pSByxrDhu6N1ICJ0aOG6pXAiLCBjw7JuIG3hu6ljIMSR4buZIDQgdsOgIDUgc+G6vSBiaeG6v24gxJHhu5VpIHRow6BuaCBiaeG7g3UgaGnhu4duIHRpw6p1IHRo4bulIHLGsOG7o3UgImNhbyIgbmjGsCBi4bqjbmcgZMaw4bubaSDEkcOieToNCmBgYHtyfQ0Kc3RkIDwtIHJlYWQuY3N2KCJzdHVkZW50LW1hdGguY3N2IiwgaGVhZGVyID0gVCkNCnN0ZCREYWxjXzIgPC0gaWZlbHNlKHN0ZCREYWxjIDw9IDIsICJ0aOG6pXAiLCAiY2FvIikNCnByaW50KHN0ZCkNCmBgYA0KDQojIyAzLjEgVGjhu5FuZyBrw6ogbcO0IHThuqMgYmnhur9uIHBo4bulIHRodeG7mWMNCg0KXyoqTOG6rXAgYuG6o25nIHThuqduIHPhu5EgdsOgIGLhuqNuZyB04bqnbiBzdeG6pXQqKl8NCmBgYHtyfQ0KdGFibGUoc3RkJERhbGNfMikNCnRhYmxlKHN0ZCREYWxjXzIpL2xlbmd0aChzdGQkRGFsY18yKQ0KYGBgDQoNCl8qKkzhuq1wIGJp4buDdSDEkeG7kyoqXw0KYGBge3J9DQpsaWJyYXJ5KGRwbHlyKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpzdGQgJT4lIGdyb3VwX2J5KERhbGNfMikgJT4lICBzdW1tYXJpc2UobiA9IG4oKSkgJT4lIA0KICAgIGdncGxvdChhZXMoeD1EYWxjXzIseT1uKSkgKyANCiAgICBnZW9tX2NvbChmaWxsID0gIiM4OUNGRjAiKSsNCiAgICBnZW9tX3RleHQoYWVzKGxhYmVsID1uKSx2anVzdCA9IDEsIGNvbG9yID0gIndoaXRlIikrDQogICAgdGhlbWVfYncoKQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIEJp4buDdSDEkeG7kyBj4buZdCB2w6AgYuG6o25nIOG7nyB0csOqbiB0aOG7gyBoaeG7h24gbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBj4bunYSBzaW5oIHZpw6puIHRyb25nIDEgbmfDoHkuIFRoZW8ga2jhuqNvIHPDoXQsIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY+G7p2Egc2luaCB2acOqbiB0cm9uZyAxIG5nw6B5IHbhu5tpIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGNo4buJIGPDsyA0NCBzaW5oIHZpw6puIGNoaeG6v20gdOG7tyBs4buHIDExLjE0JSwgY8OybiBs4bqhaSAzNTEgc2luaCB2acOqbiB24bubaSBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IHRo4bqlcCBjaGnhur9tIHThu7cgbOG7hyA4OC44NiUuIE5oxrAga+G6v3QgcXXhuqMgY2hvIHRo4bqleSwgdOG6oWkgMiBuZ8O0aSB0csaw4budbmcgbsOgeSB0aMOsIHNpbmggdmnDqm4gdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gdHJvbmcgMSBuZ8OgeSBy4bqldCBsw6Agw610LiANCg0KIyMgMy4yIFRo4buRbmcga8OqIHN1eSBkaeG7hW4NCg0KIyMjIDMuMi4xIEtp4buDbSDEkeG7i25oIHTDrW5oIMSR4buZYyBs4bqtcCANCg0KUGjGsMahbmcgcGjDoXAgQ2hpIGLDrG5oIHBoxrDGoW5nDQoNCiQkXGNoaV4yID0gXHN1bV97aSxqfSBcZnJhY3sobl97aWp9IC1caGF0e1xtdX1fe2lqfSleMn17XGhhdHtcbXV9X3tpan19JCQNCg0KVuG7m2kgJG5fe2ksan0kIGzDoCBnacOhIHRy4buLIGPhu6dhIMO0ICRpLGosXGhhdHtcbXV9X3tpan09XGZyYWN7bl97aSt9IFxjZG90IG5feytqfX17bn0kDQoNCl8qKkJp4bq/biBEYWxjXzIgdsOgIHNjaG9vbCoqXw0KDQpHaeG6oyB0aHV54bq/dDoNCg0KJEhfMCQ6IERhbGNfMiB2w6Agc2Nob29sIMSR4buZYyBs4bqtcCANCg0KJEhfMSQ6IERhbGNfMiB2w6Agc2Nob29sIGtow7RuZyDEkeG7mWMgbOG6rXANCmBgYHtyfQ0KbXRodCA8LSB0YWJsZShzdGQkRGFsY18yLCBzdGQkc2Nob29sKQ0KY2hpc3EudGVzdChtdGh0KQ0KYGBgDQpfTmjhuq1uIHjDqXQ6XyBRdWEga+G6v3QgcXXhuqMga2nhu4NtIMSR4buLbmggY2hvIHRo4bqleSBw4oiSdmFsdWUgPSAwLjAwNzM1NiA8IDAuMDUsIGLDoWMgYuG7jyAkSF8wJCwgbmdoxKlhIGzDoCBnaeG7r2Egdmnhu4djIHNpbmggdmnDqm4gaOG7jWMg4bufIHRyxrDhu51uZyBuw6BvIHbDoCBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGzDoCBjw7MgbGnDqm4gcXVhbiB24bubaSBuaGF1Lg0KDQpfKipCaeG6v24gRGFsY18yIHbDoCBzZXgqKl8NCg0KR2nhuqMgdGh1eeG6v3Q6DQoNCiRIXzAkOiBEYWxjXzIgdsOgIHNleCDEkeG7mWMgbOG6rXAgDQoNCiRIXzEkOiBEYWxjXzIgdsOgIHNleCBraMO0bmcgxJHhu5ljIGzhuq1wDQpgYGB7cn0NCm10aHQgPC0gdGFibGUoc3RkJERhbGNfMiwgc3RkJHNleCkNCmNoaXNxLnRlc3QobXRodCkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6XyBRdWEga+G6v3QgcXXhuqMga2nhu4NtIMSR4buLbmggY2hvIHRo4bqleSBw4oiSdmFsdWUgPSAyLjYxOGUtMDYgPCAwLjA1LCBiw6FjIGLhu48gJEhfMCQsIG5naMSpYSBsw6AgZ2nhu69hIGdp4bubaSB0w61uaCBj4bunYSBzaW5oIHZpw6puIHbDoCBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGzDoCBjw7MgbGnDqm4gcXVhbiB24bubaSBuaGF1Lg0KDQpfKipCaeG6v24gRGFsY18yIHbDoCBhZGRyZXNzKipfDQoNCkdp4bqjIHRodXnhur90Og0KDQokSF8wJDogRGFsY18yIHbDoCBhZGRyZXNzIMSR4buZYyBs4bqtcCANCg0KJEhfMSQ6IERhbGNfMiB2w6AgYWRkcmVzcyBraMO0bmcgxJHhu5ljIGzhuq1wDQpgYGB7cn0NCm10aHQgPC0gdGFibGUoc3RkJERhbGNfMiwgc3RkJGFkZHJlc3MpDQpjaGlzcS50ZXN0KG10aHQpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gUXVhIGvhur90IHF14bqjIGtp4buDbSDEkeG7i25oIGNobyB0aOG6pXkgcOKIknZhbHVlID0gMC4wNzEwMSA+IDAuMDUsIGNoxrBhIMSR4bunIGPGoSBz4bufIGLDoWMgYuG7jyAkSF8wJCwgbmdoxKlhIGzDoCBnaeG7r2EgbsahaSDhu58gY+G7p2Egc2luaCB2acOqbiB2w6AgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBraMO0bmcgY8OzIGxpw6puIHF1YW4gduG7m2kgbmhhdS4NCg0KXyoqQmnhur9uIERhbGNfMiB2w6Agc2Nob29sc3VwKipfDQoNCkdp4bqjIHRodXnhur90Og0KDQokSF8wJDogRGFsY18yIHbDoCBzY2hvb2xzdXAgxJHhu5ljIGzhuq1wIA0KDQokSF8xJDogRGFsY18yIHbDoCBzY2hvb2xzdXAga2jDtG5nIMSR4buZYyBs4bqtcA0KYGBge3J9DQptdGh0IDwtIHRhYmxlKHN0ZCREYWxjXzIsIHN0ZCRzY2hvb2xzdXApDQpjaGlzcS50ZXN0KG10aHQpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gUXVhIGvhur90IHF14bqjIGtp4buDbSDEkeG7i25oIGNobyB0aOG6pXkgcOKIknZhbHVlID0gMC41NzMzID4gMC4wNSwgY2jGsGEgxJHhu6cgY8ahIHPhu58gYsOhYyBi4buPICRIXzAkLCBuZ2jEqWEgbMOgIGdp4buvYSB2aeG7h2MgaOG7lyB0cuG7oyBnacOhbyBk4bulYyBi4buVIHN1bmcgY2hvIHNpbmggdmnDqm4gdsOgIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3Uga2jDtG5nIGPDsyBsacOqbiBxdWFuIHbhu5tpIG5oYXUuDQoNCl8qKkJp4bq/biBEYWxjXzIgdsOgIGZhbXN1cCoqXw0KDQpHaeG6oyB0aHV54bq/dDoNCg0KJEhfMCQ6IERhbGNfMiB2w6AgZmFtc3VwIMSR4buZYyBs4bqtcCANCg0KJEhfMSQ6IERhbGNfMiB2w6AgZmFtc3VwIGtow7RuZyDEkeG7mWMgbOG6rXANCmBgYHtyfQ0KbXRodCA8LSB0YWJsZShzdGQkRGFsY18yLCBzdGQkZmFtc3VwKQ0KY2hpc3EudGVzdChtdGh0KQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIFF1YSBr4bq/dCBxdeG6oyBraeG7g20gxJHhu4tuaCBjaG8gdGEgcOKIknZhbHVlID0gMC4yNTY0ID4gMC4wNSwgY2jGsGEgxJHhu6cgY8ahIHPhu58gYsOhYyBi4buPICRIXzAkLCBuZ2jEqWEgbMOgIGdp4buvYSB2aeG7h2MgaOG7lyB0cuG7oyBnacOhbyBk4bulYyBnaWEgxJHDrG5oIHbDoCBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGtow7RuZyBjw7MgbGnDqm4gcXVhbiB24bubaSBuaGF1Lg0KDQpfKipCaeG6v24gRGFsY18yIHbDoCBhY3Rpdml0aWVzKipfDQoNCkdp4bqjIHRodXnhur90Og0KDQokSF8wJDogRGFsY18yIHbDoCBhY3Rpdml0aWVzIMSR4buZYyBs4bqtcCANCg0KJEhfMSQ6IERhbGNfMiB2w6AgYWN0aXZpdGllcyBraMO0bmcgxJHhu5ljIGzhuq1wDQpgYGB7cn0NCm10aHQgPC0gdGFibGUoc3RkJERhbGNfMiwgc3RkJGFjdGl2aXRpZXMpDQpjaGlzcS50ZXN0KG10aHQpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gUXVhIGvhur90IHF14bqjIGtp4buDbSDEkeG7i25oIGNobyB0YSBw4oiSdmFsdWUgPSAwLjIxMzQgPiAwLjA1LCBjaMawYSDEkeG7pyBjxqEgc+G7nyBiw6FjIGLhu48gJEhfMCQsIG5naMSpYSBsw6AgZ2nhu69hIHZp4buHYyBob+G6oXQgxJHhu5luZyBuZ2/huqFpIGtow7NhIGPhu6dhIHNpbmggdmnDqm4gdsOgIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3Uga2jDtG5nIGPDsyBsacOqbiBxdWFuIHbhu5tpIG5oYXUuDQoNCl8qKkJp4bq/biBEYWxjXzIgdsOgIGludGVybmV0KipfDQoNCkdp4bqjIHRodXnhur90Og0KDQokSF8wJDogRGFsY18yIHbDoCBpbnRlcm5ldCDEkeG7mWMgbOG6rXAgDQoNCiRIXzEkOiBEYWxjXzIgdsOgIGludGVybmV0IGtow7RuZyDEkeG7mWMgbOG6rXANCmBgYHtyfQ0KbXRodCA8LSB0YWJsZShzdGQkRGFsY18yLCBzdGQkaW50ZXJuZXQpDQpjaGlzcS50ZXN0KG10aHQpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gUXVhIGvhur90IHF14bqjIGtp4buDbSDEkeG7i25oIGNobyB0YSBw4oiSdmFsdWUgPSAxID4gMC4wNSwgY2jGsGEgxJHhu6cgY8ahIHPhu58gYsOhYyBi4buPICRIXzAkLCBuZ2jEqWEgbMOgIGdp4buvYSB2aeG7h2Mgc+G7rSBk4bulbmcgbeG6oW5nIHThuqFpIG5ow6AgY+G7p2Egc2luaCB2acOqbiB2w6AgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBraMO0bmcgY8OzIGxpw6puIHF1YW4gduG7m2kgbmhhdS4NCg0KXyoqQmnhur9uIERhbGNfMiB2w6Agcm9tYW50aWMqKl8NCg0KR2nhuqMgdGh1eeG6v3Q6DQoNCiRIXzAkOiBEYWxjXzIgdsOgIHJvbWFudGljIMSR4buZYyBs4bqtcCANCg0KJEhfMSQ6IERhbGNfMiB2w6Agc2V4IHJvbWFudGljIMSR4buZYyBs4bqtcA0KYGBge3J9DQptdGh0IDwtIHRhYmxlKHN0ZCREYWxjXzIsIHN0ZCRyb21hbnRpYykNCmNoaXNxLnRlc3QobXRodCkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6XyBRdWEga+G6v3QgcXXhuqMga2nhu4NtIMSR4buLbmggY2hvIHRhIHDiiJJ2YWx1ZSA9IDAuOTQ0OSA+IDAuMDUsIGNoxrBhIMSR4bunIGPGoSBz4bufIGLDoWMgYuG7jyAkSF8wJCwgbmdoxKlhIGzDoCBnaeG7r2EgbeG7kWkgcXVhbiBo4buHIHTDrG5oIGPhuqNtIGPhu6dhIHNpbmggdmnDqm4gdsOgIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3Uga2jDtG5nIGPDsyBsacOqbiBxdWFuIHbhu5tpIG5oYXUuDQoNCkvhur90IGx14bqtbjogQ2jhu4kgY8OzIGJp4bq/biBzY2hvb2wgKHRyxrDhu51uZyBo4buNYykgdsOgIHNleCAoZ2nhu5tpIHTDrW5oKSBsw6AgY8OzIOG6o25oIGjGsOG7n25nIHThu5tpIGJp4bq/biBEYWxjXzIuIFRp4bq/cCB0aGVvLCBuaMOzbSB0aeG6v24gaMOgbmggbcO0IHThuqMgMiBiaeG6v24sIHThu6sgxJHDsyDEkcawYSByYSBjw6FpIG5ow6xuIGtow6FpIHF1w6F0IGjGoW4gduG7gSBt4bupYyDEkeG7mSDhuqNuaCBoxrDhu59uZyBsw6puIGJp4bq/biBEYWxjXzIuDQoNCiMjIDMuMyBUaOG7kW5nIGvDqiBtw7QgdOG6oyAyIGJp4bq/bg0KDQojIyMgMy4zLjEgQmnhur9uIERhbGNfMiB2w6Agc2Nob29sDQoNCl8qKkzhuq1wIGLhuqNuZyB04bqnbiBz4buRIHbDoCBi4bqjbmcgdOG6p24gc3XhuqV0KipfDQpgYGB7cn0NCmh0bmggPC0gdGFibGUoc3RkJERhbGNfMixzdGQkc2Nob29sKQ0KYWRkbWFyZ2lucyhodG5oKQ0KaHRuaCA8LSBwcm9wLnRhYmxlKGh0bmgpDQphZGRtYXJnaW5zKGh0bmgpDQpgYGANCg0KXyoqTOG6rXAgYmnhu4N1IMSR4buTKipfDQpgYGB7cn0NCnN0ZCAlPiUgDQogIGdyb3VwX2J5KERhbGNfMiwgc2Nob29sKSAlPiUgDQogIHN1bW1hcmlzZShuID0gbigpKSAlPiUgDQogIGdncGxvdChhZXMoeCA9IERhbGNfMiwgeSA9IG4sIGZpbGwgPSBzY2hvb2wpKSArIA0KICBnZW9tX2NvbChwb3NpdGlvbiA9ICdkb2RnZScpICsgDQogIGdlb21fdGV4dChhZXMobGFiZWwgPSBzY2FsZXM6OnBlcmNlbnQobiAvIHN1bShuKSwgYWNjdXJhY3kgPSAwLjAxKSwgeSA9IG4gKyAwLjUpLCBwb3NpdGlvbiA9IHBvc2l0aW9uX2RvZGdlKHdpZHRoID0gMC45KSwgdmp1c3QgPSAwKSArDQogIHRoZW1lX2J3KCkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6XyBC4bqjbmcgdsOgIGJp4buDdSDEkeG7kyB0csOqbiBjaG8gdGjhuqV5IOG7nyB0csaw4budbmcgR1AgY8OzIDMzIHNpbmggdmnDqm4gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGNoaeG6v20gdOG7tyBs4buHIDguMzUlLCBjw7JuIGzhuqFpIDMxNiBzaW5oIHZpw6puIGPDsyBt4bupYyB0acOqdSB0aOG7pSByxrDhu6N1IHRo4bqlcCBjaGnhur9tIHThu7cgbOG7hyA4MCU7IOG7nyB0csaw4budbmcgTVMgY8OzIDExIHNpbmggdmnDqm4gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGNoaeG6v20gdOG7tyBs4buHIDIuNzglLCBjw7JuIGzhuqFpIDM1IHNpbmggdmnDqm4gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgdGjhuqVwIGNoaeG6v20gOC44NiUuIFTDs20gbOG6oWkgdGjDrCBj4bqjIGhhaSB0csaw4budbmcgxJHhu4F1IGPDsyBz4buRIGzGsOG7o25nIMOtdCBzaW5oIHZpw6puIGPDsyBt4bupYyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbywgxJFhIHPhu5EgxJHhu4F1IHRpw6p1IHRo4bulIHLGsOG7o3UgdGjhuqVwIGhv4bq3YyBo4bqndSBuaMawIGzDoCBraMO0bmcgdGnDqnUgdGjhu6UuDQoNCiMjIyAzLjMuMiBCaeG6v24gRGFsY18yIHbDoCBzZXgNCg0KXyoqTOG6rXAgYuG6o25nIHThuqduIHPhu5EgdsOgIGLhuqNuZyB04bqnbiBzdeG6pXQqKl8NCmBgYHtyfQ0KaHRuaCA8LSB0YWJsZShzdGQkRGFsY18yLHN0ZCRzZXgpDQphZGRtYXJnaW5zKGh0bmgpDQpodG5oIDwtIHByb3AudGFibGUoaHRuaCkNCmFkZG1hcmdpbnMoaHRuaCkNCmBgYA0KDQpfKipM4bqtcCBiaeG7g3UgxJHhu5MqKl8NCmBgYHtyfQ0Kc3RkICU+JSANCiAgZ3JvdXBfYnkoRGFsY18yLCBzZXgpICU+JSANCiAgc3VtbWFyaXNlKG4gPSBuKCkpICU+JSANCiAgZ2dwbG90KGFlcyh4ID0gRGFsY18yLCB5ID0gbiwgZmlsbCA9IHNleCkpICsgDQogIGdlb21fY29sKHBvc2l0aW9uID0gJ2RvZGdlJykgKyANCiAgZ2VvbV90ZXh0KGFlcyhsYWJlbCA9IHNjYWxlczo6cGVyY2VudChuIC8gc3VtKG4pLCBhY2N1cmFjeSA9IDAuMDEpLCB5ID0gbiArIDAuNSksIHBvc2l0aW9uID0gcG9zaXRpb25fZG9kZ2Uod2lkdGggPSAwLjkpLCB2anVzdCA9IDApICsNCiAgdGhlbWVfYncoKQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIELhuqNuZyB2w6AgYmnhu4N1IMSR4buTIHRyw6puIGNobyB0aOG6pXkg4bufIGdp4bubaSB0w61uaCBu4buvIGPDsyA4IHNpbmggdmnDqm4gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGNoaeG6v20gdOG7tyBs4buHIDIuMDMlLCBjw7JuIGzhuqFpIDIwMCBzaW5oIHZpw6puIG7hu68gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgdGjhuqVwIGNoaeG6v20gdOG7tyBs4buHIDUwLjYzJSU7IOG7nyBnaeG7m2kgdMOtbmggbmFtIGPDsyAzNiBzaW5oIHZpw6puIGPDsyBt4bupYyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyBjaGnhur9tIHThu7cgbOG7hyA5LjExJSwgY8OybiBs4bqhaSAxNTEgc2luaCB2acOqbiBuYW0gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgdGjhuqVwIGNoaeG6v20gMzguMjMlLiBUw7NtIGzhuqFpIHRow6wgY+G6oyBoYWkgZ2nhu5tpIHTDrW5oIMSR4buBdSBjw7Mgc+G7kSBsxrDhu6NuZyDDrXQgc2luaCB2acOqbiBjw7MgbeG7qWMgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8sIMSRYSBz4buRIMSR4buBdSB0acOqdSB0aOG7pSByxrDhu6N1IHRo4bqlcCBob+G6t2MgaOG6p3UgbmjGsCBsw6Aga2jDtG5nIHRpw6p1IHRo4bulLg0KDQojIyAzLjQgUmVsYXRpdmUgUmlzayB2w6Aga2hv4bqjbmcgxrDhu5tjIGzGsOG7o25nIGNobyBSZWxhdGl2ZSBSaXNrDQoNCiMjIyAzLjQuMSBCaeG6v24gRGFsY18yIHbDoCBzY2hvb2wNCmBgYHtyfQ0KbGlicmFyeShEZXNjVG9vbHMpDQp0YWJsZShzdGQkRGFsY18yLHN0ZCRzY2hvb2wpDQptdGh0IDwtIHRhYmxlKHN0ZCREYWxjXzIsc3RkJHNjaG9vbCkNClJlbFJpc2sobXRodCwgY29uZi5sZXZlbCA9IC45NSkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6XyANCg0KLSBSZWxhdGl2ZSBSaXNrIGPhu6dhIERhbGNfMiB2w6Agc2Nob29sIGzDoCAwLjgzMzA2OTYgbmjhu48gaMahbiAxLiDEkGnhu4F1IG7DoHkgY8OzIG5naMSpYSBsw6Agc2luaCB2acOqbiB0csaw4budbmcgR1AgY8OzIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIG5oaeG7gXUgaMahbiBzbyB24bubaSB0csaw4budbmcgTVMgKG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIOG7nyB0csaw4budbmcgR1AgYuG6sW5nIDAuODMzIGzhuqduIHNvIHbhu5tpIHRyxrDhu51uZyBNUykuDQoNCi0gS2hv4bqjbmcgdGluIGPhuq15IG7DoHkgY2hvIHRo4bqleSBy4bqxbmcsIHbhu5tpIG3hu6ljIMSR4buZIHRpbiBj4bqteSAodGjGsOG7nW5nIGzDoCA5NSUpLCBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IHRo4buxYyBz4buxIG7hurFtIHRyb25nIGtob+G6o25nIHThu6sgMC42NzExNTE5IMSR4bq/biAwLjk1NDk3MjEuIEvhur90IHF14bqjIG7DoHkgY2hvIHRo4bqleSBjw7Mgw70gbmdoxKlhIHRo4buRbmcga8OqIHbhu4EgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8g4bufIGPhuqMgaGFpIHRyxrDhu51uZy4gDQoNCiMjIyAzLjQuMiBCaeG6v24gRGFsY18yIHbDoCBzZXgNCmBgYHtyfQ0KbGlicmFyeShEZXNjVG9vbHMpDQp0YWJsZShzdGQkRGFsY18yLHN0ZCRzZXgpDQptdGh0IDwtIHRhYmxlKHN0ZCREYWxjXzIsc3RkJHNleCkNClJlbFJpc2sobXRodCwgY29uZi5sZXZlbCA9IC45NSkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6Xw0KDQotIFJlbGF0aXZlIFJpc2sgY+G7p2EgRGFsY18yIHbDoCBzZXggbMOgIDAuMzE5MDkwOSBuaOG7jyBoxqFuIDEuIMSQaeG7gXUgbsOgeSBjw7MgbmdoxKlhIGzDoCBzaW5oIHZpw6puIG7hu68gY8OzIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIMOtdCBoxqFuIHNvIHbhu5tpIHNpbmggdmnDqm4gbmFtICht4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyDhu58gc2luaCB2acOqbiBu4buvIGLhurFuZyAwLjMxOSBs4bqnbiBzbyB24bubaSBzaW5oIHZpw6puIG5hbSkuDQoNCi0gS2hv4bqjbmcgdGluIGPhuq15IG7DoHkgY2hvIHRo4bqleSBy4bqxbmcsIHbhu5tpIG3hu6ljIMSR4buZIHRpbiBj4bqteSAodGjGsOG7nW5nIGzDoCA5NSUpLCBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IHRo4buxYyBz4buxIG7hurFtIHRyb25nIGtob+G6o25nIHThu6sgMC4xNjU5OTI2IMSR4bq/biAwLjU2NTY2MzMuIEvhur90IHF14bqjIG7DoHkgY2hvIHRo4bqleSBjw7Mgw70gbmdoxKlhIHRo4buRbmcga8OqIHbhu4EgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8g4bufIGdp4bubaSB0w61uaCBu4buvIHbDoCBuYW0uDQoNCiMjIDMuNSBPZGRzIHJhdGlvIHbDoCBraG/huqNuZyDGsOG7m2MgbMaw4bujbmcgY2hvIE9kZHMgcmF0aW8NCg0KIyMjIDMuNS4xIEJp4bq/biBEYWxjXzIgdsOgIHNjaG9vbA0KYGBge3J9DQp0YWJsZShzdGQkRGFsY18yLHN0ZCRzY2hvb2wpDQpudG5oIDwtIHRhYmxlKHN0ZCREYWxjXzIsc3RkJHNjaG9vbCkNCk9kZHNSYXRpbyhudG5oLGNvbmYubGV2ZWwgPSAuOTUpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8NCg0KLSBPZGRzIHJhdGlvIGPhu6dhIERhbGNfMiB2w6Agc2Nob29sIGzDoCAwLjMzMjI3ODUgbmjhu48gaMahbiAxLiDEkGnhu4F1IG7DoHkgY8OzIG5naMSpYSBsw6AgdOG7tyBs4buHIGNow6puaCBj4bunYSBzaW5oIHZpw6puIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIHThuqFpIHRyxrDhu51uZyBHUCBzbyB24bubaSB0csaw4budbmcgTVMgbMOgIDAuMzMyLCB04bupYyBsw6Agc2luaCB2acOqbiB04bqhaSB0csaw4budbmcgR1AgY8OzIHThu7cgbOG7hyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyB0aOG6pXAgaMahbiBzbyB24bubaSBzaW5oIHZpw6puIHThuqFpIHRyxrDhu51uZyBNUy4NCg0KLSBLaG/huqNuZyB0aW4gY+G6rXkgbsOgeSBjaG8gdGjhuqV5IHLhurFuZywgduG7m2kgbeG7qWMgxJHhu5kgdGluIGPhuq15ICh0aMaw4budbmcgbMOgIDk1JSksIG9kZHMgcmF0aW8gdGjhu7FjIHPhu7EgbuG6sW0gdHJvbmcga2hv4bqjbmcgdOG7qyAwLjE1NDM4NjUgxJHhur9uIDAuNzE1MTQ2Ni4gS+G6v3QgcXXhuqMgbsOgeSBjw7Mgw70gbmdoxKlhIHRo4buRbmcga8OqLg0KDQojIyMgMy41LjIgQmnhur9uIERhbGNfMiB2w6Agc2V4DQpgYGB7cn0NCnRhYmxlKHN0ZCREYWxjXzIsc3RkJHNleCkNCm50bmggPC0gdGFibGUoc3RkJERhbGNfMixzdGQkc2V4KQ0KT2Rkc1JhdGlvKG50bmgsY29uZi5sZXZlbCA9IC45NSkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6Xw0KDQotIE9kZHMgcmF0aW8gY+G7p2EgRGFsY18yIHbDoCBzZXggbMOgIDAuMTY3Nzc3Nzggbmjhu48gaMahbiAxLiDEkGnhu4F1IG7DoHkgY8OzIG5naMSpYSBsw6AgdOG7tyBs4buHIGNow6puaCBj4bunYSBzaW5oIHZpw6puIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGzDoCBu4buvIHNvIHbhu5tpIG5hbSBsw6AgMC4xNjcsIHThu6ljIGzDoCBzaW5oIHZpw6puIG7hu68gY8OzIHThu7cgbOG7hyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyB0aOG6pXAgaMahbiBzbyB24bubaSBzaW5oIHZpw6puIG5hbS4NCg0KLSBLaG/huqNuZyB0aW4gY+G6rXkgbsOgeSBjaG8gdGjhuqV5IHLhurFuZywgduG7m2kgbeG7qWMgxJHhu5kgdGluIGPhuq15ICh0aMaw4budbmcgbMOgIDk1JSksIG9kZHMgcmF0aW8gdGjhu7FjIHPhu7EgbuG6sW0gdHJvbmcga2hv4bqjbmcgdOG7qyAwLjA3NTc4ODU2IMSR4bq/biAwLjM3MTQxOTk1LiBL4bq/dCBxdeG6oyBuw6B5IGPDsyDDvSBuZ2jEqWEgdGjhu5FuZyBrw6ouDQoNCiMjIDMuNiBLaG/huqNuZyDGsOG7m2MgbMaw4bujbmcgdOG7tyBs4buHDQpgYGB7cn0NCmxpYnJhcnkodGlkeXZlcnNlKQ0KdG4gPC0gc3RkICU+JSBzZWxlY3QoRGFsY18yLCBzY2hvb2wsIHNleCkNCnRuIDwtIHRuICU+JSBtdXRhdGUoRGFsY19jID0gaWZfZWxzZShEYWxjXzIgPT0iY2FvIiwgMSwgMCkpDQpwcmludCh0bikNCmBgYA0KDQojIyMgMy42LjEgxq/hu5tjIGzGsOG7o25nIHThu7cgbOG7hyBjaG8gYmnhur9uIHNjaG9vbA0KDQpfKipOaMOzbSB0csaw4budbmcgR1AqKl8NCmBgYHtyfQ0KR1AgPC0gdGFibGUodG5bdG4kc2Nob29sID09ICJHUCIsXSAkRGFsY19jKQ0KR1ANCnByb3AudGVzdChHUFsiMSJdLHN1bShHUCksIHAgPSAwLjUpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gVOG7tyBs4buHIGNobyB0aOG6pXkgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gdHJvbmcgbmjDs20gdHLGsOG7nW5nIEdQIGtob+G6o25nIDkuNDUlLiBLaG/huqNuZyDGsOG7m2MgbMaw4bujbmcgdOG7tyBs4buHIHbhu5tpIMSR4buZIHRpbiBj4bqteSA5NSUgbMOgIDYuNjklIMSR4bq/biAxMy4xNCUuDQoNCl8qKk5ow7NtIHRyxrDhu51uZyBNUyoqXw0KYGBge3J9DQpNUyA8LSB0YWJsZSh0blt0biRzY2hvb2wgPT0gIk1TIixdICREYWxjX2MpDQpNUw0KcHJvcC50ZXN0KE1TWyIxIl0sc3VtKE1TKSwgcCA9IDAuNSkNCmBgYA0KX05o4bqtbiB4w6l0Ol8gVOG7tyBs4buHIGNobyB0aOG6pXkgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gdHJvbmcgbmjDs20gdHLGsOG7nW5nIE1TIGtob+G6o25nIDIzLjkxJS4gS2hv4bqjbmcgxrDhu5tjIGzGsOG7o25nIHThu7cgbOG7hyB24bubaSDEkeG7mSB0aW4gY+G6rXkgOTUlIGzDoCAxMy4wOCUgxJHhur9uIDM5LjElLg0KDQojIyMgMy42LjIgxq/hu5tjIGzGsOG7o25nIHThu7cgbOG7hyBjaG8gYmnhur9uIHNleA0KDQpfKipOaMOzbSBnaeG7m2kgdMOtbmggbmFtKipfDQpgYGB7cn0NCk0gPC0gdGFibGUodG5bdG4kc2V4ID09ICJNIixdICREYWxjX2MpDQpNDQpwcm9wLnRlc3QoTVsiMSJdLHN1bShNKSwgcCA9IDAuNSkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6XyBU4bu3IGzhu4cgY2hvIHRo4bqleSBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyB0cm9uZyBuaMOzbSBnaeG7m2kgdMOtbmggbmFtIGtob+G6o25nIDE5LjI1JS4gS2hv4bqjbmcgxrDhu5tjIGzGsOG7o25nIHThu7cgbOG7hyB24bubaSDEkeG7mSB0aW4gY+G6rXkgOTUlIGzDoCAxNCUgxJHhur9uIDI1Ljc5JS4NCg0KXyoqTmjDs20gZ2nhu5tpIHTDrW5oIG7hu68qKl8NCmBgYHtyfQ0KRiA8LSB0YWJsZSh0blt0biRzZXggPT0gIkYiLF0gJERhbGNfYykNCkYNCnByb3AudGVzdChGWyIxIl0sc3VtKEYpLCBwID0gMC41KQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIFThu7cgbOG7hyBjaG8gdGjhuqV5IG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIHRyb25nIG5ow7NtIGdp4bubaSB0w61uaCBu4buvIGtob+G6o25nIDMuODUlLiBLaG/huqNuZyDGsOG7m2MgbMaw4bujbmcgdOG7tyBs4buHIHbhu5tpIMSR4buZIHRpbiBj4bqteSA5NSUgbMOgIDEuOCUgxJHhur9uIDcuNzElLg0KDQojIyAzLjcgTcO0IGjDrG5oIGjhu5NpIHF1eSDEkcahbg0KDQojIyMgMy43LjEgTcO0IGjDrG5oIHjDoWMgc3XhuqV0IHR1eeG6v24gdMOtbmgNCg0KXyoqQmnhur9uIHNjaG9vbCoqXw0KYGBge3J9DQpscG0uTUwgPC0gZ2xtKERhbGNfYyB+IHNjaG9vbCwgZGF0YSA9IHRuKQ0Kc3VtbWFyeShscG0uTUwpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gJCRcaGF0e1xwaX09MC4wOTQ1NiArIDAuMTQ0NTcgXGNkb3Qgc2Nob29sTVMkJCANCkPDsyB0aOG7gyBuaOG6rW4gdGjhuqV5LCB24bubaSBnacOhIHRy4buLICRcYmV0YV8xID0gMC4xNDQ1NyQgY2hvIGJp4bq/dCB4w6FjIHN14bqldCDEkeG7gyBjw7MgbeG7qWMgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gY+G7p2Egc2luaCB2acOqbiBo4buNYyB0csaw4budbmcgTVMgY2FvIGjGoW4gc2luaCB2acOqbiBo4buNYyB0csaw4budbmcgR1AgbMOgIDAuMTQ0NTcuIFThu6sgxJHDsyBr4bq/dCBsdeG6rW4gdHLGsOG7nW5nIGjhu41jIGPDsyDhuqNuaCBoxrDhu59uZyDEkeG6v24gbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8uDQoNCl8qKkJp4bq/biBzZXgqKl8NCmBgYHtyfQ0KbHBtLk1MIDwtIGdsbShEYWxjX2MgfiBzZXgsIGRhdGEgPSB0bikNCnN1bW1hcnkobHBtLk1MKQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfICQkXGhhdHtccGl9PTAuMDM4NDYgKyAwLjE1NDA1IFxjZG90IHNleE0kJCANCkPDsyB0aOG7gyBuaOG6rW4gdGjhuqV5LCB24bubaSAkXGJldGFfMSA9IDAuMTU0MDUkIGNobyBiaeG6v3QgeMOhYyBzdeG6pXQgxJHhu4MgY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGPhu6dhIG5nxrDhu51pIGPDsyBnaeG7m2kgdMOtbmggbMOgIG5hbSBjYW8gaMahbiBuZ8aw4budaSBjw7MgZ2nhu5tpIHTDrW5oIG7hu68gbMOgIDAuMTU0MDUuIFThu6sgxJHDsyBr4bq/dCBsdeG6rW4gZ2nhu5tpIHTDrW5oIGPDsyDhuqNuaCBoxrDhu59uZyDEkeG6v24gbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8uDQoNCiMjIyAzLjcuMiBNw7QgaMOsbmggTG9naXQNCg0KXyoqQmnhur9uIHNjaG9vbCoqXw0KYGBge3J9DQpyZWdsb2dpdF9zY2hvb2wgPC0gZ2xtIChEYWxjX2MgfiBzY2hvb2wsIGRhdGEgPSB0biwgZmFtaWx5ID0gYmlub21pYWwobGluayA9ICdsb2dpdCcpKQ0Kc3VtbWFyeShyZWdsb2dpdF9zY2hvb2wpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gJCRsblxsZWZ0W1xmcmFje1xoYXRccGl9ezEtXGhhdFxwaX1ccmlnaHRdPS0yLjI1OTIrIDEuMTAxOCBcY2RvdCBzY2hvb2xNUyQkDQpDw7MgdGjhu4Mgbmjhuq1uIHRo4bqleSwgduG7m2kgZ2nDoSB0cuG7iyAkXGJldGFfMCA9IC0yLjI1OTIkLCBjw7MgbmdoxKlhIGzDoCAkbG5cbGVmdFtcZnJhY3tcaGF0XHBpfXsxLVxoYXRccGl9XHJpZ2h0XSQgY+G7p2Egc2luaCB2acOqbiBo4buNYyB0csaw4budbmcgR1AgY8OzIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGzDoCAtMi4yNTkyLiBW4bubaSAkXGJldGFfMSA9IDEuMTAxOCQsIGjhu4cgc+G7kSBuw6B5IGPDsyBuZ2jEqWEgbMOgIMSR4buRaSB24bubaSB2aeG7h2MgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gdGjDrCBjaMOqbmggbOG7h2NoICRsblxsZWZ0W1xmcmFje1xoYXRccGl9ezEtXGhhdFxwaX1ccmlnaHRdJCBj4bunYSB0csaw4budbmcgTXMgdsOgIHRyxrDhu51uZyBHUCBsw6AgMS4xMDE4Lg0KDQpLaG/huqNuZyB0aW4gY+G6rXkgY2hvIGPDoWMgaOG7hyBz4buRIHRyb25nIG3DtCBow6xuaCDEkcaw4bujYyB0w61uaCBuaMawIHNhdToNCmBgYHtyfQ0KY29uZmludChyZWdsb2dpdF9zY2hvb2wpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gVuG7m2kgxJHhu5kgdGluIGPhuq15IDk1JSwgZ2nDoSB0cuG7iyB0aOG7sWMgY+G7p2EgSW50ZXJjZXB0IG7hurFtIHRyb25nIGtob+G6o25nIHThu6sgLTIuNjM2Mzk2NiDEkeG6v24gLTEuOTE2OTMyLCBnacOhIHRy4buLIHRo4buxYyBj4bunYSB0aGFtIHPhu5Egc2Nob29sTVMgbuG6sW0gdHJvbmcga2hv4bqjbmcgdOG7qyAwLjMwMDc5OTIgxJHhur9uIDEuODQ2ODI3LCBjaG8gdGjhuqV5IGJp4bq/biBzY2hvb2wgY8OzIHRo4buDIGPDsyDhuqNuaCBoxrDhu59uZyDEkcOhbmcga+G7gyB2w6AgY8OzIMO9IG5naMSpYSB0aOG7kW5nIGvDqiB0cm9uZyBtw7QgaMOsbmguIFbDoCB24bubaSBraG/huqNuZyB0aW4gY+G6rXkgw6JtIGNobyB0aOG6pXkg4bufIHRyxrDhu51uZyBHUCBjw7Mgc2luaCB2acOqbiB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyDDrXQgaMahbiBzbyB24bubaSB0csaw4budbmcgTVMuDQoNCl8qKkJp4bq/biBzZXgqKl8NCmBgYHtyfQ0KcmVnbG9naXRfc2V4IDwtIGdsbSAoRGFsY19jIH4gc2V4LCBkYXRhID0gdG4sIGZhbWlseSA9IGJpbm9taWFsKGxpbmsgPSAnbG9naXQnKSkNCnN1bW1hcnkocmVnbG9naXRfc2V4KQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfICQkbG5cbGVmdFtcZnJhY3tcaGF0XHBpfXsxLVxoYXRccGl9XHJpZ2h0XT0tMy4yMTg5KyAxLjc4NTEgXGNkb3Qgc2V4TSQkDQpDw7MgdGjhu4Mgbmjhuq1uIHRo4bqleSwgduG7m2kgZ2nDoSB0cuG7iyAkXGJldGFfMCA9IC0zLjIxODkkLCBjw7MgbmdoxKlhIGzDoCAkbG5cbGVmdFtcZnJhY3tcaGF0XHBpfXsxLVxoYXRccGl9XHJpZ2h0XSQgY+G7p2Egc2luaCB2acOqbiBnaeG7m2kgdMOtbmggbuG7ryBjw7MgbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gbMOgIC0zLjIxODkuIFbhu5tpICRcYmV0YV8xID0gMS43ODUxJCwgaOG7hyBz4buRIG7DoHkgY8OzIG5naMSpYSBsw6AgxJHhu5FpIHbhu5tpIHZp4buHYyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyB0aMOsIGNow6puaCBs4buHY2ggJGxuXGxlZnRbXGZyYWN7XGhhdFxwaX17MS1caGF0XHBpfVxyaWdodF0kIGPhu6dhIHNpbmggdmnDqm4gZ2nhu5tpIHTDrW5oIG5hbSB2w6Agc2luaCB2acOqbiBnaeG7m2kgdMOtbmggbuG7ryBsw6AgMS43ODUxLg0KDQpLaG/huqNuZyB0aW4gY+G6rXkgY2hvIGPDoWMgaOG7hyBz4buRIHRyb25nIG3DtCBow6xuaCDEkcaw4bujYyB0w61uaCBuaMawIHNhdToNCmBgYHtyfQ0KY29uZmludChyZWdsb2dpdF9zZXgpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gVuG7m2kgxJHhu5kgdGluIGPhuq15IDk1JSwgZ2nDoSB0cuG7iyB0aOG7sWMgY+G7p2EgSW50ZXJjZXB0IG7hurFtIHRyb25nIGtob+G6o25nIHThu6sgLTQuMDEyNzQ1IMSR4bq/biAtMi41ODA1MzQsIGdpw6EgdHLhu4sgdGjhu7FjIGPhu6dhIHRoYW0gc+G7kSBzZXhNIG7hurFtIHRyb25nIGtob+G6o25nIHThu6sgMS4wMzkxNTMgxJHhur9uIDIuNjQ5MDEwLCBjaG8gdGjhuqV5IGJp4bq/biBzZXggY8OzIHRo4buDIGPDsyDhuqNuaCBoxrDhu59uZyDEkcOhbmcga+G7gyB2w6AgY8OzIMO9IG5naMSpYSB0aOG7kW5nIGvDqiB0cm9uZyBtw7QgaMOsbmguIFbDoCB24bubaSBraG/huqNuZyB0aW4gY+G6rXkgw6JtIGNobyB0aOG6pXkg4bufIGdp4bubaSB0w61uaCBu4buvIGPDsyBzaW5oIHZpw6puIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIMOtdCBoxqFuIHNvIHbhu5tpIGdp4bubaSB0w61uaCBuYW0uDQoNCiMjIyAzLjcuMyBNw7QgaMOsbmggUHJvYml0DQoNCl8qKkJp4bq/biBzY2hvb2wqKl8NCmBgYHtyfQ0KcmVncHJvYml0X3NjaG9vbCA8LSBnbG0gKERhbGNfYyB+IHNjaG9vbCwgZGF0YSA9IHRuLCBmYW1pbHkgPSBiaW5vbWlhbChsaW5rID0gJ3Byb2JpdCcpKQ0Kc3VtbWFyeShyZWdwcm9iaXRfc2Nob29sKQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfICQkXGhhdFxwaT0gXFBoaSgtMS4zMTMyMSswLjYwNDExIFxjZG90IHNjaG9vbE1TKSQkDQpDw7MgdGjhu4Mgbmjhuq1uIHRo4bqleSwgduG7m2kgZ2nDoSB0cuG7iyAkXGJldGFfMCA9IC0xLjMxMzIxJCwgY8OzIG5naMSpYSBsw6AgeMOhYyBzdeG6pXQgxJHhu4Mgc2luaCB2acOqbiBo4buNYyB0csaw4budbmcgR1AgY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGzDoCAkXFBoaSgtMS4zMTMyMSkkLiBW4bubaSAkXGJldGFfMSA9IDAuNjA0MTEkLCBo4buHIHPhu5EgbsOgeSBjw7MgbmdoxKlhIGzDoCDEkeG7kWkgduG7m2kgdHLGsOG7nW5nIE1TLCB4w6FjIHN14bqldCDEkeG7gyBzaW5oIHZpw6puIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGzDoCAkXFBoaSgwLjYwNDExKSQuIA0KDQpLaG/huqNuZyB0aW4gY+G6rXkgY2hvIGPDoWMgaOG7hyBz4buRIHRyb25nIG3DtCBow6xuaCDEkcaw4bujYyB0w61uaCBuaMawIHNhdToNCmBgYHtyfQ0KY29uZmludChyZWdwcm9iaXRfc2Nob29sKQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIFbhu5tpIMSR4buZIHRpbiBj4bqteSA5NSUsIGdpw6EgdHLhu4sgdGjhu7FjIGPhu6dhIEludGVyY2VwdCBu4bqxbSB0cm9uZyBraG/huqNuZyB04burIC0xLjQ5OTgwOTIgxJHhur9uIC0xLjEzNDkyNiwgZ2nDoSB0cuG7iyB0aOG7sWMgY+G7p2EgdGhhbSBz4buRIHNjaG9vbE1TIG7hurFtIHRyb25nIGtob+G6o25nIHThu6sgMC4xNTkzMzc5IMSR4bq/biAxLjAzNTEwOCwgY2hvIHRo4bqleSBiaeG6v24gc2Nob29sIGPDsyB0aOG7gyBjw7Mg4bqjbmggaMaw4bufbmcgxJHDoW5nIGvhu4MgdsOgIGPDsyDDvSBuZ2jEqWEgdGjhu5FuZyBrw6ogdHJvbmcgbcO0IGjDrG5oLiBWw6AgduG7m2kga2hv4bqjbmcgdGluIGPhuq15IMOibSBjaG8gdGjhuqV5IOG7nyB0csaw4budbmcgR1AgY8OzIHNpbmggdmnDqm4gdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gw610IGjGoW4gc28gduG7m2kgdHLGsOG7nW5nIE1TLg0KDQpfKipCaeG6v24gc2V4KipfDQpgYGB7cn0NCnJlZ3Byb2JpdF9zZXggPC0gZ2xtIChEYWxjX2MgfiBzZXgsIGRhdGEgPSB0biwgZmFtaWx5ID0gYmlub21pYWwobGluayA9ICdwcm9iaXQnKSkNCnN1bW1hcnkocmVncHJvYml0X3NleCkNCmBgYA0KDQpfTmjhuq1uIHjDqXQ6XyAkJFxoYXRccGk9IFxQaGkoLTEuNzY4OCsgMC45MDAyICBcY2RvdCBzZXhNKSQkDQpDw7MgdGjhu4Mgbmjhuq1uIHRo4bqleSwgduG7m2kgZ2nDoSB0cuG7iyAkXGJldGFfMCA9IC0xLjc2ODgkLCBjw7MgbmdoxKlhIGzDoCB4w6FjIHN14bqldCDEkeG7gyBzaW5oIHZpw6puIG7hu68gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGzDoCAkXFBoaSgtMS43Njg4KSQuIFbhu5tpICRcYmV0YV8xID0gMC45MDAyJCwgaOG7hyBz4buRIG7DoHkgY8OzIG5naMSpYSBsw6AgxJHhu5FpIHbhu5tpIGdp4bubaSB0w61uaCBuYW0sIHjDoWMgc3XhuqV0IMSR4buDIHNpbmggdmnDqm4gdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gbMOgICRcUGhpKDAuOTAwMikkLg0KDQpLaG/huqNuZyB0aW4gY+G6rXkgY2hvIGPDoWMgaOG7hyBz4buRIHRyb25nIG3DtCBow6xuaCDEkcaw4bujYyB0w61uaCBuaMawIHNhdToNCmBgYHtyfQ0KY29uZmludChyZWdwcm9iaXRfc2V4KQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIFbhu5tpIMSR4buZIHRpbiBj4bqteSA5NSUsIGdpw6EgdHLhu4sgdGjhu7FjIGPhu6dhIEludGVyY2VwdCBu4bqxbSB0cm9uZyBraG/huqNuZyB04burIC0yLjEwMjMzMjIgxJHhur9uIC0xLjQ3Mjc1OCwgZ2nDoSB0cuG7iyB0aOG7sWMgY+G7p2EgdGhhbSBz4buRIHNleE0gbuG6sW0gdHJvbmcga2hv4bqjbmcgdOG7qyAwLjUzNTY0NjYgxJHhur9uIDEuMjg4OTUyLCBjaG8gdGjhuqV5IGJp4bq/biBzZXggY8OzIHRo4buDIGPDsyDhuqNuaCBoxrDhu59uZyDEkcOhbmcga+G7gyB2w6AgY8OzIMO9IG5naMSpYSB0aOG7kW5nIGvDqiB0cm9uZyBtw7QgaMOsbmguIFbDoCB24bubaSBraG/huqNuZyB0aW4gY+G6rXkgw6JtIGNobyB0aOG6pXkg4bufIGdp4bubaSB0w61uaCBu4buvIGPDsyBzaW5oIHZpw6puIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIMOtdCBoxqFuIHNvIHbhu5tpIGdp4bubaSB0w61uaCBuYW0uDQoNCiMjIDMuOCBNw7QgaMOsbmggaOG7k2kgcXV5IGLhu5lpDQoNCiMjIyAzLjguMSBNw7QgaMOsbmggeMOhYyBzdeG6pXQgdHV54bq/biB0w61uaA0KYGBge3J9DQptbSA8LWdsbShEYWxjX2MgfiBzY2hvb2wgKyBzZXgsIGRhdGEgPSB0bikNCnN1bW1hcnkobW0pDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gVOG7qyBi4bqjbmcga+G6v3QgcXXhuqMgdGEgY8OzIGjDoG0gaOG7k2kgcXV5OiANCiQkXGhhdFxwaT0wLjAyMDczICswLjE0NzU0IFxjZG90IHNjaG9vbE1TICswLjE1NTIyIFxjZG90IHNleE0gJCQNCkjhu4cgc+G7kSAkXGJldGFfMT0wLjE0NzU0JCB0aOG7gyBoaeG7h24gY2jDqm5oIGzhu4djaCBt4bupYyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyAgZ2nhu69hIHNpbmggdmnDqm4gdHLGsOG7nW5nIE1TIHNvIHbhu5tpIHNpbmggdmnDqm4gdHLGsOG7nW5nIEdQLCB0cm9uZyDEkWnhu4F1IGtp4buHbiBnaeG7m2kgdMOtbmgga2jDtG5nIMSR4buVaS4gTuG6v3Ugc2luaCB2acOqbmggaOG7jWMgdOG6oWkgdHLGsOG7nW5nIE1TIHRoYXkgdsOsIHRyxrDhu51uZyBHUCwgbeG7qWMgdGnDqnUgdGjhu6Ugcsaw4bujdSBow6BuZyBuZ8OgeSBk4buxIMSRb8OhbiBz4bq9IHTEg25nIHRow6ptIDAuMTQ3NTQsIHbDrCB24bqteSBzaW5oIHZpw6puIHRyxrDhu51uZyBNUyB0acOqdSB0aOG7pSBuaGnhu4F1IHLGsOG7o3UgaMahbiBzbyB24bubaSBzaW5oIHZpw6puIHRyxrDhu51uZyBHUC4gSOG7hyBz4buRICRcYmV0YV8xPSAwLjE1NTIyJCB0aOG7gyBoaeG7h24gY2jDqm5oIGzhu4djaCBt4bupYyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyAgZ2nhu69hIHNpbmggdmnDqm4gbmFtIHbDoCBzaW5oIHZpw6puIG7hu68sIHRyb25nIMSRaeG7gXUga2nhu4duIHRyxrDhu51uZyBo4buNYyBraMO0bmcgxJHhu5VpLiBO4bq/dSBzaW5oIHZpw6puIGzDoCBuYW0gdGhheSB2w6wgbuG7rywgbeG7qWMgdGnDqnUgdGjhu6Ugcsaw4bujdSBow6BuZyBuZ8OgeSBk4buxIMSRb8OhbiBz4bq9IHTEg25nIHRow6ptIDAuMTU1MjIuIHbDrCB24bqteSBzaW5oIHZpw6puIG5hbSB0acOqdSB0aOG7pSBuaGnhu4F1IHLGsOG7o3UgaMahbiBzbyB24bubaSBzaW5oIHZpw6puIG7hu68uDQoNCiMjIyAzLjguMiBNw7QgaMOsbmggTG9naXQNCmBgYHtyfQ0KbXAgPC0gZ2xtKERhbGNfYyB+IHNjaG9vbCArIHNleCwgZGF0YSA9IHRuLCBmYW1pbHkgPSBiaW5vbWlhbCAobGluaz0ibG9naXQiKSkNCnN1bW1hcnkobXApDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gVGEgY8OzIG3DtCBow6xuaCBsb2dpdDoNCiQkbG5cbGVmdFtcZnJhY3tcaGF0XHBpfXsxLVxoYXRccGl9XHJpZ2h0XT0tMy40NjQ0ICsxLjI0MzcgXGNkb3Qgc2Nob29sTVMgKzEuODQ1NSBcY2RvdCBzZXhNJCQNCkjhu4cgc+G7kSAkXGJldGFfMD0tMy40NjQ0JCBjaG8gdGjhuqV5IGNow6puaCBs4buHY2ggJGxuXGxlZnRbXGZyYWN7XGhhdFxwaX17MS1caGF0XHBpfVxyaWdodF0kIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgdHJvbmcgbmjDs20gdGhhbSBjaGnhur91ICho4buNYyB0csaw4budbmcgRlAgdsOgIGdp4bubaSB0w61uaCBu4buvKSBsw6AgLTMuNDY0NC4gSOG7hyBz4buRICRcYmV0YV8xPTEuMjQzNyQgY2hvIHRo4bqleSBjaMOqbmggbOG7h2NoICRsblxsZWZ0W1xmcmFje1xoYXRccGl9ezEtXGhhdFxwaX1ccmlnaHRdJCBzaW5oIHZpw6puIOG7nyB0csaw4budbmcgTVMgY8OzIG3hu6ljIMSR4buZIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIG5oaeG7gXUgaMahbiBzbyB24bubaSBzaW5oIHZpw6puIHRyxrDhu51uZyBHUCBsw6AgMS4yNDM3LiBI4buHIHPhu5EgJFxiZXRhXzI9MS44NDU1JCBjaG8gdGjhuqV5IGNow6puaCBs4buHY2ggJGxuXGxlZnRbXGZyYWN7XGhhdFxwaX17MS1caGF0XHBpfVxyaWdodF0kIGPDsyBt4bupYyB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyBnaeG7r2EgZ2nhu5tpIHTDrW5oIG5hbSB2w6AgZ2nhu5tpIHTDrW5oIG7hu68gbMOgIDEuODQ1NS4NCg0KIyMjIDMuOC4zIE3DtCBow6xuaCBQcm9iaXQNCmBgYHtyfQ0KbXQgPC0gZ2xtKERhbGNfYyB+IHNjaG9vbCArIHNleCwgZGF0YSA9IHRuLCBmYW1pbHk9Ymlub21pYWwobGluaz0icHJvYml0IikpDQpzdW1tYXJ5KG10KQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIFRhIGPDsyBow6BtIFByb2JpdDoNCiQkXGhhdFxwaT0gXFBoaSgtMS44OTA5KyAwLjY3MDIgXGNkb3Qgc2Nob29sTVMgKzAuOTI3NCBcY2RvdCBzZXhNKSQkDQpI4buHIHPhu5EgJFxiZXRhXzA9LTEuODkwOSQgdGjhu4MgaGnhu4duIHjDoWMgc3XhuqV0IMSR4buDIHNpbmggdmnDqm4gbuG7ryBo4buNYyB0csaw4budbmcgR1AgbMOgICRcUGhpKC0xLjg5MDkpJC4gSOG7hyBz4buRICRcYmV0YV8xPTAuNjcwMiQgdGjhu4MgaGnhu4duIHjDoWMgc3XhuqV0IHNpbmggdmnDqm4gaOG7jWMg4bufIHRyxrDhu51uZyBNUyBjw7MgbeG7qWMgdGnDqnUgdGjhu6Ugcsaw4bujdSBjYW8gaMahbiBzbyB24bubaSBzaW5oIHZpw6puIGjhu41jIOG7nyB0csaw4budbmcgR1AgbMOgICRcUGhpKDAuNjcwMikkLiBI4buHIHPhu5EgJFxiZXRhXzI9MC45Mjc5JCB0aOG7gyBoaeG7h24geMOhYyBzdeG6pXQgc2luaCB2acOqbiBuYW0gY8OzIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgY2FvIGjGoW4gc28gduG7m2kgc2luaCB2acOqbiBu4buvIGzDoCAkXFBoaSgwLjkyNzkpJC4NCg0KIyMgMy45IMSQw6FuaCBnacOhIG3DtCBow6xuaCBo4buTaSBxdXkgYuG7mWkNCg0KIyMjIDMuOS4xIENo4buJIHPhu5EgQUlDDQpgYGB7cn0NCkFJQyhtbSkNCmBgYA0KYGBge3J9DQpBSUMobXApDQpgYGANCmBgYHtyfQ0KQUlDKG10KQ0KYGBgDQoNCl9OaOG6rW4geMOpdDpfIE3DtCBow6xuaCBMb2dpdCB2w6AgUHJvYml0IMSR4buBdSBraMO0bmcgdOG7kXQgYuG6sW5nIG3DtCBow6xuaCB4w6FjIHN14bqldCB0dXnhur9uIHTDrW5oIHRyb25nIHZp4buHYyBnaeG6o2kgdGjDrWNoIG3hu5FpIHF1YW4gaOG7hyBnaeG7r2EgY8OhYyB54bq/dSB04buRIOG6o25oIGjGsOG7n25nIMSR4bq/biBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGNhbyBj4bunYSBzaW5oIHZpw6puLiBWw6wgY2jhu4kgc+G7kSBBSUMgY+G7p2EgaGFpIG3DtCBow6xuaCBuw6B5IGNhbyBoxqFuIGNo4buJIHPhu5EgQUlDIGPhu6dhIG3DtCBow6xuaCB4w6FjIHN14bqldCB0dXnhur9uIHTDrW5oIG7Dqm4gbcO0IGjDrG5oIHjDoWMgc3XhuqV0IHR1eeG6v24gdMOtbmggbMOgIG3DtCBow6xuaCB04buRdCBoxqFuLg0KDQojIyMgMy45LjIgSOG7hyBz4buRIEJyaWVyIFNjb3JlDQoNCkNo4buJIHPhu5EgQnJpZXIgU2NvcmUgxJHGsOG7o2Mgc+G7rSBk4bulbmcgxJHhu4MgxJFvIGzGsOG7nW5nIMSR4buZIGNow61uaCB4w6FjIGPhu6dhIGPDoWMgZOG7sSDEkW/DoW4geMOhYyBzdeG6pXQuIE7DsyB0w61uaCB0b8OhbiDEkeG7mSBs4buHY2ggYsOsbmggcGjGsMahbmcgZ2nhu69hIGThu7EgxJFvw6FuIHjDoWMgc3XhuqV0IHbDoCBnacOhIHRy4buLIHRo4buxYyB04bq/LiBN4buZdCBnacOhIHRy4buLIEJyaWVyIFNjb3JlIHRo4bqlcCBjaG8gdGjhuqV5IG3DtCBow6xuaCBk4buxIMSRb8OhbiB04buRdCBoxqFuLiBWw6wgdGjhur8gc+G6vSB0w61uaCB2w6Agc28gc8OhbmggZ2nDoSB0cuG7iyBuw6B5IOG7nyBoYWkgbcO0IGjDrG5oIGjhu5NpIHF1eSBsb2dpdCB2w6AgcHJvYml0Lg0KDQpgYGB7cn0NCmxpYnJhcnkoRGVzY1Rvb2xzKQ0KQnJpZXJTY29yZShtcCkNCkJyaWVyU2NvcmUobXQpDQpgYGANCg0KX05o4bqtbiB4w6l0Ol8gS+G6v3QgcXXhuqMgYsOqbiB0csOqbiBjaG8gdGjhuqV5IEJyaWVyIFNjb3JlIGNobyBsb2dpdCB2w6AgcHJvYml0IMSR4buBdSBn4bqnbiBi4bqxbmcgbmhhdSBsw6AgMC4wODk2NTY3NiB2w6AgMC4wODk3ODY0LiDEkGnhu4F1IG7DoHkgY8OzIG5naMSpYSBsw6AgY+G6oyBoYWkgbcO0IGjDrG5oIMSR4buBdSBjw7MgaGnhu4d1IHN14bqldCB0xrDGoW5nIMSRxrDGoW5nIGtoaSBk4buxIMSRb8OhbiB4w6FjIHN14bqldCBjaG8gYmnhur9uIG3hu6VjIHRpw6p1LiBCcmllciBTY29yZSBraMOhIHRo4bqlcCAoZ+G6p24gYuG6sW5nIDApLCBjaG8gdGjhuqV5IHLhurFuZyBj4bqjIGhhaSBtw7QgaMOsbmggxJHhu4F1IGThu7EgxJFvw6FuIGtow6EgdOG7kXQgdsOgIGtow7RuZyBzYWkgbOG7h2NoIG5oaeG7gXUgc28gduG7m2kgZ2nDoSB0cuG7iyB0aOG7sWMgdOG6vy4NCg0KIyMgMy4xMCBL4bq/dCBsdeG6rW4NCg0KVHJvbmcgYsOgaSB0aeG7g3UgbHXhuq1uIG7DoHksIGNow7puZyB0w7RpIMSRw6MgdGjhu7FjIGhp4buHbiBt4buZdCBwaMOibiB0w61jaCBzw6J1IHLhu5luZyB2w6AgY2hpIHRp4bq/dCB0csOqbiBi4buZIGThu68gbGnhu4d1IGJhbyBn4buTbSA5IGJp4bq/biB24bubaSAzOTUgcXVhbiBzw6F0LiBDaMO6bmcgdMO0aSDEkcOjIGNo4buNbiBiaeG6v24gxJHhu4tuaCB0w61uaCDigJxEYWxj4oCdIGzDoG0gYmnhur9uIHBo4bulIHRodeG7mWMgdsOgIHRp4bq/biBow6BuaCBwaMOibiB0w61jaCB0aOG7kW5nIGvDqiBtw7QgdOG6oyBjaG8gdOG7q25nIGJp4bq/biDEkeG7mWMgbOG6rXAga2jDoWMgxJHhu4MgY8OzIGPDoWkgbmjDrG4gdG/DoG4gZGnhu4duIGjGoW4gduG7gSBi4buZIGThu68gbGnhu4d1LiBWaeG7h2MgbsOgeSBnacO6cCBjaMO6bmcgdMO0aSBoaeG7g3UgcsO1IGjGoW4gduG7gSDEkeG6t2MgxJFp4buDbSBj4bunYSB04burbmcgYmnhur9uIHbDoCBt4buRaSBxdWFuIGjhu4cgZ2nhu69hIGNow7puZywgdOG6oW8gdGnhu4FuIMSR4buBIGNobyBjw6FjIHBow6JuIHTDrWNoIHPDonUgaMahbi4NCg0KxJDhuqd1IHRpw6puLCBjaMO6bmcgdMO0aSB0aOG7sWMgaGnhu4duIHRo4buRbmcga8OqIG3DtCB04bqjIMSR4buDIGhp4buDdSByw7UgcGjDom4gYuG7kSBj4bunYSBjw6FjIGJp4bq/biDEkeG7mWMgbOG6rXAuIMSQaeG7gXUgbsOgeSBjdW5nIGPhuqVwIGPDoWkgbmjDrG4gdOG7lW5nIHF1YW4gduG7gSBjw6FjaCBtw6AgY8OhYyB54bq/dSB04buRIG5oxrAgZ2nhu5tpIHTDrW5oLCBuxqFpIOG7nywgdHLGsOG7nW5nIGjhu41jLCB2w6AgY8OhYyB54bq/dSB04buRIGtow6FjIHBow6JuIGLhu5UgdHJvbmcgZOG7ryBsaeG7h3UuIENow7puZyB0w7RpIMSRw6MgcGjDom4gdMOtY2ggYmnhur9uIHBo4bulIHRodeG7mWMg4oCcRGFsY+KAnSB24bubaSBjw6FjIGJp4bq/biDEkeG7i25oIHTDrW5oIGtow6FjIMSR4buDIGtp4buDbSB0cmEgZ2nhuqMgdGhp4bq/dCBy4bqxbmcgY8OhYyB54bq/dSB04buRIG7DoHkgY8OzIHRo4buDIOG6o25oIGjGsOG7n25nIMSRw6FuZyBr4buDIMSR4bq/biBt4bupYyDEkeG7mSB0acOqdSB0aOG7pSByxrDhu6N1IGPhu6dhIHNpbmggdmnDqm4gaGF5IGtow7RuZy4NCg0KU2F1IMSRw7MsIGNow7puZyB0w7RpIHRp4bq/biBow6BuaCBjw6FjIHBow6JuIHTDrWNoIMSR4buLbmggbMaw4bujbmcgY2h1ecOqbiBzw6J1IGjGoW4sIHPhu60gZOG7pW5nIG3DtCBow6xuaCBo4buTaSBxdXkgeMOhYyBzdeG6pXQgdHV54bq/biB0w61uaCwgbG9naXQgdsOgIHByb2JpdCDEkeG7gyB4w6FjIMSR4buLbmggbeG7qWMgxJHhu5kg4bqjbmggaMaw4bufbmcgY+G7p2EgdOG7q25nIGJp4bq/biDEkeG7mWMgbOG6rXAgxJHhur9uIGJp4bq/biBwaOG7pSB0aHXhu5ljIOKAnERhbGPigJ0uIEvhur90IHF14bqjIHBow6JuIHTDrWNoIGNobyB0aOG6pXkgcuG6sW5nIGPDsyAyIGJp4bq/biDEkeG7mWMgbOG6rXAgY2jDrW5oLCBiYW8gZ+G7k20gc2V4IChnaeG7m2kgdMOtbmgpIHbDoCBzY2hvb2wgKHRyxrDhu51uZyBo4buNYyksIGPDsyDhuqNuaCBoxrDhu59uZyDEkcOhbmcga+G7gyDEkeG6v24gbeG7qWMgxJHhu5kgdGnDqnUgdGjhu6Ugcsaw4bujdSBj4bunYSBzaW5oIHZpw6puLiBT4buxIHTDoWMgxJHhu5luZyBuw6B5IMSRxrDhu6NjIHjDoWMgxJHhu4tuaCBxdWEgY8OhYyB0acOqdSBjaMOtIG5oxrAgQUlDLCB2w6AgQnJpZXIgU2NvcmUsIGNobyB0aOG6pXkgcuG6sW5nIG3DtCBow6xuaCBo4buTaSBxdXkgeMOhYyBzdeG6pXQgdHV54bq/biB0w61uaCBsw6AgcGjGsMahbmcgcGjDoXAgdOG7kWkgxrB1IMSR4buDIHBow6JuIHTDrWNoIGThu68gbGnhu4d1IG7DoHkuDQoNClBow6JuIHTDrWNoIGPhu6dhIGNow7puZyB0w7RpIGtow7RuZyBjaOG7iSBjdW5nIGPhuqVwIGPDoWkgbmjDrG4gc8OidSBz4bqvYyB24buBIG3hu5FpIHF1YW4gaOG7hyBnaeG7r2EgY8OhYyB54bq/dSB04buRIMSR4buLbmggdMOtbmggdsOgIG3hu6ljIHRpw6p1IHRo4bulIHLGsOG7o3UgbcOgIGPDsm4gY8OzIG5o4buvbmcg4bupbmcgZOG7pW5nIHRo4buxYyB0aeG7hW4gcXVhbiB0cuG7jW5nLiBDw6FjIHBow6F0IGhp4buHbiBuw6B5IGPDsyB0aOG7gyBnacO6cCBjw6FjIGPDoWMgYuG6rWMgcGjhu6UgaHV5bmggdsOgIG5ow6AgdHLGsOG7nW5nIHF14bqjbiBsw70gY29uIGPDoWksIHNpbmggdmnDqm4gY+G7p2EgbcOsbmggdGjhuq10IHThu5F0LCB0csOhbmggeOG6o3kgcmEgbmjhu69uZyBz4buxIGPhu5Ega2jDtG5nIG1vbmcgbXXhu5FuLg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQo=