Countries_2012_Dataset <- c("Aruba","Afghanistan","Angola","Albania","United Arab Emirates","Argentina","Armenia","Antigua and Barbuda","Australia","Austria","Azerbaijan","Burundi","Belgium","Benin","Burkina Faso","Bangladesh","Bulgaria","Bahrain","Bahamas, The","Bosnia and Herzegovina","Belarus","Belize","Bermuda","Bolivia","Brazil","Barbados","Brunei Darussalam","Bhutan","Botswana","Central African Republic","Canada","Switzerland","Chile","China","Cote d'Ivoire","Cameroon","Congo, Rep.","Colombia","Comoros","Cabo Verde","Costa Rica","Cuba","Cayman Islands","Cyprus","Czech Republic","Germany","Djibouti","Denmark","Dominican Republic","Algeria","Ecuador","Egypt, Arab Rep.","Eritrea","Spain","Estonia","Ethiopia","Finland","Fiji","France","Micronesia, Fed. Sts.","Gabon","United Kingdom","Georgia","Ghana","Guinea","Gambia, The","Guinea-Bissau","Equatorial Guinea","Greece","Grenada","Greenland","Guatemala","Guam","Guyana","Hong Kong SAR, China","Honduras","Croatia","Haiti","Hungary","Indonesia","India","Ireland","Iran, Islamic Rep.","Iraq","Iceland","Israel","Italy","Jamaica","Jordan","Japan","Kazakhstan","Kenya","Kyrgyz Republic","Cambodia","Kiribati","Korea, Rep.","Kuwait","Lao PDR","Lebanon","Liberia","Libya","St. Lucia","Liechtenstein","Sri Lanka","Lesotho","Lithuania","Luxembourg","Latvia","Macao SAR, China","Morocco","Moldova","Madagascar","Maldives","Mexico","Macedonia, FYR","Mali","Malta","Myanmar","Montenegro","Mongolia","Mozambique","Mauritania","Mauritius","Malawi","Malaysia","Namibia","New Caledonia","Niger","Nigeria","Nicaragua","Netherlands","Norway","Nepal","New Zealand","Oman","Pakistan","Panama","Peru","Philippines","Papua New Guinea","Poland","Puerto Rico","Portugal","Paraguay","French Polynesia","Qatar","Romania","Russian Federation","Rwanda","Saudi Arabia","Sudan","Senegal","Singapore","Solomon Islands","Sierra Leone","El Salvador","Somalia","Serbia","South Sudan","Sao Tome and Principe","Suriname","Slovak Republic","Slovenia","Sweden","Swaziland","Seychelles","Syrian Arab Republic","Chad","Togo","Thailand","Tajikistan","Turkmenistan","Timor-Leste","Tonga","Trinidad and Tobago","Tunisia","Turkey","Tanzania","Uganda","Ukraine","Uruguay","United States","Uzbekistan","St. Vincent and the Grenadines","Venezuela, RB","Virgin Islands (U.S.)","Vietnam","Vanuatu","West Bank and Gaza","Samoa","Yemen, Rep.","South Africa","Congo, Dem. Rep.","Zambia","Zimbabwe")
Warning messages:
1: In readChar(file, size, TRUE) : truncating string with embedded nuls
2: In readChar(file, size, TRUE) : truncating string with embedded nuls
3: In readChar(file, size, TRUE) : truncating string with embedded nuls
4: In readChar(file, size, TRUE) : truncating string with embedded nuls
5: In readChar(file, size, TRUE) : truncating string with embedded nuls
Codes_2012_Dataset <- c("ABW","AFG","AGO","ALB","ARE","ARG","ARM","ATG","AUS","AUT","AZE","BDI","BEL","BEN","BFA","BGD","BGR","BHR","BHS","BIH","BLR","BLZ","BMU","BOL","BRA","BRB","BRN","BTN","BWA","CAF","CAN","CHE","CHL","CHN","CIV","CMR","COG","COL","COM","CPV","CRI","CUB","CYM","CYP","CZE","DEU","DJI","DNK","DOM","DZA","ECU","EGY","ERI","ESP","EST","ETH","FIN","FJI","FRA","FSM","GAB","GBR","GEO","GHA","GIN","GMB","GNB","GNQ","GRC","GRD","GRL","GTM","GUM","GUY","HKG","HND","HRV","HTI","HUN","IDN","IND","IRL","IRN","IRQ","ISL","ISR","ITA","JAM","JOR","JPN","KAZ","KEN","KGZ","KHM","KIR","KOR","KWT","LAO","LBN","LBR","LBY","LCA","LIE","LKA","LSO","LTU","LUX","LVA","MAC","MAR","MDA","MDG","MDV","MEX","MKD","MLI","MLT","MMR","MNE","MNG","MOZ","MRT","MUS","MWI","MYS","NAM","NCL","NER","NGA","NIC","NLD","NOR","NPL","NZL","OMN","PAK","PAN","PER","PHL","PNG","POL","PRI","PRT","PRY","PYF","QAT","ROU","RUS","RWA","SAU","SDN","SEN","SGP","SLB","SLE","SLV","SOM","SRB","SSD","STP","SUR","SVK","SVN","SWE","SWZ","SYC","SYR","TCD","TGO","THA","TJK","TKM","TLS","TON","TTO","TUN","TUR","TZA","UGA","UKR","URY","USA","UZB","VCT","VEN","VIR","VNM","VUT","PSE","WSM","YEM","ZAF","COD","ZMB","ZWE")
Regions_2012_Dataset <- c("The Americas","Asia","Africa","Europe","Middle East","The Americas","Asia","The Americas","Oceania","Europe","Asia","Africa","Europe","Africa","Africa","Asia","Europe","Middle East","The Americas","Europe","Europe","The Americas","The Americas","The Americas","The Americas","The Americas","Asia","Asia","Africa","Africa","The Americas","Europe","The Americas","Asia","Africa","Africa","Africa","The Americas","Africa","Africa","The Americas","The Americas","The Americas","Europe","Europe","Europe","Africa","Europe","The Americas","Africa","The Americas","Africa","Africa","Europe","Europe","Africa","Europe","Oceania","Europe","Oceania","Africa","Europe","Asia","Africa","Africa","Africa","Africa","Africa","Europe","The Americas","The Americas","The Americas","Oceania","The Americas","Asia","The Americas","Europe","The Americas","Europe","Asia","Asia","Europe","Middle East","Middle East","Europe","Middle East","Europe","The Americas","Middle East","Asia","Asia","Africa","Asia","Asia","Oceania","Asia","Middle East","Asia","Middle East","Africa","Africa","The Americas","Europe","Asia","Africa","Europe","Europe","Europe","Asia","Africa","Europe","Africa","Asia","The Americas","Europe","Africa","Europe","Asia","Europe","Asia","Africa","Africa","Africa","Africa","Asia","Africa","Oceania","Africa","Africa","The Americas","Europe","Europe","Asia","Oceania","Middle East","Asia","The Americas","The Americas","Asia","Oceania","Europe","The Americas","Europe","The Americas","Oceania","Middle East","Europe","Europe","Africa","Middle East","Africa","Africa","Asia","Oceania","Africa","The Americas","Africa","Europe","Africa","Africa","The Americas","Europe","Europe","Europe","Africa","Africa","Middle East","Africa","Africa","Asia","Asia","Asia","Asia","Oceania","The Americas","Africa","Europe","Africa","Africa","Europe","The Americas","The Americas","Asia","The Americas","The Americas","The Americas","Asia","Oceania","Middle East","Oceania","Middle East","Africa","Africa","Africa","Africa")
#----------------- Creating data frames
mydf <- data.frame(Countries_2012_Dataset, Codes_2012_Dataset, Regions_2012_Dataset)
head(mydf)
#colnames(mydf) <- c("Country", "Code", "Region")
#head(mydf)
rm(mydf)
mydf <- data.frame(Country=Countries_2012_Dataset, Code=Codes_2012_Dataset, Region=Regions_2012_Dataset)
head(mydf)
tail(mydf)
summary(mydf)
Country Code Region
Length:195 Length:195 Length:195
Class :character Class :character Class :character
Mode :character Mode :character Mode :character
#----------------- Merging data frames
head(stats)
head(mydf)
merged <- merge(stats, mydf, by.x="Country.Code", by.y="Code")
head(merged)
merged$Country <- NULL
str(merged)
'data.frame': 195 obs. of 6 variables:
$ Country.Code : chr "ABW" "AFG" "AGO" "ALB" ...
$ Country.Name : chr "Aruba" "Afghanistan" "Angola" "Albania" ...
$ Birth.rate : num 10.2 35.3 46 12.9 11 ...
$ Internet.users: num 78.9 5.9 19.1 57.2 88 ...
$ Income.Group : chr "High income" "Low income" "Upper middle income" "Upper middle income" ...
$ Region : chr "The Americas" "Asia" "Africa" "Europe" ...
tail(merged)
#----------------- Visualizing with new split
qplot(data=merged, x=Internet.users, y=Birth.rate)

