Skip to content
Toggle navigation
1
Item
£
0.00
Signin
Register
Home
Printer Paper/Card
Size
A5
1
1
A4
282
282
A3
117
117
RA3
0
0
RA2
0
0
RA1
0
0
SRA3
143
143
SRA2
263
263
SRA1
14
14
B2
38
38
B1
54
54
6"x4"
0
0
7"x5"
2
2
8"x5"
0
0
10"x8"
0
0
610mm Rolls
8
8
1067mm Rolls
8
8
914mm Rolls
11
11
Weight
70-80g
168
168
160g
86
86
0-149g
335
335
150-299g
319
319
300g+
98
98
Colour
White
224
224
Black
22
22
Blue
93
93
Brown
10
10
Cream/Ivory
47
47
Gold
14
14
Green
95
95
Grey
13
13
Orange
58
58
Pink
67
67
Purple
29
29
Red
45
45
Silver
5
5
Yellow
70
70
Brand
Adagio
95
95
Canon
10
10
Canon Top Colour
3
3
Color Copy
7
7
Colorplan
6
6
Creator
11
11
Dalton Manor
28
28
DCP
19
19
Eurocalco NCR
34
34
Experia
15
15
Inspira
16
16
Lumi
0
0
Nevia
12
12
Omega Plus
3
3
Paperfect
1
1
Pergraphica
44
44
PermaPaper®
16
16
Pro Design
10
10
Respecta
11
11
Rey Text & Graphics
11
11
Target Offset
2
2
Target Copier & Preprint
14
14
Trophee
184
184
Vanguard
137
137
Xerox Colotech+
27
27
Type
Black Paper/Card
20
20
Carbonless Paper
34
34
Gloss Coated
30
30
Greyboard
8
8
InkJet Media
29
29
Labels
0
0
PermaPaper®
16
16
Printer Paper
669
669
Recycled
11
11
Self Adhesive
4
4
Silk Coated
31
31
White Carton Board
3
3
{"628":{"1049":"628","1048":"628","1047":"628","633":"628","634":"628","635":"628","1054":"628","1053":"628","1052":"628","645":"628","646":"628","1133":"628","1117":"628","1134":"628","1132":"628","1128":"628","1130":"628","1129":"628"},"655":{"1045":"655","1092":"655","1111":"655","1112":"655","1094":"655"},"1055":{"1068":"1055","1056":"1055","1057":"1055","1058":"1055","1059":"1055","1060":"1055","1061":"1055","1062":"1055","1063":"1055","1064":"1055","1065":"1055","1066":"1055","1067":"1055","1069":"1055"},"661":{"1089":"661","1122":"661","670":"661","2416":"661","2396":"661","667":"661","2395":"661","1075":"661","675":"661","1077":"661","1082":"661","669":"661","2400":"661","2412":"661","684":"661","2388":"661","2423":"661","1084":"661","2401":"661","1085":"661","689":"661","692":"661","694":"661","2367":"661","1071":"661"},"566":{"1096":"566","1035":"566","1027":"566","1028":"566","2370":"566","1894":"566","2423":"566","1098":"566","1121":"566","1038":"566","1033":"566","610":"566"}}
Craft Paper/Card
Size
A6
0
0
A5
4
4
A4
378
378
A3
151
151
A2
12
12
A1
4
4
12"x12"
11
11
SRA2
311
311
SRA1
71
71
B1
78
78
Weight
Paper
229
229
Card
478
478
Thick Card
117
117
Colour
White
110
110
Black
35
35
Assorted
41
41
Blue
115
115
Brown
22
22
Cream/Ivory
66
66
Gold
45
45
Green
97
97
Grey
32
32
Orange
60
60
Pink
69
69
Purple
34
34
Red
56
56
Silver
37
37
Yellow
82
82
Brand
Bordette
2
2
Centura Pearl
8
8
Cocktail
7
7
Curious Metallics
17
17
Dalton Manor
83
83
Fadeless
5
5
PG
37
37
PermaPaper®
16
16
Scola
0
0
Sirio Pearl
39
39
Trophee
175
175
Vanguard
168
168
Type
Border Rolls
2
2
Display Rolls
7
7
Drawing Cartridge
5
5
Holographic
2
2
Metallics
23
23
Mixed Packs
43
43
Parchment
52
52
Pearlescent
121
121
Plain
558
558
Scrapbooking
18
18
Speciality
52
52
{"628":{"1050":"628","1049":"628","1048":"628","1047":"628","1046":"628","653":"628","1113":"628","1053":"628","1052":"628","646":"628"},"655":{"1900":"655","1901":"655","1902":"655"},"1055":{"1068":"1055","1056":"1055","1095":"1055","1057":"1055","1058":"1055","1059":"1055","1060":"1055","1061":"1055","1062":"1055","1063":"1055","1064":"1055","1065":"1055","1066":"1055","1067":"1055","1069":"1055"},"661":{"1899":"661","1110":"661","2403":"661","2387":"661","2395":"661","1897":"661","1115":"661","2423":"661","1131":"661","1123":"661","694":"661","2367":"661"},"566":{"2361":"566","1104":"566","1023":"566","1029":"566","1034":"566","1906":"566","1036":"566","1037":"566","2377":"566","2404":"566","1101":"566"}}
Education Craft
Brand
Berol
1
1
Bordette
2
2
Crayola
3
3
Creativity
0
0
Dalton Manor
82
82
Fadeless
5
5
Rainbow
0
0
Scola
0
0
Product Type
Border Rolls
2
2
Craft Supplies
143
143
Crayons
6
6
Display Rolls
7
7
Mixed Packs
43
43
Mount Board
16
16
Pens/Markers
2
2
Stationery
4
4
Sugar Paper
2
2
Tissue Paper
1
1
{"661":{"2380":"661","1899":"661","2379":"661","2382":"661","2395":"661","1897":"661","2381":"661","1131":"661"},"1893":{"2361":"1893","1103":"1893","2372":"1893","1104":"1893","1906":"1893","591":"1893","2364":"1893","1898":"1893","1040":"1893","2366":"1893"}}
All Products
Product Type
Banner Stands
0
0
Black Paper & Card
20
20
Border Rolls
2
2
Boxboard
3
3
Christmas
25
25
Coated Gloss
30
30
Colour Printer Paper
560
560
Craft Supplies
143
143
Crayons
6
6
Display Rolls
7
7
Drawing Cartridge
5
5
Envelopes
3
3
Exercise Books
0
0
Gift Wrap
4
4
Greyboard
8
8
Halloween
14
14
Holographic
2
2
InkJet Media
29
29
Inkjet Supplies
17
17
Laminating Pouches
4
4
Metallics
23
23
Mixed Packs
43
43
Mount Board
16
16
NCR/Carbonless
34
34
Packaging Supplies
13
13
Parchment/Marbled
52
52
Pearlescent
121
121
Pens/Markers
2
2
PermaPaper®
16
16
Printers
0
0
Scrapbooking
18
18
Self Adhesive
4
4
Silk Coated
31
31
Sketch Books
0
0
Speciality Paper & Card
52
52
Stationery
4
4
Sugar Paper
2
2
Tissue Paper
1
1
Uncategorised
1
1
Uncoated Tints
560
560
Uncoated White
136
136
Wedding Stationery
21
21
White Carton Board
3
3
White Paper & Card
0
0
{"1893":{"1105":"1893","1096":"1893","2361":"1893","2411":"1893","2409":"1893","1027":"1893","1908":"1893","1103":"1893","2372":"1893","1104":"1893","1023":"1893","1024":"1893","2369":"1893","1026":"1893","1028":"1893","2407":"1893","1029":"1893","2370":"1893","2362":"1893","1031":"1893","1034":"1893","1906":"1893","591":"1893","1035":"1893","1041":"1893","1036":"1893","1037":"1893","2364":"1893","2423":"1893","2365":"1893","2404":"1893","1038":"1893","1033":"1893","1039":"1893","1101":"1893","1898":"1893","1040":"1893","2366":"1893","1090":"1893","1907":"1893","1097":"1893","610":"1893","1043":"1893"}}
Brands
Brands
Adagio Paper
95
95
Berol
1
1
Bordette
2
2
Canon
27
27
Canon Top Colour
4
4
Centura Pearl
8
8
Charta
0
0
Cocktail
7
7
Conqueror
0
0
Color Copy
7
7
Colorplan
6
6
Crayola
3
3
Creativity
0
0
Creator Coated
11
11
Curious Metallics
17
17
DCP
20
20
Dalton Manor
86
86
Eurocalco NCR
34
34
Experia
15
15
Fadeless
5
5
HP
1
1
Inspira Paper and Card
17
17
Keaykolour
17
17
Lorenzo
9
9
Lumi
0
0
Nevia
12
12
Omega Plus
3
3
Paperfect
1
1
Pergraphica
61
61
PermaPaper®
16
16
PG Paper and Card
37
37
Pro Design
11
11
Rainbow
0
0
Respecta
11
11
Rey Text & Graphics
11
11
Scola
0
0
Sirio Pearl Paper and Card
39
39
Target Copier & Preprint
14
14
Target Offset
2
2
Trophee Paper and Card
184
184
Vanguard Colours
168
168
Xerox Colotech+
29
29
{"661":{"1089":"661","2380":"661","1899":"661","1122":"661","670":"661","1110":"661","2402":"661","2403":"661","2389":"661","2416":"661","2396":"661","2379":"661","2382":"661","667":"661","2387":"661","1075":"661","2395":"661","675":"661","1077":"661","1897":"661","2399":"661","1082":"661","2398":"661","2363":"661","669":"661","2400":"661","2412":"661","684":"661","2388":"661","2423":"661","1115":"661","1084":"661","2381":"661","2401":"661","1085":"661","1131":"661","1123":"661","692":"661","689":"661","694":"661","2367":"661","1071":"661"}}
Cutting Service
Basket
Home
\
Shop
Showing 1166 results
Default sorting
Sort by popularity
Sort by latest
Sort by price: low to high
Sort by price: high to low
High Quality Printer Paper & Card
236gsm Vanguard Ivory Card
A4
A3
SRA3
SRA2
Royal (520x640mm)
Pack of 100
Clear
236gsm Vanguard Ivory Card quantity
Send email when back
in stock to:
64509
Email me when in stock
Don't Email me
Add to Basket
0
300G SRA2 Omega Plus Boxboard PK100
Available.
300G SRA2 Omega Plus Boxboard PK100 quantity
£
20.48
inc.
Add to Basket
0
1
2
3
4
…
57
58
59
→
Privacy Preferences
I Agree
Privacy Preference Center
Options
Consent Management
Consent Management
Privacy Policy
ON
OFF
You read and agreed to our
Privacy Policy
.
View cart
eyJxdWVyeSI6eyJwb3N0X3R5cGUiOiJwcm9kdWN0In0sInF1ZXJ5X3ZhcnMiOnsicG9zdF90eXBlIjoicHJvZHVjdCIsImVycm9yIjoiIiwibSI6IiIsInAiOjAsInBvc3RfcGFyZW50IjoiIiwic3VicG9zdCI6IiIsInN1YnBvc3RfaWQiOiIiLCJhdHRhY2htZW50IjoiIiwiYXR0YWNobWVudF9pZCI6MCwibmFtZSI6IiIsInBhZ2VuYW1lIjoiIiwicGFnZV9pZCI6MCwic2Vjb25kIjoiIiwibWludXRlIjoiIiwiaG91ciI6IiIsImRheSI6MCwibW9udGhudW0iOjAsInllYXIiOjAsInciOjAsImNhdGVnb3J5X25hbWUiOiIiLCJ0YWciOiIiLCJjYXQiOiIiLCJ0YWdfaWQiOiIiLCJhdXRob3IiOiIiLCJhdXRob3JfbmFtZSI6IiIsImZlZWQiOiIiLCJ0YiI6IiIsInBhZ2VkIjowLCJtZXRhX2tleSI6IiIsIm1ldGFfdmFsdWUiOiIiLCJwcmV2aWV3IjoiIiwicyI6IiIsInNlbnRlbmNlIjoiIiwidGl0bGUiOiIiLCJmaWVsZHMiOiIiLCJtZW51X29yZGVyIjoiIiwiZW1iZWQiOiIiLCJjYXRlZ29yeV9faW4iOltdLCJjYXRlZ29yeV9fbm90X2luIjpbXSwiY2F0ZWdvcnlfX2FuZCI6W10sInBvc3RfX2luIjpbXSwicG9zdF9fbm90X2luIjpbXSwicG9zdF9uYW1lX19pbiI6W10sInRhZ19faW4iOltdLCJ0YWdfX25vdF9pbiI6W10sInRhZ19fYW5kIjpbXSwidGFnX3NsdWdfX2luIjpbXSwidGFnX3NsdWdfX2FuZCI6W10sInBvc3RfcGFyZW50X19pbiI6W10sInBvc3RfcGFyZW50X19ub3RfaW4iOltdLCJhdXRob3JfX2luIjpbXSwiYXV0aG9yX19ub3RfaW4iOltdLCJzZWFyY2hfY29sdW1ucyI6W10sIm9yZGVyYnkiOiJtZW51X29yZGVyIHRpdGxlIiwib3JkZXIiOiJBU0MiLCJtZXRhX3F1ZXJ5IjpbXSwidGF4X3F1ZXJ5IjpudWxsLCJ3Y19xdWVyeSI6InByb2R1Y3RfcXVlcnkiLCJwb3N0c19wZXJfcGFnZSI6MjAsImlnbm9yZV9zdGlja3lfcG9zdHMiOmZhbHNlLCJzdXBwcmVzc19maWx0ZXJzIjpmYWxzZSwiY2FjaGVfcmVzdWx0cyI6dHJ1ZSwidXBkYXRlX3Bvc3RfdGVybV9jYWNoZSI6dHJ1ZSwidXBkYXRlX21lbnVfaXRlbV9jYWNoZSI6ZmFsc2UsImxhenlfbG9hZF90ZXJtX21ldGEiOnRydWUsInVwZGF0ZV9wb3N0X21ldGFfY2FjaGUiOnRydWUsIm5vcGFnaW5nIjpmYWxzZSwiY29tbWVudHNfcGVyX3BhZ2UiOiI1MCIsIm5vX2ZvdW5kX3Jvd3MiOmZhbHNlfSwidGF4X3F1ZXJ5Ijp7InF1ZXJpZXMiOltdLCJyZWxhdGlvbiI6IkFORCIsInF1ZXJpZWRfdGVybXMiOltdLCJwcmltYXJ5X3RhYmxlIjoid2xjX3Bvc3RzIiwicHJpbWFyeV9pZF9jb2x1bW4iOiJJRCJ9LCJtZXRhX3F1ZXJ5Ijp7InF1ZXJpZXMiOltdLCJyZWxhdGlvbiI6bnVsbCwibWV0YV90YWJsZSI6bnVsbCwibWV0YV9pZF9jb2x1bW4iOm51bGwsInByaW1hcnlfdGFibGUiOm51bGwsInByaW1hcnlfaWRfY29sdW1uIjpudWxsfSwiZGF0ZV9xdWVyeSI6ZmFsc2UsInF1ZXJpZWRfb2JqZWN0Ijp7Im5hbWUiOiJwcm9kdWN0IiwibGFiZWwiOiJQcm9kdWN0cyIsImxhYmVscyI6eyJuYW1lIjoiUHJvZHVjdHMiLCJzaW5ndWxhcl9uYW1lIjoiUHJvZHVjdCIsImFkZF9uZXciOiJBZGQgTmV3IiwiYWRkX25ld19pdGVtIjoiQWRkIG5ldyBwcm9kdWN0IiwiZWRpdF9pdGVtIjoiRWRpdCBwcm9kdWN0IiwibmV3X2l0ZW0iOiJOZXcgcHJvZHVjdCIsInZpZXdfaXRlbSI6IlZpZXcgcHJvZHVjdCIsInZpZXdfaXRlbXMiOiJWaWV3IHByb2R1Y3RzIiwic2VhcmNoX2l0ZW1zIjoiU2VhcmNoIHByb2R1Y3RzIiwibm90X2ZvdW5kIjoiTm8gcHJvZHVjdHMgZm91bmQiLCJub3RfZm91bmRfaW5fdHJhc2giOiJObyBwcm9kdWN0cyBmb3VuZCBpbiB0cmFzaCIsInBhcmVudF9pdGVtX2NvbG9uIjpudWxsLCJhbGxfaXRlbXMiOiJBbGwgUHJvZHVjdHMiLCJhcmNoaXZlcyI6IkFsbCBQcm9kdWN0cyIsImF0dHJpYnV0ZXMiOiJQb3N0IEF0dHJpYnV0ZXMiLCJpbnNlcnRfaW50b19pdGVtIjoiSW5zZXJ0IGludG8gcHJvZHVjdCIsInVwbG9hZGVkX3RvX3RoaXNfaXRlbSI6IlVwbG9hZGVkIHRvIHRoaXMgcHJvZHVjdCIsImZlYXR1cmVkX2ltYWdlIjoiUHJvZHVjdCBpbWFnZSIsInNldF9mZWF0dXJlZF9pbWFnZSI6IlNldCBwcm9kdWN0IGltYWdlIiwicmVtb3ZlX2ZlYXR1cmVkX2ltYWdlIjoiUmVtb3ZlIHByb2R1Y3QgaW1hZ2UiLCJ1c2VfZmVhdHVyZWRfaW1hZ2UiOiJVc2UgYXMgcHJvZHVjdCBpbWFnZSIsImZpbHRlcl9pdGVtc19saXN0IjoiRmlsdGVyIHByb2R1Y3RzIiwiZmlsdGVyX2J5X2RhdGUiOiJGaWx0ZXIgYnkgZGF0ZSIsIml0ZW1zX2xpc3RfbmF2aWdhdGlvbiI6IlByb2R1Y3RzIG5hdmlnYXRpb24iLCJpdGVtc19saXN0IjoiUHJvZHVjdHMgbGlzdCIsIml0ZW1fcHVibGlzaGVkIjoiUG9zdCBwdWJsaXNoZWQuIiwiaXRlbV9wdWJsaXNoZWRfcHJpdmF0ZWx5IjoiUG9zdCBwdWJsaXNoZWQgcHJpdmF0ZWx5LiIsIml0ZW1fcmV2ZXJ0ZWRfdG9fZHJhZnQiOiJQb3N0IHJldmVydGVkIHRvIGRyYWZ0LiIsIml0ZW1fdHJhc2hlZCI6IlBvc3QgdHJhc2hlZC4iLCJpdGVtX3NjaGVkdWxlZCI6IlBvc3Qgc2NoZWR1bGVkLiIsIml0ZW1fdXBkYXRlZCI6IlBvc3QgdXBkYXRlZC4iLCJpdGVtX2xpbmsiOiJQcm9kdWN0IExpbmsiLCJpdGVtX2xpbmtfZGVzY3JpcHRpb24iOiJBIGxpbmsgdG8gYSBwcm9kdWN0LiIsIm1lbnVfbmFtZSI6IlByb2R1Y3RzIiwiZWRpdCI6IkVkaXQiLCJwYXJlbnQiOiJQYXJlbnQgcHJvZHVjdCIsIm5hbWVfYWRtaW5fYmFyIjoiUHJvZHVjdCIsInRlbXBsYXRlX25hbWUiOiJTaW5nbGUgaXRlbTogUHJvZHVjdCJ9LCJkZXNjcmlwdGlvbiI6IlRoaXMgaXMgd2hlcmUgeW91IGNhbiBicm93c2UgcHJvZHVjdHMgaW4gdGhpcyBzdG9yZS4iLCJwdWJsaWMiOnRydWUsImhpZXJhcmNoaWNhbCI6ZmFsc2UsImV4Y2x1ZGVfZnJvbV9zZWFyY2giOmZhbHNlLCJwdWJsaWNseV9xdWVyeWFibGUiOnRydWUsInNob3dfdWkiOnRydWUsInNob3dfaW5fbWVudSI6dHJ1ZSwic2hvd19pbl9uYXZfbWVudXMiOnRydWUsInNob3dfaW5fYWRtaW5fYmFyIjp0cnVlLCJtZW51X3Bvc2l0aW9uIjpudWxsLCJtZW51X2ljb24iOiJkYXNoaWNvbnMtYXJjaGl2ZSIsImNhcGFiaWxpdHlfdHlwZSI6InByb2R1Y3QiLCJtYXBfbWV0YV9jYXAiOnRydWUsInJlZ2lzdGVyX21ldGFfYm94X2NiIjpudWxsLCJ0YXhvbm9taWVzIjpbXSwiaGFzX2FyY2hpdmUiOiJzaG9wIiwicXVlcnlfdmFyIjoicHJvZHVjdCIsImNhbl9leHBvcnQiOnRydWUsImRlbGV0ZV93aXRoX3VzZXIiOm51bGwsInRlbXBsYXRlIjpbXSwidGVtcGxhdGVfbG9jayI6ZmFsc2UsIl9idWlsdGluIjpmYWxzZSwiX2VkaXRfbGluayI6InBvc3QucGhwP3Bvc3Q9JWQiLCJjYXAiOnsiZWRpdF9wb3N0IjoiZWRpdF9wcm9kdWN0IiwicmVhZF9wb3N0IjoicmVhZF9wcm9kdWN0IiwiZGVsZXRlX3Bvc3QiOiJkZWxldGVfcHJvZHVjdCIsImVkaXRfcG9zdHMiOiJlZGl0X3Byb2R1Y3RzIiwiZWRpdF9vdGhlcnNfcG9zdHMiOiJlZGl0X290aGVyc19wcm9kdWN0cyIsImRlbGV0ZV9wb3N0cyI6ImRlbGV0ZV9wcm9kdWN0cyIsInB1Ymxpc2hfcG9zdHMiOiJwdWJsaXNoX3Byb2R1Y3RzIiwicmVhZF9wcml2YXRlX3Bvc3RzIjoicmVhZF9wcml2YXRlX3Byb2R1Y3RzIiwicmVhZCI6InJlYWQiLCJkZWxldGVfcHJpdmF0ZV9wb3N0cyI6ImRlbGV0ZV9wcml2YXRlX3Byb2R1Y3RzIiwiZGVsZXRlX3B1Ymxpc2hlZF9wb3N0cyI6ImRlbGV0ZV9wdWJsaXNoZWRfcHJvZHVjdHMiLCJkZWxldGVfb3RoZXJzX3Bvc3RzIjoiZGVsZXRlX290aGVyc19wcm9kdWN0cyIsImVkaXRfcHJpdmF0ZV9wb3N0cyI6ImVkaXRfcHJpdmF0ZV9wcm9kdWN0cyIsImVkaXRfcHVibGlzaGVkX3Bvc3RzIjoiZWRpdF9wdWJsaXNoZWRfcHJvZHVjdHMiLCJjcmVhdGVfcG9zdHMiOiJlZGl0X3Byb2R1Y3RzIn0sInJld3JpdGUiOnsic2x1ZyI6IlwvcHJvZHVjdCIsIndpdGhfZnJvbnQiOmZhbHNlLCJmZWVkcyI6dHJ1ZSwicGFnZXMiOnRydWUsImVwX21hc2siOjF9LCJzaG93X2luX3Jlc3QiOnRydWUsInJlc3RfYmFzZSI6ZmFsc2UsInJlc3RfbmFtZXNwYWNlIjoid3BcL3YyIiwicmVzdF9jb250cm9sbGVyX2NsYXNzIjpmYWxzZSwicmVzdF9jb250cm9sbGVyIjpudWxsLCJyZXZpc2lvbnNfcmVzdF9jb250cm9sbGVyX2NsYXNzIjpmYWxzZSwicmV2aXNpb25zX3Jlc3RfY29udHJvbGxlciI6bnVsbCwiYXV0b3NhdmVfcmVzdF9jb250cm9sbGVyX2NsYXNzIjpmYWxzZSwiYXV0b3NhdmVfcmVzdF9jb250cm9sbGVyIjpudWxsLCJsYXRlX3JvdXRlX3JlZ2lzdHJhdGlvbiI6ZmFsc2V9LCJxdWVyaWVkX29iamVjdF9pZCI6bnVsbCwicmVxdWVzdCI6IlNFTEVDVCBTUUxfQ0FMQ19GT1VORF9ST1dTICB3bGNfcG9zdHMuSURcblx0XHRcdFx0XHQgRlJPTSB3bGNfcG9zdHMgXG5cdFx0XHRcdFx0IFdIRVJFIDE9MSAgQU5EICgod2xjX3Bvc3RzLnBvc3RfdHlwZSA9ICdwcm9kdWN0JyBBTkQgKHdsY19wb3N0cy5wb3N0X3N0YXR1cyA9ICdwdWJsaXNoJyBPUiB3bGNfcG9zdHMucG9zdF9zdGF0dXMgPSAnYWNmLWRpc2FibGVkJykpKVxuXHRcdFx0XHRcdCBcblx0XHRcdFx0XHQgT1JERVIgQlkgd2xjX3Bvc3RzLm1lbnVfb3JkZXIgQVNDLCB3bGNfcG9zdHMucG9zdF90aXRsZSBBU0Ncblx0XHRcdFx0XHQgTElNSVQgMCwgMjAiLCJwb3N0cyI6W3siSUQiOjY5NzQ0LCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTExLTI5IDE1OjAwOjQzIiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTEtMjkgMTU6MDA6NDMiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSA8XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob24gVGVhcmFibGU8XC9saT5cclxuIFx0PGxpPk1vaXN0dXJlIFJlc2lzdGFudDxcL2xpPlxyXG4gXHQ8bGk+RGltZW5zaW9uYWxseSBzdGFibGU8XC9saT5cclxuIFx0PGxpPkV4Y2VsbGVudCBQcmludGFiaWxpdHk8XC9saT5cclxuIFx0PGxpPlN1cGVyaW9yIHRlbnNpbGUgYW5kIHRlYXIgc3RyZW5ndGg8XC9saT5cclxuIFx0PGxpPldyaXRlYWJsZSB3aXRoIHBlbmNpbCBhbmQgb2lsIGJhc2VkIGluayBwZW5zPFwvbGk+XHJcbiBcdDxsaT5QcmludGFibGUgb24gYm90aCBzaWRlcyBieSBjb252ZW50aW9uYWwgYW5kIFVWIG9mZnNldCwgd2F0ZXIgYW5kIFVWIGZsZXhvLCBMZXR0ZXJwcmVzcywgU2NyZWVuLCBUaGVybWFsIFRyYW5zZmVyIGFuZCBzdWl0YWJsZSBmb3IgZHJ5IHRvbmVyIHByaW50aW5nLjxcL2xpPlxyXG4gXHQ8bGk+Q2FuIGJlIGZvbGRlZCwgc2hlZXRlZCwgc3RhcGxlZCwgaG90IGZvaWxlZCwgZGllIFx1MjAxMyBwdW5jaGVkLCBzZXJyYXRlZCBhbmQgcGVyZm9yYXRlZC4gKGZvciBwZXJmb3JhdGlvbiBhbHdheXMga2VlcCB0aWUgbGVuZ3RoICZsdDswLjVtbSBhbmQgZWRnZXMgb2YgcGVyZm9yYXRlZCBzaGVldCBvciBsYWJlbCBzaG91bGQgYmUgY3V0KTxcL2xpPlxyXG48XC91bD5cclxuPHN0cm9uZz48dT5QcmludGFiaWxpdHk8XC91PjxcL3N0cm9uZz48c3Ryb25nPjo8XC9zdHJvbmc+IFRoZSBjb2F0aW5nIGlzIHN1aXRhYmxlIGZvciBkaWdpdGFsIHByaW50ZXJzLCBidXQgYWxzbyBwcm9kdWNlcyBnb29kIHJlc3VsdHMgd2l0aCBsYXNlciBwcmludGVycyBhbmQgcGhvdG9jb3BpZXJzLiBQcmludGluZyBieSBPZmZzZXQgaXMgYWxzbyBwb3NzaWJsZS4gQXMgd2l0aCBhbGwgc3ludGhldGljIHByb2R1Y3RzIFBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSBzaG91bGQgYmUgdGVzdGVkIHdpdGggaW5kaXZpZHVhbCBwcmludGluZyBtYWNoaW5lcyBiZWZvcmVcclxuXHJcbnByb2R1Y3Rpb24gcnVucyBhcmUgdW5kZXJ0YWtlbi5cclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6IDxcL3N0cm9uZz5wcHBzMzEyMCAtIDY2OThcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LiA8XC9lbT4iLCJwb3N0X3RpdGxlIjoiKDEyMG1pYykgKDE1NWcpIFNSQTMgUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIiwicG9zdF9leGNlcnB0IjoiUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMTIwbWljLTE1NWctc3JhMy1wZXJtYXBhcGVyLXByZW1pdW0iLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTI6MTA6MTgiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTI6MTA6MTgiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTc0NCIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njk3ODMsInBvc3RfYXV0aG9yIjoiMzAyOCIsInBvc3RfZGF0ZSI6IjIwMjQtMTItMDUgMTA6NTc6MjUiLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0xMi0wNSAxMDo1NzoyNSIsInBvc3RfY29udGVudCI6IjxzdHJvbmc+PHU+UGVybWFQYXBlclx1MDBhZSBPZmZpY2U8XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIG1ha2VzIGR1cmFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIGhpZ2hseSBhZmZvcmRhYmxlISBFeGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5IHdpdGggYSB3aWRlIHZhcmlldHkgb2YgZGlnaXRhbCBhbmQgdHJhZGl0aW9uYWwgcHJpbnQgdGVjaG5vbG9naWVzLCB5ZXQgd2l0aG91dCB0aGUgaGlnaCBwcmljZSBub3JtYWxseSBhc3NvY2lhdGVkIHdpdGggaGVhdC1yZXNpc3RhbnQgc3ludGhldGljIGZpbG1zIGZvciBkaWdpdGFsIHByaW50LiBUaGlzIHVuaXF1ZSBQVkMtZnJlZSBmaWxtIHdpdGggYSBwYXBlciBsaWtlIGZlZWwgaXMgaWRlYWwgZm9yIGxvbmdlciBydW5zIGFuZCBoaWdoZXIgdXNhZ2Ugd2hlcmUgZGlnaXRhbCBwcmludGFiaWxpdHkgYW5kIGNvc3QgcGVyIHNoZWV0IGFyZSBpbXBvcnRhbnQuXHJcblxyXG5JdCBpcyBhIGNvLWV4dHJ1ZGVkLCBoaWdoIHdoaXRlIG9wYXF1ZSwgZG91YmxlIHNpZGVkIG1hdHRlIGNvYXRlZCBwb2x5cHJvcHlsZW5lIGJhc2VkIGZpbG0gd2hpY2ggcmVzZW1ibGVzIHBhcGVyIGluIGFwcGVhcmFuY2UuXHJcblxyXG5LZXkgRmVhdHVyZXM6XHJcbjx1bD5cclxuIFx0PGxpPk5vbiBUZWFyYWJsZTxcL2xpPlxyXG4gXHQ8bGk+TW9pc3R1cmUgUmVzaXN0YW50PFwvbGk+XHJcbiBcdDxsaT5EaW1lbnNpb25hbGx5IHN0YWJsZTxcL2xpPlxyXG4gXHQ8bGk+RXhjZWxsZW50IFByaW50YWJpbGl0eTxcL2xpPlxyXG4gXHQ8bGk+U3VwZXJpb3IgdGVuc2lsZSBhbmQgdGVhciBzdHJlbmd0aDxcL2xpPlxyXG4gXHQ8bGk+V3JpdGVhYmxlIHdpdGggcGVuY2lsIGFuZCBvaWwgYmFzZWQgaW5rIHBlbnM8XC9saT5cclxuIFx0PGxpPlByaW50YWJsZSBvbiBib3RoIHNpZGVzIGJ5IGNvbnZlbnRpb25hbCBhbmQgVVYgb2Zmc2V0LCB3YXRlciBhbmQgVVYgZmxleG8sIExldHRlcnByZXNzLCBTY3JlZW4sIFRoZXJtYWwgVHJhbnNmZXIgYW5kIHN1aXRhYmxlIGZvciBkcnkgdG9uZXIgcHJpbnRpbmcuPFwvbGk+XHJcbiBcdDxsaT5DYW4gYmUgZm9sZGVkLCBzaGVldGVkLCBzdGFwbGVkLCBob3QgZm9pbGVkLCBkaWUgXHUyMDEzIHB1bmNoZWQsIHNlcnJhdGVkIGFuZCBwZXJmb3JhdGVkLiAoZm9yIHBlcmZvcmF0aW9uIGFsd2F5cyBrZWVwIHRpZSBsZW5ndGggJmx0OzAuNW1tIGFuZCBlZGdlcyBvZiBwZXJmb3JhdGVkIHNoZWV0IG9yIGxhYmVsIHNob3VsZCBiZSBjdXQpPFwvbGk+XHJcbjxcL3VsPlxyXG48c3Ryb25nPjx1PlByaW50ZXIgQ29tcGF0aWJpbGl0eTo8XC91PjxcL3N0cm9uZz4gRHJ5IFRvbmVyLCBIUCBJbmRpZ28sIE9mZnNldCBMaXRobywgVVYgT2Zmc2V0LCBGbGV4bywgVVYgSW5ramV0XHJcblxyXG48c3Ryb25nPjx1PkVudmlyb25tZW50YWwgSW5mb3JtYXRpb246PFwvdT48XC9zdHJvbmc+IFBWQyBGcmVlXHJcblxyXG48c3Ryb25nPjx1PkFwcGxpY2F0aW9uczo8XC91PjxcL3N0cm9uZz5cclxuXHJcbjxzdHJvbmc+PGVtPkhvc3BpdGFsaXR5XC9FdmVudCBQbGFubmluZzo8XC9lbT48XC9zdHJvbmc+IE1hcHMgYW5kIExlYWZsZXQgR3VpZGVzLCBIb3RlbCBTaWduYWdlIGFuZCBNZW51cywgV2F0ZXJwcm9vZiB0aWNrZXRzIGFuZCB3cmlzdGJhbmRzLCBEb29yIGhhbmdlcnMsIE91dGRvb3IgQnVudGluZywgUmFjZSBudW1iZXJzLlxyXG5cclxuPHN0cm9uZz48ZW0+UmV0YWlsXC9QT1M6PFwvZW0+PFwvc3Ryb25nPiBTZWxmIEVkZ2UgU3RyaXBzLCBSZXRhaWwgVGFncywgQnJhbmRlZFwvQ3VzdG9tZXIgR2lmdCBDYXJkcywgTWVyY2hhbnNpZGUgU3RyaXBzLlxyXG5cclxuPHN0cm9uZz48ZW0+SG9ydGljdWx0dXJlXC9Gb3JyZXN0cnk6PFwvZW0+PFwvc3Ryb25nPiBQbGFudCBzdGFiYmVycywgQ2hyaXN0bWFzIFRyZWUgVGFnc1xyXG5cclxuPHN0cm9uZz48ZW0+TWFudWZhY3R1cmluZzxcL2VtPjxcL3N0cm9uZz46IER1cmFibGUgTGFiZWxzXC9UYWdzLCBXZWF0aGVycHJvb2YgU2lnbmFnZSwgV2F0ZXJwcm9vZiBpbnN0cnVjdGlvbiBtYW51YWxzXC9UcmFpbmluZyBib29rcywgU2FmZXR5IExlYWZsZXRzLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+VHJhbnNwb3J0YXRpb25cL0xvZ2lzaXRpY3M6PFwvZW0+PFwvc3Ryb25nPiBMdWdnYWdlIFRhZ3MsIFdhdGVycHJvb2YgRG9jdW1lbnRzXC9Gb3Jtcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhlYWx0aGNhcmVcL1BoYXJtYTo8XC9lbT48XC9zdHJvbmc+IFBhdGllbnQgUmVjb3Jkc1wvSUQgQ2FyZHMsIExhYm9yYXRvcnkgVXNlLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+RWR1Y2F0aW9uOjxcL2VtPjxcL3N0cm9uZz4gRHVyYWJsZSBTaWduYWdlLCBTdHVkZW50IElEIENhcmRzLCBBbnl0aGluZyB0aGF0IHdvdWxkIHVzdWFsbHkgYmUgbGFtaW5hdGVkLlxyXG5cclxuPHN0cm9uZz48ZW0+Q29uc3RydWN0aW9uXC9FbmdpbmVlcmluZzo8XC9lbT48XC9zdHJvbmc+IFNpdGUgUGxhbnMsIEJsdWUgUHJpbnRzLCBTYWZldHkgc2lnbmFnZSwgTWFudWFscyBhbmQgU2l0ZSBEb2N1bWVudHMuXHJcblxyXG48c3Ryb25nPkNvZGVzOjxcL3N0cm9uZz4gUFBPQTMxMjUgLSA2NzAyXHJcblxyXG4mbmJzcDtcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LjxcL2VtPiIsInBvc3RfdGl0bGUiOiIoMTI1bWljKSAoMTU1ZykgQTMgUGVybWFQYXBlclx1MDBhZSBPZmZpY2UgUEsxMDAiLCJwb3N0X2V4Y2VycHQiOiJUaGlzIHBhY2sgb2YgMjUwIHNoZWV0cyBQZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBvZmZlcnMgYWZmb3JkYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgd2l0aCBleGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5LiBUaGlzIFBWQy1mcmVlLCBwYXBlci1saWtlIGZpbG0gaXMgcGVyZmVjdCBmb3IgaGlnaC12b2x1bWUgZGlnaXRhbCBwcmludHMsIGNvbWJpbmluZyBjb3N0LWVmZmljaWVuY3kgd2l0aCBzdXBlcmlvciBwZXJmb3JtYW5jZS4iLCJwb3N0X3N0YXR1cyI6InB1Ymxpc2giLCJjb21tZW50X3N0YXR1cyI6ImNsb3NlZCIsInBpbmdfc3RhdHVzIjoiY2xvc2VkIiwicG9zdF9wYXNzd29yZCI6IiIsInBvc3RfbmFtZSI6IjEyNW1pYy0xNTVnLWEzLXBlcm1hcGFwZXItb2ZmaWNlLXBrMTAwIiwidG9fcGluZyI6IiIsInBpbmdlZCI6IiIsInBvc3RfbW9kaWZpZWQiOiIyMDI0LTEyLTA1IDEzOjE0OjUzIiwicG9zdF9tb2RpZmllZF9nbXQiOiIyMDI0LTEyLTA1IDEzOjE0OjUzIiwicG9zdF9jb250ZW50X2ZpbHRlcmVkIjoiIiwicG9zdF9wYXJlbnQiOjAsImd1aWQiOiJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcLz9wb3N0X3R5cGU9cHJvZHVjdCYjMDM4O3A9Njk3ODMiLCJtZW51X29yZGVyIjowLCJwb3N0X3R5cGUiOiJwcm9kdWN0IiwicG9zdF9taW1lX3R5cGUiOiIiLCJjb21tZW50X2NvdW50IjoiMCIsImZpbHRlciI6InJhdyJ9LHsiSUQiOjY5Nzg3LCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTEyLTA1IDExOjEyOjI1IiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTItMDUgMTE6MTI6MjUiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlPFwvdT48XC9zdHJvbmc+XHJcblxyXG5QZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob24gVGVhcmFibGU8XC9saT5cclxuIFx0PGxpPk1vaXN0dXJlIFJlc2lzdGFudDxcL2xpPlxyXG4gXHQ8bGk+RGltZW5zaW9uYWxseSBzdGFibGU8XC9saT5cclxuIFx0PGxpPkV4Y2VsbGVudCBQcmludGFiaWxpdHk8XC9saT5cclxuIFx0PGxpPlN1cGVyaW9yIHRlbnNpbGUgYW5kIHRlYXIgc3RyZW5ndGg8XC9saT5cclxuIFx0PGxpPldyaXRlYWJsZSB3aXRoIHBlbmNpbCBhbmQgb2lsIGJhc2VkIGluayBwZW5zPFwvbGk+XHJcbiBcdDxsaT5QcmludGFibGUgb24gYm90aCBzaWRlcyBieSBjb252ZW50aW9uYWwgYW5kIFVWIG9mZnNldCwgd2F0ZXIgYW5kIFVWIGZsZXhvLCBMZXR0ZXJwcmVzcywgU2NyZWVuLCBUaGVybWFsIFRyYW5zZmVyIGFuZCBzdWl0YWJsZSBmb3IgZHJ5IHRvbmVyIHByaW50aW5nLjxcL2xpPlxyXG4gXHQ8bGk+Q2FuIGJlIGZvbGRlZCwgc2hlZXRlZCwgc3RhcGxlZCwgaG90IGZvaWxlZCwgZGllIFx1MjAxMyBwdW5jaGVkLCBzZXJyYXRlZCBhbmQgcGVyZm9yYXRlZC4gKGZvciBwZXJmb3JhdGlvbiBhbHdheXMga2VlcCB0aWUgbGVuZ3RoICZsdDswLjVtbSBhbmQgZWRnZXMgb2YgcGVyZm9yYXRlZCBzaGVldCBvciBsYWJlbCBzaG91bGQgYmUgY3V0KTxcL2xpPlxyXG48XC91bD5cclxuPHN0cm9uZz48dT5QcmludGVyIENvbXBhdGliaWxpdHk6PFwvdT48XC9zdHJvbmc+IERyeSBUb25lciwgSFAgSW5kaWdvLCBPZmZzZXQgTGl0aG8sIFVWIE9mZnNldCwgRmxleG8sIFVWIElua2pldFxyXG5cclxuPHN0cm9uZz48dT5FbnZpcm9ubWVudGFsIEluZm9ybWF0aW9uOjxcL3U+PFwvc3Ryb25nPiBQVkMgRnJlZVxyXG5cclxuPHN0cm9uZz48dT5BcHBsaWNhdGlvbnM6PFwvdT48XC9zdHJvbmc+XHJcblxyXG48c3Ryb25nPjxlbT5Ib3NwaXRhbGl0eVwvRXZlbnQgUGxhbm5pbmc6PFwvZW0+PFwvc3Ryb25nPiBNYXBzIGFuZCBMZWFmbGV0IEd1aWRlcywgSG90ZWwgU2lnbmFnZSBhbmQgTWVudXMsIFdhdGVycHJvb2YgdGlja2V0cyBhbmQgd3Jpc3RiYW5kcywgRG9vciBoYW5nZXJzLCBPdXRkb29yIEJ1bnRpbmcsIFJhY2UgbnVtYmVycy5cclxuXHJcbjxzdHJvbmc+PGVtPlJldGFpbFwvUE9TOjxcL2VtPjxcL3N0cm9uZz4gU2VsZiBFZGdlIFN0cmlwcywgUmV0YWlsIFRhZ3MsIEJyYW5kZWRcL0N1c3RvbWVyIEdpZnQgQ2FyZHMsIE1lcmNoYW5zaWRlIFN0cmlwcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhvcnRpY3VsdHVyZVwvRm9ycmVzdHJ5OjxcL2VtPjxcL3N0cm9uZz4gUGxhbnQgc3RhYmJlcnMsIENocmlzdG1hcyBUcmVlIFRhZ3NcclxuXHJcbjxzdHJvbmc+PGVtPk1hbnVmYWN0dXJpbmc8XC9lbT48XC9zdHJvbmc+OiBEdXJhYmxlIExhYmVsc1wvVGFncywgV2VhdGhlcnByb29mIFNpZ25hZ2UsIFdhdGVycHJvb2YgaW5zdHJ1Y3Rpb24gbWFudWFsc1wvVHJhaW5pbmcgYm9va3MsIFNhZmV0eSBMZWFmbGV0cywgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPlRyYW5zcG9ydGF0aW9uXC9Mb2dpc2l0aWNzOjxcL2VtPjxcL3N0cm9uZz4gTHVnZ2FnZSBUYWdzLCBXYXRlcnByb29mIERvY3VtZW50c1wvRm9ybXMuXHJcblxyXG48c3Ryb25nPjxlbT5IZWFsdGhjYXJlXC9QaGFybWE6PFwvZW0+PFwvc3Ryb25nPiBQYXRpZW50IFJlY29yZHNcL0lEIENhcmRzLCBMYWJvcmF0b3J5IFVzZSwgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPkVkdWNhdGlvbjo8XC9lbT48XC9zdHJvbmc+IER1cmFibGUgU2lnbmFnZSwgU3R1ZGVudCBJRCBDYXJkcywgQW55dGhpbmcgdGhhdCB3b3VsZCB1c3VhbGx5IGJlIGxhbWluYXRlZC5cclxuXHJcbjxzdHJvbmc+PGVtPkNvbnN0cnVjdGlvblwvRW5naW5lZXJpbmc6PFwvZW0+PFwvc3Ryb25nPiBTaXRlIFBsYW5zLCBCbHVlIFByaW50cywgU2FmZXR5IHNpZ25hZ2UsIE1hbnVhbHMgYW5kIFNpdGUgRG9jdW1lbnRzLlxyXG5cclxuPHN0cm9uZz5Db2Rlczo8XC9zdHJvbmc+IFBQT0E0MTI1XHJcblxyXG4mbmJzcDtcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LjxcL2VtPiIsInBvc3RfdGl0bGUiOiIoMTI1bWljKSAoMTU1ZykgQTQgUGVybWFQYXBlclx1MDBhZSBPZmZpY2UgUEsxMDAiLCJwb3N0X2V4Y2VycHQiOiJUaGlzIHBhY2sgb2YgMjUwIHNoZWV0cyBQZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBvZmZlcnMgYWZmb3JkYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgd2l0aCBleGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5LiBUaGlzIFBWQy1mcmVlLCBwYXBlci1saWtlIGZpbG0gaXMgcGVyZmVjdCBmb3IgaGlnaC12b2x1bWUgZGlnaXRhbCBwcmludHMsIGNvbWJpbmluZyBjb3N0LWVmZmljaWVuY3kgd2l0aCBzdXBlcmlvciBwZXJmb3JtYW5jZS4iLCJwb3N0X3N0YXR1cyI6InB1Ymxpc2giLCJjb21tZW50X3N0YXR1cyI6ImNsb3NlZCIsInBpbmdfc3RhdHVzIjoiY2xvc2VkIiwicG9zdF9wYXNzd29yZCI6IiIsInBvc3RfbmFtZSI6IjEyNW1pYy0xNTVnLWE0LXBlcm1hcGFwZXItb2ZmaWNlLXBrMTAwIiwidG9fcGluZyI6IiIsInBpbmdlZCI6IiIsInBvc3RfbW9kaWZpZWQiOiIyMDI0LTEyLTA1IDEyOjEwOjIwIiwicG9zdF9tb2RpZmllZF9nbXQiOiIyMDI0LTEyLTA1IDEyOjEwOjIwIiwicG9zdF9jb250ZW50X2ZpbHRlcmVkIjoiIiwicG9zdF9wYXJlbnQiOjAsImd1aWQiOiJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcLz9wb3N0X3R5cGU9cHJvZHVjdCYjMDM4O3A9Njk3ODciLCJtZW51X29yZGVyIjowLCJwb3N0X3R5cGUiOiJwcm9kdWN0IiwicG9zdF9taW1lX3R5cGUiOiIiLCJjb21tZW50X2NvdW50IjoiMCIsImZpbHRlciI6InJhdyJ9LHsiSUQiOjY5Nzg0LCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTEyLTA1IDExOjA5OjQ0IiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTItMDUgMTE6MDk6NDQiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlPFwvdT48XC9zdHJvbmc+XHJcblxyXG5QZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob24gVGVhcmFibGU8XC9saT5cclxuIFx0PGxpPk1vaXN0dXJlIFJlc2lzdGFudDxcL2xpPlxyXG4gXHQ8bGk+RGltZW5zaW9uYWxseSBzdGFibGU8XC9saT5cclxuIFx0PGxpPkV4Y2VsbGVudCBQcmludGFiaWxpdHk8XC9saT5cclxuIFx0PGxpPlN1cGVyaW9yIHRlbnNpbGUgYW5kIHRlYXIgc3RyZW5ndGg8XC9saT5cclxuIFx0PGxpPldyaXRlYWJsZSB3aXRoIHBlbmNpbCBhbmQgb2lsIGJhc2VkIGluayBwZW5zPFwvbGk+XHJcbiBcdDxsaT5QcmludGFibGUgb24gYm90aCBzaWRlcyBieSBjb252ZW50aW9uYWwgYW5kIFVWIG9mZnNldCwgd2F0ZXIgYW5kIFVWIGZsZXhvLCBMZXR0ZXJwcmVzcywgU2NyZWVuLCBUaGVybWFsIFRyYW5zZmVyIGFuZCBzdWl0YWJsZSBmb3IgZHJ5IHRvbmVyIHByaW50aW5nLjxcL2xpPlxyXG4gXHQ8bGk+Q2FuIGJlIGZvbGRlZCwgc2hlZXRlZCwgc3RhcGxlZCwgaG90IGZvaWxlZCwgZGllIFx1MjAxMyBwdW5jaGVkLCBzZXJyYXRlZCBhbmQgcGVyZm9yYXRlZC4gKGZvciBwZXJmb3JhdGlvbiBhbHdheXMga2VlcCB0aWUgbGVuZ3RoICZsdDswLjVtbSBhbmQgZWRnZXMgb2YgcGVyZm9yYXRlZCBzaGVldCBvciBsYWJlbCBzaG91bGQgYmUgY3V0KTxcL2xpPlxyXG48XC91bD5cclxuPHN0cm9uZz48dT5QcmludGVyIENvbXBhdGliaWxpdHk6PFwvdT48XC9zdHJvbmc+IERyeSBUb25lciwgSFAgSW5kaWdvLCBPZmZzZXQgTGl0aG8sIFVWIE9mZnNldCwgRmxleG8sIFVWIElua2pldFxyXG5cclxuPHN0cm9uZz48dT5FbnZpcm9ubWVudGFsIEluZm9ybWF0aW9uOjxcL3U+PFwvc3Ryb25nPiBQVkMgRnJlZVxyXG5cclxuPHN0cm9uZz48dT5BcHBsaWNhdGlvbnM6PFwvdT48XC9zdHJvbmc+XHJcblxyXG48c3Ryb25nPjxlbT5Ib3NwaXRhbGl0eVwvRXZlbnQgUGxhbm5pbmc6PFwvZW0+PFwvc3Ryb25nPiBNYXBzIGFuZCBMZWFmbGV0IEd1aWRlcywgSG90ZWwgU2lnbmFnZSBhbmQgTWVudXMsIFdhdGVycHJvb2YgdGlja2V0cyBhbmQgd3Jpc3RiYW5kcywgRG9vciBoYW5nZXJzLCBPdXRkb29yIEJ1bnRpbmcsIFJhY2UgbnVtYmVycy5cclxuXHJcbjxzdHJvbmc+PGVtPlJldGFpbFwvUE9TOjxcL2VtPjxcL3N0cm9uZz4gU2VsZiBFZGdlIFN0cmlwcywgUmV0YWlsIFRhZ3MsIEJyYW5kZWRcL0N1c3RvbWVyIEdpZnQgQ2FyZHMsIE1lcmNoYW5zaWRlIFN0cmlwcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhvcnRpY3VsdHVyZVwvRm9ycmVzdHJ5OjxcL2VtPjxcL3N0cm9uZz4gUGxhbnQgc3RhYmJlcnMsIENocmlzdG1hcyBUcmVlIFRhZ3NcclxuXHJcbjxzdHJvbmc+PGVtPk1hbnVmYWN0dXJpbmc8XC9lbT48XC9zdHJvbmc+OiBEdXJhYmxlIExhYmVsc1wvVGFncywgV2VhdGhlcnByb29mIFNpZ25hZ2UsIFdhdGVycHJvb2YgaW5zdHJ1Y3Rpb24gbWFudWFsc1wvVHJhaW5pbmcgYm9va3MsIFNhZmV0eSBMZWFmbGV0cywgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPlRyYW5zcG9ydGF0aW9uXC9Mb2dpc2l0aWNzOjxcL2VtPjxcL3N0cm9uZz4gTHVnZ2FnZSBUYWdzLCBXYXRlcnByb29mIERvY3VtZW50c1wvRm9ybXMuXHJcblxyXG48c3Ryb25nPjxlbT5IZWFsdGhjYXJlXC9QaGFybWE6PFwvZW0+PFwvc3Ryb25nPiBQYXRpZW50IFJlY29yZHNcL0lEIENhcmRzLCBMYWJvcmF0b3J5IFVzZSwgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPkVkdWNhdGlvbjo8XC9lbT48XC9zdHJvbmc+IER1cmFibGUgU2lnbmFnZSwgU3R1ZGVudCBJRCBDYXJkcywgQW55dGhpbmcgdGhhdCB3b3VsZCB1c3VhbGx5IGJlIGxhbWluYXRlZC5cclxuXHJcbjxzdHJvbmc+PGVtPkNvbnN0cnVjdGlvblwvRW5naW5lZXJpbmc6PFwvZW0+PFwvc3Ryb25nPiBTaXRlIFBsYW5zLCBCbHVlIFByaW50cywgU2FmZXR5IHNpZ25hZ2UsIE1hbnVhbHMgYW5kIFNpdGUgRG9jdW1lbnRzLlxyXG5cclxuPHN0cm9uZz5Db2Rlczo8XC9zdHJvbmc+IFBQT0EzMTQ1IC0gNjcwM1xyXG5cclxuJm5ic3A7XHJcblxyXG48ZW0+KlRoZSBpbmZvcm1hdGlvbiBwcm92aWRlZCBhYm92ZSBpcyBiYXNlZCBvbiBjb25jbHVzaXZlIHRlc3RzLCB3aGljaCBhcmUgaW5kaWNhdGl2ZSBvbmx5IGFuZCBwcm92aWRlZCBhcyBndWlkZWxpbmVzLiBUaGV5IGRvIG5vdCBjb25zdGl0dXRlIGEgZ3VhcmFudGVlIG9mIGFueSBzcGVjaWZpYyBwcm9kdWN0IGF0dHJpYnV0ZXMgb3IgdGhlIHN1aXRhYmlsaXR5IG9mIHByb2R1Y3RzIGZvciBzcGVjaWZpYyBhcHBsaWNhdGlvbnMuIDxcL2VtPlxyXG5cclxuPGVtPlN0b3JhZ2UgQ29uZGl0aW9uczogTWFpbnRhaW4gcm9vbSB0ZW1wZXJhdHVyZSBpbiBiZXR3ZWVuIDIwLTI1XHUwMGIwQyAmYW1wOyByZWxhdGl2ZSBodW1pZGl0eS48XC9lbT4iLCJwb3N0X3RpdGxlIjoiKDE0NW1pYykgKDE5MGcpIEEzIFBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIFBLMTAwIiwicG9zdF9leGNlcnB0IjoiVGhpcyBwYWNrIG9mIDI1MCBzaGVldHMgUGVybWFQYXBlclx1MDBhZSBPZmZpY2Ugb2ZmZXJzIGFmZm9yZGFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIHdpdGggZXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eS4gVGhpcyBQVkMtZnJlZSwgcGFwZXItbGlrZSBmaWxtIGlzIHBlcmZlY3QgZm9yIGhpZ2gtdm9sdW1lIGRpZ2l0YWwgcHJpbnRzLCBjb21iaW5pbmcgY29zdC1lZmZpY2llbmN5IHdpdGggc3VwZXJpb3IgcGVyZm9ybWFuY2UuIiwicG9zdF9zdGF0dXMiOiJwdWJsaXNoIiwiY29tbWVudF9zdGF0dXMiOiJjbG9zZWQiLCJwaW5nX3N0YXR1cyI6ImNsb3NlZCIsInBvc3RfcGFzc3dvcmQiOiIiLCJwb3N0X25hbWUiOiIxNDVtaWMtMTkwZy1hMy1wZXJtYXBhcGVyLW9mZmljZS1wazEwMCIsInRvX3BpbmciOiIiLCJwaW5nZWQiOiIiLCJwb3N0X21vZGlmaWVkIjoiMjAyNC0xMi0wNSAxMzoxNDo1MiIsInBvc3RfbW9kaWZpZWRfZ210IjoiMjAyNC0xMi0wNSAxMzoxNDo1MiIsInBvc3RfY29udGVudF9maWx0ZXJlZCI6IiIsInBvc3RfcGFyZW50IjowLCJndWlkIjoiaHR0cHM6XC9cL3dsY29sbGVyLmNvLnVrXC8/cG9zdF90eXBlPXByb2R1Y3QmIzAzODtwPTY5Nzg0IiwibWVudV9vcmRlciI6MCwicG9zdF90eXBlIjoicHJvZHVjdCIsInBvc3RfbWltZV90eXBlIjoiIiwiY29tbWVudF9jb3VudCI6IjAiLCJmaWx0ZXIiOiJyYXcifSx7IklEIjo2OTc4OCwicG9zdF9hdXRob3IiOiIzMDI4IiwicG9zdF9kYXRlIjoiMjAyNC0xMi0wNSAxMToxMzoxNiIsInBvc3RfZGF0ZV9nbXQiOiIyMDI0LTEyLTA1IDExOjEzOjE2IiwicG9zdF9jb250ZW50IjoiPHN0cm9uZz48dT5QZXJtYVBhcGVyXHUwMGFlIE9mZmljZTxcL3U+PFwvc3Ryb25nPlxyXG5cclxuUGVybWFQYXBlclx1MDBhZSBPZmZpY2UgbWFrZXMgZHVyYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgaGlnaGx5IGFmZm9yZGFibGUhIEV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkgd2l0aCBhIHdpZGUgdmFyaWV0eSBvZiBkaWdpdGFsIGFuZCB0cmFkaXRpb25hbCBwcmludCB0ZWNobm9sb2dpZXMsIHlldCB3aXRob3V0IHRoZSBoaWdoIHByaWNlIG5vcm1hbGx5IGFzc29jaWF0ZWQgd2l0aCBoZWF0LXJlc2lzdGFudCBzeW50aGV0aWMgZmlsbXMgZm9yIGRpZ2l0YWwgcHJpbnQuIFRoaXMgdW5pcXVlIFBWQy1mcmVlIGZpbG0gd2l0aCBhIHBhcGVyIGxpa2UgZmVlbCBpcyBpZGVhbCBmb3IgbG9uZ2VyIHJ1bnMgYW5kIGhpZ2hlciB1c2FnZSB3aGVyZSBkaWdpdGFsIHByaW50YWJpbGl0eSBhbmQgY29zdCBwZXIgc2hlZXQgYXJlIGltcG9ydGFudC5cclxuXHJcbkl0IGlzIGEgY28tZXh0cnVkZWQsIGhpZ2ggd2hpdGUgb3BhcXVlLCBkb3VibGUgc2lkZWQgbWF0dGUgY29hdGVkIHBvbHlwcm9weWxlbmUgYmFzZWQgZmlsbSB3aGljaCByZXNlbWJsZXMgcGFwZXIgaW4gYXBwZWFyYW5jZS5cclxuXHJcbktleSBGZWF0dXJlczpcclxuPHVsPlxyXG4gXHQ8bGk+Tm9uIFRlYXJhYmxlPFwvbGk+XHJcbiBcdDxsaT5Nb2lzdHVyZSBSZXNpc3RhbnQ8XC9saT5cclxuIFx0PGxpPkRpbWVuc2lvbmFsbHkgc3RhYmxlPFwvbGk+XHJcbiBcdDxsaT5FeGNlbGxlbnQgUHJpbnRhYmlsaXR5PFwvbGk+XHJcbiBcdDxsaT5TdXBlcmlvciB0ZW5zaWxlIGFuZCB0ZWFyIHN0cmVuZ3RoPFwvbGk+XHJcbiBcdDxsaT5Xcml0ZWFibGUgd2l0aCBwZW5jaWwgYW5kIG9pbCBiYXNlZCBpbmsgcGVuczxcL2xpPlxyXG4gXHQ8bGk+UHJpbnRhYmxlIG9uIGJvdGggc2lkZXMgYnkgY29udmVudGlvbmFsIGFuZCBVViBvZmZzZXQsIHdhdGVyIGFuZCBVViBmbGV4bywgTGV0dGVycHJlc3MsIFNjcmVlbiwgVGhlcm1hbCBUcmFuc2ZlciBhbmQgc3VpdGFibGUgZm9yIGRyeSB0b25lciBwcmludGluZy48XC9saT5cclxuIFx0PGxpPkNhbiBiZSBmb2xkZWQsIHNoZWV0ZWQsIHN0YXBsZWQsIGhvdCBmb2lsZWQsIGRpZSBcdTIwMTMgcHVuY2hlZCwgc2VycmF0ZWQgYW5kIHBlcmZvcmF0ZWQuIChmb3IgcGVyZm9yYXRpb24gYWx3YXlzIGtlZXAgdGllIGxlbmd0aCAmbHQ7MC41bW0gYW5kIGVkZ2VzIG9mIHBlcmZvcmF0ZWQgc2hlZXQgb3IgbGFiZWwgc2hvdWxkIGJlIGN1dCk8XC9saT5cclxuPFwvdWw+XHJcbjxzdHJvbmc+PHU+UHJpbnRlciBDb21wYXRpYmlsaXR5OjxcL3U+PFwvc3Ryb25nPiBEcnkgVG9uZXIsIEhQIEluZGlnbywgT2Zmc2V0IExpdGhvLCBVViBPZmZzZXQsIEZsZXhvLCBVViBJbmtqZXRcclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6PFwvc3Ryb25nPiBQUE9BNDE0NSAtIDY3MDdcclxuXHJcbiZuYnNwO1xyXG5cclxuPGVtPipUaGUgaW5mb3JtYXRpb24gcHJvdmlkZWQgYWJvdmUgaXMgYmFzZWQgb24gY29uY2x1c2l2ZSB0ZXN0cywgd2hpY2ggYXJlIGluZGljYXRpdmUgb25seSBhbmQgcHJvdmlkZWQgYXMgZ3VpZGVsaW5lcy4gVGhleSBkbyBub3QgY29uc3RpdHV0ZSBhIGd1YXJhbnRlZSBvZiBhbnkgc3BlY2lmaWMgcHJvZHVjdCBhdHRyaWJ1dGVzIG9yIHRoZSBzdWl0YWJpbGl0eSBvZiBwcm9kdWN0cyBmb3Igc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8XC9lbT5cclxuXHJcbjxlbT5TdG9yYWdlIENvbmRpdGlvbnM6IE1haW50YWluIHJvb20gdGVtcGVyYXR1cmUgaW4gYmV0d2VlbiAyMC0yNVx1MDBiMEMgJmFtcDsgcmVsYXRpdmUgaHVtaWRpdHkuPFwvZW0+IiwicG9zdF90aXRsZSI6IigxNDVtaWMpICgxOTBnKSBBNCBQZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBQSzEwMCIsInBvc3RfZXhjZXJwdCI6IlRoaXMgcGFjayBvZiAyNTAgc2hlZXRzIFBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMTQ1bWljLTE5MGctYTQtcGVybWFwYXBlci1vZmZpY2UtcGsxMDAiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTM6MTQ6NTEiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTM6MTQ6NTEiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTc4OCIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njk3NDUsInBvc3RfYXV0aG9yIjoiMzAyOCIsInBvc3RfZGF0ZSI6IjIwMjQtMTEtMjkgMTU6MTM6NTciLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0xMS0yOSAxNToxMzo1NyIsInBvc3RfY29udGVudCI6IjxzdHJvbmc+PHU+UGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIDxcL3U+PFwvc3Ryb25nPlxyXG5cclxuUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIG1ha2VzIGR1cmFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIGhpZ2hseSBhZmZvcmRhYmxlISBFeGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5IHdpdGggYSB3aWRlIHZhcmlldHkgb2YgZGlnaXRhbCBhbmQgdHJhZGl0aW9uYWwgcHJpbnQgdGVjaG5vbG9naWVzLCB5ZXQgd2l0aG91dCB0aGUgaGlnaCBwcmljZSBub3JtYWxseSBhc3NvY2lhdGVkIHdpdGggaGVhdC1yZXNpc3RhbnQgc3ludGhldGljIGZpbG1zIGZvciBkaWdpdGFsIHByaW50LiBUaGlzIHVuaXF1ZSBQVkMtZnJlZSBmaWxtIHdpdGggYSBwYXBlciBsaWtlIGZlZWwgaXMgaWRlYWwgZm9yIGxvbmdlciBydW5zIGFuZCBoaWdoZXIgdXNhZ2Ugd2hlcmUgZGlnaXRhbCBwcmludGFiaWxpdHkgYW5kIGNvc3QgcGVyIHNoZWV0IGFyZSBpbXBvcnRhbnQuXHJcblxyXG5JdCBpcyBhIGNvLWV4dHJ1ZGVkLCBoaWdoIHdoaXRlIG9wYXF1ZSwgZG91YmxlIHNpZGVkIG1hdHRlIGNvYXRlZCBwb2x5cHJvcHlsZW5lIGJhc2VkIGZpbG0gd2hpY2ggcmVzZW1ibGVzIHBhcGVyIGluIGFwcGVhcmFuY2UuXHJcblxyXG5LZXkgRmVhdHVyZXM6XHJcbjx1bD5cclxuIFx0PGxpPk5vbiBUZWFyYWJsZTxcL2xpPlxyXG4gXHQ8bGk+TW9pc3R1cmUgUmVzaXN0YW50PFwvbGk+XHJcbiBcdDxsaT5EaW1lbnNpb25hbGx5IHN0YWJsZTxcL2xpPlxyXG4gXHQ8bGk+RXhjZWxsZW50IFByaW50YWJpbGl0eTxcL2xpPlxyXG4gXHQ8bGk+U3VwZXJpb3IgdGVuc2lsZSBhbmQgdGVhciBzdHJlbmd0aDxcL2xpPlxyXG4gXHQ8bGk+V3JpdGVhYmxlIHdpdGggcGVuY2lsIGFuZCBvaWwgYmFzZWQgaW5rIHBlbnM8XC9saT5cclxuIFx0PGxpPlByaW50YWJsZSBvbiBib3RoIHNpZGVzIGJ5IGNvbnZlbnRpb25hbCBhbmQgVVYgb2Zmc2V0LCB3YXRlciBhbmQgVVYgZmxleG8sIExldHRlcnByZXNzLCBTY3JlZW4sIFRoZXJtYWwgVHJhbnNmZXIgYW5kIHN1aXRhYmxlIGZvciBkcnkgdG9uZXIgcHJpbnRpbmcuPFwvbGk+XHJcbiBcdDxsaT5DYW4gYmUgZm9sZGVkLCBzaGVldGVkLCBzdGFwbGVkLCBob3QgZm9pbGVkLCBkaWUgXHUyMDEzIHB1bmNoZWQsIHNlcnJhdGVkIGFuZCBwZXJmb3JhdGVkLiAoZm9yIHBlcmZvcmF0aW9uIGFsd2F5cyBrZWVwIHRpZSBsZW5ndGggJmx0OzAuNW1tIGFuZCBlZGdlcyBvZiBwZXJmb3JhdGVkIHNoZWV0IG9yIGxhYmVsIHNob3VsZCBiZSBjdXQpPFwvbGk+XHJcbjxcL3VsPlxyXG48c3Ryb25nPjx1PlByaW50YWJpbGl0eTxcL3U+PFwvc3Ryb25nPjxzdHJvbmc+OjxcL3N0cm9uZz4gVGhlIGNvYXRpbmcgaXMgc3VpdGFibGUgZm9yIGRpZ2l0YWwgcHJpbnRlcnMsIGJ1dCBhbHNvIHByb2R1Y2VzIGdvb2QgcmVzdWx0cyB3aXRoIGxhc2VyIHByaW50ZXJzIGFuZCBwaG90b2NvcGllcnMuIFByaW50aW5nIGJ5IE9mZnNldCBpcyBhbHNvIHBvc3NpYmxlLiBBcyB3aXRoIGFsbCBzeW50aGV0aWMgcHJvZHVjdHMgUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIHNob3VsZCBiZSB0ZXN0ZWQgd2l0aCBpbmRpdmlkdWFsIHByaW50aW5nIG1hY2hpbmVzIGJlZm9yZVxyXG5cclxucHJvZHVjdGlvbiBydW5zIGFyZSB1bmRlcnRha2VuLlxyXG5cclxuPHN0cm9uZz48dT5FbnZpcm9ubWVudGFsIEluZm9ybWF0aW9uOjxcL3U+PFwvc3Ryb25nPiBQVkMgRnJlZVxyXG5cclxuPHN0cm9uZz48dT5BcHBsaWNhdGlvbnM6PFwvdT48XC9zdHJvbmc+XHJcblxyXG48c3Ryb25nPjxlbT5Ib3NwaXRhbGl0eVwvRXZlbnQgUGxhbm5pbmc6PFwvZW0+PFwvc3Ryb25nPiBNYXBzIGFuZCBMZWFmbGV0IEd1aWRlcywgSG90ZWwgU2lnbmFnZSBhbmQgTWVudXMsIFdhdGVycHJvb2YgdGlja2V0cyBhbmQgd3Jpc3RiYW5kcywgRG9vciBoYW5nZXJzLCBPdXRkb29yIEJ1bnRpbmcsIFJhY2UgbnVtYmVycy5cclxuXHJcbjxzdHJvbmc+PGVtPlJldGFpbFwvUE9TOjxcL2VtPjxcL3N0cm9uZz4gU2VsZiBFZGdlIFN0cmlwcywgUmV0YWlsIFRhZ3MsIEJyYW5kZWRcL0N1c3RvbWVyIEdpZnQgQ2FyZHMsIE1lcmNoYW5zaWRlIFN0cmlwcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhvcnRpY3VsdHVyZVwvRm9ycmVzdHJ5OjxcL2VtPjxcL3N0cm9uZz4gUGxhbnQgc3RhYmJlcnMsIENocmlzdG1hcyBUcmVlIFRhZ3NcclxuXHJcbjxzdHJvbmc+PGVtPk1hbnVmYWN0dXJpbmc8XC9lbT48XC9zdHJvbmc+OiBEdXJhYmxlIExhYmVsc1wvVGFncywgV2VhdGhlcnByb29mIFNpZ25hZ2UsIFdhdGVycHJvb2YgaW5zdHJ1Y3Rpb24gbWFudWFsc1wvVHJhaW5pbmcgYm9va3MsIFNhZmV0eSBMZWFmbGV0cywgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPlRyYW5zcG9ydGF0aW9uXC9Mb2dpc2l0aWNzOjxcL2VtPjxcL3N0cm9uZz4gTHVnZ2FnZSBUYWdzLCBXYXRlcnByb29mIERvY3VtZW50c1wvRm9ybXMuXHJcblxyXG48c3Ryb25nPjxlbT5IZWFsdGhjYXJlXC9QaGFybWE6PFwvZW0+PFwvc3Ryb25nPiBQYXRpZW50IFJlY29yZHNcL0lEIENhcmRzLCBMYWJvcmF0b3J5IFVzZSwgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPkVkdWNhdGlvbjo8XC9lbT48XC9zdHJvbmc+IER1cmFibGUgU2lnbmFnZSwgU3R1ZGVudCBJRCBDYXJkcywgQW55dGhpbmcgdGhhdCB3b3VsZCB1c3VhbGx5IGJlIGxhbWluYXRlZC5cclxuXHJcbjxzdHJvbmc+PGVtPkNvbnN0cnVjdGlvblwvRW5naW5lZXJpbmc6PFwvZW0+PFwvc3Ryb25nPiBTaXRlIFBsYW5zLCBCbHVlIFByaW50cywgU2FmZXR5IHNpZ25hZ2UsIE1hbnVhbHMgYW5kIFNpdGUgRG9jdW1lbnRzLlxyXG5cclxuPHN0cm9uZz5Db2RlczogPFwvc3Ryb25nPnBwcHMzMTQ1IC0gNjY5OVxyXG5cclxuPGVtPipUaGUgaW5mb3JtYXRpb24gcHJvdmlkZWQgYWJvdmUgaXMgYmFzZWQgb24gY29uY2x1c2l2ZSB0ZXN0cywgd2hpY2ggYXJlIGluZGljYXRpdmUgb25seSBhbmQgcHJvdmlkZWQgYXMgZ3VpZGVsaW5lcy4gVGhleSBkbyBub3QgY29uc3RpdHV0ZSBhIGd1YXJhbnRlZSBvZiBhbnkgc3BlY2lmaWMgcHJvZHVjdCBhdHRyaWJ1dGVzIG9yIHRoZSBzdWl0YWJpbGl0eSBvZiBwcm9kdWN0cyBmb3Igc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8XC9lbT5cclxuXHJcbjxlbT5TdG9yYWdlIENvbmRpdGlvbnM6IE1haW50YWluIHJvb20gdGVtcGVyYXR1cmUgaW4gYmV0d2VlbiAyMC0yNVx1MDBiMEMgJmFtcDsgcmVsYXRpdmUgaHVtaWRpdHkuIDxcL2VtPiIsInBvc3RfdGl0bGUiOiIoMTQ1bWljKSAoMTk1ZykgU1JBMyBQZXJtYVBhcGVyXHUwMGFlIFByZW1pdW0gUEsxMDAiLCJwb3N0X2V4Y2VycHQiOiJQZXJtYVBhcGVyXHUwMGFlIFByZW1pdW0gb2ZmZXJzIGFmZm9yZGFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIHdpdGggZXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eS4gVGhpcyBQVkMtZnJlZSwgcGFwZXItbGlrZSBmaWxtIGlzIHBlcmZlY3QgZm9yIGhpZ2gtdm9sdW1lIGRpZ2l0YWwgcHJpbnRzLCBjb21iaW5pbmcgY29zdC1lZmZpY2llbmN5IHdpdGggc3VwZXJpb3IgcGVyZm9ybWFuY2UuIiwicG9zdF9zdGF0dXMiOiJwdWJsaXNoIiwiY29tbWVudF9zdGF0dXMiOiJjbG9zZWQiLCJwaW5nX3N0YXR1cyI6ImNsb3NlZCIsInBvc3RfcGFzc3dvcmQiOiIiLCJwb3N0X25hbWUiOiIxNDVtaWMtMTk1Zy1zcmEzLXBlcm1hcGFwZXItcHJlbWl1bS1wazEwMCIsInRvX3BpbmciOiIiLCJwaW5nZWQiOiIiLCJwb3N0X21vZGlmaWVkIjoiMjAyNC0xMi0wNSAxMjoxMDoxOCIsInBvc3RfbW9kaWZpZWRfZ210IjoiMjAyNC0xMi0wNSAxMjoxMDoxOCIsInBvc3RfY29udGVudF9maWx0ZXJlZCI6IiIsInBvc3RfcGFyZW50IjowLCJndWlkIjoiaHR0cHM6XC9cL3dsY29sbGVyLmNvLnVrXC8/cG9zdF90eXBlPXByb2R1Y3QmIzAzODtwPTY5NzQ1IiwibWVudV9vcmRlciI6MCwicG9zdF90eXBlIjoicHJvZHVjdCIsInBvc3RfbWltZV90eXBlIjoiIiwiY29tbWVudF9jb3VudCI6IjAiLCJmaWx0ZXIiOiJyYXcifSx7IklEIjo2OTczNSwicG9zdF9hdXRob3IiOiIzMDI4IiwicG9zdF9kYXRlIjoiMjAyNC0xMS0yOSAxMTowOToyNCIsInBvc3RfZGF0ZV9nbXQiOiIyMDI0LTExLTI5IDExOjA5OjI0IiwicG9zdF9jb250ZW50IjoiPHN0cm9uZz48dT5QZXJtYVBhcGVyXHUwMGFlIENsYXNzaWMgPFwvdT48XC9zdHJvbmc+XHJcblxyXG5QZXJtYVBhcGVyXHUwMGFlIENsYXNzaWMgbWFrZXMgZHVyYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgaGlnaGx5IGFmZm9yZGFibGUhIEV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkgd2l0aCBhIHdpZGUgdmFyaWV0eSBvZiBkaWdpdGFsIGFuZCB0cmFkaXRpb25hbCBwcmludCB0ZWNobm9sb2dpZXMsIHlldCB3aXRob3V0IHRoZSBoaWdoIHByaWNlIG5vcm1hbGx5IGFzc29jaWF0ZWQgd2l0aCBoZWF0LXJlc2lzdGFudCBzeW50aGV0aWMgZmlsbXMgZm9yIGRpZ2l0YWwgcHJpbnQuIFRoaXMgdW5pcXVlIFBWQy1mcmVlIGZpbG0gd2l0aCBhIHBhcGVyIGxpa2UgZmVlbCBpcyBpZGVhbCBmb3IgbG9uZ2VyIHJ1bnMgYW5kIGhpZ2hlciB1c2FnZSB3aGVyZSBkaWdpdGFsIHByaW50YWJpbGl0eSBhbmQgY29zdCBwZXIgc2hlZXQgYXJlIGltcG9ydGFudC5cclxuXHJcbkl0IGlzIGEgY28tZXh0cnVkZWQsIGhpZ2ggd2hpdGUgb3BhcXVlLCBkb3VibGUgc2lkZWQgbWF0dGUgY29hdGVkIHBvbHlwcm9weWxlbmUgYmFzZWQgZmlsbSB3aGljaCByZXNlbWJsZXMgcGFwZXIgaW4gYXBwZWFyYW5jZS5cclxuXHJcbktleSBGZWF0dXJlczpcclxuPHVsPlxyXG4gXHQ8bGk+Tm9uIFRlYXJhYmxlPFwvbGk+XHJcbiBcdDxsaT5Nb2lzdHVyZSBSZXNpc3RhbnQ8XC9saT5cclxuIFx0PGxpPkRpbWVuc2lvbmFsbHkgc3RhYmxlPFwvbGk+XHJcbiBcdDxsaT5FeGNlbGxlbnQgUHJpbnRhYmlsaXR5PFwvbGk+XHJcbiBcdDxsaT5TdXBlcmlvciB0ZW5zaWxlIGFuZCB0ZWFyIHN0cmVuZ3RoPFwvbGk+XHJcbiBcdDxsaT5Xcml0ZWFibGUgd2l0aCBwZW5jaWwgYW5kIG9pbCBiYXNlZCBpbmsgcGVuczxcL2xpPlxyXG4gXHQ8bGk+UHJpbnRhYmxlIG9uIGJvdGggc2lkZXMgYnkgY29udmVudGlvbmFsIGFuZCBVViBvZmZzZXQsIHdhdGVyIGFuZCBVViBmbGV4bywgTGV0dGVycHJlc3MsIFNjcmVlbiwgVGhlcm1hbCBUcmFuc2ZlciBhbmQgc3VpdGFibGUgZm9yIGRyeSB0b25lciBwcmludGluZy48XC9saT5cclxuIFx0PGxpPkNhbiBiZSBmb2xkZWQsIHNoZWV0ZWQsIHN0YXBsZWQsIGhvdCBmb2lsZWQsIGRpZSBcdTIwMTMgcHVuY2hlZCwgc2VycmF0ZWQgYW5kIHBlcmZvcmF0ZWQuIChmb3IgcGVyZm9yYXRpb24gYWx3YXlzIGtlZXAgdGllIGxlbmd0aCAmbHQ7MC41bW0gYW5kIGVkZ2VzIG9mIHBlcmZvcmF0ZWQgc2hlZXQgb3IgbGFiZWwgc2hvdWxkIGJlIGN1dCk8XC9saT5cclxuPFwvdWw+XHJcbjxzdHJvbmc+PHU+UHJpbnRlciBDb21wYXRpYmlsaXR5OjxcL3U+PFwvc3Ryb25nPiBEcnkgVG9uZXIsIEhQIEluZGlnbywgT2Zmc2V0IExpdGhvLCBVViBPZmZzZXQsIEZsZXhvLCBVViBJbmtqZXRcclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6PFwvc3Ryb25nPiBQUENTMzE1MCAtIDY2OTRcclxuXHJcbiZuYnNwO1xyXG5cclxuPGVtPipUaGUgaW5mb3JtYXRpb24gcHJvdmlkZWQgYWJvdmUgaXMgYmFzZWQgb24gY29uY2x1c2l2ZSB0ZXN0cywgd2hpY2ggYXJlIGluZGljYXRpdmUgb25seSBhbmQgcHJvdmlkZWQgYXMgZ3VpZGVsaW5lcy4gVGhleSBkbyBub3QgY29uc3RpdHV0ZSBhIGd1YXJhbnRlZSBvZiBhbnkgc3BlY2lmaWMgcHJvZHVjdCBhdHRyaWJ1dGVzIG9yIHRoZSBzdWl0YWJpbGl0eSBvZiBwcm9kdWN0cyBmb3Igc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8XC9lbT5cclxuXHJcbjxlbT5TdG9yYWdlIENvbmRpdGlvbnM6IE1haW50YWluIHJvb20gdGVtcGVyYXR1cmUgaW4gYmV0d2VlbiAyMC0yNVx1MDBiMEMgJmFtcDsgcmVsYXRpdmUgaHVtaWRpdHkuPFwvZW0+XHJcblxyXG4mbmJzcDsiLCJwb3N0X3RpdGxlIjoiKDE1MG1pYykgKDE2NGcpIFNSQTMgUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIFBLMjUwIiwicG9zdF9leGNlcnB0IjoiUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMTUwbWljLTE2NGctc3JhMy1wZXJtYXBhcGVyLWNsYXNzaWMtY29weS1wazI1MCIsInRvX3BpbmciOiIiLCJwaW5nZWQiOiIiLCJwb3N0X21vZGlmaWVkIjoiMjAyNC0xMi0wNSAxMjoxMDoxNiIsInBvc3RfbW9kaWZpZWRfZ210IjoiMjAyNC0xMi0wNSAxMjoxMDoxNiIsInBvc3RfY29udGVudF9maWx0ZXJlZCI6IiIsInBvc3RfcGFyZW50IjowLCJndWlkIjoiaHR0cHM6XC9cL3dsY29sbGVyLmNvLnVrXC8/cG9zdF90eXBlPXByb2R1Y3QmIzAzODtwPTY5NzM1IiwibWVudV9vcmRlciI6MCwicG9zdF90eXBlIjoicHJvZHVjdCIsInBvc3RfbWltZV90eXBlIjoiIiwiY29tbWVudF9jb3VudCI6IjAiLCJmaWx0ZXIiOiJyYXcifSx7IklEIjo2OTc4NSwicG9zdF9hdXRob3IiOiIzMDI4IiwicG9zdF9kYXRlIjoiMjAyNC0xMi0wNSAxMToxMDo0OSIsInBvc3RfZGF0ZV9nbXQiOiIyMDI0LTEyLTA1IDExOjEwOjQ5IiwicG9zdF9jb250ZW50IjoiPHN0cm9uZz48dT5QZXJtYVBhcGVyXHUwMGFlIE9mZmljZTxcL3U+PFwvc3Ryb25nPlxyXG5cclxuUGVybWFQYXBlclx1MDBhZSBPZmZpY2UgbWFrZXMgZHVyYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgaGlnaGx5IGFmZm9yZGFibGUhIEV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkgd2l0aCBhIHdpZGUgdmFyaWV0eSBvZiBkaWdpdGFsIGFuZCB0cmFkaXRpb25hbCBwcmludCB0ZWNobm9sb2dpZXMsIHlldCB3aXRob3V0IHRoZSBoaWdoIHByaWNlIG5vcm1hbGx5IGFzc29jaWF0ZWQgd2l0aCBoZWF0LXJlc2lzdGFudCBzeW50aGV0aWMgZmlsbXMgZm9yIGRpZ2l0YWwgcHJpbnQuIFRoaXMgdW5pcXVlIFBWQy1mcmVlIGZpbG0gd2l0aCBhIHBhcGVyIGxpa2UgZmVlbCBpcyBpZGVhbCBmb3IgbG9uZ2VyIHJ1bnMgYW5kIGhpZ2hlciB1c2FnZSB3aGVyZSBkaWdpdGFsIHByaW50YWJpbGl0eSBhbmQgY29zdCBwZXIgc2hlZXQgYXJlIGltcG9ydGFudC5cclxuXHJcbkl0IGlzIGEgY28tZXh0cnVkZWQsIGhpZ2ggd2hpdGUgb3BhcXVlLCBkb3VibGUgc2lkZWQgbWF0dGUgY29hdGVkIHBvbHlwcm9weWxlbmUgYmFzZWQgZmlsbSB3aGljaCByZXNlbWJsZXMgcGFwZXIgaW4gYXBwZWFyYW5jZS5cclxuXHJcbktleSBGZWF0dXJlczpcclxuPHVsPlxyXG4gXHQ8bGk+Tm9uIFRlYXJhYmxlPFwvbGk+XHJcbiBcdDxsaT5Nb2lzdHVyZSBSZXNpc3RhbnQ8XC9saT5cclxuIFx0PGxpPkRpbWVuc2lvbmFsbHkgc3RhYmxlPFwvbGk+XHJcbiBcdDxsaT5FeGNlbGxlbnQgUHJpbnRhYmlsaXR5PFwvbGk+XHJcbiBcdDxsaT5TdXBlcmlvciB0ZW5zaWxlIGFuZCB0ZWFyIHN0cmVuZ3RoPFwvbGk+XHJcbiBcdDxsaT5Xcml0ZWFibGUgd2l0aCBwZW5jaWwgYW5kIG9pbCBiYXNlZCBpbmsgcGVuczxcL2xpPlxyXG4gXHQ8bGk+UHJpbnRhYmxlIG9uIGJvdGggc2lkZXMgYnkgY29udmVudGlvbmFsIGFuZCBVViBvZmZzZXQsIHdhdGVyIGFuZCBVViBmbGV4bywgTGV0dGVycHJlc3MsIFNjcmVlbiwgVGhlcm1hbCBUcmFuc2ZlciBhbmQgc3VpdGFibGUgZm9yIGRyeSB0b25lciBwcmludGluZy48XC9saT5cclxuIFx0PGxpPkNhbiBiZSBmb2xkZWQsIHNoZWV0ZWQsIHN0YXBsZWQsIGhvdCBmb2lsZWQsIGRpZSBcdTIwMTMgcHVuY2hlZCwgc2VycmF0ZWQgYW5kIHBlcmZvcmF0ZWQuIChmb3IgcGVyZm9yYXRpb24gYWx3YXlzIGtlZXAgdGllIGxlbmd0aCAmbHQ7MC41bW0gYW5kIGVkZ2VzIG9mIHBlcmZvcmF0ZWQgc2hlZXQgb3IgbGFiZWwgc2hvdWxkIGJlIGN1dCk8XC9saT5cclxuPFwvdWw+XHJcbjxzdHJvbmc+PHU+UHJpbnRlciBDb21wYXRpYmlsaXR5OjxcL3U+PFwvc3Ryb25nPiBEcnkgVG9uZXIsIEhQIEluZGlnbywgT2Zmc2V0IExpdGhvLCBVViBPZmZzZXQsIEZsZXhvLCBVViBJbmtqZXRcclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6PFwvc3Ryb25nPiBQUE9BMzE5NSAtIDY3MDRcclxuXHJcbiZuYnNwO1xyXG5cclxuPGVtPipUaGUgaW5mb3JtYXRpb24gcHJvdmlkZWQgYWJvdmUgaXMgYmFzZWQgb24gY29uY2x1c2l2ZSB0ZXN0cywgd2hpY2ggYXJlIGluZGljYXRpdmUgb25seSBhbmQgcHJvdmlkZWQgYXMgZ3VpZGVsaW5lcy4gVGhleSBkbyBub3QgY29uc3RpdHV0ZSBhIGd1YXJhbnRlZSBvZiBhbnkgc3BlY2lmaWMgcHJvZHVjdCBhdHRyaWJ1dGVzIG9yIHRoZSBzdWl0YWJpbGl0eSBvZiBwcm9kdWN0cyBmb3Igc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8XC9lbT5cclxuXHJcbjxlbT5TdG9yYWdlIENvbmRpdGlvbnM6IE1haW50YWluIHJvb20gdGVtcGVyYXR1cmUgaW4gYmV0d2VlbiAyMC0yNVx1MDBiMEMgJmFtcDsgcmVsYXRpdmUgaHVtaWRpdHkuPFwvZW0+IiwicG9zdF90aXRsZSI6IigxOTVtaWMpICgyNjVnKSBBMyBQZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBQSzEwMCIsInBvc3RfZXhjZXJwdCI6IlRoaXMgcGFjayBvZiAyNTAgc2hlZXRzIFBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMTk1bWljLTI2NWctYTMtcGVybWFwYXBlci1vZmZpY2UtcGsxMDAiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTM6MTQ6NTIiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTM6MTQ6NTIiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTc4NSIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njk3ODksInBvc3RfYXV0aG9yIjoiMzAyOCIsInBvc3RfZGF0ZSI6IjIwMjQtMTItMDUgMTE6MTQ6MDIiLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0xMi0wNSAxMToxNDowMiIsInBvc3RfY29udGVudCI6IjxzdHJvbmc+PHU+UGVybWFQYXBlclx1MDBhZSBPZmZpY2U8XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIG1ha2VzIGR1cmFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIGhpZ2hseSBhZmZvcmRhYmxlISBFeGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5IHdpdGggYSB3aWRlIHZhcmlldHkgb2YgZGlnaXRhbCBhbmQgdHJhZGl0aW9uYWwgcHJpbnQgdGVjaG5vbG9naWVzLCB5ZXQgd2l0aG91dCB0aGUgaGlnaCBwcmljZSBub3JtYWxseSBhc3NvY2lhdGVkIHdpdGggaGVhdC1yZXNpc3RhbnQgc3ludGhldGljIGZpbG1zIGZvciBkaWdpdGFsIHByaW50LiBUaGlzIHVuaXF1ZSBQVkMtZnJlZSBmaWxtIHdpdGggYSBwYXBlciBsaWtlIGZlZWwgaXMgaWRlYWwgZm9yIGxvbmdlciBydW5zIGFuZCBoaWdoZXIgdXNhZ2Ugd2hlcmUgZGlnaXRhbCBwcmludGFiaWxpdHkgYW5kIGNvc3QgcGVyIHNoZWV0IGFyZSBpbXBvcnRhbnQuXHJcblxyXG5JdCBpcyBhIGNvLWV4dHJ1ZGVkLCBoaWdoIHdoaXRlIG9wYXF1ZSwgZG91YmxlIHNpZGVkIG1hdHRlIGNvYXRlZCBwb2x5cHJvcHlsZW5lIGJhc2VkIGZpbG0gd2hpY2ggcmVzZW1ibGVzIHBhcGVyIGluIGFwcGVhcmFuY2UuXHJcblxyXG5LZXkgRmVhdHVyZXM6XHJcbjx1bD5cclxuIFx0PGxpPk5vbiBUZWFyYWJsZTxcL2xpPlxyXG4gXHQ8bGk+TW9pc3R1cmUgUmVzaXN0YW50PFwvbGk+XHJcbiBcdDxsaT5EaW1lbnNpb25hbGx5IHN0YWJsZTxcL2xpPlxyXG4gXHQ8bGk+RXhjZWxsZW50IFByaW50YWJpbGl0eTxcL2xpPlxyXG4gXHQ8bGk+U3VwZXJpb3IgdGVuc2lsZSBhbmQgdGVhciBzdHJlbmd0aDxcL2xpPlxyXG4gXHQ8bGk+V3JpdGVhYmxlIHdpdGggcGVuY2lsIGFuZCBvaWwgYmFzZWQgaW5rIHBlbnM8XC9saT5cclxuIFx0PGxpPlByaW50YWJsZSBvbiBib3RoIHNpZGVzIGJ5IGNvbnZlbnRpb25hbCBhbmQgVVYgb2Zmc2V0LCB3YXRlciBhbmQgVVYgZmxleG8sIExldHRlcnByZXNzLCBTY3JlZW4sIFRoZXJtYWwgVHJhbnNmZXIgYW5kIHN1aXRhYmxlIGZvciBkcnkgdG9uZXIgcHJpbnRpbmcuPFwvbGk+XHJcbiBcdDxsaT5DYW4gYmUgZm9sZGVkLCBzaGVldGVkLCBzdGFwbGVkLCBob3QgZm9pbGVkLCBkaWUgXHUyMDEzIHB1bmNoZWQsIHNlcnJhdGVkIGFuZCBwZXJmb3JhdGVkLiAoZm9yIHBlcmZvcmF0aW9uIGFsd2F5cyBrZWVwIHRpZSBsZW5ndGggJmx0OzAuNW1tIGFuZCBlZGdlcyBvZiBwZXJmb3JhdGVkIHNoZWV0IG9yIGxhYmVsIHNob3VsZCBiZSBjdXQpPFwvbGk+XHJcbjxcL3VsPlxyXG48c3Ryb25nPjx1PlByaW50ZXIgQ29tcGF0aWJpbGl0eTo8XC91PjxcL3N0cm9uZz4gRHJ5IFRvbmVyLCBIUCBJbmRpZ28sIE9mZnNldCBMaXRobywgVVYgT2Zmc2V0LCBGbGV4bywgVVYgSW5ramV0XHJcblxyXG48c3Ryb25nPjx1PkVudmlyb25tZW50YWwgSW5mb3JtYXRpb246PFwvdT48XC9zdHJvbmc+IFBWQyBGcmVlXHJcblxyXG48c3Ryb25nPjx1PkFwcGxpY2F0aW9uczo8XC91PjxcL3N0cm9uZz5cclxuXHJcbjxzdHJvbmc+PGVtPkhvc3BpdGFsaXR5XC9FdmVudCBQbGFubmluZzo8XC9lbT48XC9zdHJvbmc+IE1hcHMgYW5kIExlYWZsZXQgR3VpZGVzLCBIb3RlbCBTaWduYWdlIGFuZCBNZW51cywgV2F0ZXJwcm9vZiB0aWNrZXRzIGFuZCB3cmlzdGJhbmRzLCBEb29yIGhhbmdlcnMsIE91dGRvb3IgQnVudGluZywgUmFjZSBudW1iZXJzLlxyXG5cclxuPHN0cm9uZz48ZW0+UmV0YWlsXC9QT1M6PFwvZW0+PFwvc3Ryb25nPiBTZWxmIEVkZ2UgU3RyaXBzLCBSZXRhaWwgVGFncywgQnJhbmRlZFwvQ3VzdG9tZXIgR2lmdCBDYXJkcywgTWVyY2hhbnNpZGUgU3RyaXBzLlxyXG5cclxuPHN0cm9uZz48ZW0+SG9ydGljdWx0dXJlXC9Gb3JyZXN0cnk6PFwvZW0+PFwvc3Ryb25nPiBQbGFudCBzdGFiYmVycywgQ2hyaXN0bWFzIFRyZWUgVGFnc1xyXG5cclxuPHN0cm9uZz48ZW0+TWFudWZhY3R1cmluZzxcL2VtPjxcL3N0cm9uZz46IER1cmFibGUgTGFiZWxzXC9UYWdzLCBXZWF0aGVycHJvb2YgU2lnbmFnZSwgV2F0ZXJwcm9vZiBpbnN0cnVjdGlvbiBtYW51YWxzXC9UcmFpbmluZyBib29rcywgU2FmZXR5IExlYWZsZXRzLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+VHJhbnNwb3J0YXRpb25cL0xvZ2lzaXRpY3M6PFwvZW0+PFwvc3Ryb25nPiBMdWdnYWdlIFRhZ3MsIFdhdGVycHJvb2YgRG9jdW1lbnRzXC9Gb3Jtcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhlYWx0aGNhcmVcL1BoYXJtYTo8XC9lbT48XC9zdHJvbmc+IFBhdGllbnQgUmVjb3Jkc1wvSUQgQ2FyZHMsIExhYm9yYXRvcnkgVXNlLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+RWR1Y2F0aW9uOjxcL2VtPjxcL3N0cm9uZz4gRHVyYWJsZSBTaWduYWdlLCBTdHVkZW50IElEIENhcmRzLCBBbnl0aGluZyB0aGF0IHdvdWxkIHVzdWFsbHkgYmUgbGFtaW5hdGVkLlxyXG5cclxuPHN0cm9uZz48ZW0+Q29uc3RydWN0aW9uXC9FbmdpbmVlcmluZzo8XC9lbT48XC9zdHJvbmc+IFNpdGUgUGxhbnMsIEJsdWUgUHJpbnRzLCBTYWZldHkgc2lnbmFnZSwgTWFudWFscyBhbmQgU2l0ZSBEb2N1bWVudHMuXHJcblxyXG48c3Ryb25nPkNvZGVzOjxcL3N0cm9uZz4gUFBPQTQxOTUgLSA2NzA4XHJcblxyXG4mbmJzcDtcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LjxcL2VtPiIsInBvc3RfdGl0bGUiOiIoMTk1bWljKSAoMjY1ZykgQTQgUGVybWFQYXBlclx1MDBhZSBPZmZpY2UgUEsxMDAiLCJwb3N0X2V4Y2VycHQiOiJUaGlzIHBhY2sgb2YgMjUwIHNoZWV0cyBQZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBvZmZlcnMgYWZmb3JkYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgd2l0aCBleGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5LiBUaGlzIFBWQy1mcmVlLCBwYXBlci1saWtlIGZpbG0gaXMgcGVyZmVjdCBmb3IgaGlnaC12b2x1bWUgZGlnaXRhbCBwcmludHMsIGNvbWJpbmluZyBjb3N0LWVmZmljaWVuY3kgd2l0aCBzdXBlcmlvciBwZXJmb3JtYW5jZS4iLCJwb3N0X3N0YXR1cyI6InB1Ymxpc2giLCJjb21tZW50X3N0YXR1cyI6ImNsb3NlZCIsInBpbmdfc3RhdHVzIjoiY2xvc2VkIiwicG9zdF9wYXNzd29yZCI6IiIsInBvc3RfbmFtZSI6IjE5NW1pYy0yNjVnLWE0LXBlcm1hcGFwZXItb2ZmaWNlLXBrMTAwIiwidG9fcGluZyI6IiIsInBpbmdlZCI6IiIsInBvc3RfbW9kaWZpZWQiOiIyMDI0LTEyLTA1IDEzOjEzOjIzIiwicG9zdF9tb2RpZmllZF9nbXQiOiIyMDI0LTEyLTA1IDEzOjEzOjIzIiwicG9zdF9jb250ZW50X2ZpbHRlcmVkIjoiIiwicG9zdF9wYXJlbnQiOjAsImd1aWQiOiJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcLz9wb3N0X3R5cGU9cHJvZHVjdCYjMDM4O3A9Njk3ODkiLCJtZW51X29yZGVyIjowLCJwb3N0X3R5cGUiOiJwcm9kdWN0IiwicG9zdF9taW1lX3R5cGUiOiIiLCJjb21tZW50X2NvdW50IjoiMCIsImZpbHRlciI6InJhdyJ9LHsiSUQiOjY5NzgxLCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTEyLTA1IDEwOjU0OjMzIiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTItMDUgMTA6NTQ6MzMiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bTxcL3U+PFwvc3Ryb25nPlxyXG5cclxuUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIG1ha2VzIGR1cmFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIGhpZ2hseSBhZmZvcmRhYmxlISBFeGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5IHdpdGggYSB3aWRlIHZhcmlldHkgb2YgZGlnaXRhbCBhbmQgdHJhZGl0aW9uYWwgcHJpbnQgdGVjaG5vbG9naWVzLCB5ZXQgd2l0aG91dCB0aGUgaGlnaCBwcmljZSBub3JtYWxseSBhc3NvY2lhdGVkIHdpdGggaGVhdC1yZXNpc3RhbnQgc3ludGhldGljIGZpbG1zIGZvciBkaWdpdGFsIHByaW50LiBUaGlzIHVuaXF1ZSBQVkMtZnJlZSBmaWxtIHdpdGggYSBwYXBlciBsaWtlIGZlZWwgaXMgaWRlYWwgZm9yIGxvbmdlciBydW5zIGFuZCBoaWdoZXIgdXNhZ2Ugd2hlcmUgZGlnaXRhbCBwcmludGFiaWxpdHkgYW5kIGNvc3QgcGVyIHNoZWV0IGFyZSBpbXBvcnRhbnQuXHJcblxyXG5JdCBpcyBhIGNvLWV4dHJ1ZGVkLCBoaWdoIHdoaXRlIG9wYXF1ZSwgZG91YmxlIHNpZGVkIG1hdHRlIGNvYXRlZCBwb2x5cHJvcHlsZW5lIGJhc2VkIGZpbG0gd2hpY2ggcmVzZW1ibGVzIHBhcGVyIGluIGFwcGVhcmFuY2UuXHJcblxyXG5LZXkgRmVhdHVyZXM6XHJcbjx1bD5cclxuIFx0PGxpPk5vbiBUZWFyYWJsZTxcL2xpPlxyXG4gXHQ8bGk+TW9pc3R1cmUgUmVzaXN0YW50PFwvbGk+XHJcbiBcdDxsaT5EaW1lbnNpb25hbGx5IHN0YWJsZTxcL2xpPlxyXG4gXHQ8bGk+RXhjZWxsZW50IFByaW50YWJpbGl0eTxcL2xpPlxyXG4gXHQ8bGk+U3VwZXJpb3IgdGVuc2lsZSBhbmQgdGVhciBzdHJlbmd0aDxcL2xpPlxyXG4gXHQ8bGk+V3JpdGVhYmxlIHdpdGggcGVuY2lsIGFuZCBvaWwgYmFzZWQgaW5rIHBlbnM8XC9saT5cclxuIFx0PGxpPlByaW50YWJsZSBvbiBib3RoIHNpZGVzIGJ5IGNvbnZlbnRpb25hbCBhbmQgVVYgb2Zmc2V0LCB3YXRlciBhbmQgVVYgZmxleG8sIExldHRlcnByZXNzLCBTY3JlZW4sIFRoZXJtYWwgVHJhbnNmZXIgYW5kIHN1aXRhYmxlIGZvciBkcnkgdG9uZXIgcHJpbnRpbmcuPFwvbGk+XHJcbiBcdDxsaT5DYW4gYmUgZm9sZGVkLCBzaGVldGVkLCBzdGFwbGVkLCBob3QgZm9pbGVkLCBkaWUgXHUyMDEzIHB1bmNoZWQsIHNlcnJhdGVkIGFuZCBwZXJmb3JhdGVkLiAoZm9yIHBlcmZvcmF0aW9uIGFsd2F5cyBrZWVwIHRpZSBsZW5ndGggJmx0OzAuNW1tIGFuZCBlZGdlcyBvZiBwZXJmb3JhdGVkIHNoZWV0IG9yIGxhYmVsIHNob3VsZCBiZSBjdXQpPFwvbGk+XHJcbjxcL3VsPlxyXG48c3Ryb25nPjx1PlByaW50ZXIgQ29tcGF0aWJpbGl0eTo8XC91PjxcL3N0cm9uZz4gRHJ5IFRvbmVyLCBIUCBJbmRpZ28sIE9mZnNldCBMaXRobywgVVYgT2Zmc2V0LCBGbGV4bywgVVYgSW5ramV0XHJcblxyXG48c3Ryb25nPjx1PkVudmlyb25tZW50YWwgSW5mb3JtYXRpb246PFwvdT48XC9zdHJvbmc+IFBWQyBGcmVlXHJcblxyXG48c3Ryb25nPjx1PkFwcGxpY2F0aW9uczo8XC91PjxcL3N0cm9uZz5cclxuXHJcbjxzdHJvbmc+PGVtPkhvc3BpdGFsaXR5XC9FdmVudCBQbGFubmluZzo8XC9lbT48XC9zdHJvbmc+IE1hcHMgYW5kIExlYWZsZXQgR3VpZGVzLCBIb3RlbCBTaWduYWdlIGFuZCBNZW51cywgV2F0ZXJwcm9vZiB0aWNrZXRzIGFuZCB3cmlzdGJhbmRzLCBEb29yIGhhbmdlcnMsIE91dGRvb3IgQnVudGluZywgUmFjZSBudW1iZXJzLlxyXG5cclxuPHN0cm9uZz48ZW0+UmV0YWlsXC9QT1M6PFwvZW0+PFwvc3Ryb25nPiBTZWxmIEVkZ2UgU3RyaXBzLCBSZXRhaWwgVGFncywgQnJhbmRlZFwvQ3VzdG9tZXIgR2lmdCBDYXJkcywgTWVyY2hhbnNpZGUgU3RyaXBzLlxyXG5cclxuPHN0cm9uZz48ZW0+SG9ydGljdWx0dXJlXC9Gb3JyZXN0cnk6PFwvZW0+PFwvc3Ryb25nPiBQbGFudCBzdGFiYmVycywgQ2hyaXN0bWFzIFRyZWUgVGFnc1xyXG5cclxuPHN0cm9uZz48ZW0+TWFudWZhY3R1cmluZzxcL2VtPjxcL3N0cm9uZz46IER1cmFibGUgTGFiZWxzXC9UYWdzLCBXZWF0aGVycHJvb2YgU2lnbmFnZSwgV2F0ZXJwcm9vZiBpbnN0cnVjdGlvbiBtYW51YWxzXC9UcmFpbmluZyBib29rcywgU2FmZXR5IExlYWZsZXRzLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+VHJhbnNwb3J0YXRpb25cL0xvZ2lzaXRpY3M6PFwvZW0+PFwvc3Ryb25nPiBMdWdnYWdlIFRhZ3MsIFdhdGVycHJvb2YgRG9jdW1lbnRzXC9Gb3Jtcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhlYWx0aGNhcmVcL1BoYXJtYTo8XC9lbT48XC9zdHJvbmc+IFBhdGllbnQgUmVjb3Jkc1wvSUQgQ2FyZHMsIExhYm9yYXRvcnkgVXNlLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+RWR1Y2F0aW9uOjxcL2VtPjxcL3N0cm9uZz4gRHVyYWJsZSBTaWduYWdlLCBTdHVkZW50IElEIENhcmRzLCBBbnl0aGluZyB0aGF0IHdvdWxkIHVzdWFsbHkgYmUgbGFtaW5hdGVkLlxyXG5cclxuPHN0cm9uZz48ZW0+Q29uc3RydWN0aW9uXC9FbmdpbmVlcmluZzo8XC9lbT48XC9zdHJvbmc+IFNpdGUgUGxhbnMsIEJsdWUgUHJpbnRzLCBTYWZldHkgc2lnbmFnZSwgTWFudWFscyBhbmQgU2l0ZSBEb2N1bWVudHMuXHJcblxyXG48c3Ryb25nPkNvZGVzOjxcL3N0cm9uZz4gUFBQUzMxOTUgLSA2NzAwXHJcblxyXG4mbmJzcDtcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LjxcL2VtPiIsInBvc3RfdGl0bGUiOiIoMTk1bWljKSAoMjY1ZykgU1JBMyBQZXJtYVBhcGVyXHUwMGFlIFByZW1pdW0gUEsxMDAiLCJwb3N0X2V4Y2VycHQiOiJUaGlzIHBhY2sgb2YgMjUwIHNoZWV0cyBQZXJtYVBhcGVyXHUwMGFlIFByZW1pdW0gb2ZmZXJzIGFmZm9yZGFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIHdpdGggZXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eS4gVGhpcyBQVkMtZnJlZSwgcGFwZXItbGlrZSBmaWxtIGlzIHBlcmZlY3QgZm9yIGhpZ2gtdm9sdW1lIGRpZ2l0YWwgcHJpbnRzLCBjb21iaW5pbmcgY29zdC1lZmZpY2llbmN5IHdpdGggc3VwZXJpb3IgcGVyZm9ybWFuY2UuIiwicG9zdF9zdGF0dXMiOiJwdWJsaXNoIiwiY29tbWVudF9zdGF0dXMiOiJjbG9zZWQiLCJwaW5nX3N0YXR1cyI6ImNsb3NlZCIsInBvc3RfcGFzc3dvcmQiOiIiLCJwb3N0X25hbWUiOiIxOTVtaWMtMjY1Zy1zcmEzLXBlcm1hcGFwZXItcHJlbWl1bS1wazEwMCIsInRvX3BpbmciOiIiLCJwaW5nZWQiOiIiLCJwb3N0X21vZGlmaWVkIjoiMjAyNC0xMi0wNSAxMjoxMDoxOCIsInBvc3RfbW9kaWZpZWRfZ210IjoiMjAyNC0xMi0wNSAxMjoxMDoxOCIsInBvc3RfY29udGVudF9maWx0ZXJlZCI6IiIsInBvc3RfcGFyZW50IjowLCJndWlkIjoiaHR0cHM6XC9cL3dsY29sbGVyLmNvLnVrXC8/cG9zdF90eXBlPXByb2R1Y3QmIzAzODtwPTY5NzgxIiwibWVudV9vcmRlciI6MCwicG9zdF90eXBlIjoicHJvZHVjdCIsInBvc3RfbWltZV90eXBlIjoiIiwiY29tbWVudF9jb3VudCI6IjAiLCJmaWx0ZXIiOiJyYXcifSx7IklEIjo2OTczNywicG9zdF9hdXRob3IiOiIzMDI4IiwicG9zdF9kYXRlIjoiMjAyNC0xMS0yOSAxMTozODoxNCIsInBvc3RfZGF0ZV9nbXQiOiIyMDI0LTExLTI5IDExOjM4OjE0IiwicG9zdF9jb250ZW50IjoiPHN0cm9uZz48dT5QZXJtYVBhcGVyXHUwMGFlIENsYXNzaWMgPFwvdT48XC9zdHJvbmc+XHJcblxyXG5QZXJtYVBhcGVyXHUwMGFlIENsYXNzaWMgbWFrZXMgZHVyYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgaGlnaGx5IGFmZm9yZGFibGUhIEV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkgd2l0aCBhIHdpZGUgdmFyaWV0eSBvZiBkaWdpdGFsIGFuZCB0cmFkaXRpb25hbCBwcmludCB0ZWNobm9sb2dpZXMsIHlldCB3aXRob3V0IHRoZSBoaWdoIHByaWNlIG5vcm1hbGx5IGFzc29jaWF0ZWQgd2l0aCBoZWF0LXJlc2lzdGFudCBzeW50aGV0aWMgZmlsbXMgZm9yIGRpZ2l0YWwgcHJpbnQuIFRoaXMgdW5pcXVlIFBWQy1mcmVlIGZpbG0gd2l0aCBhIHBhcGVyIGxpa2UgZmVlbCBpcyBpZGVhbCBmb3IgbG9uZ2VyIHJ1bnMgYW5kIGhpZ2hlciB1c2FnZSB3aGVyZSBkaWdpdGFsIHByaW50YWJpbGl0eSBhbmQgY29zdCBwZXIgc2hlZXQgYXJlIGltcG9ydGFudC5cclxuXHJcbkl0IGlzIGEgY28tZXh0cnVkZWQsIGhpZ2ggd2hpdGUgb3BhcXVlLCBkb3VibGUgc2lkZWQgbWF0dGUgY29hdGVkIHBvbHlwcm9weWxlbmUgYmFzZWQgZmlsbSB3aGljaCByZXNlbWJsZXMgcGFwZXIgaW4gYXBwZWFyYW5jZS5cclxuXHJcbktleSBGZWF0dXJlczpcclxuPHVsPlxyXG4gXHQ8bGk+Tm9uIFRlYXJhYmxlPFwvbGk+XHJcbiBcdDxsaT5Nb2lzdHVyZSBSZXNpc3RhbnQ8XC9saT5cclxuIFx0PGxpPkRpbWVuc2lvbmFsbHkgc3RhYmxlPFwvbGk+XHJcbiBcdDxsaT5FeGNlbGxlbnQgUHJpbnRhYmlsaXR5PFwvbGk+XHJcbiBcdDxsaT5TdXBlcmlvciB0ZW5zaWxlIGFuZCB0ZWFyIHN0cmVuZ3RoPFwvbGk+XHJcbiBcdDxsaT5Xcml0ZWFibGUgd2l0aCBwZW5jaWwgYW5kIG9pbCBiYXNlZCBpbmsgcGVuczxcL2xpPlxyXG4gXHQ8bGk+UHJpbnRhYmxlIG9uIGJvdGggc2lkZXMgYnkgY29udmVudGlvbmFsIGFuZCBVViBvZmZzZXQsIHdhdGVyIGFuZCBVViBmbGV4bywgTGV0dGVycHJlc3MsIFNjcmVlbiwgVGhlcm1hbCBUcmFuc2ZlciBhbmQgc3VpdGFibGUgZm9yIGRyeSB0b25lciBwcmludGluZy48XC9saT5cclxuIFx0PGxpPkNhbiBiZSBmb2xkZWQsIHNoZWV0ZWQsIHN0YXBsZWQsIGhvdCBmb2lsZWQsIGRpZSBcdTIwMTMgcHVuY2hlZCwgc2VycmF0ZWQgYW5kIHBlcmZvcmF0ZWQuIChmb3IgcGVyZm9yYXRpb24gYWx3YXlzIGtlZXAgdGllIGxlbmd0aCAmbHQ7MC41bW0gYW5kIGVkZ2VzIG9mIHBlcmZvcmF0ZWQgc2hlZXQgb3IgbGFiZWwgc2hvdWxkIGJlIGN1dCk8XC9saT5cclxuPFwvdWw+XHJcbjxzdHJvbmc+PHU+UHJpbnRlciBDb21wYXRpYmlsaXR5OjxcL3U+PFwvc3Ryb25nPiBEcnkgVG9uZXIsIEhQIEluZGlnbywgT2Zmc2V0IExpdGhvLCBVViBPZmZzZXQsIEZsZXhvLCBVViBJbmtqZXRcclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6PFwvc3Ryb25nPiBQUENTMzIwMCAtIDY2OTVcclxuXHJcbiZuYnNwO1xyXG5cclxuPGVtPipUaGUgaW5mb3JtYXRpb24gcHJvdmlkZWQgYWJvdmUgaXMgYmFzZWQgb24gY29uY2x1c2l2ZSB0ZXN0cywgd2hpY2ggYXJlIGluZGljYXRpdmUgb25seSBhbmQgcHJvdmlkZWQgYXMgZ3VpZGVsaW5lcy4gVGhleSBkbyBub3QgY29uc3RpdHV0ZSBhIGd1YXJhbnRlZSBvZiBhbnkgc3BlY2lmaWMgcHJvZHVjdCBhdHRyaWJ1dGVzIG9yIHRoZSBzdWl0YWJpbGl0eSBvZiBwcm9kdWN0cyBmb3Igc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8XC9lbT5cclxuXHJcbjxlbT5TdG9yYWdlIENvbmRpdGlvbnM6IE1haW50YWluIHJvb20gdGVtcGVyYXR1cmUgaW4gYmV0d2VlbiAyMC0yNVx1MDBiMEMgJmFtcDsgcmVsYXRpdmUgaHVtaWRpdHkuPFwvZW0+XHJcblxyXG4mbmJzcDsiLCJwb3N0X3RpdGxlIjoiKDIwMG1pYykgKDIyN2cpIFNSQTMgUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIFBLMjUwIiwicG9zdF9leGNlcnB0IjoiUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMjAwbWljLTIyN2ctc3JhMy1wZXJtYXBhcGVyLWNsYXNzaWMtcGsyNTAiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTI6MTA6MTciLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTI6MTA6MTciLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTczNyIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njk3ODYsInBvc3RfYXV0aG9yIjoiMzAyOCIsInBvc3RfZGF0ZSI6IjIwMjQtMTItMDUgMTE6MTE6NDMiLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0xMi0wNSAxMToxMTo0MyIsInBvc3RfY29udGVudCI6IjxzdHJvbmc+PHU+UGVybWFQYXBlclx1MDBhZSBPZmZpY2U8XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIG1ha2VzIGR1cmFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIGhpZ2hseSBhZmZvcmRhYmxlISBFeGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5IHdpdGggYSB3aWRlIHZhcmlldHkgb2YgZGlnaXRhbCBhbmQgdHJhZGl0aW9uYWwgcHJpbnQgdGVjaG5vbG9naWVzLCB5ZXQgd2l0aG91dCB0aGUgaGlnaCBwcmljZSBub3JtYWxseSBhc3NvY2lhdGVkIHdpdGggaGVhdC1yZXNpc3RhbnQgc3ludGhldGljIGZpbG1zIGZvciBkaWdpdGFsIHByaW50LiBUaGlzIHVuaXF1ZSBQVkMtZnJlZSBmaWxtIHdpdGggYSBwYXBlciBsaWtlIGZlZWwgaXMgaWRlYWwgZm9yIGxvbmdlciBydW5zIGFuZCBoaWdoZXIgdXNhZ2Ugd2hlcmUgZGlnaXRhbCBwcmludGFiaWxpdHkgYW5kIGNvc3QgcGVyIHNoZWV0IGFyZSBpbXBvcnRhbnQuXHJcblxyXG5JdCBpcyBhIGNvLWV4dHJ1ZGVkLCBoaWdoIHdoaXRlIG9wYXF1ZSwgZG91YmxlIHNpZGVkIG1hdHRlIGNvYXRlZCBwb2x5cHJvcHlsZW5lIGJhc2VkIGZpbG0gd2hpY2ggcmVzZW1ibGVzIHBhcGVyIGluIGFwcGVhcmFuY2UuXHJcblxyXG5LZXkgRmVhdHVyZXM6XHJcbjx1bD5cclxuIFx0PGxpPk5vbiBUZWFyYWJsZTxcL2xpPlxyXG4gXHQ8bGk+TW9pc3R1cmUgUmVzaXN0YW50PFwvbGk+XHJcbiBcdDxsaT5EaW1lbnNpb25hbGx5IHN0YWJsZTxcL2xpPlxyXG4gXHQ8bGk+RXhjZWxsZW50IFByaW50YWJpbGl0eTxcL2xpPlxyXG4gXHQ8bGk+U3VwZXJpb3IgdGVuc2lsZSBhbmQgdGVhciBzdHJlbmd0aDxcL2xpPlxyXG4gXHQ8bGk+V3JpdGVhYmxlIHdpdGggcGVuY2lsIGFuZCBvaWwgYmFzZWQgaW5rIHBlbnM8XC9saT5cclxuIFx0PGxpPlByaW50YWJsZSBvbiBib3RoIHNpZGVzIGJ5IGNvbnZlbnRpb25hbCBhbmQgVVYgb2Zmc2V0LCB3YXRlciBhbmQgVVYgZmxleG8sIExldHRlcnByZXNzLCBTY3JlZW4sIFRoZXJtYWwgVHJhbnNmZXIgYW5kIHN1aXRhYmxlIGZvciBkcnkgdG9uZXIgcHJpbnRpbmcuPFwvbGk+XHJcbiBcdDxsaT5DYW4gYmUgZm9sZGVkLCBzaGVldGVkLCBzdGFwbGVkLCBob3QgZm9pbGVkLCBkaWUgXHUyMDEzIHB1bmNoZWQsIHNlcnJhdGVkIGFuZCBwZXJmb3JhdGVkLiAoZm9yIHBlcmZvcmF0aW9uIGFsd2F5cyBrZWVwIHRpZSBsZW5ndGggJmx0OzAuNW1tIGFuZCBlZGdlcyBvZiBwZXJmb3JhdGVkIHNoZWV0IG9yIGxhYmVsIHNob3VsZCBiZSBjdXQpPFwvbGk+XHJcbjxcL3VsPlxyXG48c3Ryb25nPjx1PlByaW50ZXIgQ29tcGF0aWJpbGl0eTo8XC91PjxcL3N0cm9uZz4gRHJ5IFRvbmVyLCBIUCBJbmRpZ28sIE9mZnNldCBMaXRobywgVVYgT2Zmc2V0LCBGbGV4bywgVVYgSW5ramV0XHJcblxyXG48c3Ryb25nPjx1PkVudmlyb25tZW50YWwgSW5mb3JtYXRpb246PFwvdT48XC9zdHJvbmc+IFBWQyBGcmVlXHJcblxyXG48c3Ryb25nPjx1PkFwcGxpY2F0aW9uczo8XC91PjxcL3N0cm9uZz5cclxuXHJcbjxzdHJvbmc+PGVtPkhvc3BpdGFsaXR5XC9FdmVudCBQbGFubmluZzo8XC9lbT48XC9zdHJvbmc+IE1hcHMgYW5kIExlYWZsZXQgR3VpZGVzLCBIb3RlbCBTaWduYWdlIGFuZCBNZW51cywgV2F0ZXJwcm9vZiB0aWNrZXRzIGFuZCB3cmlzdGJhbmRzLCBEb29yIGhhbmdlcnMsIE91dGRvb3IgQnVudGluZywgUmFjZSBudW1iZXJzLlxyXG5cclxuPHN0cm9uZz48ZW0+UmV0YWlsXC9QT1M6PFwvZW0+PFwvc3Ryb25nPiBTZWxmIEVkZ2UgU3RyaXBzLCBSZXRhaWwgVGFncywgQnJhbmRlZFwvQ3VzdG9tZXIgR2lmdCBDYXJkcywgTWVyY2hhbnNpZGUgU3RyaXBzLlxyXG5cclxuPHN0cm9uZz48ZW0+SG9ydGljdWx0dXJlXC9Gb3JyZXN0cnk6PFwvZW0+PFwvc3Ryb25nPiBQbGFudCBzdGFiYmVycywgQ2hyaXN0bWFzIFRyZWUgVGFnc1xyXG5cclxuPHN0cm9uZz48ZW0+TWFudWZhY3R1cmluZzxcL2VtPjxcL3N0cm9uZz46IER1cmFibGUgTGFiZWxzXC9UYWdzLCBXZWF0aGVycHJvb2YgU2lnbmFnZSwgV2F0ZXJwcm9vZiBpbnN0cnVjdGlvbiBtYW51YWxzXC9UcmFpbmluZyBib29rcywgU2FmZXR5IExlYWZsZXRzLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+VHJhbnNwb3J0YXRpb25cL0xvZ2lzaXRpY3M6PFwvZW0+PFwvc3Ryb25nPiBMdWdnYWdlIFRhZ3MsIFdhdGVycHJvb2YgRG9jdW1lbnRzXC9Gb3Jtcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhlYWx0aGNhcmVcL1BoYXJtYTo8XC9lbT48XC9zdHJvbmc+IFBhdGllbnQgUmVjb3Jkc1wvSUQgQ2FyZHMsIExhYm9yYXRvcnkgVXNlLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+RWR1Y2F0aW9uOjxcL2VtPjxcL3N0cm9uZz4gRHVyYWJsZSBTaWduYWdlLCBTdHVkZW50IElEIENhcmRzLCBBbnl0aGluZyB0aGF0IHdvdWxkIHVzdWFsbHkgYmUgbGFtaW5hdGVkLlxyXG5cclxuPHN0cm9uZz48ZW0+Q29uc3RydWN0aW9uXC9FbmdpbmVlcmluZzo8XC9lbT48XC9zdHJvbmc+IFNpdGUgUGxhbnMsIEJsdWUgUHJpbnRzLCBTYWZldHkgc2lnbmFnZSwgTWFudWFscyBhbmQgU2l0ZSBEb2N1bWVudHMuXHJcblxyXG48c3Ryb25nPkNvZGVzOjxcL3N0cm9uZz4gUFBPQTMyNzUgLSA2NzA1XHJcblxyXG4mbmJzcDtcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LjxcL2VtPiIsInBvc3RfdGl0bGUiOiIoMjc1bWljKSAoMzcwZykgQTMgUGVybWFQYXBlclx1MDBhZSBPZmZpY2UgUEsxMDAiLCJwb3N0X2V4Y2VycHQiOiJUaGlzIHBhY2sgb2YgMjUwIHNoZWV0cyBQZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBvZmZlcnMgYWZmb3JkYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgd2l0aCBleGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5LiBUaGlzIFBWQy1mcmVlLCBwYXBlci1saWtlIGZpbG0gaXMgcGVyZmVjdCBmb3IgaGlnaC12b2x1bWUgZGlnaXRhbCBwcmludHMsIGNvbWJpbmluZyBjb3N0LWVmZmljaWVuY3kgd2l0aCBzdXBlcmlvciBwZXJmb3JtYW5jZS4iLCJwb3N0X3N0YXR1cyI6InB1Ymxpc2giLCJjb21tZW50X3N0YXR1cyI6ImNsb3NlZCIsInBpbmdfc3RhdHVzIjoiY2xvc2VkIiwicG9zdF9wYXNzd29yZCI6IiIsInBvc3RfbmFtZSI6IjI3NW1pYy0zNzBnLWEzLXBlcm1hcGFwZXItb2ZmaWNlLXBrMTAwIiwidG9fcGluZyI6IiIsInBpbmdlZCI6IiIsInBvc3RfbW9kaWZpZWQiOiIyMDI0LTEyLTA1IDEzOjE0OjUyIiwicG9zdF9tb2RpZmllZF9nbXQiOiIyMDI0LTEyLTA1IDEzOjE0OjUyIiwicG9zdF9jb250ZW50X2ZpbHRlcmVkIjoiIiwicG9zdF9wYXJlbnQiOjAsImd1aWQiOiJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcLz9wb3N0X3R5cGU9cHJvZHVjdCYjMDM4O3A9Njk3ODYiLCJtZW51X29yZGVyIjowLCJwb3N0X3R5cGUiOiJwcm9kdWN0IiwicG9zdF9taW1lX3R5cGUiOiIiLCJjb21tZW50X2NvdW50IjoiMCIsImZpbHRlciI6InJhdyJ9LHsiSUQiOjY5NzkwLCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTEyLTA1IDExOjE3OjA1IiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTItMDUgMTE6MTc6MDUiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlPFwvdT48XC9zdHJvbmc+XHJcblxyXG5QZXJtYVBhcGVyXHUwMGFlIE9mZmljZSBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob24gVGVhcmFibGU8XC9saT5cclxuIFx0PGxpPk1vaXN0dXJlIFJlc2lzdGFudDxcL2xpPlxyXG4gXHQ8bGk+RGltZW5zaW9uYWxseSBzdGFibGU8XC9saT5cclxuIFx0PGxpPkV4Y2VsbGVudCBQcmludGFiaWxpdHk8XC9saT5cclxuIFx0PGxpPlN1cGVyaW9yIHRlbnNpbGUgYW5kIHRlYXIgc3RyZW5ndGg8XC9saT5cclxuIFx0PGxpPldyaXRlYWJsZSB3aXRoIHBlbmNpbCBhbmQgb2lsIGJhc2VkIGluayBwZW5zPFwvbGk+XHJcbiBcdDxsaT5QcmludGFibGUgb24gYm90aCBzaWRlcyBieSBjb252ZW50aW9uYWwgYW5kIFVWIG9mZnNldCwgd2F0ZXIgYW5kIFVWIGZsZXhvLCBMZXR0ZXJwcmVzcywgU2NyZWVuLCBUaGVybWFsIFRyYW5zZmVyIGFuZCBzdWl0YWJsZSBmb3IgZHJ5IHRvbmVyIHByaW50aW5nLjxcL2xpPlxyXG4gXHQ8bGk+Q2FuIGJlIGZvbGRlZCwgc2hlZXRlZCwgc3RhcGxlZCwgaG90IGZvaWxlZCwgZGllIFx1MjAxMyBwdW5jaGVkLCBzZXJyYXRlZCBhbmQgcGVyZm9yYXRlZC4gKGZvciBwZXJmb3JhdGlvbiBhbHdheXMga2VlcCB0aWUgbGVuZ3RoICZsdDswLjVtbSBhbmQgZWRnZXMgb2YgcGVyZm9yYXRlZCBzaGVldCBvciBsYWJlbCBzaG91bGQgYmUgY3V0KTxcL2xpPlxyXG48XC91bD5cclxuPHN0cm9uZz48dT5QcmludGVyIENvbXBhdGliaWxpdHk6PFwvdT48XC9zdHJvbmc+IERyeSBUb25lciwgSFAgSW5kaWdvLCBPZmZzZXQgTGl0aG8sIFVWIE9mZnNldCwgRmxleG8sIFVWIElua2pldFxyXG5cclxuPHN0cm9uZz48dT5FbnZpcm9ubWVudGFsIEluZm9ybWF0aW9uOjxcL3U+PFwvc3Ryb25nPiBQVkMgRnJlZVxyXG5cclxuPHN0cm9uZz48dT5BcHBsaWNhdGlvbnM6PFwvdT48XC9zdHJvbmc+XHJcblxyXG48c3Ryb25nPjxlbT5Ib3NwaXRhbGl0eVwvRXZlbnQgUGxhbm5pbmc6PFwvZW0+PFwvc3Ryb25nPiBNYXBzIGFuZCBMZWFmbGV0IEd1aWRlcywgSG90ZWwgU2lnbmFnZSBhbmQgTWVudXMsIFdhdGVycHJvb2YgdGlja2V0cyBhbmQgd3Jpc3RiYW5kcywgRG9vciBoYW5nZXJzLCBPdXRkb29yIEJ1bnRpbmcsIFJhY2UgbnVtYmVycy5cclxuXHJcbjxzdHJvbmc+PGVtPlJldGFpbFwvUE9TOjxcL2VtPjxcL3N0cm9uZz4gU2VsZiBFZGdlIFN0cmlwcywgUmV0YWlsIFRhZ3MsIEJyYW5kZWRcL0N1c3RvbWVyIEdpZnQgQ2FyZHMsIE1lcmNoYW5zaWRlIFN0cmlwcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhvcnRpY3VsdHVyZVwvRm9ycmVzdHJ5OjxcL2VtPjxcL3N0cm9uZz4gUGxhbnQgc3RhYmJlcnMsIENocmlzdG1hcyBUcmVlIFRhZ3NcclxuXHJcbjxzdHJvbmc+PGVtPk1hbnVmYWN0dXJpbmc8XC9lbT48XC9zdHJvbmc+OiBEdXJhYmxlIExhYmVsc1wvVGFncywgV2VhdGhlcnByb29mIFNpZ25hZ2UsIFdhdGVycHJvb2YgaW5zdHJ1Y3Rpb24gbWFudWFsc1wvVHJhaW5pbmcgYm9va3MsIFNhZmV0eSBMZWFmbGV0cywgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPlRyYW5zcG9ydGF0aW9uXC9Mb2dpc2l0aWNzOjxcL2VtPjxcL3N0cm9uZz4gTHVnZ2FnZSBUYWdzLCBXYXRlcnByb29mIERvY3VtZW50c1wvRm9ybXMuXHJcblxyXG48c3Ryb25nPjxlbT5IZWFsdGhjYXJlXC9QaGFybWE6PFwvZW0+PFwvc3Ryb25nPiBQYXRpZW50IFJlY29yZHNcL0lEIENhcmRzLCBMYWJvcmF0b3J5IFVzZSwgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPkVkdWNhdGlvbjo8XC9lbT48XC9zdHJvbmc+IER1cmFibGUgU2lnbmFnZSwgU3R1ZGVudCBJRCBDYXJkcywgQW55dGhpbmcgdGhhdCB3b3VsZCB1c3VhbGx5IGJlIGxhbWluYXRlZC5cclxuXHJcbjxzdHJvbmc+PGVtPkNvbnN0cnVjdGlvblwvRW5naW5lZXJpbmc6PFwvZW0+PFwvc3Ryb25nPiBTaXRlIFBsYW5zLCBCbHVlIFByaW50cywgU2FmZXR5IHNpZ25hZ2UsIE1hbnVhbHMgYW5kIFNpdGUgRG9jdW1lbnRzLlxyXG5cclxuPHN0cm9uZz5Db2Rlczo8XC9zdHJvbmc+IFBQT0E0Mjc1IC0gNjcxMVxyXG5cclxuJm5ic3A7XHJcblxyXG48ZW0+KlRoZSBpbmZvcm1hdGlvbiBwcm92aWRlZCBhYm92ZSBpcyBiYXNlZCBvbiBjb25jbHVzaXZlIHRlc3RzLCB3aGljaCBhcmUgaW5kaWNhdGl2ZSBvbmx5IGFuZCBwcm92aWRlZCBhcyBndWlkZWxpbmVzLiBUaGV5IGRvIG5vdCBjb25zdGl0dXRlIGEgZ3VhcmFudGVlIG9mIGFueSBzcGVjaWZpYyBwcm9kdWN0IGF0dHJpYnV0ZXMgb3IgdGhlIHN1aXRhYmlsaXR5IG9mIHByb2R1Y3RzIGZvciBzcGVjaWZpYyBhcHBsaWNhdGlvbnMuIDxcL2VtPlxyXG5cclxuPGVtPlN0b3JhZ2UgQ29uZGl0aW9uczogTWFpbnRhaW4gcm9vbSB0ZW1wZXJhdHVyZSBpbiBiZXR3ZWVuIDIwLTI1XHUwMGIwQyAmYW1wOyByZWxhdGl2ZSBodW1pZGl0eS48XC9lbT4iLCJwb3N0X3RpdGxlIjoiKDI3NW1pYykgKDM3MGcpIEE0IFBlcm1hUGFwZXJcdTAwYWUgT2ZmaWNlIFBLMTAwIiwicG9zdF9leGNlcnB0IjoiVGhpcyBwYWNrIG9mIDI1MCBzaGVldHMgUGVybWFQYXBlclx1MDBhZSBPZmZpY2Ugb2ZmZXJzIGFmZm9yZGFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIHdpdGggZXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eS4gVGhpcyBQVkMtZnJlZSwgcGFwZXItbGlrZSBmaWxtIGlzIHBlcmZlY3QgZm9yIGhpZ2gtdm9sdW1lIGRpZ2l0YWwgcHJpbnRzLCBjb21iaW5pbmcgY29zdC1lZmZpY2llbmN5IHdpdGggc3VwZXJpb3IgcGVyZm9ybWFuY2UuIiwicG9zdF9zdGF0dXMiOiJwdWJsaXNoIiwiY29tbWVudF9zdGF0dXMiOiJjbG9zZWQiLCJwaW5nX3N0YXR1cyI6ImNsb3NlZCIsInBvc3RfcGFzc3dvcmQiOiIiLCJwb3N0X25hbWUiOiIyNzVtaWMtMzcwZy1hNC1wZXJtYXBhcGVyLW9mZmljZS1wazEwMCIsInRvX3BpbmciOiIiLCJwaW5nZWQiOiIiLCJwb3N0X21vZGlmaWVkIjoiMjAyNC0xMi0wNSAxMzoxNDo1MCIsInBvc3RfbW9kaWZpZWRfZ210IjoiMjAyNC0xMi0wNSAxMzoxNDo1MCIsInBvc3RfY29udGVudF9maWx0ZXJlZCI6IiIsInBvc3RfcGFyZW50IjowLCJndWlkIjoiaHR0cHM6XC9cL3dsY29sbGVyLmNvLnVrXC8/cG9zdF90eXBlPXByb2R1Y3QmIzAzODtwPTY5NzkwIiwibWVudV9vcmRlciI6MCwicG9zdF90eXBlIjoicHJvZHVjdCIsInBvc3RfbWltZV90eXBlIjoiIiwiY29tbWVudF9jb3VudCI6IjAiLCJmaWx0ZXIiOiJyYXcifSx7IklEIjo2OTc4MiwicG9zdF9hdXRob3IiOiIzMDI4IiwicG9zdF9kYXRlIjoiMjAyNC0xMi0wNSAxMDo1NjozNSIsInBvc3RfZGF0ZV9nbXQiOiIyMDI0LTEyLTA1IDEwOjU2OjM1IiwicG9zdF9jb250ZW50IjoiPHN0cm9uZz48dT5QZXJtYVBhcGVyXHUwMGFlIFByZW1pdW08XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob24gVGVhcmFibGU8XC9saT5cclxuIFx0PGxpPk1vaXN0dXJlIFJlc2lzdGFudDxcL2xpPlxyXG4gXHQ8bGk+RGltZW5zaW9uYWxseSBzdGFibGU8XC9saT5cclxuIFx0PGxpPkV4Y2VsbGVudCBQcmludGFiaWxpdHk8XC9saT5cclxuIFx0PGxpPlN1cGVyaW9yIHRlbnNpbGUgYW5kIHRlYXIgc3RyZW5ndGg8XC9saT5cclxuIFx0PGxpPldyaXRlYWJsZSB3aXRoIHBlbmNpbCBhbmQgb2lsIGJhc2VkIGluayBwZW5zPFwvbGk+XHJcbiBcdDxsaT5QcmludGFibGUgb24gYm90aCBzaWRlcyBieSBjb252ZW50aW9uYWwgYW5kIFVWIG9mZnNldCwgd2F0ZXIgYW5kIFVWIGZsZXhvLCBMZXR0ZXJwcmVzcywgU2NyZWVuLCBUaGVybWFsIFRyYW5zZmVyIGFuZCBzdWl0YWJsZSBmb3IgZHJ5IHRvbmVyIHByaW50aW5nLjxcL2xpPlxyXG4gXHQ8bGk+Q2FuIGJlIGZvbGRlZCwgc2hlZXRlZCwgc3RhcGxlZCwgaG90IGZvaWxlZCwgZGllIFx1MjAxMyBwdW5jaGVkLCBzZXJyYXRlZCBhbmQgcGVyZm9yYXRlZC4gKGZvciBwZXJmb3JhdGlvbiBhbHdheXMga2VlcCB0aWUgbGVuZ3RoICZsdDswLjVtbSBhbmQgZWRnZXMgb2YgcGVyZm9yYXRlZCBzaGVldCBvciBsYWJlbCBzaG91bGQgYmUgY3V0KTxcL2xpPlxyXG48XC91bD5cclxuPHN0cm9uZz48dT5QcmludGVyIENvbXBhdGliaWxpdHk6PFwvdT48XC9zdHJvbmc+IERyeSBUb25lciwgSFAgSW5kaWdvLCBPZmZzZXQgTGl0aG8sIFVWIE9mZnNldCwgRmxleG8sIFVWIElua2pldFxyXG5cclxuPHN0cm9uZz48dT5FbnZpcm9ubWVudGFsIEluZm9ybWF0aW9uOjxcL3U+PFwvc3Ryb25nPiBQVkMgRnJlZVxyXG5cclxuPHN0cm9uZz48dT5BcHBsaWNhdGlvbnM6PFwvdT48XC9zdHJvbmc+XHJcblxyXG48c3Ryb25nPjxlbT5Ib3NwaXRhbGl0eVwvRXZlbnQgUGxhbm5pbmc6PFwvZW0+PFwvc3Ryb25nPiBNYXBzIGFuZCBMZWFmbGV0IEd1aWRlcywgSG90ZWwgU2lnbmFnZSBhbmQgTWVudXMsIFdhdGVycHJvb2YgdGlja2V0cyBhbmQgd3Jpc3RiYW5kcywgRG9vciBoYW5nZXJzLCBPdXRkb29yIEJ1bnRpbmcsIFJhY2UgbnVtYmVycy5cclxuXHJcbjxzdHJvbmc+PGVtPlJldGFpbFwvUE9TOjxcL2VtPjxcL3N0cm9uZz4gU2VsZiBFZGdlIFN0cmlwcywgUmV0YWlsIFRhZ3MsIEJyYW5kZWRcL0N1c3RvbWVyIEdpZnQgQ2FyZHMsIE1lcmNoYW5zaWRlIFN0cmlwcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhvcnRpY3VsdHVyZVwvRm9ycmVzdHJ5OjxcL2VtPjxcL3N0cm9uZz4gUGxhbnQgc3RhYmJlcnMsIENocmlzdG1hcyBUcmVlIFRhZ3NcclxuXHJcbjxzdHJvbmc+PGVtPk1hbnVmYWN0dXJpbmc8XC9lbT48XC9zdHJvbmc+OiBEdXJhYmxlIExhYmVsc1wvVGFncywgV2VhdGhlcnByb29mIFNpZ25hZ2UsIFdhdGVycHJvb2YgaW5zdHJ1Y3Rpb24gbWFudWFsc1wvVHJhaW5pbmcgYm9va3MsIFNhZmV0eSBMZWFmbGV0cywgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPlRyYW5zcG9ydGF0aW9uXC9Mb2dpc2l0aWNzOjxcL2VtPjxcL3N0cm9uZz4gTHVnZ2FnZSBUYWdzLCBXYXRlcnByb29mIERvY3VtZW50c1wvRm9ybXMuXHJcblxyXG48c3Ryb25nPjxlbT5IZWFsdGhjYXJlXC9QaGFybWE6PFwvZW0+PFwvc3Ryb25nPiBQYXRpZW50IFJlY29yZHNcL0lEIENhcmRzLCBMYWJvcmF0b3J5IFVzZSwgV2lwZWFibGUgU2lnbmFnZS5cclxuXHJcbjxzdHJvbmc+PGVtPkVkdWNhdGlvbjo8XC9lbT48XC9zdHJvbmc+IER1cmFibGUgU2lnbmFnZSwgU3R1ZGVudCBJRCBDYXJkcywgQW55dGhpbmcgdGhhdCB3b3VsZCB1c3VhbGx5IGJlIGxhbWluYXRlZC5cclxuXHJcbjxzdHJvbmc+PGVtPkNvbnN0cnVjdGlvblwvRW5naW5lZXJpbmc6PFwvZW0+PFwvc3Ryb25nPiBTaXRlIFBsYW5zLCBCbHVlIFByaW50cywgU2FmZXR5IHNpZ25hZ2UsIE1hbnVhbHMgYW5kIFNpdGUgRG9jdW1lbnRzLlxyXG5cclxuPHN0cm9uZz5Db2Rlczo8XC9zdHJvbmc+IFBQUFMzMjc1IC0gNjcwMVxyXG5cclxuJm5ic3A7XHJcblxyXG48ZW0+KlRoZSBpbmZvcm1hdGlvbiBwcm92aWRlZCBhYm92ZSBpcyBiYXNlZCBvbiBjb25jbHVzaXZlIHRlc3RzLCB3aGljaCBhcmUgaW5kaWNhdGl2ZSBvbmx5IGFuZCBwcm92aWRlZCBhcyBndWlkZWxpbmVzLiBUaGV5IGRvIG5vdCBjb25zdGl0dXRlIGEgZ3VhcmFudGVlIG9mIGFueSBzcGVjaWZpYyBwcm9kdWN0IGF0dHJpYnV0ZXMgb3IgdGhlIHN1aXRhYmlsaXR5IG9mIHByb2R1Y3RzIGZvciBzcGVjaWZpYyBhcHBsaWNhdGlvbnMuIDxcL2VtPlxyXG5cclxuPGVtPlN0b3JhZ2UgQ29uZGl0aW9uczogTWFpbnRhaW4gcm9vbSB0ZW1wZXJhdHVyZSBpbiBiZXR3ZWVuIDIwLTI1XHUwMGIwQyAmYW1wOyByZWxhdGl2ZSBodW1pZGl0eS48XC9lbT4iLCJwb3N0X3RpdGxlIjoiKDI3NW1pYykgKDM3MGcpIFNSQTMgUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIFBLMTAwIiwicG9zdF9leGNlcnB0IjoiVGhpcyBwYWNrIG9mIDI1MCBzaGVldHMgUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMjc1bWljLTM3MGctc3JhMy1wZXJtYXBhcGVyLXByZW1pdW0tcGsxMDAiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTI6MTA6MTgiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTI6MTA6MTgiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTc4MiIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njk3MzgsInBvc3RfYXV0aG9yIjoiMzAyOCIsInBvc3RfZGF0ZSI6IjIwMjQtMTEtMjkgMTE6NDI6MDQiLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0xMS0yOSAxMTo0MjowNCIsInBvc3RfY29udGVudCI6IjxzdHJvbmc+PHU+UGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIDxcL3U+PFwvc3Ryb25nPlxyXG5cclxuUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIG1ha2VzIGR1cmFibGUsIHRlYXJwcm9vZiwgd2F0ZXJwcm9vZiBkaWdpdGFsIG1lZGlhIGhpZ2hseSBhZmZvcmRhYmxlISBFeGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5IHdpdGggYSB3aWRlIHZhcmlldHkgb2YgZGlnaXRhbCBhbmQgdHJhZGl0aW9uYWwgcHJpbnQgdGVjaG5vbG9naWVzLCB5ZXQgd2l0aG91dCB0aGUgaGlnaCBwcmljZSBub3JtYWxseSBhc3NvY2lhdGVkIHdpdGggaGVhdC1yZXNpc3RhbnQgc3ludGhldGljIGZpbG1zIGZvciBkaWdpdGFsIHByaW50LiBUaGlzIHVuaXF1ZSBQVkMtZnJlZSBmaWxtIHdpdGggYSBwYXBlciBsaWtlIGZlZWwgaXMgaWRlYWwgZm9yIGxvbmdlciBydW5zIGFuZCBoaWdoZXIgdXNhZ2Ugd2hlcmUgZGlnaXRhbCBwcmludGFiaWxpdHkgYW5kIGNvc3QgcGVyIHNoZWV0IGFyZSBpbXBvcnRhbnQuXHJcblxyXG5JdCBpcyBhIGNvLWV4dHJ1ZGVkLCBoaWdoIHdoaXRlIG9wYXF1ZSwgZG91YmxlIHNpZGVkIG1hdHRlIGNvYXRlZCBwb2x5cHJvcHlsZW5lIGJhc2VkIGZpbG0gd2hpY2ggcmVzZW1ibGVzIHBhcGVyIGluIGFwcGVhcmFuY2UuXHJcblxyXG5LZXkgRmVhdHVyZXM6XHJcbjx1bD5cclxuIFx0PGxpPk5vbiBUZWFyYWJsZTxcL2xpPlxyXG4gXHQ8bGk+TW9pc3R1cmUgUmVzaXN0YW50PFwvbGk+XHJcbiBcdDxsaT5EaW1lbnNpb25hbGx5IHN0YWJsZTxcL2xpPlxyXG4gXHQ8bGk+RXhjZWxsZW50IFByaW50YWJpbGl0eTxcL2xpPlxyXG4gXHQ8bGk+U3VwZXJpb3IgdGVuc2lsZSBhbmQgdGVhciBzdHJlbmd0aDxcL2xpPlxyXG4gXHQ8bGk+V3JpdGVhYmxlIHdpdGggcGVuY2lsIGFuZCBvaWwgYmFzZWQgaW5rIHBlbnM8XC9saT5cclxuIFx0PGxpPlByaW50YWJsZSBvbiBib3RoIHNpZGVzIGJ5IGNvbnZlbnRpb25hbCBhbmQgVVYgb2Zmc2V0LCB3YXRlciBhbmQgVVYgZmxleG8sIExldHRlcnByZXNzLCBTY3JlZW4sIFRoZXJtYWwgVHJhbnNmZXIgYW5kIHN1aXRhYmxlIGZvciBkcnkgdG9uZXIgcHJpbnRpbmcuPFwvbGk+XHJcbiBcdDxsaT5DYW4gYmUgZm9sZGVkLCBzaGVldGVkLCBzdGFwbGVkLCBob3QgZm9pbGVkLCBkaWUgXHUyMDEzIHB1bmNoZWQsIHNlcnJhdGVkIGFuZCBwZXJmb3JhdGVkLiAoZm9yIHBlcmZvcmF0aW9uIGFsd2F5cyBrZWVwIHRpZSBsZW5ndGggJmx0OzAuNW1tIGFuZCBlZGdlcyBvZiBwZXJmb3JhdGVkIHNoZWV0IG9yIGxhYmVsIHNob3VsZCBiZSBjdXQpPFwvbGk+XHJcbjxcL3VsPlxyXG48c3Ryb25nPjx1PlByaW50ZXIgQ29tcGF0aWJpbGl0eTo8XC91PjxcL3N0cm9uZz4gRHJ5IFRvbmVyLCBIUCBJbmRpZ28sIE9mZnNldCBMaXRobywgVVYgT2Zmc2V0LCBGbGV4bywgVVYgSW5ramV0XHJcblxyXG48c3Ryb25nPjx1PkVudmlyb25tZW50YWwgSW5mb3JtYXRpb246PFwvdT48XC9zdHJvbmc+IFBWQyBGcmVlXHJcblxyXG48c3Ryb25nPjx1PkFwcGxpY2F0aW9uczo8XC91PjxcL3N0cm9uZz5cclxuXHJcbjxzdHJvbmc+PGVtPkhvc3BpdGFsaXR5XC9FdmVudCBQbGFubmluZzo8XC9lbT48XC9zdHJvbmc+IE1hcHMgYW5kIExlYWZsZXQgR3VpZGVzLCBIb3RlbCBTaWduYWdlIGFuZCBNZW51cywgV2F0ZXJwcm9vZiB0aWNrZXRzIGFuZCB3cmlzdGJhbmRzLCBEb29yIGhhbmdlcnMsIE91dGRvb3IgQnVudGluZywgUmFjZSBudW1iZXJzLlxyXG5cclxuPHN0cm9uZz48ZW0+UmV0YWlsXC9QT1M6PFwvZW0+PFwvc3Ryb25nPiBTZWxmIEVkZ2UgU3RyaXBzLCBSZXRhaWwgVGFncywgQnJhbmRlZFwvQ3VzdG9tZXIgR2lmdCBDYXJkcywgTWVyY2hhbnNpZGUgU3RyaXBzLlxyXG5cclxuPHN0cm9uZz48ZW0+SG9ydGljdWx0dXJlXC9Gb3JyZXN0cnk6PFwvZW0+PFwvc3Ryb25nPiBQbGFudCBzdGFiYmVycywgQ2hyaXN0bWFzIFRyZWUgVGFnc1xyXG5cclxuPHN0cm9uZz48ZW0+TWFudWZhY3R1cmluZzxcL2VtPjxcL3N0cm9uZz46IER1cmFibGUgTGFiZWxzXC9UYWdzLCBXZWF0aGVycHJvb2YgU2lnbmFnZSwgV2F0ZXJwcm9vZiBpbnN0cnVjdGlvbiBtYW51YWxzXC9UcmFpbmluZyBib29rcywgU2FmZXR5IExlYWZsZXRzLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+VHJhbnNwb3J0YXRpb25cL0xvZ2lzaXRpY3M6PFwvZW0+PFwvc3Ryb25nPiBMdWdnYWdlIFRhZ3MsIFdhdGVycHJvb2YgRG9jdW1lbnRzXC9Gb3Jtcy5cclxuXHJcbjxzdHJvbmc+PGVtPkhlYWx0aGNhcmVcL1BoYXJtYTo8XC9lbT48XC9zdHJvbmc+IFBhdGllbnQgUmVjb3Jkc1wvSUQgQ2FyZHMsIExhYm9yYXRvcnkgVXNlLCBXaXBlYWJsZSBTaWduYWdlLlxyXG5cclxuPHN0cm9uZz48ZW0+RWR1Y2F0aW9uOjxcL2VtPjxcL3N0cm9uZz4gRHVyYWJsZSBTaWduYWdlLCBTdHVkZW50IElEIENhcmRzLCBBbnl0aGluZyB0aGF0IHdvdWxkIHVzdWFsbHkgYmUgbGFtaW5hdGVkLlxyXG5cclxuPHN0cm9uZz48ZW0+Q29uc3RydWN0aW9uXC9FbmdpbmVlcmluZzo8XC9lbT48XC9zdHJvbmc+IFNpdGUgUGxhbnMsIEJsdWUgUHJpbnRzLCBTYWZldHkgc2lnbmFnZSwgTWFudWFscyBhbmQgU2l0ZSBEb2N1bWVudHMuXHJcblxyXG48c3Ryb25nPkNvZGVzOjxcL3N0cm9uZz4gUFBDUzMyODAgLSA2Njk2XHJcblxyXG4mbmJzcDtcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LjxcL2VtPlxyXG5cclxuJm5ic3A7IiwicG9zdF90aXRsZSI6IigyODBtaWMpICgzMjVnKSBTUkEzIFBlcm1hUGFwZXJcdTAwYWUgQ2xhc3NpYyBQSzEwMCIsInBvc3RfZXhjZXJwdCI6IlBlcm1hUGFwZXJcdTAwYWUgQ2xhc3NpYyBvZmZlcnMgYWZmb3JkYWJsZSwgdGVhcnByb29mLCB3YXRlcnByb29mIGRpZ2l0YWwgbWVkaWEgd2l0aCBleGNlbGxlbnQgZHVyYWJpbGl0eSBhbmQgcHJpbnRhYmlsaXR5LiBUaGlzIFBWQy1mcmVlLCBwYXBlci1saWtlIGZpbG0gaXMgcGVyZmVjdCBmb3IgaGlnaC12b2x1bWUgZGlnaXRhbCBwcmludHMsIGNvbWJpbmluZyBjb3N0LWVmZmljaWVuY3kgd2l0aCBzdXBlcmlvciBwZXJmb3JtYW5jZS4iLCJwb3N0X3N0YXR1cyI6InB1Ymxpc2giLCJjb21tZW50X3N0YXR1cyI6ImNsb3NlZCIsInBpbmdfc3RhdHVzIjoiY2xvc2VkIiwicG9zdF9wYXNzd29yZCI6IiIsInBvc3RfbmFtZSI6IjI4MG1pYy0zMjVnLXNyYTMtcGVybWFwYXBlci1jbGFzc2ljLXBrMjUwIiwidG9fcGluZyI6IiIsInBpbmdlZCI6IiIsInBvc3RfbW9kaWZpZWQiOiIyMDI0LTEyLTA1IDEyOjEwOjE3IiwicG9zdF9tb2RpZmllZF9nbXQiOiIyMDI0LTEyLTA1IDEyOjEwOjE3IiwicG9zdF9jb250ZW50X2ZpbHRlcmVkIjoiIiwicG9zdF9wYXJlbnQiOjAsImd1aWQiOiJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcLz9wb3N0X3R5cGU9cHJvZHVjdCYjMDM4O3A9Njk3MzgiLCJtZW51X29yZGVyIjowLCJwb3N0X3R5cGUiOiJwcm9kdWN0IiwicG9zdF9taW1lX3R5cGUiOiIiLCJjb21tZW50X2NvdW50IjoiMCIsImZpbHRlciI6InJhdyJ9LHsiSUQiOjY5NzQzLCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTExLTI5IDE0OjU2OjA4IiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTEtMjkgMTQ6NTY6MDgiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgQ2xhc3NpYyA8XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgQ2xhc3NpYyBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob25lIFRlYXJhYmxlPFwvbGk+XHJcbiBcdDxsaT5Nb2lzdHVyZSBSZXNpc3RhbnQ8XC9saT5cclxuIFx0PGxpPkRpbWVuc2lvbmFsbHkgc3RhYmxlPFwvbGk+XHJcbiBcdDxsaT5FeGNlbGxlbnQgUHJpbnRhYmlsaXR5PFwvbGk+XHJcbiBcdDxsaT5TdXBlcmlvciB0ZW5zaWxlIGFuZCB0ZWFyIHN0cmVuZ3RoPFwvbGk+XHJcbiBcdDxsaT5Xcml0ZWFibGUgd2l0aCBwZW5jaWwgYW5kIG9pbCBiYXNlZCBpbmsgcGVuczxcL2xpPlxyXG4gXHQ8bGk+UHJpbnRhYmxlIG9uIGJvdGggc2lkZXMgYnkgY29udmVudGlvbmFsIGFuZCBVViBvZmZzZXQsIHdhdGVyIGFuZCBVViBmbGV4bywgTGV0dGVycHJlc3MsIFNjcmVlbiwgVGhlcm1hbCBUcmFuc2ZlciBhbmQgc3VpdGFibGUgZm9yIGRyeSB0b25lciBwcmludGluZy48XC9saT5cclxuIFx0PGxpPkNhbiBiZSBmb2xkZWQsIHNoZWV0ZWQsIHN0YXBsZWQsIGhvdCBmb2lsZWQsIGRpZSBcdTIwMTMgcHVuY2hlZCwgc2VycmF0ZWQgYW5kIHBlcmZvcmF0ZWQuIChmb3IgcGVyZm9yYXRpb24gYWx3YXlzIGtlZXAgdGllIGxlbmd0aCAmbHQ7MC41bW0gYW5kIGVkZ2VzIG9mIHBlcmZvcmF0ZWQgc2hlZXQgb3IgbGFiZWwgc2hvdWxkIGJlIGN1dCk8XC9saT5cclxuPFwvdWw+XHJcbjxzdHJvbmc+PHU+UHJpbnRlciBDb21wYXRpYmlsaXR5OjxcL3U+PFwvc3Ryb25nPiBEcnkgVG9uZXIsIEhQIEluZGlnbywgT2Zmc2V0IExpdGhvLCBVViBPZmZzZXQsIEZsZXhvLCBVViBJbmtqZXRcclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6PFwvc3Ryb25nPiBQUENTMzM2MCAtIDY2OTdcclxuXHJcbiZuYnNwO1xyXG5cclxuPGVtPipUaGUgaW5mb3JtYXRpb24gcHJvdmlkZWQgYWJvdmUgaXMgYmFzZWQgb24gY29uY2x1c2l2ZSB0ZXN0cywgd2hpY2ggYXJlIGluZGljYXRpdmUgb25seSBhbmQgcHJvdmlkZWQgYXMgZ3VpZGVsaW5lcy4gVGhleSBkbyBub3QgY29uc3RpdHV0ZSBhIGd1YXJhbnRlZSBvZiBhbnkgc3BlY2lmaWMgcHJvZHVjdCBhdHRyaWJ1dGVzIG9yIHRoZSBzdWl0YWJpbGl0eSBvZiBwcm9kdWN0cyBmb3Igc3BlY2lmaWMgYXBwbGljYXRpb25zLiA8XC9lbT5cclxuXHJcbjxlbT5TdG9yYWdlIENvbmRpdGlvbnM6IE1haW50YWluIHJvb20gdGVtcGVyYXR1cmUgaW4gYmV0d2VlbiAyMC0yNVx1MDBiMEMgJmFtcDsgcmVsYXRpdmUgaHVtaWRpdHkuPFwvZW0+XHJcblxyXG4mbmJzcDsiLCJwb3N0X3RpdGxlIjoiKDM2MG1pYykgKDQyM2cpIFNSQTMgUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIFBLMTAwIiwicG9zdF9leGNlcnB0IjoiUGVybWFQYXBlclx1MDBhZSBDbGFzc2ljIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMzYwbWljLTQyM2ctc3JhMy1wZXJtYXBhcGVyLWNsYXNzaWMtcGsxMDAiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTI6MTA6MTciLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTI6MTA6MTciLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTc0MyIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6NjUwMTksInBvc3RfYXV0aG9yIjoiMTk3MDQiLCJwb3N0X2RhdGUiOiIyMDIzLTA4LTE2IDA4OjI3OjEwIiwicG9zdF9kYXRlX2dtdCI6IjIwMjMtMDgtMTYgMDg6Mjc6MTAiLCJwb3N0X2NvbnRlbnQiOiI8c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPldlaWdodDotIDxcL3NwYW4+MTgwZ3NtXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPlBhY2s6LSA8XC9zcGFuPjI1LDUwLDEwMCBTaGVldHNcclxuXHJcbjxzcGFuIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+U2l6ZXM6LSA8XC9zcGFuPlNSQTIgNDUwWDY0MG1tLlxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5QcmludGVyIFN1aXRhYmlsaXR5Oi0gPFwvc3Bhbj5MaXRob2dyYXBoeSwgRHJ5IHRvbmVyLCBTaWxrc2NyZWVuLCBGbGV4b2dyYXBoeSwgUmVsaWVmIFByb2Nlc3NlcywgTGV0dGVycHJlc3MsIElua2pldCwgRGllIEN1dHRpbmcsIExhc2VyIEN1dHRpbmcsIEZvaWwgQmxvY2tpbmcgKiAqKiwgRHJpbGxpbmcgJiBQdW5jaGluZ1xyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5Db2xvdXIgQ2F0ZWdvcnk6LTxcL3NwYW4+IFdoaXRlXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPldMQyBDb2RlOi0gPFwvc3Bhbj4xNDI1NlxyXG5cclxuPGEgaHJlZj1cImh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvd3AtY29udGVudFwvdXBsb2Fkc1wvMjAyMVwvMDJcL1Zhbmd1YXJkLURhdGEtU2hlZXQtMjAyMS5wZGZcIj5WYW5ndWFyZCBEYXRhIFNoZWV0IDIwMjE8XC9hPlxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj48XC9zcGFuPjxhIGhyZWY9XCJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcL2JyYW5kc1wvdmFuZ3VhcmQtY2FyZC1jb2xvdXJzXC9cIj5WYW5ndWFyZCBSYW5nZSBIZXJlPFwvYT5cclxuIiwicG9zdF90aXRsZSI6IjE4MGdzbSBWYW5ndWFyZCBXaGl0ZSBDYXJkIiwicG9zdF9leGNlcnB0IjoiPGgyPlZhbmd1YXJkIDE4MGdzbSBXaGl0ZSBDYXJkPFwvaDI+XHJcbmlzIGEgYnJpZ2h0IFdoaXRlIGNvbG91cmVkIGNhcmQgc3VpdGFibGUgZm9yIGJvdGggdHJhZGl0aW9uYWwgYW5kIGRpZ2l0YWwgcHJpbnQgcHJvY2Vzc2VzIGFuZCBnZW5lcmFsIGNyYWZ0IHVzZS5cclxuTWFudWZhY3R1cmVkIGluIHRoZSBVS1xyXG5cclxuIiwicG9zdF9zdGF0dXMiOiJwdWJsaXNoIiwiY29tbWVudF9zdGF0dXMiOiJjbG9zZWQiLCJwaW5nX3N0YXR1cyI6ImNsb3NlZCIsInBvc3RfcGFzc3dvcmQiOiIiLCJwb3N0X25hbWUiOiIxODBnc20tdmFuZ3VhcmQtd2hpdGUtY2FyZCIsInRvX3BpbmciOiIiLCJwaW5nZWQiOiIiLCJwb3N0X21vZGlmaWVkIjoiMjAyNC0wNi0xOCAxMzoxOTowMiIsInBvc3RfbW9kaWZpZWRfZ210IjoiMjAyNC0wNi0xOCAxMzoxOTowMiIsInBvc3RfY29udGVudF9maWx0ZXJlZCI6IiIsInBvc3RfcGFyZW50IjowLCJndWlkIjoiaHR0cHM6XC9cL3dsY29sbGVyLmNvLnVrXC8/cG9zdF90eXBlPXByb2R1Y3QmIzAzODtwPTY1MDE5IiwibWVudV9vcmRlciI6MCwicG9zdF90eXBlIjoicHJvZHVjdCIsInBvc3RfbWltZV90eXBlIjoiIiwiY29tbWVudF9jb3VudCI6IjAiLCJmaWx0ZXIiOiJyYXcifSx7IklEIjo2NDUwOSwicG9zdF9hdXRob3IiOiIxOTcwNCIsInBvc3RfZGF0ZSI6IjIwMjMtMDgtMTAgMTM6NDY6NTEiLCJwb3N0X2RhdGVfZ210IjoiMjAyMy0wOC0xMCAxMzo0Njo1MSIsInBvc3RfY29udGVudCI6IjxzcGFuIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+V2VpZ2h0Oi0gPFwvc3Bhbj4yMzZnc21cclxuXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPlBhY2s6LSA8XC9zcGFuPjI1LDUwLDEwMCBTaGVldHNcclxuXHJcbjxzcGFuIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+U2l6ZXM6LSA8XC9zcGFuPlNSQTIgNDUwWDY0MG1tLCBTUkEzIDMyMFg0NTBtbSwgUm95YWwgNTJYNjQwLCBBMywgQTQuXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPlByaW50ZXIgU3VpdGFiaWxpdHk6LSA8XC9zcGFuPkxpdGhvZ3JhcGh5LCBEcnkgdG9uZXIsIFNpbGtzY3JlZW4sIEZsZXhvZ3JhcGh5LCBSZWxpZWYgUHJvY2Vzc2VzLCBMZXR0ZXJwcmVzcywgSW5ramV0LCBEaWUgQ3V0dGluZywgTGFzZXIgQ3V0dGluZywgRm9pbCBCbG9ja2luZyAqICoqLCBEcmlsbGluZyAmIFB1bmNoaW5nXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPkNvbG91ciBDYXRlZ29yeTotPFwvc3Bhbj4gQ3JlYW1cclxuXHJcbjxzcGFuIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+V0xDIENvZGU6LSA8XC9zcGFuPjEwMzk4IDEyMjA5IDU0MzMgMTA2NDEgMTQwNFxyXG5cclxuPGEgaHJlZj1cImh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvd3AtY29udGVudFwvdXBsb2Fkc1wvMjAyMVwvMDJcL1Zhbmd1YXJkLURhdGEtU2hlZXQtMjAyMS5wZGZcIj5WYW5ndWFyZCBEYXRhIFNoZWV0IDIwMjE8XC9hPlxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj48XC9zcGFuPjxhIGhyZWY9XCJodHRwczpcL1wvd2xjb2xsZXIuY28udWtcL2JyYW5kc1wvdmFuZ3VhcmQtY2FyZC1jb2xvdXJzXC9cIj5WYW5ndWFyZCBSYW5nZSBIZXJlPFwvYT5cclxuXHJcblxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXN0eWxlOiBpdGFsaWM7XCI+KiBCbGFjayBub3Qgc3VpdGFibGUgZm9yIG1ldGFsbGljIGZvaWxpbmcuICoqIFRlc3RpbmcgcmVjb21tZW5kZWQuPFwvc3Bhbj4iLCJwb3N0X3RpdGxlIjoiMjM2Z3NtIFZhbmd1YXJkIEl2b3J5IENhcmQiLCJwb3N0X2V4Y2VycHQiOiI8aDI+VmFuZ3VhcmQgMjM2Z3NtIGl2b3J5IENhcmQ8XC9oMj5cclxuaXMgYSBicmlnaHQgY3JlYW0gY29sb3VyZWQgY2FyZCBzdWl0YWJsZSBmb3IgYm90aCB0cmFkaXRpb25hbCBhbmQgZGlnaXRhbCBjb21tZXJjaWFsIHByaW50IHByb2Nlc3NlcyBhbmQgZ2VuZXJhbCBjcmFmdCB1c2UuXHJcbk1hbnVmYWN0dXJlZCBpbiB0aGUgVUtcclxuXHJcbiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMjM2Z3NtLXZhbmd1YXJkLWl2b3J5LWNhcmQiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTEtMjAgMDg6MjA6MTEiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTEtMjAgMDg6MjA6MTEiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02NDUwOSIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njc2OTIsInBvc3RfYXV0aG9yIjoiMiIsInBvc3RfZGF0ZSI6IjIwMjQtMDYtMDQgMTE6MDM6NTEiLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0wNi0wNCAxMTowMzo1MSIsInBvc3RfY29udGVudCI6IjxoMj5PbWVnYSBQbHVzIEZvbGRpbmcgQm94Ym9hcmQgU1JBMiAyODBnc208XC9oMj5cclxuXHJcbjxzcGFuIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+VW5pdCBvZiBTYWxlOi0gPFwvc3Bhbj5QYWNrIG9mIDEwMFxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5XZWlnaHQ6LSA8XC9zcGFuPjI4MGdzbVxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5UaGlja25lc3M6LSA8XC9zcGFuPjQ0OCBtaWNyb25zXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPldMQyBDb2RlOi0gPFwvc3Bhbj5QNTU3MlxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5PbWVnYSBSYW5nZTotIDxcL3NwYW4+PGEgaHJlZj1cImh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvYnJhbmRzXC9vbWVnYS1wbHVzXC9cIj5PbWVnYSBQbHVzIEZvbGRpbmcgQm94Ym9hcmQ8XC9hPiIsInBvc3RfdGl0bGUiOiIyODBHIFNSQTIgT21lZ2EgUGx1cyBCb3hib2FyZCBQSzEwMCIsInBvc3RfZXhjZXJwdCI6Ik9tZWdhIFBsdXMgZG91YmxlIGJsYWRlIGNvYXRlZCwgaGlnaCB3aGl0ZSwgbXVsdGkgbGF5ZXJlZCBmb2xkaW5nIGJveGJvYXJkIHdpdGggYSB3aGl0ZSBiYWNrIGNvYXRlZCByZXZlcnNlIGZvciBmb2xkaW5nIGNhcnRvbnMsIHBoYXJtYWNldXRpY2FsIGJveGVzLCBwYWNrYWdpbmcsIGNhcmRzIGFuZCBncmFwaGljYWwgdXNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMjgwZy1zcmEyLW9tZWdhLXBsdXMtYm94Ym9hcmQtcGsxMDAiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTEtMTQgMTU6MzA6MTIiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTEtMTQgMTU6MzA6MTIiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02NzY5MiIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0seyJJRCI6Njc2ODQsInBvc3RfYXV0aG9yIjoiMiIsInBvc3RfZGF0ZSI6IjIwMjQtMDYtMDQgMDk6MjU6MzkiLCJwb3N0X2RhdGVfZ210IjoiMjAyNC0wNi0wNCAwOToyNTozOSIsInBvc3RfY29udGVudCI6IjxoMj5PbWVnYSBQbHVzIEZvbGRpbmcgQm94Ym9hcmQgU1JBMiAzMDBnc208XC9oMj5cclxuXHJcbjxzcGFuIHN0eWxlPVwiZm9udC13ZWlnaHQ6IGJvbGQ7XCI+VW5pdCBvZiBTYWxlOi0gPFwvc3Bhbj5QYWNrIG9mIDEwMFxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5XZWlnaHQ6LSA8XC9zcGFuPjMwMGdzbVxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5UaGlja25lc3M6LSA8XC9zcGFuPjQ4MCBtaWNyb25zXHJcblxyXG48c3BhbiBzdHlsZT1cImZvbnQtd2VpZ2h0OiBib2xkO1wiPldMQyBDb2RlOi0gPFwvc3Bhbj5QNTU3NFxyXG5cclxuPHNwYW4gc3R5bGU9XCJmb250LXdlaWdodDogYm9sZDtcIj5PbWVnYSBSYW5nZTotIDxcL3NwYW4+PGEgaHJlZj1cImh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvYnJhbmRzXC9vbWVnYS1wbHVzXC9cIj5PbWVnYSBQbHVzIEZvbGRpbmcgQm94Ym9hcmQ8XC9hPiIsInBvc3RfdGl0bGUiOiIzMDBHIFNSQTIgT21lZ2EgUGx1cyBCb3hib2FyZCBQSzEwMCIsInBvc3RfZXhjZXJwdCI6Ik9tZWdhIFBsdXMgZG91YmxlIGJsYWRlIGNvYXRlZCwgaGlnaCB3aGl0ZSwgbXVsdGkgbGF5ZXJlZCBmb2xkaW5nIGJveGJvYXJkIHdpdGggYSB3aGl0ZSBiYWNrIGNvYXRlZCByZXZlcnNlIGZvciBmb2xkaW5nIGNhcnRvbnMsIHBoYXJtYWNldXRpY2FsIGJveGVzLCBwYWNrYWdpbmcsIGNhcmRzIGFuZCBncmFwaGljYWwgdXNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMzAwZy1zcmEyLW9tZWdhLXBsdXMtYm94Ym9hcmQiLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTEtMTkgMTU6MjA6MDgiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTEtMTkgMTU6MjA6MDgiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02NzY4NCIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In1dLCJwb3N0X2NvdW50IjoyMCwiY3VycmVudF9wb3N0IjotMSwiYmVmb3JlX2xvb3AiOmZhbHNlLCJpbl90aGVfbG9vcCI6ZmFsc2UsInBvc3QiOnsiSUQiOjY5NzQ0LCJwb3N0X2F1dGhvciI6IjMwMjgiLCJwb3N0X2RhdGUiOiIyMDI0LTExLTI5IDE1OjAwOjQzIiwicG9zdF9kYXRlX2dtdCI6IjIwMjQtMTEtMjkgMTU6MDA6NDMiLCJwb3N0X2NvbnRlbnQiOiI8c3Ryb25nPjx1PlBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSA8XC91PjxcL3N0cm9uZz5cclxuXHJcblBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSBtYWtlcyBkdXJhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSBoaWdobHkgYWZmb3JkYWJsZSEgRXhjZWxsZW50IGR1cmFiaWxpdHkgYW5kIHByaW50YWJpbGl0eSB3aXRoIGEgd2lkZSB2YXJpZXR5IG9mIGRpZ2l0YWwgYW5kIHRyYWRpdGlvbmFsIHByaW50IHRlY2hub2xvZ2llcywgeWV0IHdpdGhvdXQgdGhlIGhpZ2ggcHJpY2Ugbm9ybWFsbHkgYXNzb2NpYXRlZCB3aXRoIGhlYXQtcmVzaXN0YW50IHN5bnRoZXRpYyBmaWxtcyBmb3IgZGlnaXRhbCBwcmludC4gVGhpcyB1bmlxdWUgUFZDLWZyZWUgZmlsbSB3aXRoIGEgcGFwZXIgbGlrZSBmZWVsIGlzIGlkZWFsIGZvciBsb25nZXIgcnVucyBhbmQgaGlnaGVyIHVzYWdlIHdoZXJlIGRpZ2l0YWwgcHJpbnRhYmlsaXR5IGFuZCBjb3N0IHBlciBzaGVldCBhcmUgaW1wb3J0YW50LlxyXG5cclxuSXQgaXMgYSBjby1leHRydWRlZCwgaGlnaCB3aGl0ZSBvcGFxdWUsIGRvdWJsZSBzaWRlZCBtYXR0ZSBjb2F0ZWQgcG9seXByb3B5bGVuZSBiYXNlZCBmaWxtIHdoaWNoIHJlc2VtYmxlcyBwYXBlciBpbiBhcHBlYXJhbmNlLlxyXG5cclxuS2V5IEZlYXR1cmVzOlxyXG48dWw+XHJcbiBcdDxsaT5Ob24gVGVhcmFibGU8XC9saT5cclxuIFx0PGxpPk1vaXN0dXJlIFJlc2lzdGFudDxcL2xpPlxyXG4gXHQ8bGk+RGltZW5zaW9uYWxseSBzdGFibGU8XC9saT5cclxuIFx0PGxpPkV4Y2VsbGVudCBQcmludGFiaWxpdHk8XC9saT5cclxuIFx0PGxpPlN1cGVyaW9yIHRlbnNpbGUgYW5kIHRlYXIgc3RyZW5ndGg8XC9saT5cclxuIFx0PGxpPldyaXRlYWJsZSB3aXRoIHBlbmNpbCBhbmQgb2lsIGJhc2VkIGluayBwZW5zPFwvbGk+XHJcbiBcdDxsaT5QcmludGFibGUgb24gYm90aCBzaWRlcyBieSBjb252ZW50aW9uYWwgYW5kIFVWIG9mZnNldCwgd2F0ZXIgYW5kIFVWIGZsZXhvLCBMZXR0ZXJwcmVzcywgU2NyZWVuLCBUaGVybWFsIFRyYW5zZmVyIGFuZCBzdWl0YWJsZSBmb3IgZHJ5IHRvbmVyIHByaW50aW5nLjxcL2xpPlxyXG4gXHQ8bGk+Q2FuIGJlIGZvbGRlZCwgc2hlZXRlZCwgc3RhcGxlZCwgaG90IGZvaWxlZCwgZGllIFx1MjAxMyBwdW5jaGVkLCBzZXJyYXRlZCBhbmQgcGVyZm9yYXRlZC4gKGZvciBwZXJmb3JhdGlvbiBhbHdheXMga2VlcCB0aWUgbGVuZ3RoICZsdDswLjVtbSBhbmQgZWRnZXMgb2YgcGVyZm9yYXRlZCBzaGVldCBvciBsYWJlbCBzaG91bGQgYmUgY3V0KTxcL2xpPlxyXG48XC91bD5cclxuPHN0cm9uZz48dT5QcmludGFiaWxpdHk8XC91PjxcL3N0cm9uZz48c3Ryb25nPjo8XC9zdHJvbmc+IFRoZSBjb2F0aW5nIGlzIHN1aXRhYmxlIGZvciBkaWdpdGFsIHByaW50ZXJzLCBidXQgYWxzbyBwcm9kdWNlcyBnb29kIHJlc3VsdHMgd2l0aCBsYXNlciBwcmludGVycyBhbmQgcGhvdG9jb3BpZXJzLiBQcmludGluZyBieSBPZmZzZXQgaXMgYWxzbyBwb3NzaWJsZS4gQXMgd2l0aCBhbGwgc3ludGhldGljIHByb2R1Y3RzIFBlcm1hUGFwZXJcdTAwYWUgUHJlbWl1bSBzaG91bGQgYmUgdGVzdGVkIHdpdGggaW5kaXZpZHVhbCBwcmludGluZyBtYWNoaW5lcyBiZWZvcmVcclxuXHJcbnByb2R1Y3Rpb24gcnVucyBhcmUgdW5kZXJ0YWtlbi5cclxuXHJcbjxzdHJvbmc+PHU+RW52aXJvbm1lbnRhbCBJbmZvcm1hdGlvbjo8XC91PjxcL3N0cm9uZz4gUFZDIEZyZWVcclxuXHJcbjxzdHJvbmc+PHU+QXBwbGljYXRpb25zOjxcL3U+PFwvc3Ryb25nPlxyXG5cclxuPHN0cm9uZz48ZW0+SG9zcGl0YWxpdHlcL0V2ZW50IFBsYW5uaW5nOjxcL2VtPjxcL3N0cm9uZz4gTWFwcyBhbmQgTGVhZmxldCBHdWlkZXMsIEhvdGVsIFNpZ25hZ2UgYW5kIE1lbnVzLCBXYXRlcnByb29mIHRpY2tldHMgYW5kIHdyaXN0YmFuZHMsIERvb3IgaGFuZ2VycywgT3V0ZG9vciBCdW50aW5nLCBSYWNlIG51bWJlcnMuXHJcblxyXG48c3Ryb25nPjxlbT5SZXRhaWxcL1BPUzo8XC9lbT48XC9zdHJvbmc+IFNlbGYgRWRnZSBTdHJpcHMsIFJldGFpbCBUYWdzLCBCcmFuZGVkXC9DdXN0b21lciBHaWZ0IENhcmRzLCBNZXJjaGFuc2lkZSBTdHJpcHMuXHJcblxyXG48c3Ryb25nPjxlbT5Ib3J0aWN1bHR1cmVcL0ZvcnJlc3RyeTo8XC9lbT48XC9zdHJvbmc+IFBsYW50IHN0YWJiZXJzLCBDaHJpc3RtYXMgVHJlZSBUYWdzXHJcblxyXG48c3Ryb25nPjxlbT5NYW51ZmFjdHVyaW5nPFwvZW0+PFwvc3Ryb25nPjogRHVyYWJsZSBMYWJlbHNcL1RhZ3MsIFdlYXRoZXJwcm9vZiBTaWduYWdlLCBXYXRlcnByb29mIGluc3RydWN0aW9uIG1hbnVhbHNcL1RyYWluaW5nIGJvb2tzLCBTYWZldHkgTGVhZmxldHMsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5UcmFuc3BvcnRhdGlvblwvTG9naXNpdGljczo8XC9lbT48XC9zdHJvbmc+IEx1Z2dhZ2UgVGFncywgV2F0ZXJwcm9vZiBEb2N1bWVudHNcL0Zvcm1zLlxyXG5cclxuPHN0cm9uZz48ZW0+SGVhbHRoY2FyZVwvUGhhcm1hOjxcL2VtPjxcL3N0cm9uZz4gUGF0aWVudCBSZWNvcmRzXC9JRCBDYXJkcywgTGFib3JhdG9yeSBVc2UsIFdpcGVhYmxlIFNpZ25hZ2UuXHJcblxyXG48c3Ryb25nPjxlbT5FZHVjYXRpb246PFwvZW0+PFwvc3Ryb25nPiBEdXJhYmxlIFNpZ25hZ2UsIFN0dWRlbnQgSUQgQ2FyZHMsIEFueXRoaW5nIHRoYXQgd291bGQgdXN1YWxseSBiZSBsYW1pbmF0ZWQuXHJcblxyXG48c3Ryb25nPjxlbT5Db25zdHJ1Y3Rpb25cL0VuZ2luZWVyaW5nOjxcL2VtPjxcL3N0cm9uZz4gU2l0ZSBQbGFucywgQmx1ZSBQcmludHMsIFNhZmV0eSBzaWduYWdlLCBNYW51YWxzIGFuZCBTaXRlIERvY3VtZW50cy5cclxuXHJcbjxzdHJvbmc+Q29kZXM6IDxcL3N0cm9uZz5wcHBzMzEyMCAtIDY2OThcclxuXHJcbjxlbT4qVGhlIGluZm9ybWF0aW9uIHByb3ZpZGVkIGFib3ZlIGlzIGJhc2VkIG9uIGNvbmNsdXNpdmUgdGVzdHMsIHdoaWNoIGFyZSBpbmRpY2F0aXZlIG9ubHkgYW5kIHByb3ZpZGVkIGFzIGd1aWRlbGluZXMuIFRoZXkgZG8gbm90IGNvbnN0aXR1dGUgYSBndWFyYW50ZWUgb2YgYW55IHNwZWNpZmljIHByb2R1Y3QgYXR0cmlidXRlcyBvciB0aGUgc3VpdGFiaWxpdHkgb2YgcHJvZHVjdHMgZm9yIHNwZWNpZmljIGFwcGxpY2F0aW9ucy4gPFwvZW0+XHJcblxyXG48ZW0+U3RvcmFnZSBDb25kaXRpb25zOiBNYWludGFpbiByb29tIHRlbXBlcmF0dXJlIGluIGJldHdlZW4gMjAtMjVcdTAwYjBDICZhbXA7IHJlbGF0aXZlIGh1bWlkaXR5LiA8XC9lbT4iLCJwb3N0X3RpdGxlIjoiKDEyMG1pYykgKDE1NWcpIFNSQTMgUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIiwicG9zdF9leGNlcnB0IjoiUGVybWFQYXBlclx1MDBhZSBQcmVtaXVtIG9mZmVycyBhZmZvcmRhYmxlLCB0ZWFycHJvb2YsIHdhdGVycHJvb2YgZGlnaXRhbCBtZWRpYSB3aXRoIGV4Y2VsbGVudCBkdXJhYmlsaXR5IGFuZCBwcmludGFiaWxpdHkuIFRoaXMgUFZDLWZyZWUsIHBhcGVyLWxpa2UgZmlsbSBpcyBwZXJmZWN0IGZvciBoaWdoLXZvbHVtZSBkaWdpdGFsIHByaW50cywgY29tYmluaW5nIGNvc3QtZWZmaWNpZW5jeSB3aXRoIHN1cGVyaW9yIHBlcmZvcm1hbmNlLiIsInBvc3Rfc3RhdHVzIjoicHVibGlzaCIsImNvbW1lbnRfc3RhdHVzIjoiY2xvc2VkIiwicGluZ19zdGF0dXMiOiJjbG9zZWQiLCJwb3N0X3Bhc3N3b3JkIjoiIiwicG9zdF9uYW1lIjoiMTIwbWljLTE1NWctc3JhMy1wZXJtYXBhcGVyLXByZW1pdW0iLCJ0b19waW5nIjoiIiwicGluZ2VkIjoiIiwicG9zdF9tb2RpZmllZCI6IjIwMjQtMTItMDUgMTI6MTA6MTgiLCJwb3N0X21vZGlmaWVkX2dtdCI6IjIwMjQtMTItMDUgMTI6MTA6MTgiLCJwb3N0X2NvbnRlbnRfZmlsdGVyZWQiOiIiLCJwb3N0X3BhcmVudCI6MCwiZ3VpZCI6Imh0dHBzOlwvXC93bGNvbGxlci5jby51a1wvP3Bvc3RfdHlwZT1wcm9kdWN0JiMwMzg7cD02OTc0NCIsIm1lbnVfb3JkZXIiOjAsInBvc3RfdHlwZSI6InByb2R1Y3QiLCJwb3N0X21pbWVfdHlwZSI6IiIsImNvbW1lbnRfY291bnQiOiIwIiwiZmlsdGVyIjoicmF3In0sImNvbW1lbnRfY291bnQiOjAsImN1cnJlbnRfY29tbWVudCI6LTEsImZvdW5kX3Bvc3RzIjoxMTY2LCJtYXhfbnVtX3BhZ2VzIjo1OSwibWF4X251bV9jb21tZW50X3BhZ2VzIjowLCJpc19zaW5nbGUiOmZhbHNlLCJpc19wcmV2aWV3IjpmYWxzZSwiaXNfcGFnZSI6ZmFsc2UsImlzX2FyY2hpdmUiOnRydWUsImlzX2RhdGUiOmZhbHNlLCJpc195ZWFyIjpmYWxzZSwiaXNfbW9udGgiOmZhbHNlLCJpc19kYXkiOmZhbHNlLCJpc190aW1lIjpmYWxzZSwiaXNfYXV0aG9yIjpmYWxzZSwiaXNfY2F0ZWdvcnkiOmZhbHNlLCJpc190YWciOmZhbHNlLCJpc190YXgiOmZhbHNlLCJpc19zZWFyY2giOmZhbHNlLCJpc19mZWVkIjpmYWxzZSwiaXNfY29tbWVudF9mZWVkIjpmYWxzZSwiaXNfdHJhY2tiYWNrIjpmYWxzZSwiaXNfaG9tZSI6ZmFsc2UsImlzX3ByaXZhY3lfcG9saWN5IjpmYWxzZSwiaXNfNDA0IjpmYWxzZSwiaXNfZW1iZWQiOmZhbHNlLCJpc19wYWdlZCI6ZmFsc2UsImlzX2FkbWluIjpmYWxzZSwiaXNfYXR0YWNobWVudCI6ZmFsc2UsImlzX3Npbmd1bGFyIjpmYWxzZSwiaXNfcm9ib3RzIjpmYWxzZSwiaXNfZmF2aWNvbiI6ZmFsc2UsImlzX3Bvc3RzX3BhZ2UiOmZhbHNlLCJpc19wb3N0X3R5cGVfYXJjaGl2ZSI6dHJ1ZSwidGh1bWJuYWlsc19jYWNoZWQiOmZhbHNlfQ==
[]