WQD7004 Programming for Data Science – Lab 2 Basics in R

Lab 2 Basics in R
Sys.setlocale(category = 'LC_ALL', locale = 'English_United States.1252')
Warning in Sys.setlocale(category = "LC_ALL", locale = "English_United
States.1252"): using locale code page other than 65001 ("UTF-8") may cause
problems
[1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252

WQD7004 Programming for Data Science

Lab 2 Basics in R

1. In each case, what is the value of x?

x<-2-1*2
x
[1] 0
x<-6/3-2+1*0+3/3-3
x
[1] -2
x<-19%%17%%13
x
[1] 2
x<-(19%%17)%%13
x
[1] 2
x<-19%%(17%%13)
x
[1] 3
x<-2^17%%17
x
[1] 2
x<-3-2%%5+3*2-4/2
x
[1] 5

2. Shorten the notation of following vectors

  • x<-c(157, 158, 159, 160, 161, 162, 163, 164)
  • x<-c(10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
  • x<-c(-1071, -1072, -1073, -1074, -1075, -1074, -1073, -1072, -1071)
  • x<-c(1.5, 2.5, 3.5, 4.5, 5.5)
x1 <- c(157:164)
x1
[1] 157 158 159 160 161 162 163 164
x2 <- c(10:1)
x2
 [1] 10  9  8  7  6  5  4  3  2  1
x3 <- c(-1071:-1075, -1074:-1071)
x3
[1] -1071 -1072 -1073 -1074 -1075 -1074 -1073 -1072 -1071
x4 <- 1.5:5.5
x4
[1] 1.5 2.5 3.5 4.5 5.5

3. Create a vector x of with the following value (0.15, 1.30, 3.45, 5.75). Then display the vector in character and integer.

y <- c(0.15, 1.30, 3.45, 5.75)
yac <- as.character(y)
yac
[1] "0.15" "1.3"  "3.45" "5.75"
0.15
1.3
3.45
5.75
yai <- as.integer(y)
yai
[1] 0 1 3 5

4. Create a vector y based on the requirements below:

  1. A sequence of 10 numbers from 20-11
  2. A sequence of odd numbers from 11-20
  3. A sequence of first twelve square number starting from 1.
  4. A sequence of first eleven exponential number of 2 starting from 1.
y1 <- 20:11
y1
 [1] 20 19 18 17 16 15 14 13 12 11
y2 <- seq(11, 20, 2)
y2
[1] 11 13 15 17 19
# This is also fine
y2 <- c(11:20)[c(T,F)]
y2
[1] 11 13 15 17 19
y3 <- (1:12) ^ 2
y3
 [1]   1   4   9  16  25  36  49  64  81 100 121 144
y4 <- 2 ^ (1:11)
y4
 [1]    2    4    8   16   32   64  128  256  512 1024 2048

5. Create a vector z based on the requirements below:

  1. A sequence of 10 W
  2. A sequence of R R R S S S
  3. The first 5 alphabets in lower case
  4. A sequence of players from Player1 – Player10
z1 <- rep("W", 10)
z1
 [1] "W" "W" "W" "W" "W" "W" "W" "W" "W" "W"
W
W
W
W
W
W
W
W
W
W
z2 <- rep(c("R", "S"), each=3)
z2
[1] "R" "R" "R" "S" "S" "S"
R
R
R
S
S
S
z3 <- letters[1:5]
z3
[1] "a" "b" "c" "d" "e"
a
b
c
d
e
z4 <- paste("Players", 1:10)
z4
 [1] "Players 1"  "Players 2"  "Players 3"  "Players 4"  "Players 5" 
 [6] "Players 6"  "Players 7"  "Players 8"  "Players 9"  "Players 10"
Players 1
Players 2
Players 3
Players 4
Players 5
Players 6
Players 7
Players 8
Players 9
Players 10

6. Create vectors as below.

Designated Vector
Designated Vector
  1. Display the vector
  2. What is the total mark for Abu?
  3. Display the percentage for each student in two decimal places if the total mark is 30.
DegColNames <- c("Ali", "Abu", "Ahmad", "Bala", "Chong")
Mtut <- c(15, 17, 10, 8, 19)
Mtut2 <- c(5, 4, 3, 2, 1)

names(Mtut) <- DegColNames
names(Mtut2) <- DegColNames

Mtut
  Ali   Abu Ahmad  Bala Chong 
   15    17    10     8    19 
Mtut2
  Ali   Abu Ahmad  Bala Chong 
    5     4     3     2     1 
TotalMarks <- Mtut + Mtut2
TotalMarkAbu <- TotalMarks["Abu"]
TotalMarkAbu
Abu 
 21 
AsPercent <- function(orig, max=100){
    paste(formatC((orig / max) * 100, digits = 2, format = "f"), "%", sep="")
}
MarkPercentages <- AsPercent(TotalMarks, max=30)
names(MarkPercentages) <- DegColNames
MarkPercentages
     Ali      Abu    Ahmad     Bala    Chong 
"66.67%" "70.00%" "43.33%" "33.33%" "66.67%" 
66.67%
70.00%
43.33%
33.33%
66.67%

7. Create a vector num of size 10 with any random value from 51-100. Display the vector and then assign all the even numbers to a new vector named even.

RandomNums <- sample(51:100, size=10, replace=TRUE)
RandomNums
 [1] 99 64 70 92 97 67 68 79 67 87
IsEven <- function (inpNum){
    inpNum %% 2 == 1
}
even <- RandomNums[IsEven(RandomNums)]
even
[1] 99 97 67 79 67 87

8. Create an R file named convert.r that used to convert inch to centimeters. Given 1inch equals to 2.54 centimeters. Display the value of centimeters in two decimal places. Run the r file using terminal. Example output:

Example Output
Example Output
Inch2CMRatio <- 2.54
ApproxEqualDisplayFormat <- "%.2f inches = %.2f centimeters"

InpInch <-  as.numeric(readline("Enter the length in inches: "))
Enter the length in inches: 
if (!is.na(InpInch)){
    ResCM <- InpInch * Inch2CMRatio
    sprintf(ApproxEqualDisplayFormat, InpInch, ResCM)
} else {
    print("Input is not a vaild number.")
}
[1] "Input is not a vaild number."

9. Create an R file named sales.r that get the price of item from the user and then display the new discount price for the item based on discounts of 50%, 30% and 10%. Run the r file using terminal. Example output:

Example Output
Example Output
InpPrice <- as.numeric(readline("Enter the price of items: "))
Enter the price of items: 
# Well, to prevent it terminate half way, we give it a number here.
InpPrice <- 6.6
if (is.na(InpPrice)){
    print("Input is not a vaild number.")
    q()
}

OutPrice <- function(fullPrice, discount){
    sprintf("The price of item after %d%% discount is %.2f.", discount, fullPrice - (fullPrice * discount / 100))
}

OutPrice(InpPrice, 50)
[1] "The price of item after 50% discount is 3.30."
The price of item after 50% discount is 3.30.
OutPrice(InpPrice, 30)
[1] "The price of item after 30% discount is 4.62."
The price of item after 30% discount is 4.62.
OutPrice(InpPrice, 10)
[1] "The price of item after 10% discount is 5.94."
The price of item after 10% discount is 5.94.
LS0tDQp0aXRsZTogIkxhYiAyIEJhc2ljcyBpbiBSIg0KYXV0aG9yOiAiV0FORyBZVU5MT05HIDI1MDg4MjU4Ig0Kb3V0cHV0OiBodG1sX25vdGVib29rDQotLS0NCg0KYGBge3J9DQpTeXMuc2V0bG9jYWxlKGNhdGVnb3J5ID0gJ0xDX0FMTCcsIGxvY2FsZSA9ICdFbmdsaXNoX1VuaXRlZCBTdGF0ZXMuMTI1MicpDQpgYGANCg0KIyBXUUQ3MDA0IFByb2dyYW1taW5nIGZvciBEYXRhIFNjaWVuY2UNCiMjIExhYiAyIEJhc2ljcyBpbiBSDQoNCiMjIyAxLiBJbiBlYWNoIGNhc2UsIHdoYXQgaXMgdGhlIHZhbHVlIG9mIHg/DQpgYGB7cn0NCng8LTItMSoyDQp4DQp4PC02LzMtMisxKjArMy8zLTMNCngNCng8LTE5JSUxNyUlMTMNCngNCng8LSgxOSUlMTcpJSUxMw0KeA0KeDwtMTklJSgxNyUlMTMpDQp4DQp4PC0yXjE3JSUxNw0KeA0KeDwtMy0yJSU1KzMqMi00LzINCngNCmBgYA0KDQoNCg0KIyMjIDIuIFNob3J0ZW4gdGhlIG5vdGF0aW9uIG9mIGZvbGxvd2luZyB2ZWN0b3JzDQotIHg8LWMoMTU3LCAxNTgsIDE1OSwgMTYwLCAxNjEsIDE2MiwgMTYzLCAxNjQpDQotIHg8LWMoMTAsIDksIDgsIDcsIDYsIDUsIDQsIDMsIDIsIDEpDQotIHg8LWMoLTEwNzEsIC0xMDcyLCAtMTA3MywgLTEwNzQsIC0xMDc1LCAtMTA3NCwgLTEwNzMsIC0xMDcyLCAtMTA3MSkNCi0geDwtYygxLjUsIDIuNSwgMy41LCA0LjUsIDUuNSkNCmBgYHtyfQ0KeDEgPC0gYygxNTc6MTY0KQ0KeDENCg0KeDIgPC0gYygxMDoxKQ0KeDINCg0KeDMgPC0gYygtMTA3MTotMTA3NSwgLTEwNzQ6LTEwNzEpDQp4Mw0KDQp4NCA8LSAxLjU6NS41DQp4NA0KYGBgDQoNCg0KDQojIyMgMy4gQ3JlYXRlIGEgdmVjdG9yIHggb2Ygd2l0aCB0aGUgZm9sbG93aW5nIHZhbHVlICgwLjE1LCAxLjMwLCAzLjQ1LCA1Ljc1KS4gVGhlbiBkaXNwbGF5IHRoZSB2ZWN0b3IgaW4gY2hhcmFjdGVyIGFuZCBpbnRlZ2VyLg0KYGBge3J9DQp5IDwtIGMoMC4xNSwgMS4zMCwgMy40NSwgNS43NSkNCnlhYyA8LSBhcy5jaGFyYWN0ZXIoeSkNCnlhYw0KDQp5YWkgPC0gYXMuaW50ZWdlcih5KQ0KeWFpDQpgYGANCg0KDQoNCiMjIyA0LiBDcmVhdGUgYSB2ZWN0b3IgeSBiYXNlZCBvbiB0aGUgcmVxdWlyZW1lbnRzIGJlbG93Og0KYS4gQSBzZXF1ZW5jZSBvZiAxMCBudW1iZXJzIGZyb20gMjAtMTENCmIuIEEgc2VxdWVuY2Ugb2Ygb2RkIG51bWJlcnMgZnJvbSAxMS0yMA0KYy4gQSBzZXF1ZW5jZSBvZiBmaXJzdCB0d2VsdmUgc3F1YXJlIG51bWJlciBzdGFydGluZyBmcm9tIDEuDQpkLiBBIHNlcXVlbmNlIG9mIGZpcnN0IGVsZXZlbiBleHBvbmVudGlhbCBudW1iZXIgb2YgMiBzdGFydGluZyBmcm9tIDEuDQoNCmBgYHtyfQ0KeTEgPC0gMjA6MTENCnkxDQoNCnkyIDwtIHNlcSgxMSwgMjAsIDIpDQp5Mg0KIyBUaGlzIGlzIGFsc28gZmluZQ0KeTIgPC0gYygxMToyMClbYyhULEYpXQ0KeTINCmBgYA0KDQoNCmBgYHtyfQ0KeTMgPC0gKDE6MTIpIF4gMg0KeTMNCg0KeTQgPC0gMiBeICgxOjExKQ0KeTQNCmBgYA0KDQoNCg0KIyMjIDUuIENyZWF0ZSBhIHZlY3RvciB6IGJhc2VkIG9uIHRoZSByZXF1aXJlbWVudHMgYmVsb3c6DQphLiBBIHNlcXVlbmNlIG9mIDEwIFcNCmIuIEEgc2VxdWVuY2Ugb2YgUiBSIFIgUyBTIFMNCmMuIFRoZSBmaXJzdCA1IGFscGhhYmV0cyBpbiBsb3dlciBjYXNlDQpkLiBBIHNlcXVlbmNlIG9mIHBsYXllcnMgZnJvbSBQbGF5ZXIxIOKAkyBQbGF5ZXIxMA0KYGBge3J9DQp6MSA8LSByZXAoIlciLCAxMCkNCnoxDQoNCnoyIDwtIHJlcChjKCJSIiwgIlMiKSwgZWFjaD0zKQ0KejINCg0KejMgPC0gbGV0dGVyc1sxOjVdDQp6Mw0KDQp6NCA8LSBwYXN0ZSgiUGxheWVycyIsIDE6MTApDQp6NA0KYGBgDQoNCg0KDQojIyMgNi4gQ3JlYXRlIHZlY3RvcnMgYXMgYmVsb3cuDQohW0Rlc2lnbmF0ZWQgVmVjdG9yXShkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQWFRQUFBRHJDQVlBQUFBbU5lSTRBQUFBQVhOU1IwSUFyczRjNlFBQUFBUm5RVTFCQUFDeGp3djhZUVVBQUFBSmNFaFpjd0FBRHNNQUFBN0RBY2R2cUdRQUFDTFJTVVJCVkhoZTdkMC9iK0pjOWdmd3crOFZiQjJOb3NqbUJXdzF4UWhHdTFQRXRDdWxnRlRaSnBKcG5nNmFrWjRtamRIVVdFcXpWREhGU050Q004VmpOTVZVK3dJd2lxSm8zb1oveFhEdVhCK3VqUUVuWEpQdlI3S0d1VGJFdnRmNCtQNHpqVFJOVXdJQUFEaXkvNU1KQUFBQXg0Q0FCQUFBVmtCQUFnQUFLeUFnQVFDQUZSQ1FBQURBQ2doSUFBQmdCUVFrQUFDd0FnSVNBQUJZQVFFSkFBQ3NnSUFFQUFCV1FFQUNBQUFySUNBQkFJQVZFSkFBQU1BS0NFZ0FBR0FGQkNRQUFMQUNBaElBQUZqQjZvRFU3L2VwMys5VG85SFlXQmFMQlMwV0Mva1dvMDZucy9IK1pyTkp6V1pUYm1vTnViK2RUb2M2blk3Y0RBRGdaRmdka0lvOFBEelF3OE9EVE01WXJWYTBXcTFvUHAvTFZibEdveEdOUmlPWlhLblgrQnNBQUhWVDI0QUVBQUNucFpHbWFTb1R5K0RtcnNsa1FxMVdTNjZ1WEtQUklOZDFpWWdvU1JLVlhyVDdYQXNaRG9lWjk4WnhiTnpuMFdoRTkvZjNSRVMwWEM3bDZrcnM4amRXcXhVUkVibXVTNTduRVJIUmJEWVRXd0VBbklhRGEwanRkbHYxYzd4V001VHYrK3IxZERyTnJOUGQzOS9UL2YwOXVhNUxsNWVYZEhsNUtUZkpHQTZITXFseXIvRTNBQURxNk9DQUJBQUFVSVc5QTlKeXVhVGxjcGxwTWhzT2g1bFJZUy9sK3ZwYXZmN3JyNzh5NjloaXNhQWtTU2hKRXJxOXZaV3JsY1Zpb2ZhWjFrMTZTWkpRbzlGUW8veEdvMUhoQ0QwNUlvN2Z1OHZmQUFCNDYvWU9TTG8wVGRYaWVSNTVua2Z6K1R4emdhNVNxOVVpMTNYSmRWMEt3MUN1SmxxUHdtTlhWMWVaZFFBQVlKOUtBaElBQU1DaEtnOUlzOW1NWnJNWnBXbEtVUlNwZEwyMlZIWkNhNUhiMjF2VkZEZWRUamNHTjRSaHFHcHJqdU5rMXVsYXJaYXEzZEY2Ukp2cnVwU21LWTNIWXhxUHh6UVlERExiU0x3dWptTzVpcWprM3dBQWVPc3FEMGk2YnJlckxzVDZVTzEydTUzWmJoOVhWMWVxS1c0eW1kQmtNaUVTd2VuejU4LzArZlBuelBzQUFNQk9MeHFRQUFBQXluclJnRFNkVGxVekhVOU1KVEd4ZFYrTzQ1RGpPR29BeFh3K3A5VnFwV3BMcnV0U3E5VXlUb0FGQUFEN1ZCNlE5QWVpOW5xOVRIOEpMMFY5T3J1NnVibFJyNzk4K2FLQ1U5RlFid0FBc0U4bEFZbm41VFFhRFFyRFVBMG9TTk5VelZkNktkMXUxemdFSEVPOUFRRHFwWktBQkFBQWNLaTlBNUplSytJbkR3UkJvSnJsWHZNaG9Qb1E4REpEdlEvRng4djR0NW1xR0QwSUFQQldXZjIwYjM2a2p1bHBERHpIcWR2dFpwNktyYWZ6ZkNkVG9PQkJGbnB6WXJQWnpBUWFmb2lyUGsrbzArbnM5UHRLUkpSNXVuaVp2MEhyZVZ0NWdpQWdJcUxCWUNCWEFRRFUxdDQxSkFBQWdDcnRIWkI0c01KTDFZNTJvUThCNzNhNzFPMTI1U2FsM04zZHlhUU5zaVpEV2pOaDNwTWFkR1grQmdEQVc3UjNreDBBQUVDVjlxNGhBUUFBVkFrQkNRQUFySUNBQkFBQVZrQkFBZ0FBS3lBZ0FRQ0FGUkNRQUFEQUNnaElBQUJnQlFRa0FBQ3dBZ0lTQUFCWUFRRUpBQUNzZ0lBRUFBQldRRUFDQUFBcklDQUJBSUFWRUpBQUFNQUtDRWdBQUdDRm93ZWtUcWREalVaajY4SS9SODRXaXdVdEZndmpkbkpiV3Y5MGVMUFpMUHhwOEplay8vMmlaYlZhcVo5a1o2dlZhbU83UnFOQjArazBzNTJOcWk3Zk9oeHoxVXpuVHFmVGtadnRiRFFhMFdnMDJzamp2S1hmNzh1UE9FaW4wOWs0UDZvNHJrT1l6am01TEJZTDlUM2xmZWI5TnBYVHNZK3BUbzRla0FBQUFPZ3RCYVFrU1NoSkVxSjFqUU1BZGhPR0lmWDcvY3ByU3Jab05CclVicmRsOG9aMnUwMnU2NUxydW5JVkhDcTFRQnpIYVJ6SEtSR2x2dStudnUrbnJ1dW1udWVsbnVmSnpUZndlNGhJZlphdG9paEtpU2dsb2pRSUF2WGE5MzI1cVpIK25paUs1R29yY2RueWNicXVxOHEzakNBSTFISFg1WmhmUXBJa0toL0w1bDFaL0YzalBKYjVySiszUkpRbVNaSlpmNGlYUEs0eStIemtmZUR6VGVKODBmT0I5MW5mN3lSSjFESEpkVkRzemRTUUFBREFibFlFcEllSEIzcDRlQ0Fpb3V2cmE3cSt2cWJMeTB1YXorYzBuODlQcW9sdE1wbW8xMWRYVitSNUhubWVSMkVZWnJZN0pWeTJ0QzdmeTh0TFZiNm1RUnhnbjI2M1M1N25xZi8vL1BrenM3NnVScU5ScGprL2ptTWFEQVkwR0F6a3B0VHRkcW5iN1ZLYXBuSVZWTVNLZ0JTR0lZVmhTSzdyVXF2Vm9sYXJSZGZYMTJyOTE2OWZNOXVYbFRkUzZ4Z1hRTDd3enVkekZZUWN4NkdibXh1NnVia2hJdHByQkZuZU1UWnlSaFBLVVVBODBvcldmMzg2blc1OGpod0J0eXN1V3k1ZnZ1bWdkZG51V3I1Rit5bjMxVFNLcTlQcEdFY3U2bm1SbDYrbXY4RzJqVm9yYzk2WjNsK25mcHQrdjcreC83d2NxaWgvOTcyeHViKy9WNitESUtCV3E1VlpueWVPWTRyaldDWVhrdnZNWlZ1azZKaE5lVnAwM3U3eXZkR1p2aXY2MzY5eXRLUVZBUWtBQU9Eb2d4cGtKNytPT3h0ZDE4MmtTM21ER3ZUQkV2cFNaWWRzV2JKalhuWWFjd2ZvTnZxZ0JyMGp0bWpSQjNuSTkrZ2R1SG1kdG9jTUV1SFBNM1VVbHkxZlBlK0tGdE5uY1VkOTFZdkU1OSsyaFR1OEpkbXh2bTBwYzY3c291eWdCbE1lcCtMOTJ4YXB6S0NHWGZLM0RIM2d3YTd2M2NiMDJVVkwza0Nzc3VlRFhsNTUxN3d5aTFUMmUyZGE4c3B4bTgyOWVHWDZTU3dMUmM4UXVVNlhGNUIwK2hlbXFoTnZGL29GeDNSUjR2MDNyZFBKRXlSdkZJLytCWllYRUQzd21BSkZLdDV2eXMreU9NOU41YUlmaTF5bmsxOE0wd1ZULy9MSy9ETmRJR1NleVF1ZUtWL3kvZ1pmQVBJdTFuclptL1pkbHFuY2Y5T05ndHovUTVVTktLYnpVOSszdlAzU1AwT1d0VjQyOHYzNkJiWW9mL245TW0vem1DN2NWU2x6dnVubnRPbGNrK2VqSkw4VFpEaHY5T3NpNTQzTW4yM25OQyttZlV4RnVmSm55UDNZQlpyc0FBREFDa2NMU0hvblAydTMyNW1Pc2VGd1NNUGhrRWlNMUtxYnhXS1JHY25ESGZ6NnNmSW91MTA2K1QzUG85bHNSclBaVEs2aThYaE12dStUNy91VUpNbldqc3VxeWZKdHQ5dkc4bVZseXplS0lqWGFTZGRzTmpQL3o4TURTbVNlZmZ6NFViME9nc0E0MHVyeThsSzkxa2VadFZvdFN0T1Vsc3NsTFpkTGxjN3U3dTdvN3U1T0ppdDZ4M29jeCtRNFRtWTlIMjhVUlpuMFkrQVJram9lZVphbTZVYStzaUFJWkZJcFBNaHBXLzdhS3U5OE96OC9wL1B6ODB5YWpxOEhuSzhTbjUrKzc2dTBvdXRHSE1jN2ZXLzA3MlBlOTRIV0R4eW8wdEVDMGk0WFhsb1gwTDRqYVk2dDdNV1dpREpCZUp0UG56N0pwSXlQSHorcUMrM3o4ek05UHovTFRWN01XeXBmWm5ybVhLUFJvS2VuSjNwNmVpSWl5cnptNDAyU0pETUtNYy83OSs5bDBvdUlvb2lpS0ZJWFExNDh6MU0zVm5tancrU3g4NkxiOXp3c3lsK212eTV5ZG5aR1oyZG5tYlI5YnRnNm5VNmxOM3Y2WituRDdQUG9vNUcvZmZ1V1dYY0kvWHY0NGNPSHpEcWQ0emdxNkZiaGFBRUpBQUJBZDdTQWRIOS9yNW9xK0s1TDNwSHh3dFg5WGUrNmJhRlBlcFhIcGk5NjlYdWZPVWsya2VVcmoxVXYyN3FYTDYxckJucXpyRzZYV3EvTnh1T3hlcTJmMC9vOGxUeUhIdisyL04yVjR6amtPRTdtZVhTN3RHUndUV1krbjZ2bWFEamNVUUtTM3FmQ0UwUmx1N21PcTR6NlJhNE9lQ0lhRWFuK25DSjZQNGIrUkljODI2cm9rOGxFZmM2N2QrL28zYnQzY3BNWFlTcmZQQjgrZktodCtUSlp4akxvNXRIUGU4NnZvcWFmSHo5K3lDUXI2RGNSUVJCa2pqMHZpSlJsK2c2VnpkOHlibTl2MWVzd0RBdnpYNmNIb1RMZjdiSzR6NHlJTXYzcmVmUWd1cTBKZnhmNmQvYjc5KytaZFRydUp5NnpyMlVjSlNEdG1vbXRWb3RjMXkzMXBiV0pIaEQwL3B3OGVvZGptY2Zxek9mejNOOWI2WFE2NmtUUm40QWhQVDQrMHVQall5YXQzKzhmOUNpalhjcVg5NnVPNVN0ZFhGelF4Y1dGVE03VUFrMzBpMW03M2Q0b2M3NG85M3E5VFBwcjAvdU44dm9NWkVjOUI5MHFMdGhGK2J1dndXQ1E2UU5wdDl1NVQ4YmdXcEdzQ1k3SDQwenRzUXFjWDNrMVQzNkNnLzQ5dmJxNnlteHpDTDF2YWpnY1ptNE1TT3YvclBxSjUwY0pTQUFBQUJ2a3hLU1hJaWR4bVJiSk5DR3c3T0o1bm5IeUd5ODhhYXhxY2pLYVhFd1QrOUtTK2JQdklpZXFtU2J1YlZ2eUppV3liZnR2c20vWm1qNVRUdXJrY3RBbi9zbEZueVNZdHk5NjNzbHkxZk5FdnEvTW9wUHJkbGxNRXhiTE1FMnVMTHZvK2JMcnVVVHJ2TnMyR1ZlZlFDdlhsVmwyVlhTdTVDMVMwV2ZvRTFQenJtMWxQeXZ2YzR1dWVhYnZzTXgvL2JxNDdWcG1XakF4OWcyTG9pajNJWSt1NjZvMmR0bUh3ODBvZVUwZFVSUlYwc1R5bHVUMVpiaXVtMXRHT2k0clU3NXpIOFVoZlRGVjhEelBlRTQ1anBQYlY4VE5ZWWZPb2RxV3YxVllMcGVsUGl1T1k1VVBMMm01WEc1dDdrM1QxRGkvcUFyY0ZHa3FPNTZta0s2bkEzQ1Q1N2J4QU5zZ0lBRUFnQlVhNlV1SGVRQUFPRm44dElka1BiM2pFQWhJQUcvVi8vNzM2OSsvLy8xMzJ1UGpyNFdJNkIvLzJFeVhhZnp2b2VsRmY3Tk1ldEZuRXhIOTdXKy9GdGhaczlsVW80WGxTTjFtczZtYWFrMlBTTm9WbXV3QUFNQUtxQ0VCdkZYLyt0ZXZmLy80ZzRqbjkvejczNy9YLy9ublp2cWZmLzc2OStKaWM5dGQwK1ZuSDVJdTAwajh6Zi8rRnpXa0hmRmNyTEp6RXBNa09XaEFBeUVnQVFEOTg1Ky9YLy9uUDc4di9LWjBtVWJyQy8raDZVVi9zMHg2MFdkek91eWxhQUtzNy91VlRncEdreDBBQUZnQk5TUUErTjM1TDJzU1Jla3liZGYwb3MvZU5WMm1GYVdEdFJDUUFBREFDbWl5QXdBQUt5QWdBUUNBRlJDUUFBREFDZ2hJQUFCZ0JRUWtBQUN3QWdJU0FBQllBUUVKQUFDc2dJQUVBQUJXc0RZZ2pVWWphalFhbVdXeFdOQmlzWkNiWmpTYlRXbzJteHZ2bGN0b05LTFJhQ1RmZmpUN0hLL3BQZHVXMVdvbFArYlZjZDdMZmR0MnZJeTNrKy9uc3E4YjA3SHdNcDFPNWVaSHRWcXRhTFZhYmV4bnY5OVhEK1BjWmpxZGJyeS8wK2xRcDlPUm04SWJZMjFBQWpDWlRxZlVicmVwM1c3TFZlcG50QnVOaGx4bEpiNkltNDZGOVhxOW5TNzJOdU1ia1Y2dkoxZlJmRDZuK1h4ZXl4c0txQTRDRWdBQTJDR3RBZC8zVXlKSzR6aE80emlXcXpPSUtDV2lOQWdDdVNwTjB6U05va2l0ejl2bW1IemZMMzI4UVJDbzQ0MmlTSzVPb3loU3g4dXZiYlBMOFNaSm9vNlh0OWQ1bnBkNm5wY1NrZnBjVzVtT1JUK2VKRW1NMjlpRTk3bHNmaGNkaTE1MnRuNDM0ZVdkVkEzSmh2NFJtL1I2UGVyMWV1UzZMblc3WGVwMnUzS1RXdm42OVN2UitqZFlmTi9mK0RubDJXeW1ma0k1REVNS3c5RGFjK0xuejUvcU5SK0xmanlPNDVEak9CUUVnVXA3Zm41V3IrdEc3d3ZiVm5iMzkvZDBmMytmV1E5dncwa0ZKQUFBcUsrVERVam41K2N5aVlpSXV0MHVwV2xLZzhHQUJvT0JYRjByZzhHQTBqU2xORTAzYWovNkNNSzd1N3ZNdXJyNjl1MGJFUkZkWDEvVDlmVzFYSzM0dnE5ZS8vanhJN1BPRm1kblp6SnBxM2Z2M3Nta1d2cjQ4YU5NVWp6UFU0TlRiSzNkd3NzNXFZQ2tONE1RMGNiUVVsN2V3b2srSEE3SmRWM1ZYSGNLbHNzbDBmcGlYblJCdjlCK2xPM3A2U216emhhTzQ1RG5lZVI1SG9WaHVESGtuWWRYNitVb203bnFxcWhNdUl6SjhIMkcwM2RTQVFrQUFPcnJaQU9TYWE0RGMxMTM0NDcwVkV5blU5V0JmSHQ3UzdlM3QzSVRzQVIzNUx1dXErWldjUzJlYTBXMHJqWG9OWWM2ZXYvK3ZYbzlIQTQzV2lsNFVuT1NKSmwwZUZ0T0tpREpVVWpjRnMzOUxHbWFxbEZMTnpjM2RITnprOW4rRkV3bUU1cE1Ka1JFZEhWMVJWZFhWM0lUc0FUZkZHMjdDT3MzR1hYbE9JNGFIVW5ybTBLOUdaMi9xL0MyblZSQUFnQ0EranFwZ05UdGR0V2RWcElrYWk2SGJqQVluUFJJSG40RWkrdTZ4dU1IT3l3V2k4d2prRXkxK1Y5elNYL1BKNnQ3TFdrOEh0TjRQTTdNcldKeEhGTWN4OFoxOEhhY1ZFQWliVUpoMFlWWVgzZEtJM24wUHJITHk4dk11bFBBenpuNytmTm5ZYms5UGo2cTEzbkQvNC90NGVGQnZZNmlLUGVjamVOWXZlYW0yTHJUcHl2d3doT0RlV2cvN1RrMEh1cnQ1QUlTQUFEVTAwa0ZKTDJUdElqZVRIZEtkMkhmdjM5WHIvVzVPS2ZpMDZkUFJPdmFoVjdEa01Jd1ZLLzEwVjF3UFBwUGJKaWVYTTd6cnJpNW1adWM0VzA1cVlDa3o5RFArMjJWZnI5L3NpZDlIWnFxRHNGUDF1RG4xTWsrRmYwM2RYalNxYTNscTk4dzlIbzlkVUdXOUorbXNQVll5dEFuOVpyS1R2K0pqYnU3dTVONXVnanNwcEZ5ejZsbFJxTVJEWWREbWF5WWRudTFXcW01Rzl0dzI3d3RzOS8zT1Y3U0hoRmtlcTgrajhVbVJmdk04bzUzT3AwV3pqRmplZSszQ2ZlSmxSM3ViTU14Y2RBcytwNUZVVVMwSG1Ta0sxUHVudWVwaDZ6QzIzTlNOU1FBQUtpdmt3cElqdU9vVVR0RmQzRDZxQjZvbDI2M3E0WUlTOXdNYTBOTm9neCtBb1BlMUN4NW5wY1pBbDVuL0VCajA5QnVualNMMnRIYlptMlRIUUFBdkMwblZVTUNBSUQ2UWtBQ0FBQXJJQ0FCQUlBVkVKQUFBTUFLQ0VnQUFHQUZCQ1FBQUxBQ0FoSUFBRmdCQVFrQUFLeUFnQVFBQUZaQVFBSUFBQ3NnSUFFQWdCVVFrQUFBd0FvSVNBQUFZQVVFSkFBQXNBSUNFZ0FBV01IcWdOVHY5Nm5mNzFPajBkaFlGb3NGTFJZTCtSYWpUcWV6OGY1bXM2bCtRdHBHcG4xdU5CclU2WFRrcGdBQUo4SHFnQVFBQUc5SGJRUFN3OE1EUFR3OHlPU00xV3BGcTlXSzV2TzVYSlZyTkJyUmFEU1N5WlVxK2h0Y2M4dmI1L2w4Ym4zdERnQmdMK21lWE5kTlhkZE40emlXcTE0RUVhbS9TVVJxS1JJRVFSb0V3Y1o3OC9ZNUNBSzEzVXNwK2h0UkZLbmo4anhQcms3VGRiN3pObEVVeWRVQUFMVlYyeG9TQUFDY2xvTURVcnZkVmgzdWVjMVFWZk45WDcyZVRxZVpkYnI3KzN1NnY3OG4xM1hwOHZLU0xpOHY1U1ladytGUUpsV3U2Ry84OWRkZjZ2WG56NTh6Njloa01sR3Y5ZTBCQU9wdTc0QzBYQzVwdVZ6U3I5YTBYNGJENGF1TUJydSt2bGF2OHk3S2k4V0NraVNoSkVubzl2WldybFlXaTRYYVp5SlM3MmswR21xVTMyZzBLaHloSjBmQzhYdDMrUnZTMmRtWlROcHdjWEVoa3dBQWFtdnZnQVFBQUZDbFNnSlNtcVpxOFR5UFBNK2orWHllcVRGVXFkVnFrZXU2NUxvdWhXRW9WeE90UitHeHE2dXJ6RHBiamNkamxZK080OGpWUkVSMGQzZW5Ybi80OENHekRnQ2d6aHFwM3VaV3NlbDBTcjFlVHlaVEhNZlVhclZrY3FGR28wR3U2eEt0bXd1NXYybzRIRklVUlVSRTFPMTJNOXQ3bmtkRVJMUFpURFdMaFdHWSsvZmwzekFwMm1heFdGQzczU1phOTNPTngrUE1ldHJ5L2lKNlVBK0NnSWlJQm9PQnRnVUFRTDFWVWtNQ0FBQTQxSXNHcEc2M3E1cWdraVJSNlZ5TE9NVFYxWlZxaXB0TUptcjAyWFE2VlNQdlBuLytuRHRhclE3NFdQVGFVUlJGTkJnTVVEc0NnSlB6b2dHSkw2WjZNeFd0UjVrZHluRWNjaHhIOVZmTjUzTmFyVllxT0xtdVM2MVd5OWcwVndlajBZaDZ2WjVxOHVUQXJqZExBZ0Nja2hjTlNBQUFBR1ZWSHBEMEozVDNlajAxR2s0ZmlaYzNnbXdmTnpjMzZ2V1hMMTlVYmFsbzdwSE4rRGwzdytGUWpWalV4NTJzVml0VjYzekp1VjRBQUsrdGtvREVFMFVialFhRllVaGhHS29MS1UrZ2ZTbmRidGM0Qkx3dVE3MTFxOVdLaHNNaERZZEQ4bjJmWnJNWnpXWXp1UmtBd0VtcUpDQUJBQUFjYXUrQXBOZUsrRkU0UVJDb1pyblh2TE8vdmIxVlRYVGN6RlZsczZERXg4djR4d0lQSFQzNDVjc1g5ZG8waHdrQTRKVHRQVEdXbitVMm1VeGViQ1NiUHBsVjBpZkRybFlySWlKeVhUZVR6cjhvYXdvVXBzbXB6V1l6RTJqNElhNTZjT2gwT3JtL1ZaUkhuNGhiOURma3VtM3lKdDhDQU5UUjNqVWs3aHQ2cVdDMEMzMEllTGZiM1h0b3RQNVluanltQU1DMXNqaU81YW9OUlg5amwyQUVBSEJxOWc1SUFBQUFWZHE3eVE0QUFLQktxQ0VCQUlBVkVKQUFBTUFLQ0VnQUFHQUZCQ1FBQUxBQ0FoSUFBRmdCQVFrQUFLeUFnQVFBQUZaQVFBSUFBQ3NnSUFFQWdCVVFrQUFBd0FvSVNBQUFZQVVFSkFBQXNBSUNFZ0FBV0FFQkNRQUFySUNBQkFBQVZqaDZRT3AwT3RSb05MWXUvSFBrYkxGWTBHS3hNRzRudDZYMVQ0YzNtMDFxTkJweTFhdlEvMzdSc2xxdDFFK3lzOVZxdGJGZG85R2c2WFNhMmM1R1ZaZHZIWTY1YXFaenA5UHB5TTEyTmhxTmFEUWFiZVJ4M3RMdjkrVkhIS1RUNld5Y0gxVWMxeUZNNTV4Y0ZvdUYrcDd5UHZOK204cnAyTWRVSjBjUFNLOGxTUkwxRStIeWdnOEEyNFZoU1AxK3YvTEFaSXRHbzBIdGRsc21iMmkzMitTNkxybXVLMWZCZ2Q1TVFBSUFBTXVsRm9qak9JM2pPQ1dpMVBmOTFQZjkxSFhkMVBPODFQTTh1ZmtHZmc4UnFjK3lWUlJGS1JHbFJKUUdRYUJlKzc0dk56WFMzeE5Ga1Z4dEpTNWJQazdYZFZYNWxoRUVnVHJ1dWh6elMwaVNST1ZqMmJ3cmk3OXJuTWN5bi9YemxvalNKRWt5NncveGtzZFZCcCtQdkE5OHZrbWNMM28rOEQ3cis1MGtpVG9tdVE2S1dWRkRlbmg0b0llSEJ5SWl1cjYrcHV2cmE3cTh2S1Q1ZkU3eitmeWttdGdtazRsNmZYVjFSWjdua2VkNUZJWmhacnRUd21WTDYvSzl2THhVNVd2cU13UDdkTHRkOGp4UC9mL256NStaOVhVMUdvMHl6Zmx4SE5OZ01LREJZQ0EzcFc2M1M5MXVsOUkwbGF1Z0lsWUVKQUFBQUNzQ1VoaUdGSVlodWE1THJWYUxXcTBXWFY5ZnEvVmZ2MzdOYkY5VzNraXRZOXlSYzAxZ1BwK3JXcEhqT0hSemMwTTNOemRFUkh1TklNczd4a2JPYUVJNUNvaEhXdEg2NzArbjA0M1BrU1BnZHNWbHkrWEx0V0JhbCsydTVWdTBuM0pmVGFPNE9wMk9jZVNpbmhkNStXcjZHMnpicUxVeTU1M3AvWFVhU05Edjl6ZjJuNWRERmVYdnZqWHQrL3Q3OVRvSUFtcTFXcG4xZWVJNHBqaU9aWElodWM5Y3RrV0tqdG1VcDBYbjdTN2ZHNTNwdTZMLy9VcEhTOG8ydk5jbSsxUjAzTGJydW00bVhjcnJROUw3cHZTbHl2YnZzbVEvaUd5ajUvYm1iZlErSkwzZHUyalIrOVRrZS9UMjhydzI4a1A2NVBqelRPM3laY3RYejd1aXhmUlozQzlTOVNMeCtiZHQ0ZjRGU2ZaamJGdktuQ3U3S051SFpNcmpWTHgvMnlLVjZVUGFKWC9MMFB0NWRuM3ZOcWJQTGxyeStyM0xuZzk2ZWVWZDg4b3NVdG52blduSks4ZHRyS2doQVFBQWJJYkZWNmJmVmNtN0JEMUN5M1c2dkJxU1RyK0RxK3BPYUJmNkhiRHBMcG4zMzdST0orOVk4a2J4NkhlVThvNVdyd21aYWk2cGVMOHBQOHZpUERlVmkzNHNjcDFPM3FtWjd1RDF1MG1aZjZZN1ZwbG44ZzdjbEM5NWY0UHZTUE5xRDNyWm0vWmRscW5jZjFQTlZlNy9vY3JXY0V6bnA3NXZlZnVsZjRZc2E3MXM1UHYxTy82aS9PWDN5N3pOWTZwSlZLWE0rYWFmMDZaelRaNlBrdnhPa09HODBhK0xuRGN5ZjdhZDA3eVk5akVWNWNxZklmZGpGMGVySWVsOUtxemRibWZhSVlmRElRMkhReUl4VXF0dUZvdEZaaVFQOTZmb3g4cWo3SGJwVS9FOGoyYXpHYzFtTTdtS3h1TXgrYjVQdnU5VGtpUmIyNG1ySnN1MzNXNGJ5NWVWTGQ4b2l0Um9KMTJ6MmN6OFB3LzMzOGs4Ky9qeG8zb2RCSUZ4cE5YbDVhVjZyWTh5YTdWYWxLWXBMWmRMV2k2WEtwM2QzZDNSM2QyZFRGYjBmb3c0anNseG5NeDZQdDRvaWpMcHg4QWpKSFU4OGl4TjA0MThaVUVReUtSU3VFOTVXLzdhS3U5OE96OC9wL1B6ODB5YWpxOEhuSzhTbjUrKzc2dTBvdXRHSE1jN2ZXLzA3MlBlOTRIV0R4eW8wdEVDRWdBQWdPNW9BV21YbWdDdDd4ajJIVWx6YkdYdi9va29VeXZjNXRPblR6SXA0K1BIaityTy8vbjVtWjZmbitVbUwrWXRsUzh6UFhPdTBXalEwOU1UUFQwOUVSRmxYdlB4SmttU0dZV1k1LzM3OXpMcFJVUlJSRkVVcWJ0elhqelBVelg5dk5GaDh0aDUwZTE3SGhibEw5TmZGems3TzZPenM3Tk0yajR0Q0oxT3A5TFdCLzJ6OUhsZmVmVFJ5TisrZmN1c080VCtQZnp3NFVObW5jNXhIRlVMck1MUkF0TDkvYjFxcXVDVFhINEJlT0hxL3E0WE9Wdm9rMTdsc2VtTFh2M2Vad2k0VFdUNXltUFZ5N2J1NVV2ckM3SGVMS3ZiNVNiRFp1UHhXTDNXejJsOVdIQ2VRNDkvVy83dXluRWNjaHduOHp5NlhXNGNPWERNNTNQVkhBMkhPMXBBQWdBQTBCMGxJT21kL0R4QlZIYms2cmpLcU45MTF3RlBSQ01pTmNDZ2lONnhyajlpS00rMkt2cGtNbEdmOCs3ZE8zcjM3cDNjNUVXWXlqZlBodzhmYWx1K1RKYXhyQVhtMGM5N3pxK2lwcDhmUDM3SUpDdm90ZG9nQ0RMSG5sZXJLY3YwSFNxYnYyWGMzdDZxMTJFWUZ1YS9UcThWbGZsdWw4V0RPSWdvTStBcmoxNnIyOWFFdnd2OU8vdjkrL2ZNT2gwUFhDcXpyMlVjSlNEdG1vbXRWb3RjMXkzMXBiV0pIaEQwL3B3OCtnaVlNczk1bTgvbnViKzMwdWwwMUltaVB3RkRlbng4cE1mSHgweGF2OTgvNk5sNnU1UXY3MWNkeTFlNnVMaWdpNHNMbVp4cGxqVFJMMmJ0ZG51anpQbWkzT3YxTXVtdlRlODN5dXN6a0NQSE9PaFdjY0V1eXQ5OURRYURUQjlJdTkzT2ZUSUdOOVBKcHNueGVKeHB6cXdDNTFkZVV5Zy93VUgvbmw1ZFhXVzJPWVRlTnpVY0RqTTNCcVQxZjFiOUV4eEhDVWdBQUFBYjVNU2tseUluY1prV3lUUWhzT3ppZVo1eDhoc3ZQR21zYW5JeW1seE1FL3ZTa3Ztejd5SW5xcGttN20xYjhpWWxzbTM3YjdKdjJabytVMDdxNUhMUUovN0pSWjhrbUxjdmV0N0pjdFh6Ukw2dnpLS1Q2M1paVEJNV3l6Qk5yaXk3NlBteTY3bEU2N3piTmhsWG4wQXIxNVZaZGxWMHJ1UXRVdEZuNkJOVDg2NXRaVDhyNzNPTHJubW03N0RNZi8yNnVPMWFabHBxT3pFV0RoZEZVZTVESGwzWFZXM3NzZytIbTFIeW1qcWlLS3FraWVVdHlldkxjRjAzdDR4MFhGYW1mT2MraWtQNllxcmdlWjd4bkhJY0o3ZXZpSnZERHAzVXV5MS9xN0JjTGt0OVZoekhLaDllMG5LNTNOcmNtNmFwY2NKckZiZ3AwbFIyUEUwaFhVOEg0Q2JQYmVNQnRtbWtMNTJyQUFCd3N2aHBEOGw2ZXNjaFVFTUNBQUFyb0lZRThGYjk3MysvL3YzNzMzK25QVDcrV29pSS92R1B6WFNaeHY4ZW1sNzBOOHVrRjMwMkVkSGYvdlpyZ1owMW0wMDFXbGlPMUcwMm02cXAxdlRNdmwwaElBRzhWZi82MTY5Ly8vaURpSWRULy92ZnY5Zi8rZWRtK3A5Ly92cjM0bUp6MjEzVDVXY2ZraTdUU1B6Ti8vNFhBV2xIUFBTOTdCU1FKRWtPNmo4aU5Oa0JBSUF0VUVNQ2VPdisrYy9mci8vem45ODFFVk82VEtOMVRlVFE5S0svV1NhOTZMTTVIZlpTTkFIVzkvMUtKd1VqSUFIQTc3NFdlZUV1U3BkcHU2WVhmZmF1NlRLdEtCMnNoU1k3QUFDd0FtcElBQUJnQmRTUUFBREFDZ2hJQUFCZ0JRUWtBQUN3QWdJU0FBQllBUUVKQUFDc2dJQUVBQUJXcUZWQTRwOFc1cC8xTFZwTVArdGRCL3hUd1kxR0kvZW5sRzNYYkRZM3lxTnV4OUpzTm8zSFlWcEdvNUY4ZXkzbzN5ZjVFOVVBeDFDcmdBUUFBS2NMQWNreXZWNlBlcjJlVExiZWFyVlNOUWJUTDRlR1lVaGhHTmEyNW5wcUZvdUZLaE1BVzlRcUlLMVdLMXF0VnBtZlV0WVgwNFd3VHVwOHNmNzY5YXQ2YlNvZk5wL1BhYkZZMEdLeFVHazI0cC9rRG9KZzQxalNORFgrckhPZHROdHRtUVJ3ZExVS1NNdmxrcGJMcFV3K0NkUHBsT2J6ZWViMzZldmtrUjk4U1dSOCttOFFCQlFFQVJFUlBUOC8wL1B6czl6RUdxdlZTaWFkREwwdnI2N25HcHl1V2dVa0FBQTRYYlVNU0htL1N1ZzRqbXBTT2ZTbmRGOExOMFAyZWozeVBJOCtmLzVNbno5L2xwdFpiendlcTd3M2xjLzUrVG1kbjUvTFpPdmw3WE8zMjFYSE94Z001R29yVGFkVDFXOFVCQUY5K3ZTSlBuMzZKRGNET0pwYUJTUnUxNmQxZjB1bjA5a1lnbHUzNGF0NkUwcGRndWcrOU1FYTNXNlh1dDJ1M01RYVAzLyt6UHhmbm1PODhNMUVYZkJOaitkNXRRbWk4TGJVS2lBQkFNRHBxbVZBQ3NPUTV2TTV6ZWR6dVVyZGlkZGhzdUpvTkZMSFVmZFJXNUtzVGJBNGpqUGIyYTVvQ0w3cnV1UzZydlVqQnJrMWdkWk5xNlpCSndBMnFFMUFrazBqVVJSUkZFV1pvYmo2eFc0NEhGcmJwTUxEbm9mRElmbStUNzd2VzkyRVZhV2JteHVaWkIwNUFwQ2JpdlZ6alVjTWt1WEhKRzk2SE1jeDl2RUIyS0EyQVFrQUFFNWJMWC9DZkxGWVVLdlZrc2xFNnp0Q1d0ZVF1Qm5NdHRxSHZvOWw4WHlSdWc1ODRDWWpubXRGbGgrTFhyUE9xMUhveDVRa1NlNTJ4OVRwZEl4TjIwVzQ5b2VCRC9EYWFsbER5Z3RHSklZWFB6MDkwZFBUazl6azZBYURBUTBHQTNKZFY2NDZXYlBaakdhekdibXVtOXYvWnhOdTJpb0tNdnA2T1RMUEZ1Z3ZnanFwWlVBQ0FJRFRVNXVBcE04NUtoclZwTmVLYkorTXVWd3VONTZSRnNleEdwekJBeDU0b3ErTlRWdzhRS05SOGljbW1zMm1UTEtPYVhTZ2lUNW81dXpzVEs2MmdqNVpYQzc2NDV6MFFVSmNnd2Q0YmJVSlNQcElwcndIUTA2blV4b09oNnB2NXYzNzkvVCsvWHU1R1ZUbzdPeE1YWXo1S1FDbWljbWowVWlOK09MaDByYnlmVis5em52Z2JiL2ZWMDJQcnVzV051MEJRRG0xQ1VnQUFIRGkwaHB4WFRkMVhUY2xvcTFMRUFUeTdkYnpQRy9qT0lnb2RWMVhibXFkSUFnMjlqdHZpZU00amVOWWZvUTFraVRaMk9laXhlWmp5U09QZ1JmZjkrV21BSyttVmpVay92a0p2VWxGNGo0WXRJRy9yc0Znb1BvaFRQZ1phbW1hVXF2Vktod3BlV3g2djB0UjB5SnZZL094QU5SSnJRSVNBQUNjcmxwT2pBVUFnTk9ER2hJQUFGZ0JBUWtBQUt5QWdBUUFBRlpBUUFJQUFDc2dJQUVBZ0JVUWtBQUF3QW9JU0FBQVlBVUVKQUFBc0FJQ0VnQUFXQUVCQ1FBQXJJQ0FCQUFBVmtCQUFnQUFLeUFnQVFDQUZSQ1FBQURBQ2doSUFBQmdoZjhIY2xtVUwrR0gzQmtBQUFBQVNVVk9SSzVDWUlJPSkNCg0KYS4gRGlzcGxheSB0aGUgdmVjdG9yDQpiLiBXaGF0IGlzIHRoZSB0b3RhbCBtYXJrIGZvciBBYnU/DQpjLiBEaXNwbGF5IHRoZSBwZXJjZW50YWdlIGZvciBlYWNoIHN0dWRlbnQgaW4gdHdvIGRlY2ltYWwgcGxhY2VzIGlmIHRoZSB0b3RhbCBtYXJrIGlzIDMwLg0KDQpgYGB7cn0NCkRlZ0NvbE5hbWVzIDwtIGMoIkFsaSIsICJBYnUiLCAiQWhtYWQiLCAiQmFsYSIsICJDaG9uZyIpDQpNdHV0IDwtIGMoMTUsIDE3LCAxMCwgOCwgMTkpDQpNdHV0MiA8LSBjKDUsIDQsIDMsIDIsIDEpDQoNCm5hbWVzKE10dXQpIDwtIERlZ0NvbE5hbWVzDQpuYW1lcyhNdHV0MikgPC0gRGVnQ29sTmFtZXMNCg0KTXR1dA0KTXR1dDINCg0KVG90YWxNYXJrcyA8LSBNdHV0ICsgTXR1dDINClRvdGFsTWFya0FidSA8LSBUb3RhbE1hcmtzWyJBYnUiXQ0KVG90YWxNYXJrQWJ1DQoNCkFzUGVyY2VudCA8LSBmdW5jdGlvbihvcmlnLCBtYXg9MTAwKXsNCiAgICBwYXN0ZShmb3JtYXRDKChvcmlnIC8gbWF4KSAqIDEwMCwgZGlnaXRzID0gMiwgZm9ybWF0ID0gImYiKSwgIiUiLCBzZXA9IiIpDQp9DQpNYXJrUGVyY2VudGFnZXMgPC0gQXNQZXJjZW50KFRvdGFsTWFya3MsIG1heD0zMCkNCm5hbWVzKE1hcmtQZXJjZW50YWdlcykgPC0gRGVnQ29sTmFtZXMNCk1hcmtQZXJjZW50YWdlcw0KYGBgDQoNCg0KDQojIyMgNy4gQ3JlYXRlIGEgdmVjdG9yIG51bSBvZiBzaXplIDEwIHdpdGggYW55IHJhbmRvbSB2YWx1ZSBmcm9tIDUxLTEwMC4gRGlzcGxheSB0aGUgdmVjdG9yIGFuZCB0aGVuIGFzc2lnbiBhbGwgdGhlIGV2ZW4gbnVtYmVycyB0byBhIG5ldyB2ZWN0b3IgbmFtZWQgZXZlbi4NCmBgYHtyfQ0KUmFuZG9tTnVtcyA8LSBzYW1wbGUoNTE6MTAwLCBzaXplPTEwLCByZXBsYWNlPVRSVUUpDQpSYW5kb21OdW1zDQoNCklzRXZlbiA8LSBmdW5jdGlvbiAoaW5wTnVtKXsNCiAgICBpbnBOdW0gJSUgMiA9PSAxDQp9DQpldmVuIDwtIFJhbmRvbU51bXNbSXNFdmVuKFJhbmRvbU51bXMpXQ0KZXZlbg0KYGBgDQoNCg0KDQojIyMgOC4gQ3JlYXRlIGFuIFIgZmlsZSBuYW1lZCBjb252ZXJ0LnIgdGhhdCB1c2VkIHRvIGNvbnZlcnQgaW5jaCB0byBjZW50aW1ldGVycy4gR2l2ZW4gMWluY2ggZXF1YWxzIHRvIDIuNTQgY2VudGltZXRlcnMuIERpc3BsYXkgdGhlIHZhbHVlIG9mIGNlbnRpbWV0ZXJzIGluIHR3byBkZWNpbWFsIHBsYWNlcy4gUnVuIHRoZSByIGZpbGUgdXNpbmcgdGVybWluYWwuIEV4YW1wbGUgb3V0cHV0Og0KIVtFeGFtcGxlIE91dHB1dF0oZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFrUUFBQUEyQ0FZQUFBQW1sWWE1QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQTBtU1VSQlZIaGU3ZDAvbHFvK0h3YndoN2ViSFdqSE1yQnpCMWhpZDh0WkFxd0FsakRsZEZMcURxWXp5NkNURmZ4YTNpS0FraEFJL3h3ZG5zODVuSHRId1lRa0lIeUppVk1VUlFFaUlxS25Fd0NBeE5uSlA2L3k2eWowSHRjaGVnNkhGMFN2N0YxT0ZzMThSc3E3VWd3QXVCWWhBT0RsZG1FeHNtendBdldZcHdjQXdQWW9FMzdsdW5pOXZMN0xzVWhFWS8xUGZZR0lpSWhvYlhoQlJEUHdBSGdJaXdKaFVhQ29sbXRjTDBSRUppSnhJQklIanRPK0hOSWNoelJYTjdzVENTQ1NldjFFQU1rOU9EdWpIRUNPOU9BZ1BlajVkSndFanBOQU5HTEQ5QzU0UVVSRVJFU3JwL1Foc3VrTGN1ZWZiZ0NBYzdCUjN4cGhEYy9vaCs3ajBQVmZqRWpxLzk1MzRiZjdna3cxdEU1ZXB3OFJUVEcwM21rSUlXVDVlcDVTb0hrS0FEaHNqL0w5c3R6L1pWVWZzNHRjTDVaUjZEZ3F2N1VXcXArNmIxc216Mk9Ga29CSUhBREFEdGZXOSttMU1VSkVSRVJFcTljWkliSy95bGEzazVFakFIQ1RMUUNndXBDdnhmSUsraVRrTnRyN0JyRWhUL2RmcGFnZnBQNjZxVDJ2ZWo1OUFNRHBkZ1lBVEFtQ3BRZDUxNkJsemVDK2o3WjVMWlZscXQ2VjJKZk56RVpFaU96ek9yVnNaSCtFOU5DK2ZsemVjVWJDQlFDY0lPOVExZlZNMURyRXBMd08xYjF2OEU4QWdOczVBQURjbS9iVU1oM2pkL05xYm0rbE12M2lMTnZCMVBUUW1hYmF4a3ZsY2VUc1RERjd3M2FUS1U4TWpIV3hwR2I3U0FQVFV3bTFQYlIvVDB6VkZ3R3E2dllUWDBCclB1bVZNVUpFUkVSRXE3ZEloT2p4UGthTDZOVFBoT1cvNTBKR1lOVFBzRTI3Yjd3Uy9ZcGV2bjdQcXhvSnF1NUlQdVdLWDlNalJIZEQ5N0c5WEczTGRIalpHRE15em9BSTBmQzh5dGZIbG8zK2VmVUd3R1BFQWxXRVFONFZxM1ZpVzRlWWtOZlpWSkdHUkVZNzlEdjlhZTF0Vmd2bjlkN2U1R3I5a2VCcDZjbTNwclh4L3JZMnR4ZUlFQ25sR1JqcmFlaHhPVlo3bVZ3RG1iOWRLc3ZtcVdWRXMyR0VpSWlJaUZadmtRaFJ0UjFhdDIydUc5Ykp0MytHdm4zRjh0bHkvZnhkL2xrVWUyQlFPbk1hdW8rMjY2dGxLc3RpZU5tVXQ2UnpzWW9RTFYyUGF0bkl1Ky9lN1pRSXhad1JJdk0yYWw0ZkRzMDVESXk2L0ZvK3NXUmVMWThOemJUMFlKT20xc2IvQVMzUlNyMHMvaUxMODBMTnRuNm02dW56MXRGM2pGNGZJMFJFUkVTMGVwMFhSTkhPUWJSVFIrSjA0QnhTT0llMEhMUHp0MlFBTW1RWElMc0FsK01XbCtOV3orc3U2dmgxeGwvMVRtWHo1THptR1pCbkVQQWg0TU4xQVZjR0lXZ1ZtdTNOY3pmd1hGUFVZUTR5dlhGdGZBTmdnK0JjSURnWEtMNkE0Z3Y0ZEJ4OFBtelhPNHJ6V3hFQUJCSm5pOFRaSWdzTFpHR0JjN0RwaUE0OWowaTJFTWtXYVhCREd0enVvL0lYVnhURkZYRzBReHp0NENRQ3pqSkRaZE9DT2krSWlJaUlpTmFnODRJb3ZoYUlydzl6VTFYTE9VQnhEc3I3bDkvaUFuRGgrb0RyeTFHei9kUGpGYnU2aFBQM2tYbFo3MVEyNzVSWGVuL045aWF5SENKYk1yb2kwNXVsalc4Q1lCUGdYQlE0RndXSzJ3bkY3UVFjdDhCeHUrRDhYYzlRelJHMlEzcll5VDVBMXdLaHQwUS9vREZrNU9vbkFuNml0c2lpQjhCRGVJMFJYbU1nK3BFTHZaWE9DeUlpSWlLaU5YaWhDNkxtWFZRL0daL2FCejcyZ1kvTDhSdVg0M2Q1SGYrcWh1N2pXTzlVTmsvTzYyWVBiUFlJL0FzQy80TGp0OER4K3lHbFBBWHlGSWRkaEVOcm42Vm4xU0V0UTIxdnNqL1BjdEdWS280K29vM25Bc2dGUkE2SXRpRFd4Z1UyYmhtYldFTFZuOGRCNGl6YmQ3VHFtM1AwcmpoNjF5ZEVob2J1Vy9PNGozNEVvaCs5OXZKTUlNOEU0THR5b2JmeVFoZEVSRVJFUkwramN4eWl0dnZqQnVNOFAvZVAxSy95bTJsb1k1ajB6TnZqbjlySG96RFBEMVNSOC8zWWoxK3pJT3Q5ekFDcnZIYVhxWDNadFBSYm1NSnFIS0ltKzd6YTFxT2hiSlJadE8rcGxmTkN5ZUZFc05QR0lTb05yRU5NeWV0Y0ZodmJaK1o4NG5sNWZWcDdlMkNkNWszdXU5NUdtMHpueE9tVTc0TkZScW9lOXAxVGpReXV6WGJmcC82dWFoOVB6SDdmZXZKci9UbjBpaGdoSWlJaW90VlRJa1JFaE1lNytISnVJaTFDUkVSRWZ3b2pSRVJFUkxSNmpCQVJOVFQ3Q0lqRittY1FFZEVyWVlTSWlJaUlWbzhSSWxvbGtUZ0FBTU9QeERock5SSFJ5akJDUkVSRVJLdlhIU0V5anRWU0tzZGMrTzhraCt6OStQaFFWckFoeHdWTkQxc0FnRDZzUkRrdVRNLzROWVBWNDhqSVArdlByMStYZlVsT3R6TUFnRjFJbnVzK1ZvdXM4ZG5yZnpEYmNXK0k2TjI4M3ZsbVpWN2srNWdSSWlJaUlsbzl5d3VpR0VDTWExSGcramdyY3puci9jZkhSek02SkpKNmNSd0hqdU4wekJVazUva0p6Z1dDOCtPTXoxY1V4YlZNK1lsY0YzQmQrQURhcHFvU2lRT1J5SDFxV3c1cGprUGFQaHRPemJwc3BxcG1rSGFRSHZTOE9rNEN4MGtnNnZoSGsybGZyZmFSNkNsazY2M25wRElzK2pFMmRyc0psT05lV3hJQnA1R1lYUjdOMnhPOXVaN3Y0N2xaWGhBUkVSRVIvVjJXZllqa2ZFeWg0Ym1xTmpkUGZJL3B4Rkg1TTU3QmZTNnFQaHMvQUlDOUllM1JxbjM3bEg5KzFYUFBkS2NyaEh6Zjg1U2NLUDJ0dklmNTNMUjVkOHJ5R1Y4MmR1cDZ5ZVErcUwrWXFuOXBoZVl2cWt5dnEvMW8xalZHVDNQZmw2b3pHcXI3ZURVYnU5MENET2VPL3JiVjdIK1poYmJiL1NWck9DNVhzSThqdjQvbnhnZ1JFUkVScmQ0c0VTTGQvVG4yK0t2YTUxNFpUdGU4VzBzREdUMUJhd1RsT1ZmODVraVBWRVdRUHZFRlBNek1uaml5Wjc5cjZ0R3Z6RVErYlo2dm5sOFpHbWVQVnN0UWxyZWJHRDdITUs2UUZ0MVUxYk5reTMyZG1oNDYwelQ4b3JMK3BZVngwQ1NnYmJ0VkdIdWVHTHZkRWtaR2VzcDJjY2orQWEzbm1Xbk03YlNrelNBdmRXK250dFZ4eC9GSnlQVzE5dzNpK2h3NzhueWpuUE5Pbm96bUhTUFpzK1YwaytkUWZGYWZLL2V6S1BmemtibDhtbVdUSGVUNVcxdk40TDZQemRkdDA3T3ZpMnFmbGU4SHkvTVVYdmhjeFFnUkVSRVJyUjR2aUlpSWlHajErTWhzTG5WWnlYK0RNcHlJdGtkT1dtaHlhTm5ZYXFZVGxlSGdheUR6dUV0bFdMZ09ENXNHeDVKLzNpbnQ0dHdTRnA1TUNWRnJJV3gxMzhwWHRiQ3hVaS9uUXRiTFBZd3NWOVBDdjVwcDZjbTN1Z2QvMHg5eHl0ZVhieWZ2ckwxZWpHSDkydGp0RnREYjFsWExuaHVISHh0U1gvdUdSUnNmZmx6TmRDN3Rxd1BsY1ZDVnYvMVBOUVZRKzZPejRDelhxOG9HSGVXamwwMzlEakJpSC92cVEwOVB2bjZ2Qy9WWXFCNDMxajJmeTlmSDVlOFZNVUpFUkVSRXE4Y0kwV1R0bmFtN096Zys2NHE2cHdPaDJ2RjNjSVJJdlZ1YlVkOGRtM1VaTnRjTEMxay93K29MMnVjTVRRODJhU3JsWHhTeXMyeGRmekIwK0p5SnVmTmx0NjVUeUsrcHkxTFdoMjJVWS9SMkErZ1RDNnVkVzd0VjlmVHR5cnpwYlhDc01lY3lETnRPYStON1lOUnhWYlU1MitPeVI5LzV4dkErdEIrbVZDOVhFYUxtK1FaZDVhT1ZUUlY1SDdxUGx2V2hwV2RiRnlybGUyYmg4OVNTR0NFaUlpS2kxZU1GMFdnQ2dFRGliSkU0VzJSaGdTd3NjQTQyK3BYNEx4SEpGaUxaSWcxdVNJT2JQaTFLdEVNYzdTWU0rZTlaM00rK21neEFodXdDWkJmQWN6ZnczQ1hyUzZiM21PYmx1TVhsdU5Xblh0aEZ5azlXTjgxcGJiNkE0Z3Y0ZEJ4OFBtdzMxMVFxbStDTVRYQithQ2QyeTB2eVFzQUxjWTB2dU1ZWHBEODUwaCtMTWhxNzNRQmVXTUFMSDhydzVxSzR1ZlVVSGNicFF2SVV5Rk44cGdFKzB3RC9QT0RmcklmZjJHUERzbjIzdHZHL3JsazJuZVV6VzlsWTFzZHM2UTA3VDgxeHJsb0tMNGlJaUlobzlYaEJORmdPT1dIcUR1bGhKNSt6WGd1RW5zMnoxbWVSMGF1ZkNQaUoydTcwWkdRbnZNWUlyekVRL2NqRjJ3UGVIakVFWWdoa09aQzFYY3huR1pCbHVQZ3VMcjU4cHY0K1hBQXVYQjl3ZlVCa09VVHJUczVGcHZlWXBuKzZ3VDg5UnV6VUpXd2QwQTJiQU5nRU9CY0Z6a1dCNG5aQ2NUc0J4eTF3M0pvakM1Ynk5SUE4UGVoM2tqM0xPN2hrR1M2WjdBczV4Tmp0Qmluck5ZeUJNQWFpSDRIb1I2OUk4WDJFK0Q3Q0N3TjRZVkRlbDg5cDdMRXh0SDEzdFBFL3AxazJkdVV6dFd5RzFzZlU5QlE5NTZrNXpsVkw0UVVSRVJFUnJSNHZpQWFxK3VVY3ZTdU8zdlZKa2FHcXY1THNZK0FjVWppSHRJeFZ0V25lSVpqdU9QTk1JTThFNEx0eUtTTkgrL2lDZlh6QjhWdmcrUDI0WFptUFhZUmtGOEVQOXZBRCtjdUU5eUh2cS9lQmozM2cxOC9YbDd0anFlN2pIOVA4eHVYNFhaWm1oMXdBdVlESUFkRlcwUnNYMkxpejllVDZVMzJJUkFLSUJMdEkvcG9yM251STl4YWwxTHZkMEdQUlF0azNLSW1BSkFKODE0WHZQa1JlcS9mRkNZazRMZEIzcUtLMlU5dGpROTNPc24zUG9ubXVlejNOc2hsWFBrUDM4Y24xTWZBOHRValRuUWt2aUlpSWlHajFaaG1IYU5UNEpZYUpBZS9rdGV6cmpFTlU1VWVPMGREWE43OGF5UlFBL21VRHkwY3JHeVZ0MHdTRW1wNDg5M3lPUGw2SzVKOE00MXJNeVREdXh6M0Y1cjZaeDh4b3JuY2Z2MFRxYjd2VkpJMjJZM1IwcDRjaGFkN2t2aC9LSVlOTmF6K2xQbDVWZlk1cUx5TnR4T1BLMk8zVVk2cm5HSHJVVisrbWVxeTN5K1E1c0czQzRDWDA1ZmQrYkRUN24vUnZoL21QSzJVa2FaV3BiR3Q5NXh2RCsvM2pFRTA0L3RWK1BTUDMwVDQ5MjdwUTlCeExsU3AvYU1uanEyQ0VpSWlJaUZadmxnalJNbDR0UWtSRVJFUi9GU05FUkVSRXRIcVdFU0xEczhIeStmbC9KOW4xL2VQalExbkJoaklQaXBiSXNIbCtpSWlJaUlaaWhJaUlpSWhXcnp0Q1JFUkVSTFFDakJBUkVSSFI2djBmV04yYk5nVVY3dzRBQUFBQVNVVk9SSzVDWUlJPSkNCg0KYGBge3J9DQpJbmNoMkNNUmF0aW8gPC0gMi41NA0KQXBwcm94RXF1YWxEaXNwbGF5Rm9ybWF0IDwtICIlLjJmIGluY2hlcyA9ICUuMmYgY2VudGltZXRlcnMiDQoNCklucEluY2ggPC0gIGFzLm51bWVyaWMocmVhZGxpbmUoIkVudGVyIHRoZSBsZW5ndGggaW4gaW5jaGVzOiAiKSkNCmlmICghaXMubmEoSW5wSW5jaCkpew0KICAgIFJlc0NNIDwtIElucEluY2ggKiBJbmNoMkNNUmF0aW8NCiAgICBzcHJpbnRmKEFwcHJveEVxdWFsRGlzcGxheUZvcm1hdCwgSW5wSW5jaCwgUmVzQ00pDQp9IGVsc2Ugew0KICAgIHByaW50KCJJbnB1dCBpcyBub3QgYSB2YWlsZCBudW1iZXIuIikNCn0NCg0KYGBgDQoNCg0KDQojIyMgOS4gQ3JlYXRlIGFuIFIgZmlsZSBuYW1lZCBzYWxlcy5yIHRoYXQgZ2V0IHRoZSBwcmljZSBvZiBpdGVtIGZyb20gdGhlIHVzZXIgYW5kIHRoZW4gZGlzcGxheSB0aGUgbmV3IGRpc2NvdW50IHByaWNlIGZvciB0aGUgaXRlbSBiYXNlZCBvbiBkaXNjb3VudHMgb2YgNTAlLCAzMCUgYW5kIDEwJS4gUnVuIHRoZSByIGZpbGUgdXNpbmcgdGVybWluYWwuIEV4YW1wbGUgb3V0cHV0Og0KIVtFeGFtcGxlIE91dHB1dF0oZGF0YTppbWFnZS9wbmc7YmFzZTY0LGlWQk9SdzBLR2dvQUFBQU5TVWhFVWdBQUFuRUFBQUI1Q0FZQUFBQldRWGQ4QUFBQUFYTlNSMElBcnM0YzZRQUFBQVJuUVUxQkFBQ3hqd3Y4WVFVQUFBQUpjRWhaY3dBQURzTUFBQTdEQWNkdnFHUUFBQjViU1VSQlZIaGU3ZDAvbHJJNkdBYndoN3NLN1ZnR2R1NEFTK2krY3BhQUs1QWxUR2tucGV6QWJsZ0duZXlDVzRTQUpNUUV4RC9NUEw5elBQZCtJMGhJQ0NhdklmSHF1cTVCUkVSRVJJdnluL29ISWlJaUl2cDhiTVFSRVJFUkxSQWJjVVJFUkVRTHhFWWNFUkVSMFFKNWZMQ0JpSWplb3dBQXBONm0rOU9QK0VwS2d1NVBSRFNNa1RnaUlpS2lCV0lrN3VNcFBWWDJVcTJxYkFjQVdNY2lrMzdxQkFEd3A3T3NTQUVBM21hdnZpT0VKd0JBZlk3VWR4N0NzaUFpZWg1RzRvaUlpSWdXaUkwNG9sK3RBbEFoUy9mSTBqM0MweFhoNllxNnJ2dXZjelI3Rkk0V3JFaUJJb1huZWNPdnRJQ1hpbDhKbEIwQkZFZzlENm02ejgwckxZREIzUUVVcVljaTFmZlpaUlYyV2FWdVR2U25zUkZIUkVSRXRFQURZK0w2WTdBTUkyaGE0ZWtLQURoSEsvV3RDWDc3K0s4cFQyTDk5anloNTFyUzliT2t0UDVSVlFZQTJLMWpBRUNnbFpFc3d3c0FZT3M0QnJKSXZmYi9OL2dCQU5UdGgvYXZpMkxXN3h5aVpXTWtqb2lJaUdpQnJKRTQ5OTZ3dXAvb0xmbnBHZ0FRNTkyV3JZUG9jWjBLc2MvZ05nTU9oalIxVDhLcEgzUUFlay9HdWFZMUJBQ2NybWNBd05TT1g3WVR2VXd0V1hkMDUraWExa2FUcDEwdlZuRFBtNm5VZElwMFlLTkdkUHZIdzBQbEljYkhaRHQxdTBienhPVzFHZXRsS2o1ejNqUU1UMjZhOTVzclQyOVpJdVRLdVY1R1huT1BSOVNubFlXc0d4amF4K0RoK2krZjFFMTlBTUFwRUZHbGVDK3ZyMit4MjVjOEY3Ri9MYTlaMjVPKzZ2R1VkeCtqWEFlR2ZIMmVmam1YaVZvV1l5TnhjbnVScHdEZ20rNjNTcm1wOVpIb0wySWtqb2lJaUdpQm5oYUprMzFVcmRmY2pLa0FnTjFhL1ArNUZqMHY5VE5jajIyYmkwcU90K2pHV29pL2QyazFSWGkreEliZmhwN2hhTXI1d2VVY3grV3JtcWZqODhhWUVBczFuY1BSQ1BWNGVFWjVLRDEyVTVTaXl4dnhiOWVJNit2eUZGcmtJNHVHSTJadG1qSnhybDJVWWxxZG1vMWpXUWpUMGpxNlBMWWlTaVFqYWJJdWJTL05kb2FJWEhRVys0OU4zN3plSEltemxxZDZINURVT3QzOHVZMXF0aHRxNWRkcTczRWxBT0I4RTgwbitxc1lpU01pSWlKYW9LZEY0c3o3aWUxd3MyM1NKc0gxTXlTM0tJWGEyNnZyTFREcU9ITjVQQkpuM3I2L1hWS0x2QmlmTjFON3Q0N3BIT2g1ejE0ZTFtaUI0M1dqY2R4dnRqelZJNnlSR3NtUURKRlk1M0o1Rm10WjNCcWIxb25sMFFTQjFUU2hpZWg5UVVUZ3VqL0xTRnkvVHNWNGNSVHNEZG9vWmh0U0c0NndXN1ZsSU1xNGpjaVYrdjNBK05uR2E1em83Mklram9pSWlHaUJySTI0L2NiRGZxUFBudTN0TW5pN3JKa1AvbDFLQUNYS0hDaHpJSS9YeU9PMW50Yk4vczZUWkw4Vjg4YXNuemVCdjBMZ3U4UlIzcENuWlFtVUpYSUV5QkhBWHdIM2s1bzNyNy9nMWVXeEFyQkNkSzRSbld2VTMwRDlEWHg1SHI1dWp2ZWJWaFlJa2hwQmNyT3l4OVZIZmZYYkZSbnVyYnpRRXlSQWtPRG5rT1Bua0NPN1ZNZ3VVL01vR0lyVEVmMUoxa1ljRVJFUkVYMGVheVB1OEZQajhLT3NzM2l6MXFMb203NkxEOENISHdKK0tPYTZHbHdYc24wbGo0MVBXcFRQekp1cUxGQ1ZMbDMzWityblRWRldLRXFYcU1BYjh0VDNBZDlIaUFJaENwUVZjRCtwWWZzazRPLzNodks0dFlxQVZZUnpYZU5jMTZpdko5VFhFeEN2Z1hqdEhxVmFrdWFja3dPUUhJRDlwY0QrTXY0azg3SkVYcFpBc0FXQ0xRNG8ycGZ4R3BkUjZkQkhIb3J4akVSL25iVVJSMFJFUkVTZjU4TWFjZjJldFoySUEyNmpFTnNvUkI0ZmtjZEhGTzF6YnArbWYzNXU1empWZS9ORzc2R0xJeC9qSE1jNFIzajYxNzVlVDgwYk1aYktIamxSOTN0Qm5xNjJ3R3FMS013UmhlYXhSTlVsUTNYSmtJY1I4bkNwTTlsL2VQMnZDcUFxVUZSQW9SY0JzUEtCbGYva0VWdmk3T1NZdEplUFRhNHlvTXFRN29GMEQ0UytqOUIzaUlvVktWQ2syT3pGazY2SGJZRERWdVpVZ08waGIxL3hzVUI4MU84ZDZXYVBkTE5IR0cwUlJ1S0pkcUsvN3NNYWNVUkVSRVRrd2pwUG5QV1pyblpkU2RFYnM4L3gxUFd3OUhuaUdwYTFDVTNyUEpyWFRwVGtHb2d6ejBzMlZuTitjRHBITVR1NVBhMzljbFB6MUQxdnBvNFo2aDhmQi9GNSs3MXlmb05ydXlyN0dzL1IwYWk1eWFibnpkVDlwckhVUytQTS9UUG43VmdqeXdKNFFmMmZPay9jdDhqalhiUEVoK2tvcHZUTlE3a09qT1grR0Z0ZUdzK3huY3R0T0krMGxXWUc2SFBUQ2NaakV2MWhqTVFSRVJFUkxkQkFKSTVvaWpkSGZJaUlpUDRZUnVLSWlJaUlGb2lOT0NJaUlxSUZZaU9PaUlpSWFJSFlpQ01pSWlKYUlEYmlpSWlJaUJab3hxZFQrWFRpRk4xOFRDS2pmcG81eGY1MHRsbm1DZXZtSnB4M1pRS1d4WXplVkliMDRaUjVBKytWUCt2ajhyRU1uNCtST0NJaUlxSUZZaU9PaUlpSWFJSFlpS01QSXBieHp0STlzblNQOEhSRmVMcWlydXYrNnh6ZC9SbUczb2xsYUtZc1huL25sUlpBZXJzR3ZQeUUxRU9SNnR2dnNncTdyTHJkRUNoU2JUdlQ1MWJacnYzcGkraFBVZXFLcVk2TXFiK2U1OEZMQzNpOUQzTGJYeDUvT0EwNk51S0lpSWlJRmtoN3NDSGJpY1dIRGVzZUc5WE5xdEo4c0lHbVc4ckRNVXRKNXpzOGtqZVA3THNFOHZ3dUFJRHRpRUhlN2FMd0VQZlp1czJVZnA0VnpTTHhRWHdFYm84aEY2Yi9FbnQ5TjFIUWxYelE0TElGZXAvN0pDTWViS0E1L1BZNk5WNzNzRVhUeURrY3hILzJ6VU5Zay9OSVJNS3ozUm9BVUNicTUweXYvL2N3RWtkRVJFUzBRRm9remtUMkJGTmY5UFRPMFVyZFFyemZ0dmpGZG40cVdxV0RrYjJEMnFzVXRKWnlTN1NZSDM5TVdVMnJTQWMyNHQvZHBBanE4ZFQ5VE9jWUFnQk8xek1BSUZyMVcramFhYUdiY3VFcWU4aksyNUk1YnhxR3FSdk0rNm5uK0toK0hta1RUQ2puQ1FDWGtkSGZzSWsyNk5lZ0swdDVHTXBpYkpUNllPalJtY3NDZW5rb2tZdFRFQU1BNHIyOHhyN0ZibC95WE1UK2RiUC9aTFlwUXBSMGxpUHpScFpobElsMFk4Uys0L05WdmNhbjFtUDU5Nm1tOU1UbFBxSThmRk5hbE92a2tKZkEzVWljMk82NEU5djlzOXgzM0pucVZwT1hKM0cyY1NZamNTSUNLTGZIMEhWZ3FJK3RrZGVxbXQvbTY2YWgzVlBIM2VOVzJ2VTJmUDNLNzFqMHZtZEYrZGl2MVViem5Yb3F4UGJhK3dhbU91WE9WTzROTFU4VTFqS0V0UnluY3lzZnErWWNkdVUvWVBEN2FVcjl0Mk1ram9pSWlHaUJuaGFKaysxcHJZWGY5QWdCWUxjVy8zK3VSZS9TTmpHZ2VWeklXR3BhaDF2NCt2SEUzN3Y5MUo2NjdJMjAzZDNtNytLZmc1UWV0S21uMHVXTitMZHJkT0IxZWRydmlXWFI4SFhTcGlmckluR21IdTdrSHRGVWptVXhOWjJtc3NDOTh0aUtYcHZzb2NyNnRMMDAyeGtpY3RIWnFWcWJWYUk4cTVVNCt5NFArdWN1eDJCMTVUd3RiNFJwKzVyeTFaaW56NmpIVHRUN2ppU09qNkY2M1VZb3hEL1ZjMnZKU050YVJHN096WThMYW1UajBFWnk1ajQzUWM5cm1WSWxVZ00xdWpYQVdoK25YUy9TK0h2cXRIdGMzVVE5YmVsMGljVFp2bGZWNzlSSDgraGhFOHNRcjB5aklRM3V4M2VOc04ydi8vYnJieGdqY1VSRVJFUUw5TFJJbkxrMUs3YkR6YlpKTFQ3VDFzTlJlNlhUeC8wNHBsVTduaGkvWWQxdkRHdFB4YTMzcDNQY1R6dkhpWG1xOUFRalU2OUMyUTZMNmpWS1k5UHBXQllZS0E4WlVWSFNoS2EzL3dVUmdlditQRk1renNoMkxtUHo1dGJZZlcxcGFhaDUrb3g2L0lnbWZRRGdiVVFldEwzeWNtd2tUbzNFOU1rbzBkRVg3ODkzenJMc1JIcGR4KzQ5Rm9rYmp1N3AyNmtjcnh2VnhIdmN1U2t6Mi9YbUVva3o3YXZXbmFUOVdoOWJwMlkyc1F3eHVPMnpQSlpIRDllcDl2N1VyL3NZdXJZR01CSkhSRVJFdEVBZjBvZ3JBWlFvYzZETWdUeGVJNC9YMmt6RzNtYXZqZkg0L2ZwNUUvZ3JCTDVEOC96VmVWcVdRRmtpUjRBY0Fmd1ZjRCtaK2MzcnQzTXNpem5MNDJFVmdBclp6a08ydTAzakdwNjNScHdQUElIMmNvNzUrakY1YWhBazdldm5rT1Bua0NPN1ZNZ3VJa294VGpBVXB4TzkvU0xGdWt5d0xoUDhLM2Y0Vis1dThta0h6eE1SaFVtcUVxaEtGRzFjNHhWV0FGYUl6aldpYzQzNkc2aS9nUy9QdzlkTitXdXJXVXk5cDA2K3g1SFpjQm02bGVPYlZSbFFaZmpLSW54bEVmNEZ3TCtCcW1kbHFQdXU5ZjlER25GRVJFUkVOTWFITk9KOEFENzhFUEJETVlmVTRIcUw3U3VaUG5acmhLb3NVSld2NjFjTzYrZE5VVllvU3BjVytvdnoxUGNCMzBlSUFpRUtsQlZ3UDVuaHpldTNHMXNXTTVUSFpESUN0MGEyV3lNT2ZoQUhQemZwdXFLdXJ6aUZ3T250UlRjMlg5K1ZwK1BsWlltOExJRmdDd1JiSEZEZ2NLOWV5U2hSNkNNUHhmZ2pvSXNXN0ZJZnU5VEhOUUd1Q1hDTUF4empBRDkxalorNlJuMk5VRi92akU5YmdsVUVyQ0tjNnhybnVrWjlQYUcrbm9CNERjVHJtL1VvSjk1VEo5L2p5RmxUaG03bCtGN0ZNVVp4akJFa0VZSWthbUtLajVOMVB5L0ZlRWliRDJuRUVSRVJFZEVZSDlLSUUyM1liUlJpRzRYSTR5UHkrUGl5OFJYN1M0SDk1ZlpJNHNqSE9NY3h6aEdlL2lFOGlWbVlYMC9OR3pIdXg5NGJVZmQ3Y3A2dXRzQnFpeWpNRVlYbU1UM1ZKVU4xeVpDSFVmdGFubjVQM3U1K1dUeWxQQ2JyanhjNmJBTWN0cmNEUGZydnoydmVmRjJNWnJ3YWloU2JQYkRaMythN2VHMFBPYmFISFBHeFFIelU3MVhwWm85MHMwY1liUkZHMnk2aStwVWgrOG9RZlVlSXZ1ZUxGbWhzOVY5R0JEZDc3T1lhbjFnVlFGV2dxSUJDdjlVQUt4OVkrUU9qQk5Ycnh2R2VhanZIaG5xUHM2bXlIYXBzMTViOVhOa2pqSzFUTDJZclE5d3J4emRwcnVXME9DRXRUdFBId2ttR3V0Ky83NXA5U0NPT2lJaUlpTWI0a0huaStrbXdybVhYckxBd2ZYeUxrdGFEK0x6OVh1a0NhV3U3dXA3akNOWjVkUHFtNXMzVS9jYnI1NUhXcVJ4WU83VTcxeWZrN3hnank2S2IzMGM3UytCbWZWQzFydGpMQWwxNXZHdWVPT081TmF1YnRNc05pL2U3MjhnTVpXZzh0akE5WCtVMS9xWjU0dHI1dzhRU0FVT3AxR2JpVjdRcklpaFpvK2FKWE9lM1RJWS9UODhyRWFhcERmUExPVE9kbzZ6M2lSam5zNTVqbmpqVHNSUnEzcWowdkZDcDk4Wng5emg1Vk5OeFpQcVNVdFJkekRwUG5IeDdXcDE2MkV4bGlCblRhQ29ISTJYdDNIYi9VbHdQenFzY1djN1ZWdmROR0lraklpSWlXaURuU056dk1rTzBnSWlJaU9pTkdJa2pJaUlpV2lBMjRvaUlpSWdXaUkwNElpSWlvZ1ZpSTQ2SWlJaG9nZGlJSXlJaUlscWdHWjlPNVJPZlUzUnoxb2lNK21ubUl2clQyV2FaMDBpZHQyY3VMSXNadmFrTTZjTXA4NGJkSzMvV3grVmpHVDRmSTNGRVJFUkVDOFJHSEgyUVpyM0hkSThzM1NNOFhSR2VycWpydXY4NlIzZDc4UFJPTEVPalpvMUV6L1BNcjdTQWQyY0J6eUwxVUtUNmZydXN3aTY3V1h6U2NDelQrcUJ5L1U2aXY4SlVsNHgxeXFTdGF6dDQzZzVaQlF6djFxeHo3SGxJQjQ2bjF0R2hlanFFalRnaUlpS2lCZExHeE1rMTkxeVhGWlBxWnBGSGpvbWo2Wll5cm5JcDZYeUhSL0xta1gwWHJGbFRFVGZyS2diS3ViZHJwdUwrZXM1RnM3NWtFQjhCQUZzNUJrbXUyL2dsOXZxV2ExaktNV29Yc1o2czh6cVFVNDBZRTBkeitLTjF5a0ZSaUx3SkFpVXpsRFZPMWJyWVVkZlFGZXNQbjY1aS9XRjlpVmU1L1FXNHJadTliY1pqSkk2SWlJaG9nYlJJbkluc0NhYSs2T21kdFdhbTJ1SVgyL25wR2pCRjlnNXFyMUxvbm1oUmR6b0Fzenpob3FaVnBBTWIyYUtXMU9PcCs1bk9VVzJSaXgvSXM1MjYzWTNtYWIycjdDRXJiMHZtdkdrWW52b3o3NmVlNDZQVTNvbENPVThBdUl5TS9vWk50RUcvQmwxWnlzTlFGbU9qMUFkREQ4NWNGdERMUTRsY25BTFJPNHozOGhyN0ZydDl5WE1SKzlmTi9wUFpuaTVWMGxtT3pCdFpobEVtMG8wUis0N1BWL1VhbjFxUDVkL24xZzJna2Rka21jaHpsR2tWNWVHYjBxSmNKNGU4Qk81RzRzUjJ4NTNZN3AvbHZ1UE9WTGVhdkR5SlFvc3pHWWtURVVDNVBZYXVBME45YkkyOFZ0VjduUG02YVdqMzFISDN1SlYydlExZnYvSTdGcjN2V1ZFKzltdTEwWHlubmdxeHZmYStnYWxPdVRPVmUwUExFNFcxREdFdHgvbjB6eVdMaHI5dnVqYVJPTGNnRm5YTVdFY1ppU01pSWlJaTZXbVJPTm1lMWxyNHZmRWY0di9QdFdpNTJ1YVVNWThMR1V0TjYzQUxYeitlK0x2NU4zRFpnbSs3dTgzZnhUOEhLVDFvVTArbHl4dnhiOWZvd092eTFLMzMwcVluNnlKeHBoNnVxY2Y2Tkk1bE1UV2RwckxBdmZMWWlsNmI3S0hLK3JTOU5Oc1pJbkxSMmFsYW0xV2lQS3VWT1BzdUQvcm5Mc2RnZGVVOExXK0VhZnVhOHRXWXA4K294NDlvcmpzTVhYdHRoRUs4cjU1YnF4M0hJeUkzNStiSEJUV3ljV2dqT2M4NU56MnZaVXFWU0EzVTZOWUFhMzJjZHIxSTQrK3AwKzV4ZFJQMXRLWFRKUkpuKzE1VnYxTWZ6YU9IVFN4RHZES05LaVV2SS9XNjBNNnBpV3Jib3VWYXUwTlM3ei90RzA0WWlTTWlJaUphb0tkRjRzd3RmckVkYnJaTmF2R1p0aDVPOTd1NStPZjBjVCtPYWRXT0o4WnZXUGNiUTJ2VnF6MFZ0OTZmem5FLzdSd241cW10OXlJcDIyRlJ2VVpwYkRvZHl3SUQ1U0VqS2txYTBQVDJ2eUFpY04yZlo0ckVHZG5PWld6ZTNCcTdyeTB0RFRWUG4xR1BSMmlqVlcxWFhQd1NnS0ZJMitoSW5CcUo2Wk5Sb3FNdjNwL3ZuR1haV2FJUlNoMTdMQkkzSE4zVHQxTTVYamVxaWZlNGMxTm10dXZOSlJKbjJsZXRPMG43dFQ2MlRzMXNZaGxpY050bnMxMFhwbXZjOVBkbU41dTJqb3ZQa1JFNU9INEdJM0ZFUkVSRUMvUWhqYmdTUUlreUI4b2N5T00xOG5pdHpXVHNiZmJhR0kvZnI1ODNnYjlDNERzMHoxK2RwMlVKbENWeUJNZ1J3RjhCOTVPWjM3eCtPOGV5bUxNOEhsWUJxSkR0UEdTNzJ6U3U0WGxyeFBuQUUyZ3Y1NWl2SDVPblFwRFVDSktiMVN1dWZ2dVNzN21QbWJHOUx4aUswNG5lZnBGaVhTWllsd24rbFR2OEszYzMrU1JtbTUrc0tvR3FSTkhHSzE1aEJXQ0Y2RndqT3Rlb3Y0SDZHL2p5UEh6ZGxMOCs4LzdFZStya2V4eVpEWmVoV3puT1JWeTFxYmRHNnExUkpqWEtwTVk1V3ZXaXMwVzZFYS9UTjRyVE42S1ZXNlRNS2tpQUlNSFBJY2ZQSVVkMnFkcVhpdzlweEJFUkVSSFJHQi9TaVBNQitQQkR3QS9GSEZLRDZ5MjJyMlQ2MkswUnFySkFWYjZ1WHptc256ZEZXYUVvWFZyb0w4NVQzd2Q4SHlFS2hDaFFWc0Q5WklZM3I5OXViRm5NVUI2VHlRamNHdGx1alRqNFFSejgzS1RyaXJxKzRoUUNwN2NYM2RoOGZWZWVXcXlpOXBVY2dPUUE3QzhGOXBjQ0NMWkFzTVVCQlE3MzZwV01Fb1UrOGxDTVB3S2E4VmxWaGwzcVk1ZjZ1Q2JBTlFHT2NZQmpIT0NucnZGVDE2aXZFZXJybmZGcFM5RGs0Ym11Y2E1cjFOY1Q2dXNKaU5kQXZMNkpiazY4cDA2K3g1R3ptN3BnTDhkSHlYdmRCdGx1SThZTC90UklndUV4ZzVlOWVPa1IvdzA4YjRNOWN1eVJJMTU3aU5mVEk0ZDVXYll2RngvU2lDTWlJaUtpTVQ3azZWU3hyVzIrcC9uMDA3clhWbzdvdjkvTmhlWDZwTkFJMXFkM0JIVldjVzJlSUlQWDVhbnR5WjVtcTE4eFQxei9YTHZaOVhzYmFVeGxnWHZsWVVqVDg1NU90WldCcVc2b1QzQ1o5cjluM253MTcvWklHcDlnWU8xVUtQbHFubi9OVkI3aVhYMnVPN205TW11OFRNTnFhalRPVXYrVjlTaHpiUldFQVlacnY2MlBsVGlYb2lucFFLdW85OHQ1L0QzVmNvNXlxNUh6eEtucFFHOVZHdGZ2blA2NWRrK25UcXRUczNtNERLR2RtemtQeGpIWHFiRmsraDU5T3JVL0Z5Z2N6NUdST0NJaUlxSUYrcWhJbkRUVU0rbDdkSDFJSmEwSDhYbjd2ZklFbXlWQ1p6N0hFV3c5RmNYVXZKbTYzM2o5UE5LZUNSeFlPN1U3MXlmazd4Z2p5MEx0UWFsTWE3emF5d0pkZWJ4cm5qamp1VFdybTdUTERZdjN1OXZJREdWb1BMWXdQVi9sTmY2ZWVlTHM2VE9mbTZUUE1TZW8rOGwxZmsyUkZ6MHRZdXhXYlpoZnpwa2FjWk4vbC9VK0VaR2w5Unp6eEptT3BWRHpScVhuaFVxOU40Njd4OG1qbW80ajA1ZVVvdTZpOXozN2FDUk92ajJ0VGoxc3BqTEVyR20wbEovQ0hxRjFqTVJaenRWK25HR014QkVSRVJFdGtITWs3bmVaSVZwQVJFUkU5RWFNeEJFUkVSRXRFQnR4UkVSRVJBdkVSaHdSRVJIUkFyRVJSMFJFUkxSQWJNUVJFUkVSTGRDTVQ2ZnlpYzhweHM4Mi93ZFk1alNTOHpEZG5XTnFBcGJGak41VWh2VGhsSG5EN3BVLzYrUHlzUXlmajVFNElpSWlvZ1ZpSTQ0K1NBV2dRcGJ1a2FWN2hLY3J3dE1WZFYzM1grZm9iZytlM29sbGFGV2tRSkhDOHp4NG5vZTBRUHV5S1ZJUFJTcjJ1MzN0c2dxN1RLeVQyV3pZTzRaNkxGV1Y3ZHFvQ2RHZllLZ2o3U3N0NEExVkZzbFFqODBLQUFWU3owT3FIbXVnanQ3L3JBNGJjVVJFUkVRTHBJMkprMnZ1R1plUk02aWJSUjQ1Sm82bVc4cTR5cVdrOHgwZXladEg5djFjMnBxWnpWck5CN2xXYzNPZXVIT3U3WnFwdUwrZWM5R3NMeG5FUndEQVZvNUJrdXMyZm9tOXZ1VWFsbktNMmtXc0o5dDk3cE9NR0JOSGMvaWRkZXFwbERWT2d5YlAvcFZ1OWRpY3Q3SXNMc0J0M2V4dE14NGpjVVJFUkVRTHhFWWNFUkVSMFFKcFA2ZWF5SEIrNm90dy9UbGFxVnVJOTl1d3Jkak9UOWVBNmVmWmcvclRnS0Q5L05BUzRjdkhIMU5XMHlyU2dZMzRkemNwZ25vOGRUL1RPWVlBZ05QMURBQ0lWbUxBY2JaVHQ3dlJUTGx3bFQ5ektHOUw1cnhwR0tadU1PK25udU9qK25ta1RUQ2huQ2NBWEViK2hCODJQeG5wMTZBclMza1l5bUxzVUlPRElieHVMZ3ZvNWFIOC9IUUtSSWcvM3N0cjdGdnM5aVhQUmV4Zk4vdFBacHNpUkVsbk9USnZaQmxHbVVnM1J1dzdQbC9WYTN4cVBaWi9mNVI2L0hzL3A4cHRSWG40cHJRbzE4a2hMNEc3UDZlSzdZNDdzZDAveTMzSG5hbHVOWGw1RWljWVovTG5WUEV6cnR3ZVE5ZUJvVDYyUmw2cmFoYWJyNXVHZGs4ZGQ0OWJHY3BiTFd2NUhZdmU5NndvSC91MTJtaStVMCtGMkY1NzM4QlVwOXlaeXIyaDVZbkNXb2F3bHVOOCt1ZFNKcWE4Y1N2WERuOU9KU0lpSXFMRzB5SnhzajJ0dGZDYkhpRUE3TmJpLzgrMTZGM2FKZ1kwRCs0ZFMwM3JjQXRmUDU3NGU3ZWYybE9YTGZpMnU5djhYZnh6a05LRE52VlV1cndSLzNhTkRyd3VUL3U5bHl3YXZrN2E5R1JkSk03VXc3WDNiR2JtV0JaVDAya3FDOXdyajYzb3Rja2VxcXhQMjB1em5TRWlGNTJkcXJWWkpjcXpXb216Ny9LZ2YrNXlJSDFYenRQeVJwaTJyeWxmalhuNmpIbzh5dkI1WXVoYzJ3aUYrS2Q2YnExMk1MYUkzSnliSHhmVXlNYWhqZVE4NTl6MHZKWXBWU0kxVUtOYkE2ejFjVGdmdFR3MEdIOVBuWGFQcTV1b3B5MmRMcEU0Mi9lcStwMzZhQjQ5YkdJWjRwVnBWRm5UTEEybjNaeHV0ZDBocWZlZjlnMG5qTVFSRVJFUkxkRFRJbkhtVnFuWURqZmJKclg0VEZzUFIrMlZUaC8zNDVoVzdYaGkvSVoxdnpHc3JYNjMzcC9PY1QvdEhDZm1xZElUakV5OUNtVTdMS3JYS0kxTnAyTlpZS0E4WkVSRlNST2EzdjRYUkFTdSsvTk1rVGdqMjdtTXpadGJZL2UxcGFXaDV1a3o2dkVvdytlSm9UU01qc1Nwa1pnK0dTVTYrdUo5N1hpVHlYTVM2WFVkdS9kWUpHNDR1cWR2cDNLOGJsUVQ3M0hucHN6VThsYnozaVVTWjlwWHZhYVM5bXQ5K0ZyVDkzK1NpV1dJd1cyZm80MGV0Nkd4NFYvbWREUGxiVnZIeGVmSmlCeUdycTBCak1RUkVSRVJMZENITk9KS0FDWEtIQ2h6SUkvWHlPTzF0aHlGdDlscll6eCt2MzdlQlA0S2dlL1FQSDkxbnBZbFVKYklFU0JIQUg4RjNFOW1mdlA2N1J6TFlzN3llRmdGb0VLMjg1RHRidE80aHVldEVlY0RUNkM5bkdPK2ZreWV2a0l3SERzb3hCSkI2ekxCdWt6d3I5emhYN203eWFjZFBFOUU2U2FwU3FBcVViVHhpVmRZQVZnaE90ZUl6alhxYjZEK0JyNDhEMTgzNWE4dFNUYjFuanI1SGtkbXcyWG9Wbzd6Q0pJYVFYS3pKT0RWUjMzMTIrV3h4aXlCTlVtUUFFR0NuME9PbjBPTzdGSzFMeGNmMG9naklpSWlvakUrcEJIbkEvRGhoNEFmaWpta0JoZk5ibC9KOUxGYkkxUmxnYXA4WmhQY1JUOXZpckpDVWJxMDBGK2NwNzRQK0Q1Q0ZBaFJvS3lBKzhrTWIxNi8zZGl5bUtFOEpwTVJ1RFd5M1JweDhJTTQrTGxKMXhWMWZjVXBCRTV2TDdxeCtmcXVQSDFBc0FXQ0xRNG9jTGhYcjJTVUtQU1JoMkw4RWRDTXo2b3k3RklmdTlUSE5RR3VDWENNQXh6akFEOTFqWis2Um4yTlVGL3ZqRTliZ2xVRXJDS2M2eHJudWtaOVBhRytub0I0RGNUcm00akt4SHZxNUhzY09XdkswSzBjbjZRNWZuSUFrZ093dnhUWVg1NTV3TDY4TE51WGl3OXB4QkVSRVJIUkdCL1NpQk8vaTIrakVOc29SQjRma2NmSGw0MnYwRnZhNHNqSE9NY3h6aEdlL2lFOC9idDUvNVhVdkJIamZ1eTlFWFcvSitmcGFndXN0b2pDSEZIWS9hNnZxaTRacWt1R1BJemExL0wwZS9KMjk4dmlLZVV4V1grODBHRWI0TEM5SFdQVmYzOWU4K2JyN3lER3VHMFBPYmFISFBHeFFIelU3MVhwWm85MHMwY1liUkZHMnk2aStwVWgrOG9RZlVlSXZxTW14NTdBVnY5bFJIQ3p4MjZ1OFlsVkFWUUZpZ29vOUZzTnNQS0JsVDh3U2xDOWJoenZxYlp6YktqM09Kc3EyNkhLZHRqc3hST1NjMldQTUxaT3ZaaXRESEd2SEora3VWYlRQWkR1Z2REM0VmbzMwZTI1TmVOVlpkbkxlMjcvdm12MklZMDRJaUlpSWhyalErYUo2eWZCdXBaZE00L0w5UEV0U2xvUDR2UDJlNlVMcEszdDZucU9JMWpuMGVtYm1qZFQ5eHV2bjBkYXAzSmc3ZFR1WEorUXYyT01MSXR1ZmgvdExJRTdhN3pheXdKZGVieHJuampqdVRWektMWExEWXYzdTl2SURHVm9QTFl3UFYvbE5mN2FlZUxzNlJxZ3JkY3A2SE5hQ1dxZXlIVitUZXMrNm1rU1lacmFNTCtjczNhT05MRU1RbnZHc3Q0bllwelBlbzU1NGt6SFVxaDVvOUx6UXFYZUc4ZmQ0K1JSVGNlUjZVdEtVWGN4Nnp4eDh1MXBkZXBoTTVVaG5wQkdVM2xJNnZGczIydlVPbXc1VjIwVkRrZU14QkVSRVJFdGtITWs3bmVaSVZwQVJFUkU5RWFNeEJFUkVSRXRFQnR4UkVSRVJBdkVSaHdSRVJIUkFyRVJSMFJFUkxSQWJNUVJFUkVSTGRBZmZUcVZpSWlJYU5rWWlTTWlJaUphSURiaWlJaUlpQmFJalRnaUlpS2lCV0lqam9pSWlHaUIySWdqSWlJaVdpQTI0b2lJaUlnV2lJMDRJaUlpb2dYNkg4V1IzRXo4UGhGV0FBQUFBRWxGVGtTdVFtQ0MpDQoNCmBgYHtyfQ0KDQpJbnBQcmljZSA8LSBhcy5udW1lcmljKHJlYWRsaW5lKCJFbnRlciB0aGUgcHJpY2Ugb2YgaXRlbXM6ICIpKQ0KIyBXZWxsLCB0byBwcmV2ZW50IGl0IHRlcm1pbmF0ZSBoYWxmIHdheSwgd2UgZ2l2ZSBpdCBhIG51bWJlciBoZXJlLg0KSW5wUHJpY2UgPC0gNi42DQppZiAoaXMubmEoSW5wUHJpY2UpKXsNCiAgICBwcmludCgiSW5wdXQgaXMgbm90IGEgdmFpbGQgbnVtYmVyLiIpDQogICAgcSgpDQp9DQoNCk91dFByaWNlIDwtIGZ1bmN0aW9uKGZ1bGxQcmljZSwgZGlzY291bnQpew0KICAgIHNwcmludGYoIlRoZSBwcmljZSBvZiBpdGVtIGFmdGVyICVkJSUgZGlzY291bnQgaXMgJS4yZi4iLCBkaXNjb3VudCwgZnVsbFByaWNlIC0gKGZ1bGxQcmljZSAqIGRpc2NvdW50IC8gMTAwKSkNCn0NCg0KT3V0UHJpY2UoSW5wUHJpY2UsIDUwKQ0KT3V0UHJpY2UoSW5wUHJpY2UsIDMwKQ0KT3V0UHJpY2UoSW5wUHJpY2UsIDEwKQ0KYGBg