qplot(data=merged, x=Internet.users, y=Birth.rate, color=Region)

#shapes
qplot(data=merged, x=Internet.users, y=Birth.rate, color=Region, size=I(5), shape=I(23))

#transparency
qplot(data=merged, x=Internet.users, y=Birth.rate, color=Region, size=I(5), shape=I(19), alpha=I(0.6))

#title
qplot(data=merged, x=Internet.users, y=Birth.rate, color=Region, size=I(5), shape=I(19), alpha=I(0.6), main="Birth Rate vs Internet Users")

LS0tCnRpdGxlOiAiQmlydGggUmF0ZSB2cyBJbnRlcm5ldCBVc2VycyIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKCmBgYHtyfQoKQ291bnRyaWVzXzIwMTJfRGF0YXNldCA8LSBjKCJBcnViYSIsIkFmZ2hhbmlzdGFuIiwiQW5nb2xhIiwiQWxiYW5pYSIsIlVuaXRlZCBBcmFiIEVtaXJhdGVzIiwiQXJnZW50aW5hIiwiQXJtZW5pYSIsIkFudGlndWEgYW5kIEJhcmJ1ZGEiLCJBdXN0cmFsaWEiLCJBdXN0cmlhIiwiQXplcmJhaWphbiIsIkJ1cnVuZGkiLCJCZWxnaXVtIiwiQmVuaW4iLCJCdXJraW5hIEZhc28iLCJCYW5nbGFkZXNoIiwiQnVsZ2FyaWEiLCJCYWhyYWluIiwiQmFoYW1hcywgVGhlIiwiQm9zbmlhIGFuZCBIZXJ6ZWdvdmluYSIsIkJlbGFydXMiLCJCZWxpemUiLCJCZXJtdWRhIiwiQm9saXZpYSIsIkJyYXppbCIsIkJhcmJhZG9zIiwiQnJ1bmVpIERhcnVzc2FsYW0iLCJCaHV0YW4iLCJCb3Rzd2FuYSIsIkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyIsIkNhbmFkYSIsIlN3aXR6ZXJsYW5kIiwiQ2hpbGUiLCJDaGluYSIsIkNvdGUgZCdJdm9pcmUiLCJDYW1lcm9vbiIsIkNvbmdvLCBSZXAuIiwiQ29sb21iaWEiLCJDb21vcm9zIiwiQ2FibyBWZXJkZSIsIkNvc3RhIFJpY2EiLCJDdWJhIiwiQ2F5bWFuIElzbGFuZHMiLCJDeXBydXMiLCJDemVjaCBSZXB1YmxpYyIsIkdlcm1hbnkiLCJEamlib3V0aSIsIkRlbm1hcmsiLCJEb21pbmljYW4gUmVwdWJsaWMiLCJBbGdlcmlhIiwiRWN1YWRvciIsIkVneXB0LCBBcmFiIFJlcC4iLCJFcml0cmVhIiwiU3BhaW4iLCJFc3RvbmlhIiwiRXRoaW9waWEiLCJGaW5sYW5kIiwiRmlqaSIsIkZyYW5jZSIsIk1pY3JvbmVzaWEsIEZlZC4gU3RzLiIsIkdhYm9uIiwiVW5pdGVkIEtpbmdkb20iLCJHZW9yZ2lhIiwiR2hhbmEiLCJHdWluZWEiLCJHYW1iaWEsIFRoZSIsIkd1aW5lYS1CaXNzYXUiLCJFcXVhdG9yaWFsIEd1aW5lYSIsIkdyZWVjZSIsIkdyZW5hZGEiLCJHcmVlbmxhbmQiLCJHdWF0ZW1hbGEiLCJHdWFtIiwiR3V5YW5hIiwiSG9uZyBLb25nIFNBUiwgQ2hpbmEiLCJIb25kdXJhcyIsIkNyb2F0aWEiLCJIYWl0aSIsIkh1bmdhcnkiLCJJbmRvbmVzaWEiLCJJbmRpYSIsIklyZWxhbmQiLCJJcmFuLCBJc2xhbWljIFJlcC4iLCJJcmFxIiwiSWNlbGFuZCIsIklzcmFlbCIsIkl0YWx5IiwiSmFtYWljYSIsIkpvcmRhbiIsIkphcGFuIiwiS2F6YWtoc3RhbiIsIktlbnlhIiwiS3lyZ3l6IFJlcHVibGljIiwiQ2FtYm9kaWEiLCJLaXJpYmF0aSIsIktvcmVhLCBSZXAuIiwiS3V3YWl0IiwiTGFvIFBEUiIsIkxlYmFub24iLCJMaWJlcmlhIiwiTGlieWEiLCJTdC4gTHVjaWEiLCJMaWVjaHRlbnN0ZWluIiwiU3JpIExhbmthIiwiTGVzb3RobyIsIkxpdGh1YW5pYSIsIkx1eGVtYm91cmciLCJMYXR2aWEiLCJNYWNhbyBTQVIsIENoaW5hIiwiTW9yb2NjbyIsIk1vbGRvdmEiLCJNYWRhZ2FzY2FyIiwiTWFsZGl2ZXMiLCJNZXhpY28iLCJNYWNlZG9uaWEsIEZZUiIsIk1hbGkiLCJNYWx0YSIsIk15YW5tYXIiLCJNb250ZW5lZ3JvIiwiTW9uZ29saWEiLCJNb3phbWJpcXVlIiwiTWF1cml0YW5pYSIsIk1hdXJpdGl1cyIsIk1hbGF3aSIsIk1hbGF5c2lhIiwiTmFtaWJpYSIsIk5ldyBDYWxlZG9uaWEiLCJOaWdlciIsIk5pZ2VyaWEiLCJOaWNhcmFndWEiLCJOZXRoZXJsYW5kcyIsIk5vcndheSIsIk5lcGFsIiwiTmV3IFplYWxhbmQiLCJPbWFuIiwiUGFraXN0YW4iLCJQYW5hbWEiLCJQZXJ1IiwiUGhpbGlwcGluZXMiLCJQYXB1YSBOZXcgR3VpbmVhIiwiUG9sYW5kIiwiUHVlcnRvIFJpY28iLCJQb3J0dWdhbCIsIlBhcmFndWF5IiwiRnJlbmNoIFBvbHluZXNpYSIsIlFhdGFyIiwiUm9tYW5pYSIsIlJ1c3NpYW4gRmVkZXJhdGlvbiIsIlJ3YW5kYSIsIlNhdWRpIEFyYWJpYSIsIlN1ZGFuIiwiU2VuZWdhbCIsIlNpbmdhcG9yZSIsIlNvbG9tb24gSXNsYW5kcyIsIlNpZXJyYSBMZW9uZSIsIkVsIFNhbHZhZG9yIiwiU29tYWxpYSIsIlNlcmJpYSIsIlNvdXRoIFN1ZGFuIiwiU2FvIFRvbWUgYW5kIFByaW5jaXBlIiwiU3VyaW5hbWUiLCJTbG92YWsgUmVwdWJsaWMiLCJTbG92ZW5pYSIsIlN3ZWRlbiIsIlN3YXppbGFuZCIsIlNleWNoZWxsZXMiLCJTeXJpYW4gQXJhYiBSZXB1YmxpYyIsIkNoYWQiLCJUb2dvIiwiVGhhaWxhbmQiLCJUYWppa2lzdGFuIiwiVHVya21lbmlzdGFuIiwiVGltb3ItTGVzdGUiLCJUb25nYSIsIlRyaW5pZGFkIGFuZCBUb2JhZ28iLCJUdW5pc2lhIiwiVHVya2V5IiwiVGFuemFuaWEiLCJVZ2FuZGEiLCJVa3JhaW5lIiwiVXJ1Z3VheSIsIlVuaXRlZCBTdGF0ZXMiLCJVemJla2lzdGFuIiwiU3QuIFZpbmNlbnQgYW5kIHRoZSBHcmVuYWRpbmVzIiwiVmVuZXp1ZWxhLCBSQiIsIlZpcmdpbiBJc2xhbmRzIChVLlMuKSIsIlZpZXRuYW0iLCJWYW51YXR1IiwiV2VzdCBCYW5rIGFuZCBHYXphIiwiU2Ftb2EiLCJZZW1lbiwgUmVwLiIsIlNvdXRoIEFmcmljYSIsIkNvbmdvLCBEZW0uIFJlcC4iLCJaYW1iaWEiLCJaaW1iYWJ3ZSIpCkNvZGVzXzIwMTJfRGF0YXNldCA8LSBjKCJBQlciLCJBRkciLCJBR08iLCJBTEIiLCJBUkUiLCJBUkciLCJBUk0iLCJBVEciLCJBVVMiLCJBVVQiLCJBWkUiLCJCREkiLCJCRUwiLCJCRU4iLCJCRkEiLCJCR0QiLCJCR1IiLCJCSFIiLCJCSFMiLCJCSUgiLCJCTFIiLCJCTFoiLCJCTVUiLCJCT0wiLCJCUkEiLCJCUkIiLCJCUk4iLCJCVE4iLCJCV0EiLCJDQUYiLCJDQU4iLCJDSEUiLCJDSEwiLCJDSE4iLCJDSVYiLCJDTVIiLCJDT0ciLCJDT0wiLCJDT00iLCJDUFYiLCJDUkkiLCJDVUIiLCJDWU0iLCJDWVAiLCJDWkUiLCJERVUiLCJESkkiLCJETksiLCJET00iLCJEWkEiLCJFQ1UiLCJFR1kiLCJFUkkiLCJFU1AiLCJFU1QiLCJFVEgiLCJGSU4iLCJGSkkiLCJGUkEiLCJGU00iLCJHQUIiLCJHQlIiLCJHRU8iLCJHSEEiLCJHSU4iLCJHTUIiLCJHTkIiLCJHTlEiLCJHUkMiLCJHUkQiLCJHUkwiLCJHVE0iLCJHVU0iLCJHVVkiLCJIS0ciLCJITkQiLCJIUlYiLCJIVEkiLCJIVU4iLCJJRE4iLCJJTkQiLCJJUkwiLCJJUk4iLCJJUlEiLCJJU0wiLCJJU1IiLCJJVEEiLCJKQU0iLCJKT1IiLCJKUE4iLCJLQVoiLCJLRU4iLCJLR1oiLCJLSE0iLCJLSVIiLCJLT1IiLCJLV1QiLCJMQU8iLCJMQk4iLCJMQlIiLCJMQlkiLCJMQ0EiLCJMSUUiLCJMS0EiLCJMU08iLCJMVFUiLCJMVVgiLCJMVkEiLCJNQUMiLCJNQVIiLCJNREEiLCJNREciLCJNRFYiLCJNRVgiLCJNS0QiLCJNTEkiLCJNTFQiLCJNTVIiLCJNTkUiLCJNTkciLCJNT1oiLCJNUlQiLCJNVVMiLCJNV0kiLCJNWVMiLCJOQU0iLCJOQ0wiLCJORVIiLCJOR0EiLCJOSUMiLCJOTEQiLCJOT1IiLCJOUEwiLCJOWkwiLCJPTU4iLCJQQUsiLCJQQU4iLCJQRVIiLCJQSEwiLCJQTkciLCJQT0wiLCJQUkkiLCJQUlQiLCJQUlkiLCJQWUYiLCJRQVQiLCJST1UiLCJSVVMiLCJSV0EiLCJTQVUiLCJTRE4iLCJTRU4iLCJTR1AiLCJTTEIiLCJTTEUiLCJTTFYiLCJTT00iLCJTUkIiLCJTU0QiLCJTVFAiLCJTVVIiLCJTVksiLCJTVk4iLCJTV0UiLCJTV1oiLCJTWUMiLCJTWVIiLCJUQ0QiLCJUR08iLCJUSEEiLCJUSksiLCJUS00iLCJUTFMiLCJUT04iLCJUVE8iLCJUVU4iLCJUVVIiLCJUWkEiLCJVR0EiLCJVS1IiLCJVUlkiLCJVU0EiLCJVWkIiLCJWQ1QiLCJWRU4iLCJWSVIiLCJWTk0iLCJWVVQiLCJQU0UiLCJXU00iLCJZRU0iLCJaQUYiLCJDT0QiLCJaTUIiLCJaV0UiKQpSZWdpb25zXzIwMTJfRGF0YXNldCA8LSBjKCJUaGUgQW1lcmljYXMiLCJBc2lhIiwiQWZyaWNhIiwiRXVyb3BlIiwiTWlkZGxlIEVhc3QiLCJUaGUgQW1lcmljYXMiLCJBc2lhIiwiVGhlIEFtZXJpY2FzIiwiT2NlYW5pYSIsIkV1cm9wZSIsIkFzaWEiLCJBZnJpY2EiLCJFdXJvcGUiLCJBZnJpY2EiLCJBZnJpY2EiLCJBc2lhIiwiRXVyb3BlIiwiTWlkZGxlIEVhc3QiLCJUaGUgQW1lcmljYXMiLCJFdXJvcGUiLCJFdXJvcGUiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJBc2lhIiwiQXNpYSIsIkFmcmljYSIsIkFmcmljYSIsIlRoZSBBbWVyaWNhcyIsIkV1cm9wZSIsIlRoZSBBbWVyaWNhcyIsIkFzaWEiLCJBZnJpY2EiLCJBZnJpY2EiLCJBZnJpY2EiLCJUaGUgQW1lcmljYXMiLCJBZnJpY2EiLCJBZnJpY2EiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJFdXJvcGUiLCJFdXJvcGUiLCJFdXJvcGUiLCJBZnJpY2EiLCJFdXJvcGUiLCJUaGUgQW1lcmljYXMiLCJBZnJpY2EiLCJUaGUgQW1lcmljYXMiLCJBZnJpY2EiLCJBZnJpY2EiLCJFdXJvcGUiLCJFdXJvcGUiLCJBZnJpY2EiLCJFdXJvcGUiLCJPY2VhbmlhIiwiRXVyb3BlIiwiT2NlYW5pYSIsIkFmcmljYSIsIkV1cm9wZSIsIkFzaWEiLCJBZnJpY2EiLCJBZnJpY2EiLCJBZnJpY2EiLCJBZnJpY2EiLCJBZnJpY2EiLCJFdXJvcGUiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJPY2VhbmlhIiwiVGhlIEFtZXJpY2FzIiwiQXNpYSIsIlRoZSBBbWVyaWNhcyIsIkV1cm9wZSIsIlRoZSBBbWVyaWNhcyIsIkV1cm9wZSIsIkFzaWEiLCJBc2lhIiwiRXVyb3BlIiwiTWlkZGxlIEVhc3QiLCJNaWRkbGUgRWFzdCIsIkV1cm9wZSIsIk1pZGRsZSBFYXN0IiwiRXVyb3BlIiwiVGhlIEFtZXJpY2FzIiwiTWlkZGxlIEVhc3QiLCJBc2lhIiwiQXNpYSIsIkFmcmljYSIsIkFzaWEiLCJBc2lhIiwiT2NlYW5pYSIsIkFzaWEiLCJNaWRkbGUgRWFzdCIsIkFzaWEiLCJNaWRkbGUgRWFzdCIsIkFmcmljYSIsIkFmcmljYSIsIlRoZSBBbWVyaWNhcyIsIkV1cm9wZSIsIkFzaWEiLCJBZnJpY2EiLCJFdXJvcGUiLCJFdXJvcGUiLCJFdXJvcGUiLCJBc2lhIiwiQWZyaWNhIiwiRXVyb3BlIiwiQWZyaWNhIiwiQXNpYSIsIlRoZSBBbWVyaWNhcyIsIkV1cm9wZSIsIkFmcmljYSIsIkV1cm9wZSIsIkFzaWEiLCJFdXJvcGUiLCJBc2lhIiwiQWZyaWNhIiwiQWZyaWNhIiwiQWZyaWNhIiwiQWZyaWNhIiwiQXNpYSIsIkFmcmljYSIsIk9jZWFuaWEiLCJBZnJpY2EiLCJBZnJpY2EiLCJUaGUgQW1lcmljYXMiLCJFdXJvcGUiLCJFdXJvcGUiLCJBc2lhIiwiT2NlYW5pYSIsIk1pZGRsZSBFYXN0IiwiQXNpYSIsIlRoZSBBbWVyaWNhcyIsIlRoZSBBbWVyaWNhcyIsIkFzaWEiLCJPY2VhbmlhIiwiRXVyb3BlIiwiVGhlIEFtZXJpY2FzIiwiRXVyb3BlIiwiVGhlIEFtZXJpY2FzIiwiT2NlYW5pYSIsIk1pZGRsZSBFYXN0IiwiRXVyb3BlIiwiRXVyb3BlIiwiQWZyaWNhIiwiTWlkZGxlIEVhc3QiLCJBZnJpY2EiLCJBZnJpY2EiLCJBc2lhIiwiT2NlYW5pYSIsIkFmcmljYSIsIlRoZSBBbWVyaWNhcyIsIkFmcmljYSIsIkV1cm9wZSIsIkFmcmljYSIsIkFmcmljYSIsIlRoZSBBbWVyaWNhcyIsIkV1cm9wZSIsIkV1cm9wZSIsIkV1cm9wZSIsIkFmcmljYSIsIkFmcmljYSIsIk1pZGRsZSBFYXN0IiwiQWZyaWNhIiwiQWZyaWNhIiwiQXNpYSIsIkFzaWEiLCJBc2lhIiwiQXNpYSIsIk9jZWFuaWEiLCJUaGUgQW1lcmljYXMiLCJBZnJpY2EiLCJFdXJvcGUiLCJBZnJpY2EiLCJBZnJpY2EiLCJFdXJvcGUiLCJUaGUgQW1lcmljYXMiLCJUaGUgQW1lcmljYXMiLCJBc2lhIiwiVGhlIEFtZXJpY2FzIiwiVGhlIEFtZXJpY2FzIiwiVGhlIEFtZXJpY2FzIiwiQXNpYSIsIk9jZWFuaWEiLCJNaWRkbGUgRWFzdCIsIk9jZWFuaWEiLCJNaWRkbGUgRWFzdCIsIkFmcmljYSIsIkFmcmljYSIsIkFmcmljYSIsIkFmcmljYSIpCgojLS0tLS0tLS0tLS0tLS0tLS0gQ3JlYXRpbmcgZGF0YSBmcmFtZXMKbXlkZiA8LSBkYXRhLmZyYW1lKENvdW50cmllc18yMDEyX0RhdGFzZXQsIENvZGVzXzIwMTJfRGF0YXNldCwgUmVnaW9uc18yMDEyX0RhdGFzZXQpCmhlYWQobXlkZikKI2NvbG5hbWVzKG15ZGYpIDwtIGMoIkNvdW50cnkiLCAiQ29kZSIsICJSZWdpb24iKQojaGVhZChteWRmKQpybShteWRmKQpteWRmIDwtIGRhdGEuZnJhbWUoQ291bnRyeT1Db3VudHJpZXNfMjAxMl9EYXRhc2V0LCBDb2RlPUNvZGVzXzIwMTJfRGF0YXNldCwgUmVnaW9uPVJlZ2lvbnNfMjAxMl9EYXRhc2V0KQpoZWFkKG15ZGYpCnRhaWwobXlkZikKc3VtbWFyeShteWRmKQoKIy0tLS0tLS0tLS0tLS0tLS0tIE1lcmdpbmcgZGF0YSBmcmFtZXMKaGVhZChzdGF0cykKaGVhZChteWRmKQoKbWVyZ2VkIDwtIG1lcmdlKHN0YXRzLCBteWRmLCBieS54PSJDb3VudHJ5LkNvZGUiLCBieS55PSJDb2RlIikKaGVhZChtZXJnZWQpCm1lcmdlZCRDb3VudHJ5IDwtIE5VTEwKc3RyKG1lcmdlZCkKdGFpbChtZXJnZWQpCgojLS0tLS0tLS0tLS0tLS0tLS0gVmlzdWFsaXppbmcgd2l0aCBuZXcgc3BsaXQKcXBsb3QoZGF0YT1tZXJnZWQsIHg9SW50ZXJuZXQudXNlcnMsIHk9QmlydGgucmF0ZSkKcXBsb3QoZGF0YT1tZXJnZWQsIHg9SW50ZXJuZXQudXNlcnMsIHk9QmlydGgucmF0ZSwgY29sb3I9UmVnaW9uKQoKI3NoYXBlcwpxcGxvdChkYXRhPW1lcmdlZCwgeD1JbnRlcm5ldC51c2VycywgeT1CaXJ0aC5yYXRlLCBjb2xvcj1SZWdpb24sIHNpemU9SSg1KSwgc2hhcGU9SSgyMykpCiN0cmFuc3BhcmVuY3kKcXBsb3QoZGF0YT1tZXJnZWQsIHg9SW50ZXJuZXQudXNlcnMsIHk9QmlydGgucmF0ZSwgY29sb3I9UmVnaW9uLCBzaXplPUkoNSksIHNoYXBlPUkoMTkpLCBhbHBoYT1JKDAuNikpCiN0aXRsZQpxcGxvdChkYXRhPW1lcmdlZCwgeD1JbnRlcm5ldC51c2VycywgeT1CaXJ0aC5yYXRlLCBjb2xvcj1SZWdpb24sIHNpemU9SSg1KSwgc2hhcGU9SSgxOSksIGFscGhhPUkoMC42KSwgbWFpbj0iQmlydGggUmF0ZSB2cyBJbnRlcm5ldCBVc2VycyIpCgoKCgoKYGBgCgoKCg==